ホームへ戻る

開發者平台

OpenAI Java SDK 4.58、未完了のWeb検索呼び出しを識別しResponsesのステータス処理を補完

OpenAI公式Java SDK 4.58.0は、未完了のweb search呼び出しステータスを新たに識別できるようになり、アプリケーションが中断された検索ステップを成功または不明な値として誤認することを防ぐ。このバージョンはすでにMaven Centralで公開されているが、サポートが終了したSpring Boot 2 starterを引き続き使用している場合、新版パッケージへそのまま移行することはできない。

European Commission - Photographer: Aurore Martignoni · CC BY 4.0 · Image source
zh-Hant

OpenAIはJava SDK 4.58.0をリリースした。中核となるAPIの変更点は、型モデルがweb search呼び出しの`incomplete`ステータスを識別できるようになったことだ。一見すると単なるスキーマ更新にすぎないが、Responses APIを採用し、検索をエージェントのツールステップとして扱うJavaサービスには直接影響する。検索呼び出しは、制限、タイムアウト、処理の中断などによって完了しない場合がある。アプリケーションが成功と失敗の2種類しか処理しない場合、検索結果が欠けたまま生成を続けたり、キャッシュへ書き込んだり、不完全な回答を完了済みとしてマークしたりする可能性がある。

新版では、このステータスをクライアント側の明示的な制御フローに組み込める。たとえば、再試行、クエリの絞り込み、部分的な結果の保持、データソースの切り替え、上流への人手による介入が必要との通知などを判断できる。長時間稼働するエージェントにとっては、「ツールは応答したがデータが不十分」という状態と、トランスポート層の例外を区別しやすくなる。監視システムも、すべての状況を一般的なエラーにまとめるのではなく、未完了率を指標として設定できる。アップグレード後も、エンジニアは自身の`switch`、シリアライズ、永続化、イベントリプレイのロジックを確認する必要がある。SDKが新しいステータスを解釈できても、業務アプリケーション側で対応する動作が定義されているとは限らないためだ。

4.58.0はApache 2.0ライセンスのパッケージとしてMaven Centralで公開されており、GradleまたはMavenから`com.openai:openai-java:4.58.0`を直接指定できる。公式リポジトリでは、フレームワーク非依存パッケージが現在もJava 8を最低要件としている一方、`openai-java-spring-boot-starter`は4.45.0でサポートと更新が終了したことも注意喚起している。このstarterに依存し続けているSpring Boot 2プロジェクトでは、バージョン番号を更新するだけで同等の統合機能を利用できると想定してはならない。代わりにコアSDKへ直接依存し、`OpenAIClient`を独自に登録する必要がある。

これはモデルの能力や検索品質の向上ではなく、新たな性能ベンチマークも示されていない。その価値は、ツールのステートマシンをサーバーの実際のレスポンスと整合させる点にある。今後は、ほかの言語向けSDKでも一貫した列挙型が採用されるか、またOpenAIが`incomplete`を引き起こす理由コードや推奨される再試行戦略をさらに文書化するかが注目される。

出典

  1. OpenAI Java SDK v4.58.0 release
  2. com.openai:openai-java 4.58.0