Google Colab で Tanuki-8x8B を試す
「Google Colab」で「Tanuki-8x8B」を試したのでまとめました。
1. Tanuki-8x8B
「Tanuki-8x8B」は、経産省及びNEDOが進める日本国内の生成AI基盤モデル開発を推進する「GENIAC」プロジェクトにおいて、松尾・岩澤研究室が開発・公開した日本語LLMです。
フルスクラッチで開発されたモデルで、Apache License 2.0に基づき、研究および商業目的での自由な利用が可能です。
2. Colabでの実行
Colabでの実行手順は、次のとおりです。
(1) パッケージのインストール。
推論方法はいくつかありますが、最推奨のvLLMはビルドに時間がかかるので、推奨のTransformersかつ少メモリでうごくAWQを使います。
# パッケージのインストール
!pip install -U transformers accelerate bitsandbytes
!pip install flash_attn --no-build-isolation
!pip install autoawq
(2) バージョンを整える。
Colabでは上記コマンドのみでは実行時にエラーになったので、バージョンを整えます。
# バージョンを整える
!pip install pyarrow==14.0.1
!pip install torch==2.4.0 torchvision==0.19.0+cu121 torchaudio==2.4.0+cu121
(3) メニュー「ランタイム→セッションを再起動」で再起動。
(4) モデルとトークナイザーとストリーマーの準備。
from transformers import AutoModelForCausalLM, AutoTokenizer, TextStreamer
# モデルとトークナイザーとストリーマーの準備
model_name = "team-hatakeyama-phase2/Tanuki-8x8B-dpo-v1.0-AWQ"
model = AutoModelForCausalLM.from_pretrained(
model_name,
device_map="auto",
torch_dtype="auto",
trust_remote_code=True
)
tokenizer = AutoTokenizer.from_pretrained(
model_name
)
streamer = TextStreamer(tokenizer, skip_prompt=True, skip_special_tokens=True)
(5) 推論の実行。
# メッセージの準備
messages = [
{"role": "system", "content": "以下は、タスクを説明する指示です。要求を適切に満たす応答を書きなさい。"},
{"role": "user", "content": "まどか☆マギカでは誰が一番かわいい?"}
]
# 推論の実行
input_ids = tokenizer.apply_chat_template(
messages,
add_generation_prompt=True,
return_tensors="pt"
).to(model.device)
output_ids = model.generate(
input_ids,
max_new_tokens=512,
temperature=0.5,
streamer=streamer
)
関連
この記事が気に入ったらサポートをしてみませんか?