Google Colab で Japanese Stable LM Beta 70Bを試す
「Google Colab」で「Japanese Stable LM Beta 70B」を試したので、まとめました。
前回
1. Japanese Stable LM Beta 70B
「Japanese Stable LM Beta」は、「Stability AI」が開発した「Llama 2」ベースの日本語LLMです。最大サイズの「JSLM Beta 70B」は、700億パラメータの商用利用可能な日本語言語モデルになります。
2. Japanese Stable LM Beta 70Bの量子化モデル
「Japanese Stable LM Beta」の70Bの量子化モデルは、現在3つ提供されています。
3. Colabでの実行
Colabでの実行手順は、次のとおりです。
(1) Colabのノートブックを開き、メニュー「編集 → ノートブックの設定」で「GPU」の「A100」を選択。
(2) パッケージのインストール。
「GPTQ」を使うので、「optimum」「auto-gptq」もインストールしています。
# パッケージのインストール
!pip install transformers accelerate sentencepiece protobuf
!pip install optimum auto-gptq
(2) トークナイザーとモデルの準備。
今回は、語彙拡張済み指示モデル「stabilityai/japanese-stablelm-instruct-beta-70b」を使います。
from transformers import AutoModelForCausalLM, AutoTokenizer
# トークナイザーとモデルの準備
tokenizer = AutoTokenizer.from_pretrained(
"TheBloke/japanese-stablelm-instruct-beta-70B-GPTQ",
use_fast=True
)
model = AutoModelForCausalLM.from_pretrained(
"TheBloke/japanese-stablelm-instruct-beta-70B-GPTQ",
device_map="auto",
trust_remote_code=False,
revision="main"
)
26分ほどかかりました。
(4) 推論の実行。
回答が短かったので、プロンプトに「その理由も教えて」も追記しています。
# プロンプトの準備
prompt = """<s>[INST] <<SYS>>
あなたは役立つアシスタントです。
<<SYS>>
まどか☆マギカで誰が一番かわいい? その理由も教えて [/INST] """
# 推論の実行
token_ids = tokenizer.encode(
prompt,
add_special_tokens=False,
return_tensors="pt"
)
output_ids = model.generate(
token_ids.to(device=model.device),
max_new_tokens=128,
temperature=0.99,
top_p=0.95,
do_sample=True,
)
output = tokenizer.decode(
output_ids[0][token_ids.size(1) :],
skip_special_tokens=True
)
print(output)
この記事が気に入ったらサポートをしてみませんか?