OpenAI APIのAssistants APIでも独自アシスタントGPTは誰でも作れる
今回の記事は「生成AI Advent Calendar 2023」の2023/12/08の記事として書かせていただいております。
内容は11月上旬にOpenAI DevDayで公開されたAssistants APIを使ってサンプルWebアプリを作ってみます。
公式サイト等を参考にしています。
https://platform.openai.com/docs/assistants/overview
こちらでつぶやいたまま放置してたので回収しときました。
OpenAI developer platform
まずは下記URLよりOpenAI developer platformにログインし、Assistantsのメニューを開こう。
事前設定
Assistantsを開いたら右上の+Createボタンからアシスタントを作成する。
ここで入力する内容は任意のもので構わない。私は下記のように設定した。Retrievalはファイルの内容を読み込むのに必要なので有効にしておく。
Name: 飛騨高山の伝統の案内人
Instructions: あなたは飛騨高山の伝統に関する案内人です。
Model: gpt-3.5-turbo-1106
Tools:
Retrieval: 有効
FILESにアップロードした内容で答えてほしいので適当な文書ファイルをアップロードしておく。
FILES: 任意のファイルをアップロード (今回はWikipediaの記事で試してみる)
作成が完了すると、Nameの下などに下記のようにasst_で始まるランダム文字列が表示されるようになる。これは後に使うassistants IDなので控えておく。
assistants ID: asst_************************
Playgroundから試す
作成したアシスタントをPlaygroundで試すことができる。左メニューのPlaygroundもしくは先程の画面の右上にあったTestボタンから試してみよう。
もし作成したアシスタントが選択されてない場合は、左上のドロップダウンリストからそれぞれ下記を選ぶ。
Playgroundの横: Assistants
Playgroundの下: さきほど入力したAssistantsのName (今回は「飛騨高山の伝統の案内人」)
もう準備は整っているので「Enter your message…」から問い合わせしてみる。
両面宿儺ってなんですか?
ありゃ、うまくいかない。。。
何度か試してみると半々くらいでうまくいく。
Custom InstructionsとModelをアップデートしてみました。これでも誤ることはあるので、GPTsのカスタムGPTを作るのを参考にしながら設定するのが良いと思います。ちなみにテキストファイルやcsvの方がうまくいくという記事も見たことあるので、そちらで試すのも良いと思う。今回はひとまずこのまま進めます。
GradioでGUIを実装
デモ
まずは下記に公開しているデモを試してみてください。
Textboxから質問を入力してEnterで回答してくれる。
そのままだと数学の話をするアシスタントである。
ソースコードはHugging Face上に公開しているので見たい人は見てください。
複製して独自アプリを作る
右上の「︙」ボタンからDuplicate this Spaceを選択する。
下記のように任意の値を入力し、最初に作成したAssistants IDを下記のように入力する。
OPENAI_API_KEYについては省略するが、API Keysのページから作成したものを入力しよう。
OPENAI_API_KEY: sk-************************************************
OPENAI_ASSISTANT_ID: asst_************************
うまく起動できたら下記のような表示になるはずです。
うまくコピーできてれば両面宿儺について答えてくれるはずだ。
こんな感じです。
完成品はこちら。
飛騨高山版になったバージョンはこちら。
まとめ
GPTsがリリースされてから多くの人がカスタムGPTをつくりまくっているかと思いますが、自社サービスとして提供したいようであればAPIでこの様に実装することになるかと思います。
エンジニアだけでなく多くの方がAIの恩恵に預かれるように、できるだけ簡単な手順にしてみました。無論、本番運用では耐えきれない実装なので、これをベースにエンジニアと開発していくことにはなります。
まずはエンジニアと話す前に、エンジニアでない人が動くデモとサンプルコードを渡せるような世界観になってきてるのがすごいですよね。
他にも生成AI関連の記事をたくさん書いているので良かったらこちらもどうぞ。
この記事が気に入ったらサポートをしてみませんか?