開始1秒で恋人モードになれる推しキャラが生成される過程について【chatGPT】
note初めて2週間ほど経過しましたが、僕は一貫して
・実在人物のWeb情報からを話し方の傾向・トーンを自動で生成。
・1ファイルにまとめたものをchatGPTのプロジェクトにアップロードする
という仕組みのチャットの開発経過を定期的に書いております。
今さら気づいたのですが、このチャットにセットする創作キャラクターの設定ファイルができあがる過程について僕は一切書いていませんでした(迂闊)
今回、その入力フォームについてまとめてみました。
1.キャラクター設定用入力フォーム

生成されるキャラはあくまで実在人物とは別の存在の
創作キャラクターだよとクドいくらい記載してます(笑)
Q1 人物名

括弧で補足しておくと確実です。
Q2 年齢

Q3 ユーザー→キャラクター呼称

実在人物の本名は怒られるのでダメです(泣)
Q4 キャラクター→ユーザー呼称

Q5 キャラクター一人称

チャット開始後に相手や時と場合に応じて
可変にすることも可能な想定。
Q6 関係性ステート

開発初期には「険悪な仲」「密かに嫌っている」
みたいなマイナスな関係性もあった(笑)
Q7 距離感レベル

Q8 主導権ダイナミクス

ユーザー主導関係はプラスで設定
正直0、5、-5くらい極端に変えないと差がわからない(笑)
Q9 言語特性

【Q9 言語特性について】
基本は、Web情報から自動で取得する内容です。
ただ、
・対象の人物の知名度がまだ低く、Web情報が少ない。
・一般的には知られていないが
ファン層で確立している特徴がある。
などの情報を含めたい場合の項目となります。
Q10 ファン層イメージ

まだファンの中でもイメージが固まっていない人物の
第一印象などを取得する目的となります。
Q11 特殊設定

【Q11 特殊設定について】
人物の特記事項や、ユーザーとの関係性を記載する項目で、チャット開始後に設定することも可能です。
ただ、事前に設定しておくことで設定ファイルの全項目に前提として反映されるので、その特徴が色濃くキャラクターに染み込みます。
Q12 ユーザー指定フレーズ

【Q12 ユーザー指定フレーズについて】
キャラクターの特徴的な口癖の出現頻度を強化する目的の項目。
別の用途として実在人物はあまり使わない用語だがユーザーが使って欲しいと思うフレーズを追加することも可能。
Q13 動画文字起こし

【Q13 動画文字起こしについて】
話し方の特徴やトーンを取得を強化するための情報となります。
YouTubeなどで取得する場合は拡張機能などを使うのをオススメします。以下は僕が使っている拡張機能です。
Q14 メールアドレス
Q15 チケットコード

チケットコードは必須項目となります。
【Q14 メールアドレスについて】
・メールアドレス入力は任意で、入力しなくても設定ファイルの受け取りは可能です。
・懸念点としては、システムエラーなどで設定ファイル生成が正常に完了できなかった際にはこちら側で気づいて再生成する想定なのですが、その場合の送り先としてメールアドレスを頂いていたほうが無難なのかもしれません(検討中)
【Q15 チケットコードについて】
まだサービス化などもしていないので、明確なフローはないのですが。
イメージとしては1ユーザーに付き1つのチケットコードを、購入ページ的なものを作ってそこから配布し、そのチケットで複数回(5回くらいを想定)キャラクターのファイルを生成できるというルールにしようかと考えてました。
このコードと、設定ファイルをダウンロードする際にパスワードが同一となります。
画面上は購入となっていますが、今のところお金はとりません。
もし万が一ユーザーさんが増えてAPI使用料で赤字になっちゃうような状況になったら考えます(妄想)
使いたい人はコメントや僕のXのDMなどにご連絡いただければ。
Q16 利用規約・NG項目確認

入力申請完了画面

記載のURLに飛んでいただけるとファイル受け取りできます。
完了までの時間が1~3分となっていますが、10分くらいかかることも。
入力内容をスプレッドシートに反映(内部処理)

【このスプレッドシートの仕組み(Google Apps Scriptで自動化)】
①入力内容をシートに反映。
②設定ファイルを生成するためのプロンプトと入力内容を合わせてchatGPTのAPIに送って設定ファイルを生成します。
③ ②の情報がスプレッドシートに戻ってきたら、設定ファイルとその他必要なファイルを合わせた一式ファイルをZipファイルにまとめます。
④設定ファイルから受け取れるようになります。
※入力内容は設定ファイル生成後、1週間で自動的に廃棄されます。
※生成エラーが発生すると僕のメールアドレスに通知が来ます。
設定受け取り画面(ダウンロード失敗画面)

ファイル生成前にボタン押した場合、
ファイル保存期間超過の場合はエラーとなります。
設定受け取り画面(ダウンロード成功)

送付ファイル一式のZipの中身

チャット開始の方法は「■03_外部向けマニュアル_通常.txt」に記載されています。
2.まとめ
以上が入力フォームの仕組みとなります。
GoogleフォームやGoogle Apps Scriptを使ったのはこの時が初めてでして、かなり無駄の多い構成になっているかと思います。
我ながら怖ろしいのが、上のフォームを作っている間はもちろん、現時点でもサービス化や一般公開の予定は一切無いのにこの仕組みをせっせと作っていたことですかね。
でも、何事も病的に真面目にやるのが開発ごっこの醍醐味なのです。
関連記事
いいなと思ったら応援しよう!
よろしければ応援お願いします!