ライブラリを活用してChatGPTクローンを作る
概要
- exaBase Studioが提供するプリセットのリソースである
ライブラリ
を活用し、ChatGPTのクローンをデプロイします。 - 約10分で実際に動作するアプリケーションを作成することが可能です。
- configファイルの内容を変更することで、多様な用途に応じたカスタマイズが可能です。
ライブラリが可能にする効率的でフレキシブルな開発
- exaBase StudioではCanvas上で設計する際に「ノード」と呼ばれるさまざまなタイプのパーツを組み合わせます。
- ノードの設定や処理内容をゼロから記述することも可能ですが、exaBase Studioが提供するプリセットのノードや複数のノードをモジュールとしてコピー&ペーストすることが可能です。
- ライブラリで提供されているものは、CanvasのGUIからカスタマイズ可能な項目を含んだものが多く、開発の効率を上げつつもアプリケーション作成においてユーザーが自在に変更を加えることが可能です。
チュートリアル
(1) JSONファイルをダウンロードする
- gpt-clone.json をダウンロードします。右クリックし「リンク先を別名で保存」を選択してファイルを保存してください。
(2) 環境に合わせた変更を行う
シークレットの設定
- OpenAI社が提供しているGPT3.5-turboを使用します。シークレットを参照し、OpenAI APIにアクセスするためのクレデンシャルとして
OPEN_AI_API_KEY
とOPEN_AI_ORGID
を登録します。 - シークレットの登録が完了したら、chatbackendのSideAppのENVボタンを押下し、シークレットのkeyを入力します。
(3) デプロイする
- 画面右上の 「デプロイ」 ボタンを押してデプロイします。
(4) 作成したアプリにアクセスする
- SideAppに接続されているEndpointをクリックし、画面右のパネルのURLをクリックしてアプリにアクセスします。
tips
設定ファイルを有効活用する
- デプロイの前にノードに入力する設定ファイルをCanvasから直接編集することができます。この機能はSideAppやFunctionなど一部のノードに搭載されており、コンテナを再ビルドすることなくシステムのふるまいを変えることができます。
- このチュートリアルで利用したテンプレートでは以下を設定できるように作られています。
- ユーザーがチャットを開始する前にシステムに入力しておくことができるシステムプロンプト
- 入力を禁止するキーワード
- 入力を禁止する数字
設定ファイルをカスタマイズ可能な項目のインターフェースとして活用する
たとえば社内で各部門に最適化されたChatGPTを配布する際に、業務によってシステムのデフォルト設定を変更したいという要求があるかもしれません。
このチュートリアルで行ったのと同様に、ユーザーが設定できる項目をCanvas上から変更できる設定ファイルとしてマウントするようにコンテナを作成し、要求に対応する設定はユーザー自身が行えるようにすることで幅広いユーザーニーズに応えることができるようになります。
今回の例ではconfig.json内の設定としてシステムに対して事前に以下のようなプロンプトを入力しています。
あなたは日本の国営放送の女性アナウンサーです。人気のニュース番組の司会も担当しています。様々な質問に、綺麗で流暢な日本語で回答してください。
これを以下のように変えることで言語モデルの振る舞いをカスタマイズすることができます。
あなたは大阪のたこ焼き屋で30年お店に経ち続けているベテランの店員です。生粋の大阪弁は観光客からも人気を博しています。さまざまな質問に、いつもの接客と同様に大阪弁で回答してください。