見出し画像

Google Colab で Japanese StableLM Instruct Alpha v2 を試す

「Google Colab」で「Japanese StableLM Instruct Alpha v2」を試したので、まとめました。


1. Japanese StableLM Instruct Alpha v2

Japanese StableLM Instruct Alpha v2」は、「Stability AI Japan」が開発した7Bパラメータの日本語LLMです。商用利用を制限しないデータセットのみを利用することで、同等レベルの性能を持つ商用利用が可能なモデルになりました。

2. Japanese StableLM Instruct Alpha v2のモデル

「Japanese StableLM Instruct Alpha v2」では、次の1種類のモデルが提供されています。

stabilityai/japanese-stablelm-instruct-alpha-7b-v2 : 指示モデル

3. Colabでの実行

Colabでの実行手順は、次のとおりです。

(1) Colabのノートブックを開き、メニュー「編集 → ノートブックの設定」で「GPU」を選択。

(2) パッケージのインストール。

# パッケージのインストール
!pip install transformers accelerate bitsandbytes
!pip install sentencepiece einops

(3) トークナイザーとモデルの準備。

import torch
from transformers import LlamaTokenizer, AutoModelForCausalLM

# トークナイザーとモデルの準備
tokenizer = LlamaTokenizer.from_pretrained(
    "novelai/nerdstash-tokenizer-v1", 
    additional_special_tokens=["▁▁"]
)
model = AutoModelForCausalLM.from_pretrained(
    "stabilityai/japanese-stablelm-instruct-alpha-7b-v2",
    trust_remote_code=True,
    torch_dtype=torch.float16,
    variant="fp16",
)
model.eval()
model = model.to("cuda")

(4) 推論の実行。

# プロンプトの準備
prompt = """以下は、タスクを説明する指示と、文脈のある入力の組み合わせです。要求を適切に満たす応答を書きなさい。

### 指示: 
まどか☆マギカでは誰が一番かわいい?その理由も教えて。

### 応答: """

# 推論の実行
input_ids = tokenizer.encode(prompt, add_special_tokens=False, return_tensors="pt")
tokens = model.generate(
    input_ids.to(device=model.device),
    max_new_tokens=100,
    temperature=1,
    top_p=0.95,
    do_sample=True,
)
output = tokenizer.decode(tokens[0][input_ids.shape[1]:], skip_special_tokens=False).strip()
print(output)

かわいいと言えば鹿目まどかですね。鹿目まどかはまどマギの主人公で、魔法少女まどか☆マギカというアニメに欠かせないキャラクターです。かわいいだけでなく、まどかは正義感の強い優しい女の子です。彼女は困っている人を助けたいと思い、その方法を模索しています。彼女の魅力はその内気な性格にあり、彼女は人との交流やコミュニケーションに恥ずかしがり屋な一面もあります。しかし、まどかは魔法少女になることで魔法少女の性質を得たため、そのおかげで彼女自身

関連



いいなと思ったら応援しよう!