はじめに
以前はLLMで職場の先輩を作ろうとして失敗したので、今回はGPTsで作ってみました。
実施内容や小技を紹介しているので、参考になれば幸いです。
対象
- GPTsで何か作ろうと考えている方
- GPTsに興味がある方
GPTsとは
GPTsは、一言で言うとオリジナルなChatGPTが作れるというサービスです。
検索やプログラムの実行、画像生成まで出来ます。
特筆すべき点は、ノーコードで誰でも簡単に出来てしまうと言う点です。
GPTsは以下の添付写真のように(1)チャット形式(2)Confuguresでの文章書き込みの2種類の方法で作れます。
チャット形式で設定した内容は、Configuresに反映される仕様になっています。
とても簡単です。
ちなみにチャット形式は英語で始まりますが、「日本語で」と打てば以降日本語で対応してくれます。
GPTsの作り方
以下3つの手順で先輩GPTsを作りました。
- 属性入力
- 特徴入力
- 観測者から見た特徴の入力
- ツイート情報からの特徴抽出&入力
- 微調整
以降では、それぞれについて説明します。
属性入力
属性とは、人種、性別、年齢、職業などの情報です。
先輩の特徴を導入する基礎・土台をGPTsに教えるというイメージです。
特徴入力
特徴とは、今回の場合は個人特有の趣味や口調、口癖等を指します。
まず観測者から見た特徴をGPTsに入力します。(語尾にwが多い、たまに関西弁を話す等)
次に収集したツイート情報から、ツイートした個人の特徴をGPT4に分析して特徴を抽出してもらいます。
ツイート情報から上図のような形で特徴を抽出してくれます。特に観測者である自分が言語化できなかった特徴まで抽出できているのがポイントです。
そして抽出された特徴をGPTsに教えます。これによってGPT4から見た客観的な特徴を入力することができます。
微調整
最後に上記で作成したGPTsの出力を見ながら微調整します。(考え方は強化学習と似ていますが、学習をしていないので本質的には全く異なります。)
特に出力の長さや敬語をあまり使わせないようにするのが苦労しました。
微調整のコツを2つ紹介します。
-
重要なことを何度でも
設定事項を忘れてしまうことが度々ありました。重要な情報は何度もチャット形式で入力するとよいです。どうしてもうまくいかない場合はConfigureの文で2回重要な情報を最初と最後につけるとよいです。
(LLMの論文では重要な情報を何度も入力することで精度が向上することが報告されている。) -
具体的な指示・数字を使った指示
「敬語を使わないようにして」という指示を「敬体と常体の頻度を1:999にして」に変えるとうまくいきました。指示が通らないときは、具体的な表現に言い換えるとうまくいくことがあります。
GPTsの評価
評価は定性評価のみを行います。(定量的な評価は別記事で作成します。)
GPTsに趣味を答えてもらいます。
###GPTsの回答
趣味はいっぱいあるけど、特に車いじりとアニメ観るのが好きやね。週末はよくインプレッサでドライブ行ったり、家でアニメのマラソンしたりしてるよ。あと、サッカー観戦とゲームも大好きで、ちょいちょい新しいゲームに手を出したりするんだよね~。w
弊社の人にしか伝わりませんが、先輩Nさんに似ています!!!内容、口調、語尾などがそれっぽいです。
GPTs恐るべし。。。!!!!
おわりに
割といい感じの先輩に似たGPTsが作れました。(今までのLLMのファインチューニングはなんだったんだろうか。。。。)
今後は、センサーやモーターをつけて擬人化させてみたりするのも面白そうです。
皆さんも独自のGPTs作成してみましょう!!