llama.cpp와 로컬 모델, FreeCAD(및 pi 코딩 에이전트)로 기계적으로 타당한 솔리드 객체를 생성해 3D 프린팅·밀링까지 가능하게 하는 9단계 쉬운 방법
원문 제목 — 9 easy steps for llama.cpp, a local model, Freecad (and pi coding agent) to generate solid objects that sound mechanically good and can be also be 3D printed/milled
📄 전문 번역
리눅스에서의 빠른 설정법이다. STEP 0에서 llama.cpp, FreeCAD, 선호하는 gguf 모델(가능하면 멀티미디어 이미지 읽기 기능이 있는 것으로, 필자는 Unsloth가 양자화한 Qwen3.8-27B-UD-Q4_K_M과 해당 mmproj-F16을 사용했다), uv(및 pi.dev)를 설치·다운로드한다. STEP 1에서 설치 경로로 이동하고, STEP 2에서 neka-nat의 freecad-mcp 저장소를 클론한 뒤, STEP 3에서 freecad-mcp의 addon/FreeCADMCP 폴더를 FreeCAD의 Mod 디렉터리로 복사한다. STEP 4에서는 pi 코딩 에이전트를 모델링 어시스턴트로 쓸 경우 ~/.pi/agent/mcp.json에, llama-server를 쓸 경우 freecad_mcp.json에 MCP 서버 설정을 작성하는데, 이는 uv로 freecad-mcp 디렉터리에서 freecad-mcp를 실행하도록 지정하는 내용이다.
STEP 5에서는 pi를 모델링 에이전트로 쓸 경우 pi update 후 npm:pi-mcp-extension을 설치하고 pi를 실행한 다음 /mcp:start freecad 명령을 내리며, llama-server를 쓸 경우 평소처럼 서버를 띄우되 --mcp-servers-config 옵션으로 freecad_mcp.json 경로를 지정한다. 이어 llama-server 웹 UI의 설정에서 freecad_* 도구가 보이는지 확인하고 허가 없이 실행되도록 허용할 수 있으며, Agentic turns 값을 99 정도로 올리라고 한다. STEP 6에서는 모델이 멀티미디어 기능을 갖췄다면 --mmproj 옵션으로 시각 애드온을 함께 로드해, 로컬 모델이 FreeCAD 스크린샷을 읽고 수행된 기하 연산의 정확성을 검증하게 한다.
STEP 7에서 FreeCAD를 시작해 MCP Add-on 워크벤치를 선택하고 Start RPC Server와 Auto-Start Server를 클릭한 뒤 새 문서를 만든다. STEP 8에서는 llama-server 웹 UI나 pi에 프롬프트를 입력하는데, 위에서 아래로 관통하는 5개 스포크 별모양 구멍이 있는 큐브를 생성하라는 요청이나, 게시된 이미지의 출발점인 double smooth gears 프로젝트에서 서로 맞물려 회전·역회전하는 스포크 20개짜리 동일한 기어 두 개를, 스포크의 언덕과 골이 원형 경로 위의 사인 곡선처럼 둥글게 설계하라는 프롬프트가 예로 제시된다.
STEP 9는 즐기는 것으로, 필자는 미래가 이제 막 시작됐다고 말한다. 이 글은 u/DevelopmentBorn3978이 제출했다.
💬 주요 댓글 번역 (5)
🔍 루키 분석
이 글은 llama-server와 FreeCAD를 freecad-mcp로 연결해 로컬 LLM이 MCP 도구로 3D 솔리드 객체를 생성하게 만드는 9단계 설정 과정을 담고 있다. 필자는 Unsloth가 양자화한 Qwen3.8-27B-UD-Q4_K_M과 mmproj-F16을 사용해 스크린샷 기반 기하 검증까지 시연했고, pi 코딩 에이전트를 대안으로 제시한다. 댓글에서는 기어 치형 대신 자작 스포크 설계를 쓴 이유를 묻는 기술적 지적과 함께 3D 프린팅 가능한 라마 설계를 요청하는 농담이 오갔다.
— 루키 · glm-5.3-flash:cloud
3D 프린팅 가능한 라마를 설계해 볼 수 있을까요? ;)
유일한 한계는 상상력뿐이죠 ;)
로컬일 때만 가능하죠.
스포크의 '언덕'은 둥글어야 하고 그에 대응하는 스포크의 '골'도 마찬가지로, 원형 경로 위의 사인 곡선 같은 형태라고 하셨죠. 왜 제대로 된 기어 치형을 쓰지 않는 건가요? 스스로 만든 덜 최적화된 설계에서 어떤 이점을 얻는지 이해가 안 됩니다.
재미있네요.