OpenAI推出結構化輸出功能:讓AI生成的JSON更加可靠

OpenAI在其API中新增了結構化輸出功能,大幅提升了AI模型生成有效JSON的可靠性。這項功能不僅讓開發者能更輕鬆地建立穩定的應用程式,還為AI在非結構化輸入中生成結構化資料開闢了新的可能性。

結構化輸出:AI生成JSON的革命性進展

在人工智慧領域,從非結構化輸入中生成結構化資料一直是一個核心應用場景。無論是透過函數呼叫獲取資料、提取結構化資訊進行資料輸入,還是建立多步驟的代理工作流程,開發者們都在不斷探索如何讓AI更好地完成這些任務。

然而,在此之前,開發者們常常需要依賴開源工具、精心設計的提示,甚至反覆嘗試請求,來確保AI模型的輸出能夠符合他們系統所需的格式。這不僅耗時耗力,還可能影響應用程式的穩定性和可靠性。

結構化輸出的突破

OpenAI推出的結構化輸出功能,通過兩種方式解決了這個問題:

  1. 限制模型輸出: 確保AI模型的輸出嚴格遵循開發者提供的JSON模式。
  2. 模型優化: 訓練模型更好地理解和處理複雜的JSON模式。

這項功能的效果令人驚嘆。在複雜JSON模式的評估中,配備結構化輸出功能的新模型gpt-4o-2024-08-06取得了100%的得分,遠超前代模型gpt-4-0613不到40%的成績。

如何使用結構化輸出

OpenAI在API中提供了兩種使用結構化輸出的方式:

1. 函數呼叫

開發者可以在函數定義中設置strict: true來啟用結構化輸出。這適用於所有支援工具的模型,包括gpt-4-0613和gpt-3.5-turbo-0613及更高版本。

2. 回應格式的新選項

開發者可以使用response_format參數的新選項json_schema來提供JSON Schema。這特別適用於模型需要以結構化方式直接回應用戶,而不是呼叫工具時的情況。

結構化輸出的技術原理

OpenAI採用了一種稱為”約束取樣”或”約束解碼”的技術來實現結構化輸出。這種方法將模型的輸出限制在符合提供的JSON模式的有效標記範圍內,從而確保輸出的有效性。

具體實現步驟如下:

  1. 將JSON模式轉換為上下文無關語法(CFG)。
  2. 在取樣過程中,根據之前生成的標記和語法規則,動態確定下一個有效的標記。
  3. 使用這個有效標記列表來遮罩下一個取樣步驟,有效地將無效標記的概率降為零。

這種方法不僅能處理簡單的JSON結構,還能處理涉及嵌套或遞歸資料結構的複雜模式,這是基於有限狀態機(FSM)的方法難以實現的。

結構化輸出的應用場景

結構化輸出功能為開發者開啟了許多新的可能性,以下是一些潛在的應用場景:

  1. 動態生成用戶界面: 根據用戶意圖生成符合特定結構的UI元素描述。
  2. 資料提取與分析: 從非結構化文本中提取結構化資訊,如會議記錄中的待辦事項、截止日期等。
  3. 自動化報告生成: 將原始資料轉換為結構化的報告格式。
  4. 對話系統優化: 確保聊天機器人的回應符合預定義的結構,便於後續處理。

結構化輸出的限制與注意事項

雖然結構化輸出功能強大,但開發者在使用時仍需注意以下幾點:

  • 僅支援JSON模式的子集,詳情請參閱官方文檔。
  • 首次使用新模式可能會有額外延遲,但後續請求將快速響應。
  • 如果模型選擇拒絕不安全的請求,可能無法遵循模式。
  • 達到max_tokens限制或其他停止條件時,可能無法完全遵循模式。
  • 結構化輸出不能防止所有類型的模型錯誤,如數學計算錯誤。
  • 與並行函數呼叫不相容,需設置parallel_tool_calls: false
  • 不符合零資料保留(ZDR)標準。

結構化輸出的可用性

結構化輸出功能現已在OpenAI API中全面可用:

  • 支援函數呼叫的結構化輸出適用於所有支援API中函數呼叫的模型。
  • 支援響應格式的結構化輸出適用於gpt-4o-mini和gpt-4o-2024-08-06及其微調模型。
  • 兼容聊天完成API、助理API和批次API。
  • 支援視覺輸入。

開發者可以通過查閱OpenAI的官方文檔來開始使用結構化輸出功能。

常見問題

  1. Q: 結構化輸出功能如何提高JSON生成的可靠性? A: 結構化輸出通過限制模型輸出和優化模型理解複雜JSON模式的能力,將JSON生成的可靠性提高到了100%。

  2. Q: 結構化輸出功能適用於哪些OpenAI模型? A: 結構化輸出適用於支援函數呼叫的所有模型,包括最新的gpt-4o系列和gpt-3.5-turbo系列。

  3. Q: 使用結構化輸出功能會影響API的響應速度嗎? A: 首次使用新的JSON模式可能會有些許延遲,但後續請求不會受到影響,響應速度很快。

  4. Q: 結構化輸出功能有哪些局限性? A: 主要局限包括只支援JSON模式的子集、無法防止所有類型的模型錯誤,以及與並行函數呼叫不相容等。

  5. Q: 如何開始使用結構化輸出功能? A: 開發者可以查閱OpenAI的官方文檔,了解如何在API調用中啟用和配置結構化輸出功能。

Share on:
Previous: 在 Wix 上善用 Google Workspace 的 Gemini AI:提升小型企業效率的革命性工具
Next: ChatGPT進階語音模式:AI對話革命,你準備好了嗎?
DMflow.chat

DMflow.chat

廣告

全能 DMflow.chat:多平台整合、持久記憶與靈活客製欄位,無需額外開發即可連接資料庫與表單。更支援真人與 AI 的無縫切換,網頁互動加 API 輸出,一步到位!

OpenAI 推出 GPT-4o 圖像生成功能,支援多輪對話編輯
26 March 2025

OpenAI 推出 GPT-4o 圖像生成功能,支援多輪對話編輯

OpenAI 推出 GPT-4o 圖像生成功能,支援多輪對話編輯 OpenAI 於 2025 年 3 月 25 日宣布,最新的 GPT-4o 模型現已支援圖像生成與多輪對話編輯,帶來更強大的 ...

ChatGPT 搜尋免登入上線:Google 搜尋會受到怎樣的影響?
7 February 2025

ChatGPT 搜尋免登入上線:Google 搜尋會受到怎樣的影響?

ChatGPT 搜尋免登入上線:Google 搜尋會受到怎樣的影響? 近期 OpenAI 在 ChatGPT.com 推出一項新功能,讓使用者可以不用登入就能使用 ChatGPT 搜尋。...

Deep Research:ChatGPT 革命性研究功能全面解析
3 February 2025

Deep Research:ChatGPT 革命性研究功能全面解析

Deep Research:ChatGPT 革命性研究功能全面解析 引言:AI 研究助理的新紀元 在當今快速發展的科技世界中,資訊獲取和深度研究變得越來越重要。OpenAI 推出的 D...

OpenAI 最新推出 o3-mini 模型:高效能 AI 的新里程碑
1 February 2025

OpenAI 最新推出 o3-mini 模型:高效能 AI 的新里程碑

OpenAI 最新推出 o3-mini 模型:高效能 AI 的新里程碑 OpenAI 於 2025 年1月底推出最新一代的小型 AI 模型 - o3-mini,這款模型不僅延續了前代產品...

OpenAI推出Operator:AI代理自動化網頁任務
24 January 2025

OpenAI推出Operator:AI代理自動化網頁任務

OpenAI推出Operator:AI代理自動化網頁任務 OpenAI 最新推出名為「Operator」的 AI 代理,它能夠像人類一樣使用瀏覽器完成各種網頁任務,從訂購雜貨到預訂行程,...

OpenAI ChatGPT 免費版大升級:全新 o3-mini 模型登場,付費用戶獨享更多優勢!
24 January 2025

OpenAI ChatGPT 免費版大升級:全新 o3-mini 模型登場,付費用戶獨享更多優勢!

OpenAI ChatGPT 免費版大升級:全新 o3-mini 模型登場,付費用戶獨享更多優勢! OpenAI 宣布 ChatGPT 免費版將升級至全新 o3-mini 模型,提供更快...

NVIDIA 249美元 Jetson Orin Nano Super 開創平價 AI 運算新紀元
19 December 2024

NVIDIA 249美元 Jetson Orin Nano Super 開創平價 AI 運算新紀元

NVIDIA 革新之作:249美元 Jetson Orin Nano Super 開創平價 AI 運算新紀元 文章摘要 NVIDIA 推出全新 Jetson Orin Nano Super 開...

GitHub Copilot AI 編程助手推出免費版本,開發者福音來臨!
19 December 2024

GitHub Copilot AI 編程助手推出免費版本,開發者福音來臨!

GitHub 重大突破:Copilot AI 編程助手推出免費版本,開發者福音來臨! 文章摘要 GitHub 宣布推出備受歡迎的 AI 編程助手 Copilot 免費版本,這項重大決策不僅讓更...

OpenAI Day2: 強化學習微調與模型自訂:未來 AI 的新趨勢
7 December 2024

OpenAI Day2: 強化學習微調與模型自訂:未來 AI 的新趨勢

OpenAI Day2: 強化學習微調與模型自訂:未來 AI 的新趨勢 描述 探索 OpenAI 最新的「強化學習微調 (Reinforcement Fine-Tuning, RFT)」技術,...