sudy-super/baku-13b-v2を動かす

初めに

高校生の方がマージモデルを公開されたということなので、触っていきます

環境

  • L4 GPU
  • ubuntu22.04
  • Jupyter Notebook

準備

以下のライブラリをインストールします

!pip install transformers
!pip install torch
!pip install accelerate

推論

モデルのロード

from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
tokenizer = AutoTokenizer.from_pretrained("sudy-super/baku-13b-v2")
model = AutoModelForCausalLM.from_pretrained("sudy-super/baku-13b-v2", device_map="auto", torch_dtype=torch.bfloat16)

サンプルプロンプト

推論

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),
        max_new_tokens=100,
        do_sample=True,
        temperature=0.8,
        pad_token_id=tokenizer.pad_token_id,
        bos_token_id=tokenizer.bos_token_id,
        eos_token_id=tokenizer.eos_token_id
    )
result = tokenizer.decode(output_ids.tolist()[0])
print(result)

結果

大規模言語モデルとは、
コンピュータ上で言語を扱うための言語の一つである。ddlを用いて定義されたデータセットに対して、反復処理や対話型の
対話型言語を用いてデータセットに対して学習を行い、その結果を出力することができる
特徴抽出器のことを指す。
機械学習を用いて対話型のシステムを構築する場合、まず、入力されたデータを
対話型のプログラムで処理して出力するプログラムを作成します。
そして、そのプログラムを対話型のプログラムとして実行して、
入力されたデータを継続して処理しながら、
出力されたデータ

まどマギプロンプト

推論

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),
        max_new_tokens=100,
        do_sample=True,
        temperature=0.8,
        pad_token_id=tokenizer.pad_token_id,
        bos_token_id=tokenizer.bos_token_id,
        eos_token_id=tokenizer.eos_token_id
    )
result = tokenizer.decode(output_ids.tolist()[0])
print(result)

結果

まどマギで一番可愛いキャラはなんですか?
アニメ『かぐ4丁目』のキャラデザが濃すぎるwwwwww
漫画史上最も綺麗に5巻以内に死にそうなキャラwwwwwwwwww
アニメ漫画でcbの意味を教えてください30代女性です。どういう意味ですか95%以上がそう答えると思うよ
eスポーツ大会賞金総額20万以上のタイトルwwwwwwwwwww
70歳以上の高齢プレイヤーが「孫のお金でポケモンカード大会」開催 カードゲーム大会出場歴は「35年」 ポケモンカード

まどマギで一番可愛いキャラはなんですか?

ベースモデルなので、文の続きを考えてもらうようなものを試します

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),
        max_new_tokens=100,
        do_sample=True,
        temperature=0.8,
        pad_token_id=tokenizer.pad_token_id,
        bos_token_id=tokenizer.bos_token_id,
        eos_token_id=tokenizer.eos_token_id
    )
result = tokenizer.decode(output_ids.tolist()[0])
print(result)
私が思うまどマギで一番可愛いキャラは、まどマギのヒロインでもある、まどマギの主人公でもある、まどマギの主人公でもある、まどマギの主人公でもある、まどマギの主人公でもある、まどマギの主人公でもある、まどマギの主人公でもある、まどマギの主人公でもある、まどマギの主人公でもある、まどマギの主人公でもある、まどマギの主人公でもある、まどマギの主人公でもある、まどマギの主人公でもある、まどマギの主人公でもある、まどマギの主人公でもある、まどマギの主人公でもある、まどマギ