開發者平台
OpenAI Java SDK 4.58 辨識未完成的網路搜尋呼叫,補齊 Responses 狀態處理
OpenAI 官方 Java SDK 4.58.0 新增對未完成 web search 呼叫狀態的辨識,避免應用程式把中斷的搜尋步驟誤當成功或未知值。版本已出現在 Maven Central,但仍使用已終止支援的 Spring Boot 2 starter 者不能直接沿用新版套件。

OpenAI 發布 Java SDK 4.58.0,核心 API 變更是讓型別模型能辨識 web search 呼叫的 `incomplete` 狀態。這看似只是一項結構描述更新,卻會直接影響採用 Responses API、把搜尋當作代理工具步驟的 Java 服務:搜尋呼叫可能因限制、逾時或流程中止而未完成,應用程式若只處理成功與失敗兩種結果,便可能在缺少搜尋內容時繼續生成、寫入快取,甚至把不完整回答標記為完成。
新版讓客戶端可將這個狀態納入明確的控制流程,例如決定重試、縮小查詢、保留部分結果、切換資料來源,或向上游回報需要人工介入。對長時間運行代理而言,這也有助於區分「工具已回傳但資料不足」與傳輸層例外;監控系統可以針對未完成率建立指標,而不是把所有情況壓成一般錯誤。工程師升級後仍應檢查自己的 `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` 的原因碼和建議重試策略。