Llama-2が登場!8bit+LoRAでRLHFファインチューニングを試す方法はこちら

【python】AttributeError: ‘_IncompatibleKeys’ object has no attribute ~の解決方法

binファイルからパラメータを読み込んだモデルが何か変な型になってる!?

ということでエラーが出たので、解決方法を載せておきます。

目次

問題のコード

こんな感じのコードを実行した際にタイトルのエラーが出ました。

model = MyModel()
model = model.load_state_dict(torch.load('model.bin'))
device = "cuda:0" if torch.cuda.is_available() else "cpu"
model.to(device) # AttributeError: '_IncompatibleKeys' object has no attribute 'to'

一見、あっていそうですが間違っているところがありました。

解決方法

解決方法は簡単です。

model = MyModel()
# 変更点
model.load_state_dict(torch.load('model.bin')) # <All keys matched successfully>
device = "cuda:0" if torch.cuda.is_available() else "cpu"
model.to(device)

binファイルからパラメータを読み込むためのコードが変数に入れられておかしくなっていました。

<All keys matched successfully>と表示されたら成功です。

最後に

今回は、個人的に言語モデルを色々いじっている時に出てきたエラーの解決方法を書きました。

他のエラーが出たらそれについても書いていこうと思います。

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
  • URLをコピーしました!

コメント

コメントする

目次