ghbalf/freecad-ai
AI-powered assistant workbench for FreeCAD — generate 3D models from natural language
解決する課題
FreeCAD AIは、FreeCADでの3Dモデリングに自然言語インターフェースを提供します。複雑なソフトウェアのUIやPython APIを手動で操作する代わりに、平易な英語で目標を説明するだけで、複雑な3Dモデルの作成、形状の変更、アセンブリの管理が可能になります。
仕組み
このプロジェクトは、チャットインターフェースをワークベンチとしてFreeCADに直接統合します。さまざまなLLMプロバイダー(Ollamaのようなローカルオプションを含む)に接続し、ユーザーの記述を実行可能なPythonコードに変換します。主に2つのモードで動作します:
- Plan Mode: AIがコードを生成し、ユーザーがそれを確認して手動で実行します。
- Act Mode: AIが50以上の構造化ツール(例:
create_primitive,boolean_operation,fillet_edges)のライブラリを使用して操作を自動的に実行するか、生のコード生成にフォールバックします。
信頼性を向上させるため、コード検証用のサンドボックス、エラーの自己修正(失敗時の自動リトライ)、および特定のタスク(ギアの作成や電子機器の筐体作成など)のための再利用可能な指示セットである「Skills」が含まれています。
対象ユーザー
- FreeCADユーザー: モデリングのワークフローを高速化したい方。
- 初心者: FreeCADのPython APIやUIが難解だと感じている方。
- 開発者: カスタムのAI呼び出し可能なPythonツールを使用してFreeCADの機能を拡張したい方。
ハイライト
- 幅広いプロバイダー対応: Anthropic、OpenAI、Gemini、およびローカルのOllamaインスタンスを含む20以上のLLMプロバイダーに対応。
- 構造化されたツール群: 50以上の事前検証済み操作を使用することで、生のコード生成と比較してエラーを削減。
- 拡張可能なアーキテクチャ: 複雑で繰り返しの多いタスクのために、ユーザー定義のPythonツールや「Skills」をサポート。
- ビジョン統合: ビューポートのスクリーンショットや画像添付をサポートし、AIにモデルの視覚的なコンテキストを提供。
- 依存関係ゼロ: インストールを簡素化するため、Python標準ライブラリのみを使用して構築。