見出し画像

ChatGPT Assistants APIでfile searchしてみた

今回マルチモーダルなRAGをしてみたいなぁと思い、ChatGPTのAssitantsを利用してみました。
いままで、retrievalと表現されていたのが、今回から「File_search」に変更となっています。。。って、まんまやね(^^;

参考にしたところ

「OpenAI Assistants API(v2)で新しくなったFile Search(Vector Stores)を使う」とか「File Search」を参考に、というか、ほぼ丸っとパクらさせていただきましたww

無事動作してくれて、OpenAIのコンソールのAssistantsやStorageで確認できたのを見て、なにげに感動していました(^^)

Assistantsについて

デバッグをしていて、コンソールを見ると、Assistantsがいっぱいできている。
ロジックの中でcreateしてるから、当たり前といえば当たり前か。
では、使われなくなったAssistantsはいつ消えるのか?
ChatGPT君に聞いてみました。
回答としては
OpenAIのAPIで作成されたアシスタントの有効期限については、特定の期限が設けられているわけではありません。アシスタントは、APIを通じて作成された後、明示的に削除されない限り、サービスのアカウント上で引き続き利用可能です。つまり、アシスタントは永続的に存在し続けることができます。
とのこと。。
では、アプリの終了で削除して、次の起動のたびにcreateすればいいのかと聞いてみたら。。

  1. データの損失
    アシスタント固有のデータ: 既存のアシスタントを削除すると、そのアシスタントが持っていた設定、学習データ、カスタマイズされた挙動などが失われます。これらは新しいアシスタントには引き継がれません。
    ログや履歴の消失: アシスタントに関連するログや使用履歴も削除される可能性があります。これにより、過去のインタラクションを分析することができなくなります。

いくつのの指摘が会ったんですが、このなかの「学習データ」ってのが気になりました。なるほど。。
ということは、できるだけアシスタントは消さないで継続させる必要が出てきます。

この件、VectorStoreも同じことが言えます。
制限もかけれますが、基本的に制限はありません。
ただ、VectorStoreにファイルが残っていると、使われなくなったとしても課金が発生します。アシスタントとは、また別の視点で考える必要があります。
例えば3日位使わなければ消しちゃって、使われるときに作り直すってのは簡単なんですが、最初に使う人がVectorStore作成に時間がかかっちゃいますし(^^;

終わりに。。。

さてさて、また新しいネタができてワクワクモードです。
それにしても、思ったより検索に時間がかかるなぁってのが印象です。
さてどうしたものかって感じですね(^^;


この記事が気に入ったらサポートをしてみませんか?