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のインストールでコケたので悪戦苦闘してみた

  1. poetry source addはmodule Bでも必要
    poetry source addで追加されたpyproject.tomlの記述は残念ながらmodule Bには引き継がれないらしい
    というわけでこのコマンドを実行することでpytorch-cpu-srcが解決されるようになる
    しかし、torch(2.3.1+cpu)が見つからないと言われてしまう

  2. 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ならばインストールできてしまっていたのは何故なのだろうか?
未だに謎が残る
とは言えそれを調べるのが目的ではないので、ひとまず調査はやめる