AttributeError: module 'torch._dynamo' has no attribute 'mark_static_address' が発生したときの対処法

AttributeError: module 'torch._dynamo' has no attribute 'mark_static_address' が発生したときの対処法
Photo by Tom Pumford / Unsplash

以下のようなエラーが出た場合の対処法

  File "/venv/Lib/site-packages/torch/utils/_contextlib.py", line 115, in decorate_context
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
  File "/venv/Lib/site-packages/transformers/generation/utils.py", line 1744, in generate
    model_kwargs["past_key_values"] = self._get_cache(
                                      ^^^^^^^^^^^^^^^^
  File "/venv/Lib/site-packages/transformers/generation/utils.py", line 1435, in _get_cache
    self._cache = cache_cls(
                  ^^^^^^^^^^
  File "/venv/Lib/site-packages/transformers/cache_utils.py", line 1012, in __init__
    torch._dynamo.mark_static_address(new_layer_key_cache)
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: module 'torch._dynamo' has no attribute 'mark_static_address'

原因

Pytorch のバージョンが古い可能性

現在の環境にインストールされている Pytorchのバージョンを調べる

以下のコマンドでインストールされているパッケージのバージョンを調べることができます

pip list

例えば、以下のように古い Pytorch の場合、上記のエラーが発生します

torch                         2.0.1+cu117
torchaudio                    2.0.2+cu117
torchvision                   0.15.2+cu117

対策

Pytorch のバージョンを最新にしましょう

pip install --upgrade コマンドをつかうと、最新のバージョンにアップデートすることができます。

Linux

pip install --upgrade torch torchvision torchaudio

Wndows

RuntimeError: No GPU found. A GPU is needed for quantization.

のようになる場合、CUDA バージョン指定(ここでは11.8)で以下のようにインストールします。

pip3 install --upgrade torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

Read more

【AI×CAD 第5回】CADだけでは伝わらない「なぜ」を残す。設計知の伝承をローカルLLMで始めるための考え方

【AI×CAD 第5回】CADだけでは伝わらない「なぜ」を残す。設計知の伝承をローカルLLMで始めるための考え方

CADには最終的に「何を作ったか」は残るのに、その形にした「なぜ」は形状だけからは分かりません。幾何の事実から問いを立てて設計者に答えてもらい、形状と判断理由を一緒に残す。変更前後の比較も使いながら、設計知の伝承とローカルLLMの活用を業務から考えます。

By Qualiteg コンサルティング