📚

【Colab】Assistant APIのcode interpreterサンプル

2023/11/11に公開

Assistant APIのサンプル

11/7のOpenAI devdaysにて新たに公開されたAssistant APIを使ってみたのでそのサンプルです。
今回のサンプルでは一番さっと使えそうなcode interpreterのみ使用しています。

※ Assistant APIは現在ベータ版です

<11/15 修正> description -> instructionsに修正。descriptionはただのアシスタントの説明でした。申し訳ありません

ちょっと説明

Assistant APIに関して細かく説明をしませんが、コード上に出てくる以下3つだけ簡単に書きます

  • assistant
  • thread
  • run

詳しく知りたい場合はOpenAIのAssistant APIドキュメントを読んだ方が良いです。

assistant

Assistant APIの本体
langchainでいうagentみたいなもの
以下3つを指定して機能の設定をする。

  • 説明(description)
  • system prompt(コード上では引数instructions)
  • gptモデル
  • 使用するツール群
    • retrievalを使用するなら事前にアップロードしたファイルも紐づける

threads

会話履歴を保持するためのもの
langchainでいうmemoryみたいなもの
同じthreadsだと会話履歴を含めて回答してくれるらしい。

run

現状のAssistant APIは今までのAPIと違ってジョブ形式の実行となっています。(そのうち変わりそうですが)
runではstatusが取得できるので、実行後runのステータスをポーリングで取得し、completedになるのを待つみたいな処理が必要そうです。

サンプル

サンプルはjupyter notebook形式でgistとcolabに公開してます。
colabで実行する想定で記載しているので使用する際はsecretのOPENAI_API_KEYにご自身のAPIキーを設定してください。

colab

https://colab.research.google.com/drive/1oZSVKbLnzK_52n039dD0lUxpfZrNLo0D?usp=sharing

gist

ちなみに

code interpreterやretreivalは現在無料ですが、11/17に有料となるとのことです。
料金はこちらを確認してください。

参考

Discussion