Skip to content

Structured Output

結構化輸出

01你是不是遇到這個 / THE SYMPTOM

我要用程式接 AI 的回答,但它每次格式都不一樣——有時多一句廢話、有時 JSON 少個括號,害我程式 parse 到一半就壞。我想要它「每次都只吐我規定好的固定格式」,但不知道這要怎麼要求。

↑ 如果你點頭了,你要的關鍵字就是 Structured Output

02這是什麼 / DEFINITION

強制 LLM 的回覆嚴格符合你指定的格式(通常是固定欄位的 JSON / 對應某個 schema),讓輸出能被程式可靠地直接解析,而不是一段自由發揮的文字。

03什麼時候用 / WHEN TO USE

當 AI 的輸出要被「程式」接手而非給人看時:抽取欄位、分類打標籤、填表單、產生 API 要用的資料,任何不能容忍格式飄移的場景。

04怎麼跟 AI 說 / HOW TO ASK

直接複製這句、貼進 Claude Code / Cursor / Copilot / ChatGPT:

幫我改成用 structured output:請依這個 JSON schema 回覆(欄位 title 字串、tags 字串陣列、score 0-100 整數),只回傳合法 JSON、不要多餘文字或 markdown 程式碼框。
05常見坑 / WATCH OUT

光在提示裡寫「請回 JSON」不夠可靠,模型常會包一層 ```json 或加開場白。優先用模型原生的 structured output / JSON mode(綁 schema 強制),比事後正則硬挖穩得多。

06相關的詞 / RELATED