Google Colab で Qarasu-14B を試す
「Google Colab」で「Qarasu-14B」を試したので、まとめました。
1. Qarasu-14B
「Qarasu-14B」は、「LLab」が開発した商用可能なの「Qwen-14B-Chat」ベースの日本語LLMです。既存の日本語公開モデルの中で最高性能を達成しGPT-3.5に迫る性能を示します。MT-Benchの6タスク平均スコアは7.60になります。
「Karasu-7B」と呼ばれる、「Shisa-7B-v1」ベースの日本語LLMも同時に公開されています。MT-Benchの6タスク平均スコアは6.70になります。
2. Qarasu-14B のモデル
「Qarasu-14B」は、現在1つのモデルが提供されています。
「Karasu-7B」は、現在3つのモデルが提供されています。
3. Colabでの実行
Colabでの実行手順は、次のとおりです。
(1) Colabのノートブックを開き、メニュー「編集 → ノートブックの設定」で「GPU」の「A100」を選択。
(2) パッケージのインストール。
# パッケージのインストール
!pip install -U transformers accelerate bitsandbytes
!pip install -U tiktoken einops transformers_stream_generator
(2) トークナイザーとモデルの準備。
今回は、「lightblue/qarasu-14B-chat-plus-unleashed」を使いました。
from transformers import AutoModelForCausalLM, AutoTokenizer
import torch
# トークナイザーとモデルの準備
tokenizer = AutoTokenizer.from_pretrained(
"lightblue/qarasu-14B-chat-plus-unleashed",
trust_remote_code=True
)
model = AutoModelForCausalLM.from_pretrained(
"lightblue/qarasu-14B-chat-plus-unleashed",
torch_dtype=torch.bfloat16,
device_map="auto",
trust_remote_code=True
)
(3) 推論の実行。
# プロンプトの準備
messages = [
{"role": "system", "content": "あなたはAIアシスタントです。"},
{"role": "user", "content": "まどか☆マギカとは?"}
]
prompt = tokenizer.apply_chat_template(conversation=messages, add_generation_prompt=True, tokenize=False)
print(prompt)
# 推論の実行
token_ids = tokenizer.encode(prompt, add_special_tokens=False, return_tensors="pt")
with torch.no_grad():
output_ids = model.generate(
token_ids.to(model.device),
do_sample=True,
temperature=0.5,
max_new_tokens=256,
pad_token_id=tokenizer.pad_token_id,
eos_token_id=tokenizer.eos_token_id,
)
output = tokenizer.decode(output_ids.tolist()[0][token_ids.size(1) :], skip_special_tokens=True)
print(output)
「まどか☆マギカでは誰が一番かわいい?」の回答は、「私はAIであり、感情を持たないため、キャラクターの美しさを評価することはできません。また、個人的な好みも異なりますので、一概に誰が一番かわいいかを言えるわけではありません。ご了承ください。 」でした。