Closed2
ChatGPT APIをUnityで動かす
やりたいこと
- Chat GPTをUnity上から動かす(n番煎じ)
- ライブラリを作ってくださっている方がいるのでそのソースコードを読んで理解を深めよう
参考
公式リファレンス
申請
- こちらのURLから発行
- 決済手段の登録などはせずに使用することができた
実装
- 参考にもはったこの記事に習って簡単にできる。
- ポイントだけまとめる
メッセージの履歴はリストに格納し都度全部送っている
public class ChatGPTConnection
{
//前提条件や会話履歴を保持するリスト
private readonly List<ChatGPTMessageModel> _messageList = new();
...
このリストが毎度送られている。
- ChatGPTMessageModelは、自分の書いた文も、ChatGPTのレスポンスで返ってくる文も同じ扱い。ただし、roleがuserかassistantかで異なる。
APIの仕様書を読んで
- 最初にsystemで、behaviourを伝えることができる。今回使った、3.5-turboのモデルではその反映が弱いらしいが、今後強くなるとのこと。
完成形(動画)
直接関係ない補足
C#言語仕様の話
- C#の言語仕様の話だが、予約語を変数名に使いたいときなどは、@を使用する。参考
UnityのUIの話
- 上にはった動画で、入力を送信した後、入力欄のテキストを空にしている
- もともと、InputFieldの値をUnityEngine.UI.Text型で受け取っていたが、これでは
inputText.text = ""
としても空にならなかった。 - Text型ではなく、InputField型で受け取れば可能
このスクラップは2023/03/12にクローズされました