11月6日のOpenAIのDevDayにてGPT-4の新バージョンのリリースとともにAssistants APIが発表されました。モデルのアップデートの方がわかりやすく注目されがちで、Assistants APIの方は一見APIの仕様がちょっと変わっただけじゃないの?と見過ごされがちですが、gptを軸にしたアプリケーションエコノミクスを発展させようというopenAIの強い意志を感じさせる開発者やビジネス担当者要チェックな一手です。今回は非エンジニアやビジネスパーソンにもわかりやすくAsisstants APIの何がすごいのか、OpenAIは何を目指しているのかを読み解き解説していきます。今までのAPIと何が違うのかAssistants APIの優れた点を短くまとめると、より高品質なアプリケーション開発ができるように以前と比べ様々なタスクに対応できる柔軟なアーキテクチャと、さらにはtoolsという鬼に金棒ともいえるような、AIが利用可能な道具が用意され生成AI単体では取り組めなかった複雑なタスクにも対応できるようになったという点です。以前のChat Completions APIの時は、以下のような制限あるせいで、取り組めるタスクの内容に制限がありました。旧API(Chat Completions API)の制限:AIからの応答を生成する旅に、AIへの指示やコンテキスト(全会話文)を全て毎回AIに教えなければならなかった(エンジニアの言葉でいうところのステートレス)。扱えるコンテキストの量に制限があった。コードの実行やファイルの読み込みができない。コンテキストを記憶しながら、ユーザーの質問に回答しているように見えて、実は毎回会話内容を全て聞き直した上で回答を生成している(そして聞き直す量にも制限がある)ような状態だったわけです。こういった制限から、リッチな体験を作ろうとすると開発者サイドで管理しなければならないことや、工夫して独自開発しなければならないことが多く発生していました。そんな状況を打破し、より簡単に、より複雑なタスクをこなせるアプリケーションが開発できるようなAPIを提供しようとして導入されたのが今回のAssistants APIです。Assistants APIの特徴より複雑なタスクに柔軟に対応できるよう工夫されたアーキテクチャ:ある特定の会話やタスクに対して、Assistant (AI)、Thread、Message、Run、Run Stepという設定や状態を保存できるもの、AIからの応答や状況を引き出せるものが細かく用意された。これにより例えばある複雑なタスクに対して事前に用意した複数の特価型Assistantに対応させたり、応答を求める度に別の指示を与えるといった細かな制御が柔軟に行えるようになりました。鬼に金棒 - toolsの登場:AIが道具を呼び出してAI単体では処理できないタスクがこなせるようになりました。現状Code Interpreter、Retrieval、Function callingの3つだけですが、この3つもかなり強力なツールな上に、今後様々なtoolsが導入される見込みです。持続的で無限に長いスレッドの導入:Thread(過去の会話内容)の状態をOpenAI側が管理してくれるようになったおかげで、コンテキストの量の制限の問題が解決された。今後はAssistants APIをベースにした様々なアプリケーション開発が加速していくと思われます。より複雑なタスクに柔軟に対応できるよう工夫されたアーキテクチャ:鬼に金棒 - toolsの登場:持続的で無限に長いスレッドの導入:複数の特価型AIをあらかじめ用意しておき、ある特定のタスクに対して複数のAIを活用して対応することが容易になったtoolsというAIが活用可能な便利道具が用意され、今までではできなかった事(API経由でのpythonコードの実行等)。今後も様々なtoolsが増えていきAIが実行可能なことがどんどんと増えていくことが予想されます。