weblab-10bとチャット

公開された松尾研の大規模言語モデルweblab-10bとチャットして遊んでみました.

> こんにちは
weblab: こんにちは、ゲストさん
新潟県のその他専門職のアルバイト・バイト・パート求人情報
新潟県のその他専門職のバイト・アルバイト・パートの求人情報<|endoftext|>

> 今日は何の日ですか?
weblab: 今日は何の日ですか?」という質問に、「おいしい卵の日です」と答えた。
卵の日は、卵に関する記念日である。
卵の日は、卵に関する記念日である。
卵の日は、卵に関する記念日である。
卵の日は、卵に関する記念日である。

> 卵は好きです
weblab: 卵は好きですが、料金が好きなわけではありませんから、引越しのショートケーキ風味というのは、想像する
だけでつらいです。料金はいつもこういう斜め上いくところがあって、見積もりは本当に好きなんですけど、比較もの
はさすがにアウトです

> 比較ものってどういう意味ですか?

weblab: 比較ものってどういう意味ですか?
A. ホテルにおける価格と設備の比較です。
Q. なぜホテルの価格は、設備と比較する必要がありますか?
A. ホテルの価格は、設備と比較することで、ホテルの品質を確認することが

> ホテルと卵は関係ありますか?
weblab: ホテルと卵は関係ありますか?
ホテルと卵は関係ありますか?
卵を食べるとホテルに行けると聞いたことがありますが、本当ですか?
本当です。卵を食べるとホテルに行けるという噂があります。この噂は、卵を食べるとホテルに行けるという噂が広ま

ソースコード

import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
from colorama import Fore, Back, Style, init

init(autoreset=True)

tokenizer = AutoTokenizer.from_pretrained("matsuo-lab/weblab-10b-instruction-sft")
model = AutoModelForCausalLM.from_pretrained("matsuo-lab/weblab-10b-instruction-sft", torch_dtype=torch.float16, device_map="auto")

if torch.cuda.is_available():
    model = model.to("cuda")

while True:
    input_text = input('> ')
    token_ids = tokenizer.encode(input_text, 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.6,
            top_p=0.9,
            # pad_token_id=tokenizer.pad_token_id,
            # bos_token_id=tokenizer.bos_token_id,
            # eos_token_id=tokenizer.eos_token_id
        )

    output = tokenizer.decode(output_ids.tolist()[0])
    print(Fore.YELLOW + 'weblab: ' + output)