CADSmith: Multi-Agent CAD Generation with Programmatic Geometric Validation

이 논문은 실행 오류 해결과 프로그램 기반 기하학적 검증을 결합한 다중 에이전트 피드백 루프를 통해 자연어에서 CadQuery 코드를 생성하고 정밀도를 극대화하는 'CADSmith' 시스템을 제안합니다.

Jesse Barkley, Rumi Loghmani, Amir Barati Farimani

게시일 2026-03-30
📖 4 분 읽기☕ 가벼운 읽기

Each language version is independently generated for its own context, not a direct translation.

이 논문은 **"자연어로 말하면 바로 완벽한 3D 설계도 (CAD) 를 만들어주는 AI"**에 대한 연구입니다. 제목은 CADSmith입니다.

기존의 AI 들은 "이거 만들어줘"라고 말하면 대충 모양만 비슷하게 만들어내거나, 치수가 틀려서 실제로 쓸 수 없는 경우가 많았습니다. 마치 요리사가 레시피를 보고 요리를 하되, 계량컵을 쓰지 않고 눈대중으로 재다가 소금 10kg 을 넣는 실수를 하는 것과 비슷하죠.

CADSmith 는 이런 문제를 해결하기 위해 **4 명의 전문가로 구성된 팀 (멀티 에이전트)**을 꾸려서, 수학적인 정확성눈으로 보는 직관을 모두 챙기며 설계도를 수정해 나갑니다.

이 시스템을 쉽게 이해할 수 있도록 **'정밀한 기계 부품 공방'**이라는 비유로 설명해 드리겠습니다.


🏭 CADSmith: 완벽한 부품 공방의 비밀

1. 문제: "눈대중"만 하는 AI 들

기존 AI 는 설계도를 그릴 때 치수 (mm 단위) 를 정확히 맞추지 못하거나, 부품이 뚫려 있어야 할 구멍이 막혀 있는 등 치명적인 오류를 자주 범했습니다. 마치 **"눈대중으로 만든 자동차"**처럼, 생김새는 비슷해 보이지만 실제로는 엔진이 들어가지 않거나 바퀴가 돌아가지 않는 상황이었습니다.

2. 해결책: 4 명의 전문가 팀 (CADSmith)

CADSmith 는 한 명의 천재가 모든 일을 하는 게 아니라, 각자 역할이 명확한 4 명의 전문가가 팀을 이루어 일합니다.

  • 📋 기획자 (Planner): 고객 ("이거 만들어줘") 의 말을 듣고 구체적인 설계 도면 (JSON) 으로 번역합니다. "지름 50mm, 높이 10mm, 구멍 6 개"처럼 숫자를 명확히 정리합니다.
  • ✍️ 설계사 (Coder): 기획자가 준 도면을 보고 실제 컴퓨터 코드 (CadQuery) 를 작성합니다. 이때, 최신 기술 매뉴얼을 검색해서 (RAG) 틀린 명령어를 쓰지 않도록 조심합니다.
  • ⚙️ 시공자 (Executor): 작성된 코드를 실행해 봅니다. 만약 코드가 오류를 낸다면 즉시 멈추고, 오류 수정 전문가에게 넘깁니다.
  • 👮 감시관 (Validator & Judge): 이것이 CADSmith 의 핵심입니다. 두 가지 눈을 가지고 부품을 검사합니다.
    1. 수학의 눈 (OpenCASCADE): 부품의 부피, 길이, 무게, 구멍 개수를 정확한 숫자로 측정합니다. "지름이 50mm 라면 50.000mm 여야 한다"는 식입니다.
    2. 예술가의 눈 (Vision-Language Model): 3D 렌더링 이미지를 보고 전체적인 모양이 맞는지, 구멍이 제대로 뚫려 있는지 눈으로 확인합니다. 숫자는 맞는데 모양이 비틀어졌을 때 잡아냅니다.

3. 작동 원리: "수정 루프"라는 반복적인 점검

이 팀은 한 번에 끝내지 않습니다. 두 단계의 수정 과정을 거칩니다.

  • 1 단계 (내부 루프): "코드 오류 잡기"
    코드가 실행되지 않으면 (예: 문법 오류), 시공자가 즉시 수정합니다. 이 과정은 최대 3 번까지 반복됩니다.
  • 2 단계 (외부 루프): "치수와 모양 잡기"
    코드는 실행되지만, 부품 모양이 잘못됐다면 감시관이 "치수가 2mm 부족하다"거나 "구멍이 1 개 빠졌다"고 피드백을 줍니다. 설계사는 이 피드백을 받고 코드를 다시 고칩니다. 이 과정은 최대 5 번까지 반복됩니다.

이 과정은 마치 숙련된 공방에서 장인이 자르고, 다듬고, 자르고, 다듬으며 완벽한 부품이 나올 때까지 멈추지 않는 모습과 같습니다.

4. 왜 이 방법이 특별한가요? (핵심 포인트)

  • 숫자와 눈의 조화: 기존 연구는 숫자만 보거나 (치수는 맞는데 모양이 이상함), 이미지만 봤습니다 (모양은 비슷하지만 치수가 틀림). CADSmith 는 **정밀한 자 (숫자)**와 **감각적인 눈 (이미지)**을 동시에 사용합니다.
  • 최신 기술 반영: AI 를 처음부터 다시 학습시키는 (Fine-tuning) 대신, 최신 CAD 프로그램 매뉴얼을 검색해서 (RAG) 사용합니다. 그래서 CAD 프로그램이 업데이트되어도 AI 가 금방 따라잡을 수 있습니다.
  • 편견 방지: 코드를 만든 AI 와 감시하는 AI 를 다르게 사용합니다. (코드는 'Sonnet'이, 감시는 더 똑똑한 'Opus'가 합니다.) 이렇게 하면 "내가 만든 게 맞다"는 착각을 하지 않게 됩니다.

5. 결과: 얼마나 잘 하나요?

연구진은 100 개의 다양한 부품 (단순한 상자부터 복잡한 기어, 복잡한 기계 부품까지) 을 테스트했습니다.

  • 기존 AI (한 번에 끝내기): 실행 오류가 많았고, 치수가 틀린 경우가 많았습니다. (평균 오차 28mm)
  • CADSmith: 100% 성공으로 코드를 실행했고, 치수 오차는 0.74mm로 줄였습니다.
    • 특히 복잡한 부품 (T3) 에서 기존 방식보다 35 배나 더 정확해졌습니다.
    • 단순히 모양만 비슷한 게 아니라, 실제로 공장에서 쓸 수 있을 만큼 정밀한 부품을 만들어냈습니다.

💡 요약

CADSmith 는 **"AI 가 설계도를 그릴 때, 한 번에 끝내지 않고 정밀한 자와 날카로운 눈으로 수차례 수정하며 완벽하게 다듬는 시스템"**입니다.

이 기술은 앞으로 엔지니어들이 복잡한 기계 부품을 설계할 때, AI 가 단순히 아이디어만 내주는 것을 넘어 실제 제조가 가능한 정확한 설계도를 바로 뽑아낼 수 있게 해줄 것입니다. 마치 "내 말만 들어도, 공장에서 바로 쓸 수 있는 완벽한 부품을 만들어주는 마법 같은 공방"이 생긴 것과 같습니다.