작동 방식

U-Draw의 AI는 도면을 직접 만지지 않습니다. 같은 입력에 늘 같은 출력을 내는 결정론적 부품을 쥐고 일하고, 숫자는 부품이 내며 AI는 그것을 엮습니다. 부품은 AI 에이전트가 쥘 수 있는 도구 표면(명령줄 · MCP)을 갖습니다.

일곱 단계

  1. READ 읽기 — DWG · DXF를 공통 엔티티 모델로. 모든 엔티티가 참조 · 출처 · 신뢰도를 답니다.
  2. READ 이해 — 요약: 종류별 수 · 레이어 · 블록 · 속성 · 치수 · 범위.
  3. READ 가리키기 — 화면의 한 점을 엔티티 참조로.
  4. WRITE 조작 — 참조를 받아 필드 하나를 바꾼 새 상태. 원본은 그대로.
  5. CHECK 검증 — 두 상태의 수치 변경 목록.
  6. WRITE 출력 — 변경을 원본 위 레드라인으로.
  7. 판단 — 닮은 과거 도면과 그때의 생산 실적으로 견적 초안. 확정은 사람이.

눈 · 손 · 자 · 종이

READ

눈

요약하고, 가리킨 곳의 엔티티를 찾는다.

WRITE

손

참조를 받아 값을 바꾼다. 원본은 건드리지 않는다.

CHECK

자

손이 한 일을 숫자로 잰다.

WRITE

종이

바뀐 것을 원본 위에 그린다.

표지의 뜻 — READ 부품이 파일에서 읽은 값 · WRITE 원본은 두고 새로 쓴 제안 · CHECK 둘 사이를 수치로 잰 판정. 넷 다 생각하지 않습니다. 생각은 부품을 쥔 AI가 하고, 숫자는 부품이 냅니다.

「여기」는 좌표가 아니라 참조입니다

이미지 편집에서 마스크를 칠하는 것은 「여기」를 가리키는 일입니다. 도면에서 「여기」는 좌표가 아니라 도면 요소여야 합니다 — 좌표만 넘기면 무엇을 고칠지 알 수 없습니다. 그리고 도면은 2mm 어긋나면 틀린 것입니다. 그래서 조작은 생성이 아니라 결정론적 연산이고, 검증은 그림이 아니라 숫자입니다.

  1. 점 (x, y)
  2. 엔티티 참조
  3. 동사(참조, 값)
  4. 새 상태
  5. 변경 목록
  6. 레드라인

합성 도면 하나로 따라가기

외곽 · 홀 넷 · 치수 · 표제란이 있는 가공 부품 도면입니다. 왼쪽 아래 홀의 지름을 ⌀10에서 ⌀12로 바꾸자는 제안을 만들어 봅니다. 아래 출력은 모두 공개 부품의 출력 그대로입니다. 입력 모델 JSON: g1-original.json

외곽선과 홀 넷, 치수, 표제란이 있는 합성 가공 부품 도면
① 받은 도면

② 요약 — 에이전트가 가장 먼저 받는 답

{
  "units": {
    "code": 4,
    "name": "mm"
  },
  "entity_count": 13,
  "by_type": {
    "ATTRIB": 3,
    "CIRCLE": 4,
    "DIMENSION": 4,
    "INSERT": 1,
    "LWPOLYLINE": 1
  },
  …

③ 가리키기 — 한 점이 엔티티 참조로

{
  "hits": [
    {
      "id": 288,
      "entity_type": "LWPOLYLINE",
      "distance": 0.0,
      "anchored": false,
      "confidence": "HIGH",
      …
    },
    {
      "id": 293,
      "entity_type": "DIMENSION",
      "distance": 0.0,
      "anchored": true,
      "confidence": "HIGH",
  …

한 점에 닿은 엔티티 둘을 모두 돌려주고, 고르는 것은 쓰는 쪽입니다.

④ 한 필드 편집 — 원 289의 반지름 5 → 6

uncad set g1-original.json --id 289 --path radius --value 6.0 -o proposed.json

⑤ 변경 목록 — 무엇이 얼마나 바뀌었나

…
        "id": 289,
        "entity_type": "CIRCLE",
        "provenance": [
          "VECTOR",
          "VECTOR"
        ],
        "confidence": "HIGH",
        "fields": [
          {
            "path": "radius",
            "before": 5.0,
            "after": 6.0,
            "delta": 1.0,
            "tolerance": 1e-6,
            "verdict": "BEYOND"
          }

BEYOND는 허용오차를 넘은 변경이라는 판정입니다. 렌더를 눈으로 보고 정하지 않습니다.

⑥ 레드라인 — 원본 위의 제안

원본 도면 전체 위에 홀 하나의 변경을 자홍색 선으로 겹친 레드라인
도면 전체 틀
바뀐 홀 주위만 확대한 레드라인 — 자홍색 원과 개정 구름
변경 주위 틀

원본의 홀 레이어가 빨강이라, 제안색은 원본과 겹치지 않는 자홍으로 골랐습니다 — 도구가 색 충돌을 알려 줍니다.

증명되는 차이 — 개정본 비교

두 개정본을 비교할 때도 같은 부품을 씁니다. 결과는 「여기가 달라 보인다」는 하이라이트가 아니라, 엔티티와 필드마다 「이전 값 → 이후 값」과 판정이 붙은 목록입니다. 그 목록을 그대로 원본 위에 그리면 레드라인이 됩니다.

생산 단계에서 개정본이 오면, 이 목록이 「무엇이 얼마나 바뀌었나」의 답입니다.

AI에게 주는 꾸러미

도면 한 장을 그림만이 아니라 그림과 구조화된 JSON으로 함께 넘깁니다. 모델은 그림에서 숫자를 짐작하지 않고, 부품이 읽은 값을 받습니다.

다음: 신뢰 — 모른다고 답하는 법