OpenAI GPTでカスタムRPGゲームを作ろう
目次
- カスタムOpenAI GPTの構築方法についての概要
- テキストベースの冒険ゲームの作成手順
- ゲームの流れとアクションの選択方法
- ゲーム内でのダイスの使用方法と結果の判定
- AIによるシーンの画像生成と表示方法
- カスタムGPTの作成手順と設定方法
- プロンプトの工夫と品質向上のための指示の追加
- PDFファイルからのデータの読み込みと活用方法
- 対話の開始方法と会話スターターの追加
- ゲームのデプロイと共有方法
- Assistants APIを使用したAPIのデプロイ方法
- カスタムGPTの活用例と収益化の方法
🎮 カスタムOpenAI GPTでテキストベースの冒険ゲームを作ろう
OpenAI GPTを使用して、インタラクティブなテキストベースの冒険ゲームを作成する方法を学びましょう。このゲームはDungeons & Dragonsのようなスタイルでプレイされます。各シーンで冒険が進行し、プレイヤーは選択肢やカスタムアクションを選びます。さらに、ゲーム内でPythonを使用してダイスを振ることもできます。ゲームの進行に合わせてAIがシーンのイメージを生成することも可能です。今日作成するカスタムGPTは、これらのすべてを実現し、プレイヤーをユニークな冒険に導きます。複雑なように思えるかもしれませんが、実際には非常に簡単です。次の15分間でステップバイステップで説明していきますので、自分自身で冒険ゲームを作成する方法を学びましょう。それでは始めましょう。
Before we begin though, let's take a look at what the entire project will look like once we're done with it today. Once we load it up, you can see that it is a custom GPT called "RPG Game Master" and it runs a beginner-friendly Dungeon Master campaign. ここでもう一度冒険ゲームの全体像を見てみましょう。起動すると、「RPG Game Master」というカスタムGPTが表示されます。これは初心者向けのダンジョンマスターキャンペーンを実行します。ここではすぐに始めるためのいくつかの会話スターターをクリックできます。また、自分自身のメッセージを入力して開始することもできます。ここでは「レベル1の戦士としてプレイ」と入力します。最初のメッセージを送信すると、カスタムGPTが応答の準備を始めます。実際の冒険の内容は、このPDFファイルから読み込まれます。このPDFファイルには、冒険中のすべてのエンカウンターや選択肢、敵の能力などが記載されています。アプリに戻ると、PDFで説明されている通りのシーンが表示されます。そして、選択肢が2つ表示されます。上り道を選ぶか下り道を選ぶか選ぶことができます。それぞれに異なるエンカウンターが待っています。プレイヤーとしては、アクションを入力するだけで行動を選ぶことができます。たまに、冒険に基づいてカスタム画像も生成されます。このゲームの素晴らしいところは、利用可能なオプションが合わない場合は、自分自身でカスタムアクションを入力して結果を見ることもできることです。では、実際にやってみましょう。この場合、敵を潜り抜けるか、逃げ出すかという選択肢が与えられましたが、私は自分自身の作戦を考え出して、彼らを脅すことにしました。それでは、ゲームマスターがこのアクションを解釈し、次に何をするかを決定します。シナリオがここで展開されます。どんなアクションを起こすにも、ダイスを振ってそのアクションが成功するかどうかを判定する必要があります。このRPGマスターはそう認識しており、ダイスのランダムな計算にPythonを使用します。ここで、1から20の間のダイスを振るためにPythonのランダムメソッドを使用し、結果は6となりました。残念ながら、このアクションは失敗しましたので、結果はかなり悪いものです。しかし、次に何をするかを選択することができます。そして、ゲームはこのように続いていきます。ほぼキャンペーンの終わりまで続けられます。もしPDFファイルをアップロードしたり、ゲームのための別のセットの指示をアップロードしたりする場合は、それらの指示に従うことも期待できます。このプロジェクトの目的は、楽しくカスタムOpenAI GPTを作成する方法を学ぶことです。PDFからデータを読み込み、カスタムのイメージを生成する能力など、その機能のいくつかを紹介します。また、アプリのテスト方法とデプロイ方法についても説明します。このプロセスの最初のステップは、実際にカスタムGPTを作成することです。それにはOpenAIのアカウントが必要ですので、まだ持っていない場合は登録してください。GPT-4を使用するには購読も必要です。GPT-3でも試すことはできますが、すべての機能が備わっていない可能性があります。始めるには、「chat.openai.com」にアクセスし、サイドバーから「Explore」をクリックします。ここには作成したGPTがリストアップされています。これまでに作成したものも表示されますが、新しく作成するためには「Create a GPT」ボタンをクリックします。すると、以下のような画面が表示されます。左側には便利なGPTビルダーがあり、GPT全体を一気に構築するよう依頼することもできます。ただし、学習目的のために自分で設定することもできます。GPTの設定を行う際には、OpenAIがアイコンを自動生成する機能も利用できます。重要なのは、インストラクションセクションです。これは、新しいGPTがユーザーとの対話時に使用するプロンプトです。プロンプトの内容は、指示に従ってGPTがステップバイステップで進行します。以下のようなプロンプトを使ってみましょう。詳細を確認したい場合は、ビデオを一時停止して内容を読んでみてください。プロンプトをカスタマイズして、自分のカスタムGPTの指示に追加します。これらの設定ができたら、すでにテストを開始することができます。右上隅にある「Save」をクリックして保存したら、直接相互作用できるページに移動することがあります。試してみて、何が起こるか確認しましょう。シンプルなプロンプトでも十分に機能しますが、まだ完璧ではありません。ここで作り上げた情報に基づいていくつかの内容が作られており、それが望ましい内容とは限りません。最終的には、プロンプトを改善し、プレイヤーのためにダイスを振ったり、イメージを生成したりする方法を説明する必要があります。GPTのタブをクリックしてGPTの編集に戻ります。現時点では、GPTは基本的な冒険ゲームの進行を説明できますが、ストーリーや構造はまだありません。どのように改善できるでしょうか?それには、D&Dの冒険やキャンペーンは通常、冒険全体のストーリーやキャラクター、アクションなどが記述された冊子として書かれることがあります。これらは無料でオンラインで入手できるものがたくさんあり、データソースとして使用できるようにしたいと考えています。私は、「The Wealthy Merchant」というキャンペーンPDFをダウンロードしましたが、それは非常に短いキャンペーンです。たった1ページだけですが、冒険を始めるのにぴったりです。ここには、バックストーリーやさまざまなエンカウンター、アクション、キャラクターがすでに記載されています。このキャンペーンを簡単にGPTに添付することができ、ゲームはその情報を利用してプレイヤーに冒険を語りかけることができます。プロンプトを変更して添付データの使用を明示的にする必要がある場合は、それを試してみることもできます。ここに「Knowledge」というセクションがあり、それらは基本的にGPTに追加できるファイルです。検索の拡張生成を使用して、それらのファイルから情報を見つけ、応答の一部として使用します。ここで「ファイルのアップロード」をクリックして冒険のPDFを見つけてアップロードします。更新が終了すると、再びテストすることができるようになります。これまでの設定を「保存または更新」する必要はありません。ここにある「Preview」タブでテストしましょう。冒険を再開します。今回は、前回よりもずっと良い結果が出ました。冒険のオリジナルPDFを並べて確認してみましょう。GPTが語るストーリーとプレイヤーが選べるオプションを読むと、実際のキャンペーンで記載されている内容が反映されていることがわかります。それでは、対話の開始方法と会話スターターを追加する方法を見てみましょう。会話の開始方法は、プレイヤーが最初の対話を自分で入力する必要がないようにするためのものです。特定のタイプのアプリケーションにとっては非常に便利であり、対話を正しい方法で開始できるようにします。この場合、良い会話スターターの例は「how do I play?」や「play as a level 1 ninja?」、「play as a level 1 wizard?」などです。設定ページに戻り、会話スターターのセクションに自分の会話スターターを追加するだけです。ここにいくつかの会話スターターを追加しました。プレビューでリフレッシュをクリックすると、対話を開始するための便利なボタンが表示されます。最初のメッセージを自分で入力する必要はありません。入力したい場合は、まだ入力することもできますが、これらのボタンを直接クリックできます。たとえば、「play as a level one ninja」というボタンをクリックするだけで、対話を開始することができます。これは、GPTとの対話を始めるためのはるかに簡単な方法です。これはまた、この情報も利用しており、オプションやシーンのイラストに反映されていることがわかります。次に、ゲームをデプロイし、他の人が使用できるリンクを作成する方法を見てみましょう。これは非常に簡単です。右上隅の「Save」ボタンをクリックすると、パブリックにするかリンクで利用できるようにするかを選択することができます。「Save」をクリックして確認するだけです。ウェブブラウザでアクセスすると、自分自身のGPTを表示し、対話することができるようになります。他の人に送信すると、彼らもGPTを使用できるようになります。OpenAIは近々GPTストアをリリースする予定です。したがって、優れたカスタムGPTを作成した場合、他の人はそれを使用するために支払い、その収益の一部を受け取ることができます。それでは、このゲームをAPIとして展開する場合はどうなるでしょうか?直接展開することはできませんが、十分に近い状態にすることができます。OpenAIには「Assistants API」という機能があり、カスタムGPTと同様のことができます。OpenAIアカウントにログインし、「assistants」をサイドバーでクリックします。「assistants」を作成するためにクリックします。先ほど見たカスタムGPTと同様のassistantを作成しました。名前や指示、モデルを選択することもできますが、同等の機能はありません。たとえば、画像生成の機能はありませんが、ファイルを添付することはできます。そして、ここをクリックしてテストすることもできます。完全に同等の品質ではありませんが、カスタムGPT機能を使用した場合に比べて、応答が良いものが得られました。理由はわかりませんが、モデルやプロンプトの違いが関係しているかもしれません。しかし、Assistants APIを使用すると、OpenAIクライアントから直接呼び出すことができます。PythonアプリやJavaScriptアプリでSDKを使用して、APIを直接呼び出すことができます。全体的に、この機能は、カスタムGPTと同様の機能を持つAPIをアプリケーションの一部として統合したい場合に非常に役立ちます。このビデオがお楽しみいただければ幸いです。自分自身のカスタムGPTを作成した場合は、ぜひコメントで共有してください。他の人の作品もチェックしてみたいと思います。また、本格的なAIをプロダクションで使用するさまざまなオプションに興味がある場合は、Amazon Bedrock APIを使用してテキストと画像を生成する方法について学ぶためのこのビデオもご覧ください。それでは、ご視聴ありがとうございました。次回をお楽しみに。