PyTorchのクロスプラットフォームインストール地獄を克服する
2025-09-11
PyTorchに依存するクロスプラットフォームPythonプロジェクトの構築は非常に困難です。AIコーディングアシスタントであるFileChatの開発中に、著者はこの課題に直面しました。標準的な依存関係管理では、配布用ホイールを作成する際にカスタムインデックスが失われ、ユーザーによる手動設定が必要になります。PEP 508を活用することで、作者は各依存関係のホイールURLとPythonバージョン制約を指定し、単一コマンドでのインストールを実現しました。WindowsとmacOSではデフォルトのPyTorchを使用し、LinuxではCPU、XPU、CUDAハードウェアごとに個別のホイールを提供します。ユーザーはインストール時に適切なオプション依存関係グループを選択します(例:`pip install filechat[xpu]`)。ホイールURLを維持する方がカスタムインデックスを管理するよりも簡単ですが、事前に多くの作業が必要になります。
開発