import Error

何が起きたか








Who 私が
When/td>
今日、Transformersをimportしようと思い実行した際、
Where (自宅ノートPC*1で)
What
Why 複雑怪奇なビルド設計をしていたため
How ImportError: cannot import name 'ViTForImageClassification'が出てしまった。

問題点

  1. jupyter上でインストールとアンインストールを繰り返した
  2. ググって原因の調査を行ったが、「import transformersの綴りはあっていますか?」といった記事が多くてキレて近くにあった鉛筆を破壊した。
  3. sys.pathを用いて参照元を調査し、直前にインストールしたものとは違うものを見ていたことを把握した。が、何を思ったのかそのフォルダを削除した。
  4. おそらく、これによって(?)、エラーがImportError: (unknown location)に変化した。

雰囲気による解決

  • jupyterを閉じ、仮想環境をactiveにし、そこでアンインストール&インストールを行った。

どうするべきだったか。

  • なんとなくビルドするのはやめよう
  • 過去にsys.pathに追加を行っていた形跡があった。その場のノリと雰囲気だけで気軽にsys.pathに追加を行うべきではない。
  • キレても物にあたらない。

根本的解決と再発防止

piyo.__path__を使えば、importしたパッケージpiyoのパスを知ることが出来る。

この引用元の記事にも書いてありました。
なんとなくビルドするのはやめよう

備考

本記事は健常者エミュレータ事例集に大きく影響を受けた。
healthy-person-emulator.memo.wiki

*1:Quartavia