# MachinaCheck：基于AMD MI300X构建多智能体CNC可制造性分析系统

- 来源：Hugging Face：Blog（RSS）
- 发布时间：2026-05-11 02:44
- AIHOT 分数：74
- AIHOT 标记：精选
- AIHOT 链接：https://aihot.virxact.com/items/cmp06k9zm0nfjsllhnjyt2wgp
- 原文链接：https://huggingface.co/blog/lablab-ai-amd-developer-hackathon/machinacheck

## 精选理由

虽然是hackathon项目，但用多Agent做CNC可行性分析，把推理全压在本地AMD显卡上保护图纸隐私，还给了可跑的代码和Space，制造业AI落地就该这么直接。

## AI 摘要

MachinaCheck是一款基于多智能体AI的系统，旨在革新小型CNC机加工车间的报价分析流程。传统上，车间经理需花费30-60分钟手动分析图纸，而该系统在上传STEP文件及材料、公差等简单输入后，能在30秒内生成完整的可制造性报告，明确指出零件能否制造、所需工具及生产前需采取的行动。其核心在AMD MI300X加速卡上本地运行Qwen 2.5 7B模型，利用192GB HBM3显存确保客户设计数据无需离开本地，满足了制造业对数据隐私的严格要求。系统采用五组件流水线，结合精确的几何特征提取与LLM的制造知识推理，最终输出结构化报告。

## 正文

在 lablab.ai 举办的 AMD 开发者黑客松上构建——2026 年 5 月

我们解决的问题

走进任何一家小型 CNC 机加工车间，问问经理他们如何决定是否承接客户的订单。

答案几乎如出一辙：他们打印图纸，手动读取每一个尺寸，在车间里走一圈检查有哪些刀具可用，估算自己的机床能否达到所需的公差，然后在记事本上写下备注。整个过程每张图纸需要 30 到 60 分钟。对于一个每周收到 10 到 20 份询价单的繁忙车间来说，仅可行性分析一项就要耗费熟练经理 5 到 20 小时的时间。

有时他们会判断失误。接下一个订单，开始生产，做到一半才发现没有合适的丝锥，或者铣床无法满足某个关键特征的公差要求。零件报废，客户不满，机床时间白白浪费。

我们构建了 MachinaCheck 来彻底消除这个问题。

MachinaCheck 的功能

MachinaCheck 是一个多智能体 AI 系统。你上传一个 STEP 文件——这是客户发送给机加工车间的标准 CAD 格式——以及三个简单的输入项：材料类型、所需公差和任何螺纹规格。三十秒后，你就能收到一份完整的可制造性报告，精确告诉你能否制造这个零件、需要哪些刀具、缺少什么，以及在开始生产前需要采取哪些行动。

无需手动读取图纸，无需在车间里来回走动，无需猜测。

为什么我们选择在 AMD MI300X 上构建

在解释架构之前，这一点值得单独说明，因为它不仅仅是一个技术选择——更是一项业务需求。

制造行业的客户会签署保密协议。他们的 STEP 文件包含专有几何结构，代表着多年的工程工作和数百万美元的研发投入。医疗设备上的孔位布局或航空航天部件上的凹槽几何结构，都是机密知识产权。

将这些数据发送给 OpenAI、Anthropic 或任何商业 API 端点，都构成保密违规。没有商量余地。

AMD Instinct MI300X 彻底改变了这一局面。凭借 192GB HBM3 显存和 5.3 TB/s 的内存带宽，我们完全在本地运行 Qwen 2.5 7B Instruct。没有任何数据离开工厂的基础设施。没有任何 STEP 几何数据被传输到第三方服务器。客户的 IP 始终留在它该在的地方。

这就是“设计即隐私”在制造场景中的真正含义——不是一个勾选框，而是一项根本性的架构决策，让产品对真正的企业客户变得可行。

智能体架构

MachinaCheck 采用基于 LangChain 构建并通过 FastAPI 编排的五组件流水线。

组件 1——STEP 文件解析器（纯 Python，无大语言模型）

我们使用 cadquery（一个基于 OpenCASCADE 构建的 Python 库）直接解析 STEP 文件。这使我们能够进行数学上精确的特征提取：

所有圆柱孔及其直径和深度

平面及其面积

倒角和圆角

边界框尺寸

总体积和表面积

这种提取是 100% 准确的，因为它直接读取数学几何数据——无需视觉模型、无需 OCR、无需近似。一个 Ø6.0mm 的孔在输出中就是精确的 Ø6.0mm。

def extract_features(step_file_path: str) -> dict: model = cq.importers.importStep(step_file_path) shape = model.val() bb = shape.BoundingBox()

holes = {} for face in model.faces().vals(): adaptor = BRepAdaptor_Surface(face.wrapped) if adaptor.GetType() == GeomAbs_Cylinder: radius = adaptor.Cylinder().Radius() diameter = round(radius * 2, 3) holes[diameter] = holes.get(diameter, 0) + 1

return { "bounding_box_mm": {"length": round(bb.xlen, 3), ...}, "holes": [...], "flat_surfaces_count": len(flat_surfaces), }

智能体 1——操作分类器（Qwen 2.5 7B）

提取出的几何数据以及用户输入（材料、公差、螺纹）被传递给通过 vLLM 在 AMD MI300X 上运行的 Qwen 2.5 7B。

该智能体回答：“制造这个零件需要哪些 CNC 操作和刀具？”

它应用了制造领域的知识：304 不锈钢需要硬质合金刀具。圆柱孔需要钻头，而不是立铣刀。±0.005mm 的公差需要精密机床，而不是标准铣床。

智能体 2——刀具匹配器（纯 Python）

该智能体不使用大语言模型。它查询工厂的刀具库存数据库，并将每种所需刀具与现有库存进行核对。纯确定性逻辑——数据库查找、比较、得出结果。数据库查询不需要大语言模型，在这里使用它们只会增加不必要的延迟和模型幻觉风险。

智能体 3——可行性决策智能体（Qwen 2.5 7B）

匹配结果被送回 Qwen。该智能体对整体情况进行推理，并生成一个结构化的决策：

{ "decision": "CONDITIONAL", "confidence": "HIGH", "reason": "All tools available except M10x1.5 tap", "action_items": ["Purchase M10x1.5 tap ($15)"], "risk_flags": ["Verify spindle speed for Steel 304"], "estimated_setup_hours": 2.5 }

智能体 4——报告生成器（Qwen 2.5 7B）

最终智能体将所有信息整合成一份专业的可制造性报告，包含总体状态、执行摘要、零件分析、工具状态、机器状态以及最终建议。

AMD 技术栈

在 AMD MI300X 上通过 ROCm 和 vLLM 运行 Qwen 2.5 7B 非常简单。AMD 开发者云上的 vLLM 快速启动镜像已预配置好一切。

python -m vllm.entrypoints.openai.api_server \ --model Qwen/Qwen2.5-7B-Instruct \ --host 0.0.0.0 \ --port 8000 \ --dtype float16 \ --gpu-memory-utilization 0.5

通过设置 `gpu-memory-utilization 0.5`，我们使用了约 96GB 的可用 192GB 显存，留有充足余量。智能体调用的推理延迟平均低于 3 秒。

LangChain 通过兼容 OpenAI 的端点连接到 vLLM：

from langchain_community.llms import VLLMOpenAI

llm = VLLMOpenAI( openai_api_base="http://localhost:8000/v1", openai_api_key="EMPTY", model_name="Qwen/Qwen2.5-7B-Instruct", temperature=0.1, max_tokens=1000 )

结果

使用来自 GrabCAD 的真实 STEP 文件进行测试：

特征提取：对于最多包含 50 个特征的零件，耗时不到 1 秒

完整流水线（全部 4 个智能体）：端到端耗时 25 到 40 秒

决策准确性：对所有测试零件的可制造性评估均正确

隐私保护：零字节的 STEP 几何数据被传输到外部

经验教训

仅在需要推理的地方使用大语言模型。智能体 2（工具匹配）是纯 Python 实现。在那里使用大语言模型会更慢、更昂贵且更不可靠。数据库查询才是数据库查找的正确工具。

面向结构化输出的提示词工程至关重要。要让 Qwen 可靠地输出有效 JSON，需要在提示词中设置细致的规则——明确说明圆柱孔需要钻头而非立铣刀，直径必须精确匹配，丝锥仅在指定螺纹时出现。

AMD MI300X 在此用例中表现确实令人印象深刻。192GB 的显存意味着我们可以在需要时运行更大的模型。对于生产部署，Qwen 2.5 72B 可以轻松容纳，并提供显著更优的推理质量。

立即尝试

HF Space：huggingface.co/spaces/lablab-ai-amd-developer-hackathon/MachinaCheck

GitHub：github.com/SyedMuhammadSarmad/Manufacturing-Agent

上传任意 STEP 文件，即可查看完整流水线的实际运行。

由 Syed Muhammad Sarmad 和 Sabari Doss R 在 2026 年 5 月的 AMD 开发者黑客松上构建。

技术栈：Qwen 2.5 7B · AMD Instinct MI300X · ROCm · vLLM · LangChain · cadquery · FastAPI · Next.js · Hugging Face Spaces

本文提及的 Spaces 1 个
