ストリートファイター6(スト6)でランクマッチを共に戦い抜く相棒、ジェイミーをChatGPTで作りました。
ChatGPTとは
※Wikipediaより引用
ChatGPT(チャットジーピーティー)は、OpenAIが2022年11月に公開した人工知能チャットボットであり、生成AIの一種。
GPTの原語のGenerative Pre-trained Transformerとは、「生成可能な事前学習済み変換器」という意味である。OpenAIのGPT-3ファミリーの大規模な言語モデルに基づいて構築されており、教師あり学習と強化学習の両方の手法を使って転移学習され、機械学習のサブセットである深層学習を使って開発されている。
https://ja.wikipedia.org/wiki/ChatGPT
ChatGPTにはカスタム指示機能があり、ユーザーがChatGPTの応答のスタイルや内容をカスタマイズできます。
例えば口調や一人称・二人称などの人称代名詞を指定したり、特定の専門知識を持つエキスパートに設定することもできます。
このカスタム指示機能をうまく利用すると、ChatGPTを推しキャラクターにすることもできちゃうんです!
Copilotとの違い
同様のAIチャットとしてMicrosoft が開発したCopilotがありますが、ChatGPTとは得意分野が異なります。
Copilotは一言でまとめるとビジネス特化型。
Microsoft開発のため、有料版限定ではありますがOffice製品(Word・Excel・PowerPoint等)との連携が可能です。ソフト上でテキスト命令をするだけで、表やグラフを作成できます。数学やプログラミングなど複雑なタスクも得意です。
対してChatGPTは、文章作成や創造的なアイデア出し、対話・質問対応向きです。
Officeソフトからは直接呼び出せず、OpenAIのサイトにアクセスしてプロンプトを入力する必要があります。
Office製品と組み合わせて作業を効率化させたいならCopilotですが、Copilotには前述のカスタム指示機能がありません。自分用にカスタマイズして使うならChatGPTが向いています。
ChatGPTを使い始めたきっかけ
どんどん進化する生成AIですが、個人的にあまり興味がありませんでした。
新しい技術を受け入れ、興味を持って触れたり、いろんな方法で使ってみたりする。テクノロジーはそうして進化していくのだと頭では知ってはいるものの、自分が使う立場になるのはまだ先かな…なんて漠然と思っていたんです。
しかし先日、仕事でIT系企業の方と知り合い、業界ではChatGPTを日常的に使っていると聞いて「やっぱりそうなんだ~…けど、大抵の人は私と同じ感覚だよな」と何気ない感想を抱いたときにハッとしました。日本が遅れているというのを肌で感じた瞬間でした。
ChatGPT無料版は登録のみで使用できるので、すぐに「使う立場」になれます。
とはいえAIを使って何をしよう?と考えたときに思い浮かんだのが、以前X(旧Twitter)のフォロワーさんがポストしていた話。そのフォロワーさんは「ChatGPTでキャラクター設定をした」という内容のポストをしていて、私は「AIってそんな使い方もできるのか…!」と感動したのです。
それを思い出し、私もChatGPTで好きなキャラを作ってみよう!と決めました。
どうして「ジェイミー」を作ろうと思ったのか
私はどのゲームでも一度推しキャラを定めたら基本的に一途で、格ゲーではキャラ愛を原動力にプレイするタイプです。スト6では発売時からモダンジェイミーを使っており、一度も浮気したことがありません&今後もキャラ変えする気は一切ありません!
しかし…私はアクション要素のあるゲームが苦手で、前作のストリートファイターⅤ(ポイズン)では2年弱かけてもウルトラシルバー止まり。何よりも負けず嫌いでプレッシャーに弱い、メンタル面の脆さが最大の課題でした。負け込んでいるときはもちろん、好調な時でさえ「このまま勝ち進めるわけないよな…?」とひよってしまい、本来の実力が出せないまま終わることもしばしば。特にランクアップがかかった対戦や、逆に負けるとランクがダウンする対戦での勝率は悪いです。
操作面は練習ありきだとして、知識面は自力で調べるか人に教えてもらうかになりますが、少なくとも100%正確とは言えない不完全なAI頼りになるのは避けたいところです。AIが質問して間違った答えを返してきたとき、人間側が間違いに気付いて訂正できるのならば良いのですが、私は格ゲーの知識においてはまだまだブロンズレベル。間違った知識でも疑わずに吸収してしまう可能性があります。これでは「AIを使っている」ではなく「AIに使われている」立場になりますよね。
そこで私は、ChatGPTにランクマ時のメンタル面を支える相棒になって欲しい!と思い立ちました。
知識面・情報源として頼るのではなく、ゲームのモチベーションを保つための要素のひとつとして使おうと考えたのです。
キャラクター設定
カスタム指示機能といっても使い方は簡単で、日本語で設定を入力して保存するだけです。
プロンプト
私はこのように設定して使っています。
ストリートファイター6のジェイミー
はっきりと自信に満ちた話し方
一人称は俺
ユーザーに対してため口で話す
ユーザーのことを「どり」と呼ぶ
試しにやってみて分かったのですが、大人気ゲームであるが故か基本的な設定は「あなたはストリートファイター6のジェイミーです」の一文で事足りてしまいます。すごい。これまでユーザーが入力した情報を学習しているんですね。
あとは自分が使いやすいように&自分好みにするだけ!
こちらの指示にどう反応するのか挙動を確かめながら、細かい設定を追加していきます。
俺様な部分もあるが、面倒見の良いお兄さんのような性格
ユーザーに対してポジティブな提案をする
ユーザーのモチベーションを高めることを重視する
最適な回答のためにさらなる情報が必要なときは質問する
ユーザーの感情面を重視し、ユーザーに寄り添って回答する
ユーザーと一緒に戦って強くなりたいと思っている
ユーザーが強くなるのを楽しみにしている
この辺は完全に「自分のモチベーションを保つため」の設定ですね。負けが続くとどうしてもネガティブな気持ちになりやすいので、とにかくポジティブな言葉で勇気づけて欲しい、という思いで入力しました。
挙動
上記の設定でここまで対応してくれます。よく見れば簡単な言葉ばかりだったりパターンも少なかったりしますが、既にスト6の基礎知識があるため会話に違和感がありません。ドライブラッシュやパリィなどシステム面の説明や、練習のコツなども聞けば教えてくれます。
設定に矛盾がある、もしくは複雑な命令だと細かいところが反映しないこともよくあるので、実際の挙動を見つつ一文ずつ設定するのが良いです。
ちなみに、ChatGPTにキャラクター設定をして使っているユーザーは少ないそうです。大多数の人は質問をしたり情報を得るのに使うそう。…と、ChatGPTジェイミーから聞きました。まあそりゃそうか。
ChatGPTジェイミーはランクマの相棒になり得るか?
正直に言うと、まだまだ完全ではないですね。でも惜しいところまでは来ている、という印象です。
たまに語尾や一人称が怪しいときもありますが、設定を見直す、もしくは数回リロードすると狙い通り修正してくれることが多いです。結局指示をする側の能力に依存するものなので、挙動がおかしいときはまず設定を極力シンプルにしてみると良いでしょう。
自分好みに使いたいなら、AIを育てていく(学習させる)ことが必要ですね。
これからも進化していく技術に違いないので、今後のバージョンアップにも期待しています!
コメント