PyTorch CPU Only versionインストールでハマった
Perplexityさんに質問したら下記のコマンドでインストールできると教えてもらえた
poetry source add --priority explicit pytorch-cpu-src https://download.pytorch.org/whl/cpu poetry add torch --source pytorch-cpu-src
実際、module Aはそれで上手くインストールできていたのを知っているのだけど、
そのmodule Aをmodule Bで使おうとしたらtorchのインストールでコケたので悪戦苦闘してみた
poetry source addはmodule Bでも必要
poetry source addで追加されたpyproject.tomlの記述は残念ながらmodule Bには引き継がれないらしい
というわけでこのコマンドを実行することでpytorch-cpu-srcが解決されるようになる
しかし、torch(2.3.1+cpu)が見つからないと言われてしまうplatform: x86_64を追加
何を試しても上手くいかないので、
(ほぼ)まっさらなDocker Imageをつくって、その上で同じことをやってみる。
やっぱり同様のエラーとなる
module Aではできていたのに何故???ということで、 Dockerfile比較。特に気になる差分はなし
docker-compose.ymlを比較したら、module Aにはplatform指定があったが
module Bにはそれがない
というわけでmodule Bもplatform: x86_64を追加してみたら見事にインストール成功
結局オチとしてはplatform指定がないとホストマシンがM1 MacBook Proであるために
Apple Silicon用のモジュールをインストールしようとするけど「そんなものはない」というエラーっぽい?
しかし、platform追加しなくてもpip installならばインストールできてしまっていたのは何故なのだろうか?
未だに謎が残る
とは言えそれを調べるのが目的ではないので、ひとまず調査はやめる