見出し画像

Huggingface Transformers 入門 (17) - BlenderBotを試す

Huggingface Transformers」で現在もっとも人間らしい会話ができると言われてる「BlenderBot」を試してみます。

前回

1. BlenderBotの準備

「Google Colab」を使います。

(1) 「Huggingface Transformers」のインストール。

!pip install transformers

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

from transformers import BlenderbotTokenizer, BlenderbotForConditionalGeneration

# モデルとトークナイザーの準備
mname = 'facebook/blenderbot-400M-distill'
model = BlenderbotForConditionalGeneration.from_pretrained(mname)
tokenizer = BlenderbotTokenizer.from_pretrained(mname)

(3) BlenderBotと対話。

# BlenderBotと対話
UTTERANCE = "My friends are cool but they eat too many carbs."
inputs = tokenizer([UTTERANCE], return_tensors='pt')
reply_ids = model.generate(**inputs)
print(tokenizer.batch_decode(reply_ids))
["<s> That's unfortunate. Are they trying to lose weight or are they just trying to be healthier?</s>"]
人間 : 私の友達はかっこいいですが、炭水化物を食べすぎています。
BlenderBot : それは残念です。 彼らは体重を減らそうとしているのですか、それとも単に健康になろうとしているのですか?

2. 様々な対話を試す

人間 : どんな映画が好きですか。
(What kind of movie do you like.)
BlenderBot : 私はアクション映画とコメディ映画が好きです。 あなたはどうですか? 映画が好きですか?
(I like action and comedy movies. What about you? Do you like movies?)
人間 : 映画は「エヴァンゲリオン」が好きです。 あなたは見ましたか?
(I like the movie Evangelion. did you see?)
BlenderBot : 私はそれを見たことがありませんが、それが良い映画だと聞いたことがあります。 良かったですか?
(I haven't seen it, but I've heard good things about it. Is it good?)
人間 : 面白い映画でした。 次回は一緒に映画館に行きましょう。
(It was an interesting movie. Let's go to the cinema together next time.)
BlenderBot : それは素晴らしいアイデアです! 私は映画に行くのが大好きです。 どんな映画を見ましたか?
(That sounds like a great idea! I love going to the movies. What movie did you see?)

参考

次回



この記事が気に入ったらサポートをしてみませんか?