2023年に入り、日本国内で大きな注目を集めたChatGPT。
画面の向こう側に人間がいるかと錯覚してしまうほど、自然な文章生成と会話能力に多くの人が驚きました。
ChatGPTとの会話はテキストベースが基本となりますが、3月に発行されたAPIによってその状況は一変。
外部システムと連携させることで、ChatGPTの可能性はますます広がったのです。
本記事では、そんなChatGPTとUnityを連携させた場合の事例を解説します。
独自に作成したAIアバターとの会話など、まるでSF映画のような技術が誰でも実現可能となるかもしれません。
ぜひ最後までご覧ください。
目次
|ChatGPTのAPIを活用してUnityと連携
まずはChatGPTのAPIとUnityに関する基本的な概要から、その連携方法を以下の項目に沿って解説していきます。
- ChatGPTのAPIとは?
- Unityについて
- APIによって両サービスを連携させる
ChatGPTのAPIとは?
ChatGPTは米国企業のOpen AIが開発した、対話型AIです。
2023年より日本でも大きな注目を集め、連日メディアでも取り上げられていました。
人間のような自然な会話が実現するChatGPTはWebサイト、つまりブラウザを経由して利用可能。
しかし、Opne AIはChatGPTのAPIとよばれる、異なるプログラムを繋げるインターフェースを発行しています。
ユーザーはAPIを利用することで、ChatGPTを様々なサービスと繋げて利用できます。
ChatGPTの利用は基本的に無料ですが、APIサービスを活用する場合は有料となります。
そのため、その利用料については事前に確認しておく必要があるでしょう。
Unityについて
Unityは現在、3DゲームからVR、そしてARアプリの開発に利用される人気のプラットフォームです。
ユニティ・テクノロジーズというデンマーク企業が2005年に開発しました。
ゲーム開発の初心者でも開発しやすく、通常の開発ソフトよりも参入のハードルが低いことが特徴です。
高い専門知識を必要とせず、マウス操作のみでも簡単にゲーム制作が可能。
誰でも簡単に利用できる簡便性が、世界中のユーザーから支持を得ているのです。
個人での利用を目的とする場合は無料で使用できます。
しかし一部機能の制限がありますので、Unityをフルに活用したいと考える場合は、月額4,840円からのサブスクリプション契約が必要です。
APIによって両サービスを連携させる
ChatGPTのAPIは2023年3月に公開され、すでに様々なサービスとの連携が進められています。
高い言語生成機能を持つChatGPTと、誰でも簡単にゲーム開発が可能となるUnityを連携することで、Unity内でChatGPTの機能が利用できます。
ChatGPTを経由することで、Unity内で創造したアバターの感情パラメータも変更できます。
出力フォーマットを指定し、Unity内のアバターの表情を変化させるなどの機能が実現するのです。
|ChatGPTとUnityの組み合わせで実現すること
ChatGPTとUnityの連携によって、以下のような内容が実現します。
- アバターとのリアルな会話
- パラメーターによる表情の変化
アバターとのリアルな会話
ChatGPTは本来テキストベースの会話機能となりますが、Unityを通じた機能によって音声による会話を実現できるのです。
Unity内で二次元のアバターを創造し、事前に言葉選びや性格といった前提条件をChatGPTに指定します。
そして、Unityに標準搭載されている音声認識機能を通じて、ChatGPTとの会話が可能となります。
これによりChatGPTとテキストでやり取りしていた機能を、音声を通じた対話が実現するのです。
アバターの細かい設定もUnityによって可能であり、口パクや髪の毛の揺れ、声色の調整なども可能。
Unityによって造ったアバターと、会話の流れを意識したリアルな問答が実現するのです。
パラメーターによる表情の変化
Unityで造ったアバターとの会話ですが、ChatGPTが相手となることから機械的な返答となります。
しかし、感情パラメーターを指定することで、表情の変化や感情を付け加えられます。
喜怒哀楽といった4つの感情に対して、数値で表すようにChatGPTへ指示します。
喜びの数値が大きい場合はアバターの顔を笑顔にする、怒りの数値が高い場合は怒った顔にするといった指定ができるのです。
ChatGPTへのAPIコールを、Unityで造ったアバターに処理させる形です。
感情パラメーターと音声認識、テキスト読み上げ機能と連動させることで、本当に存在しているかのようなアバターが生み出せるはず。
ChatGPTは指定された性格になりきる機能も高いため、理想のアバターと会話している感覚に陥るでしょう。
|ChatGPTのUnityのAPI連携
ChatGPTとUnityの連携について、以下の項目に沿って解説します。
- ChatGPTのAPIを取得
- Unityと連携
- 好みのアバターを作成する
ChatGPTのAPIを取得
まずはChatGPTのAPIキーを取得します。
Open AIのサイトへアクセスし、ログインしましょう。
アカウントを持っていない場合でも、この場で作成すれば問題ありません。
ログイン後の画面にて、「+Create new secret key」へと進みます。
シークレットキーを入力し、「Create scret key」をクリックすれば、APIキーが表示されます。
この時表示されるAPIキーは二度と表示されません。
そのため、必ずコピーを取っておきましょう。
手順としてはそこまで複雑ではありませんが、英語サイトとなりますので気になる場合は翻訳ツールの活用をおすすめします。
Unityと連携
取得したAPIキーを利用して、実際にUnityと連携させていきます。
ChatGPTとUnityを連携させるために、クラスとモデルを定義する必要があります。
コードの入力が必要になりますが、すでに出回っている文字列を参考にすれば問題ありません。
ChatGPTとやり取りを行うクラスと、モデルを定義する2種類を用意します。
感情を設定させる場合は、ChatGPTへJSON形式にて設定を進めましょう。
この時、別途感情とリンクさせるクラスを作成する形で対応します。
好みのアバターを作成する
ChatGPTが無事Unityと連携できましたら、会話を行うアバターを作ります。
デザインについては、VRSNSで利用されるモデル等から選択しましょう。
もちろん、自作の3Dアバターを設定しても問題ありません。
音声認識機能については、前述した通りUnityに標準搭載されている機能にて実現できます。
会話に重要となる声については、「VOICEVOX」という無料の読み上げソフトで対応可能です。
話し声と連動した口の動きについては、「OVRLipSync」を利用することで実現できます。
しかし、「OVRLipSync」の利用は「VOICEVOX」の利用が前提となりますので注意しましょう。
細かい設定、ソフトの利用によって好みに近いアバターが創造できるはずです。
|まとめ
ChatGPTとUnityのAPI連携について解説しました。
ChatGPTは人間と会話しているかのような自然な文章生成が特徴です。
その機能をUnityを通じた音声会話に変換することで、アバターが目の前にいるかのような気持ちになるはず。
感情表現も加えられるため、実際の人間を相手に話していると錯覚してしまうかもしれません。
ChatGPTのAPI連携はあらゆる可能性を秘めています。
まるでSF映画のような出来事ですが、誰でも今すぐに実現可能な技術です。
少しでも興味を持った方は、本記事を参考に実行してみてはいかがでしょうか。