Views
No views yet
transformersライブラリを使えば、数行のコードで簡単に文章を生成できます。1from transformers import AutoTokenizer, AutoModelForCausalLM
2
3# モデル名をご自身のものに書き換えてください
4model_name = "hairenyecun/rinna-gpt2-small-zenigata-heiji"
5
6tokenizer = AutoTokenizer.from_pretrained(model_name)
7model = AutoModelForCausalLM.from_pretrained(model_name)
8
9# プロンプト(生成のきっかけとなる文章)
10prompt = "神田明神下の長屋で、また一つ事件が起きた。早速、親分の下へ駆けつけると"
11
12# 文章生成
13generated_ids = model.generate(
14 tokenizer.encode(prompt, return_tensors="pt"),
15 max_length=128, # 生成する最大長
16 min_length=30, # 生成する最小長
17 do_sample=True, # 次の単語を確率的に選択
18 top_k=50, # 上位50個の単語から選択
19 top_p=0.95, # 上位95%の確率を持つ単語群から選択
20 num_return_sequences=1, # 生成する文章の数
21 pad_token_id=tokenizer.pad_token_id,
22 bos_token_id=tokenizer.bos_token_id,
23 eos_token_id=tokenizer.eos_token_id
24)
25
26generated_text = tokenizer.decode(generated_ids[0], skip_special_tokens=True)
27print(generated_text)rinna/japanese-gpt2-smallのライセンスを引き継ぎ、MIT の下で公開されています。