
Pythonライブラリ(2DCAD->3D STEP):cad3dify
1.概要
2DのCAD図面(手書き、写真、PDF、スクショなど)を3D STEPファイルに変換するライブラリ「cad3dify」を紹介します。
本ツールは、開発者は日本のエンジニアみたいです。
1-1.STEPファイルとは
STEP("Standard for the Exchange of Product Data)ファイルは、ISO規格(ISO 10303)で定められたデータ形式です。
特定のCADソフト(SolidWorks, AutoCAD, Fusion360など)に依存しない「中間ファイル」であるため、生成されたデータをそのまま自社の使い慣れたCADソフトに取り込み、編集・加工することが可能です。
1-2.cad3difyの特徴
cad3difyは、入力された2D画像を解析し、その幾何学的特徴を3Dモデル生成コード(CadQueryなど)に変換するプロセスをAIが担っています。
使用モデルはGPT-5(またはClaude 4.5 opus、Gemini 3 pro、Vertex AI上のLlama 3.2)などが利用可能です。

2.環境構築
本ライブラリで使用されているLangChainの環境構築が難しすぎるため、再現性がない方法ではありますがご紹介します。
2-1.事前準備:OpenAIのAPI発行
APIを使用するため、OpenAIのAPIを発行します。
支払いページへ移動+ログイン:下記アクセスし、ログイン
支払い方法の登録:
「Add payment details」をクリック
クレジットカード情報と住所を入力して登録
初回チャージと支払い:
初回にチャージする金額(最低$5など)を指定し、支払いを確定
(任意) 自動リチャージ設定:
残高が減った際に自動チャージするか設定
デフォルトはONのため、気になる人は外すこと

補足:利用制限の設定
APIの使いすぎを防ぐため、Limitsページで月間の利用上限額を設定できます(https://platform.openai.com/account/billing/limits)。
2-2.仮想環境の作成
Anacondaで仮想環境を作成します。
依存関係の衝突を防ぐため、Anaconda等で専用の仮想環境を作成します。LangChainが対応できるPython 3.10以上が必要なため、今回は3.11を指定しました。
[Anaconda prompt]
conda create -n cad3d python=3.11 -y
conda activate cad3d関連するライブラリを入れていきます。
# 基本的な数値計算・画像処理ライブラリ
pip install numpy matplotlib shapely pydantic requests
# Webアプリフレームワーク
pip install streamlit
# AIモデル連携ライブラリ (OpenAI, Google, Anthropic)
pip install openai google-generativeai anthropic
# 【重要】LangChain関連の修正インストール
# langchain-communityを入れることで chains の読み込みエラーを解決します
pip install langchain langchain-community langchain-core langchain-openai langchain-google-genai langchain-anthropic
#その他
pip install loguru
pip install cadquery
pip install reportlab
pip install svglibVersionを確認しました。
[prompt]
pip show langchain
[OUTPUT]
Name: langchain
Version: 1.1.2
Summary: Building applications with LLMs through composability
Home-page: https://docs.langchain.com/
Author:
Author-email:
License: MIT
Location: C:\Users\kiyo\Anaconda3\envs\cad3d\Lib\site-packages
Requires: langchain-core, langgraph, pydantic
Required-by:これで準備完了のはずです。(詳細はYAMLファイル参照)
2-3.コードのリファクタリング
リポジトリに含まれるコードは古いLangChainの記法を使用している場合があり、そのまま実行するとエラーになる可能性があります。
手動での修正は困難なため、AIエージェントを使用してコードを最新のLangChainで動作するように書き換えます。概要は以下の通り。
プロンプト:以下参照
ツール:VS Code
AIモデル:Claude Opus4.5(Preview)
ゴール
プロフェッショナルとして、顧客である前提知識がない私が満足するコード
出力
コードの修正
補足条件
思考の時間はかけてよいので、Qualityを最大限上げてください。
遠慮せずに全力を尽くして
#役割
あなたは「AI」と「プログラミング」のプロフェッショナルです。
#業務内容
現在のcad3difyのコードは古いLangchainで作成されています。
これをLangChainの最新Versionに対応したコードにリファクタリングしてコラム:環境構築の方向性検討
LangChainとはLangChainとは、LLMを用いたアプリケーション開発を効率的に行うためのライブラリであり、2025年10月22日に LangChain v1.0 が公開されました。
Version遍歴の中でAPIが大幅に変わっており、昔のコードがそのまま使えないことがあります。まずサクッと使おうとすると”Error importing langchain modules: No module named 'langchain.chains'”がでました。
下記を試してみたのですが結果的に無理だったため、正しい環境構築ではなくコードのリファクタリングで対応しました。
他の記事を参照し、類似のVersionを導入
AIエージェントで発生したエラーに対してパッチを当てていく
環境をGoogle Colab上で実行
3.Quickstart:CLI
同様の性能が出るか確認するため、公式の画像を参照しました。ファイル名は"g1-3.jpg"です。

3-1.コマンド実行
下記手順でコマンド実行しました。
※PowershellやMacだとコマンドが異なるため、適宜確認のこと
git clone https://github.com/neka-nat/cad3dify.git:ソースコード(リポジトリ)をローカル環境に複製
cd cad3dify:作業ディレクトリを移動
set OPENAI_API_KEY = <自分のAPI>:API認証キーを環境変数として一時的に設定
set PYTHONPATH=.:Pythonのモジュール検索パスに現在のディレクトリを追加し、パッケージインポートエラーを防ぐ
python scripts/cli.py g1-3.jpg:設定済みの環境内で、指定された画像ファイルを使って3D CADモデル生成スクリプトを実行
[Anaconda Prompt]
git clone https://github.com/neka-nat/cad3dify.git
cd cad3dify
set OPENAI_API_KEY = <自分のAPI>
set PYTHONPATH=.
python scripts/cli.py g1-3.jpg実行が完了するとStepファイルが生成されました。

3-2.結果確認
結果は以下の通りです。公式と比較してしょぼい結果となりました。おそらく使っているAIモデルがいまいちなのかもしれません。


4.Quickstart:GUI
Streamlitを使ったWebアプリ上での利用も可能です。
下記コマンドを実行するとWebアプリが開きます。
streamlit run scripts/app.pyサイドバーからファイルをアップロードしたら、自動でSTEPファイルが生成されます。

直感的には非常に使いやすいですが、得られた結果はCLIと同様です。

あとがき
久しぶりのドツボにハマる環境構築はしんどかった。
とりあえず2D->STEPファイル変換できるのを知れただけでも良しとしよう。
参考資料
cad3dify
cad3dify
— rsasaki0109 (@rsasaki0109) December 1, 2025
2D to 3D CAD Conversion Using VLMhttps://t.co/Qkp2d97eBG pic.twitter.com/N0Nf9kyJcb
3DCADモデルを作る「cad3dify」というソフトウェアを公開している方を発見!
— ShareLab(シェアラボ) (@jpShareLab) December 2, 2025
2DのCAD図面(手書きスケッチや写真、PDF、スクリーンショットなど)を撮影・アップロードするだけで、自動的に編集可能な3D… https://t.co/cGgMNGtmJ5
Pythonライブラリ
3Dソリッド
3D (メッシュ)
2D図面