発生したバージョン
docker image: tensorflow/tensorflow:2.12.0-gpu
発生したエラー
jupyter lab上に以下のエラーが表示された。
2023-04-22 01:07:06.094005: W tensorflow/compiler/xla/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libnvinfer.so.7'; dlerror: libnvinfer.so.7: cannot open shared object file: No such file or directory; LD_LIBRARY_PATH: hogehoge
2023-04-22 01:07:06.094114: W tensorflow/compiler/xla/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libnvinfer_plugin.so.7'; dlerror: libnvinfer_plugin.so.7: cannot open shared object file: No such file or directory; LD_LIBRARY_PATH: hogehoge
2023-04-22 01:07:06.094120: W tensorflow/compiler/tf2tensorrt/utils/py_utils.cc:38] TF-TRT Warning: Cannot dlopen some TensorRT libraries. If you would like to use Nvidia GPU with TensorRT, please make sure the missing libraries mentioned above are installed properl
解決方法
tensorflowをpipで再インストールしない。
原因
コンテナイメージ内でpip install -r requirements.txt
を実行していたが、requirements.txt
中に
tensorflow==2.11.0
の記述があった。イメージに既に含まれているtensorflowとバージョンが異なるため、既に入っているtensorflowを一度削除し、再インストールしてしまっているのだと思う。前に別のコンテナイメージを使っていたので、そこからrequirements.txt
を使い回していたが、忘れていた。例えば改善策として、
requirements.txt
では単に
tensorflow
とするとか。