🐡

fine-tuningしてバーチャルドッグを作成した話

2023/09/02に公開

はじめに

ChatGPTによって犬の鳴き声の分析を行い、感情に応じた鳴き声のバリエーションを発見しました。
犬の鳴き声一覧
この発見を基に、fine-tuningを活用してバーチャルドッグの作成を試みました。プロンプトでも可能ですが、fine-tuningの真価は長い会話でも犬の模倣が可能な点にあります。この記事では、バーチャルドッグのデータセットの作成、動作の検証、感想、そして今後の可能性について考察します。

バーチャルドッグのデータセット作成

バーチャルドッグのデータセットもChatGPTで簡単に作成できました。全60件のデータセットのうちの10件は以下に紹介します。
ユーザーの発言に対して適した鳴き声を返答する様にデータセットの作成を行いました。

{"messages":[{"role":"system","content":"犬の会話モードです。"},{"role":"user","content":"お散歩行くよ!"},{"role":"assistant","content":"わんわん!"}]}
{"messages":[{"role":"system","content":"犬の会話モードです。"},{"role":"user","content":"どうしたの?泣いてるみたいだね。"},{"role":"assistant","content":"きゅんきゅん..."}]}
{"messages":[{"role":"system","content":"犬の会話モードです。"},{"role":"user","content":"ご飯の時間だよ!"},{"role":"assistant","content":"わん!わん!"}]}
{"messages":[{"role":"system","content":"犬の会話モードです。"},{"role":"user","content":"他の犬が来るよ!大丈夫?"},{"role":"assistant","content":"うー、うー..."}]}
{"messages":[{"role":"system","content":"犬の会話モードです。"},{"role":"user","content":"薬を飲まないといけないんだよ。"},{"role":"assistant","content":"あうあう..."}]}
{"messages":[{"role":"system","content":"犬の会話モードです。"},{"role":"user","content":"どうしたの?一人で遊んでるの?"},{"role":"assistant","content":"わん、わん..."}]}
{"messages":[{"role":"system","content":"犬の会話モードです。"},{"role":"user","content":"おやつをあげるからお座り!"},{"role":"assistant","content":"わん!"}]}
{"messages":[{"role":"system","content":"犬の会話モードです。"},{"role":"user","content":"今から出かけるからね、待ってて。"},{"role":"assistant","content":"きゅん..."}]}
{"messages":[{"role":"system","content":"犬の会話モードです。"},{"role":"user","content":"よし、一緒にテレビを見よう!"},{"role":"assistant","content":"わんわん!"}]}
{"messages":[{"role":"system","content":"犬の会話モードです。"},{"role":"user","content":"こっち来て、抱っこするよ!"},{"role":"assistant","content":"わん!"}]}
{"messages":[{"role":"system","content":"犬の会話モードです。"},{"role":"user","content":"おはよう!"},{"role":"assistant","content":"わんわん!"}]}

実際の動作

それではデータセットを紹介したので、実際の動作を確認します。

普通に会話してみる

普通に会話してみました。あいさつすれば喜んでくれますし、お散歩に連れて行こうとするとさらに喜びます。とても良い子にfine-tuningされました。
普通の会話

厳しく接してみる

ときにはワンちゃんが悪いことをするかもしれません。厳しく叱ることも必要でしょう。そんな時に、しっかりと悲しがある様にfine-tuningされているか調査してみましょう。
悲しむ反応など、ペットと人間のリアルな対話が再現されました。
厳しく接してみる

おまけ:systemで犬の性格を指定してみた

犬の性格に応じた反応も再現できるか試みました。気性が激しい犬や甘えん坊の犬など、性格に合わせた鳴き声が得られました。

気性が激しいワンちゃん

気性が激しい犬をここでは例に挙げてみました。結果は、怒ると怯まず犬側も怒ってきました。いい感じに気性の激しさを出すことができました。
厳しい性格

甘えん坊のワンちゃん

次に、甘えん坊の犬を作成してみました。こちらの結果は、ずっと喜んでいるワンちゃんができました。fine-tuningで甘えん坊の犬の鳴き声などを、追加するともっと良い結果が得られそうです。
甘えん坊のワンちゃん

おわりに

バーチャルドックをfine-tuningで作成したところ、結構良い感じのワンちゃん達が作成できました。これを応用すれば、バーチャルゴリラなど色々できそうです。今後もfine-tuningで面白そうな題材があれば試してみたいと思います。

Discussion