【揭密協議 之二】結合 Schema、Prompt 與 Validation:降低 AI 幻覺與錯誤回寫
Schema 不能讓 AI 完全消除幻覺,但能大幅降低錯誤進入系統的機率。AI Ready 應把 prompt、資料 schema、輸出 schema、欄位白名單、驗證失敗處理與人工審核串成一套流程。
重點摘要
- Schema 不能讓 AI 完全消除幻覺,但能大幅降低錯誤進入系統的機率。AI Ready 應把 prompt、資料 schema、輸出 schema、欄位白名單、驗證失敗處理與人工審核串成一套流程。
- AI 提示詞工程師與系統整合規劃師。 需要讓模型輸出可回寫 JSON 的後端工程師。 正在處理商品、訂單、客服資料自動化的電商技術團隊。
- Prompt 可以告訴模型「請回傳 JSON」或「不要編造商品資訊」,但模型仍可能: 回傳不存在的欄位。 把價格、庫存或材質改錯。 產生無法解析的 JSON。 在客服回覆中做出未授權承諾。 把建議內容寫成正式決策。 因此 AI Ready 需要把 prompt 後面接上 val…
直接答案:Schema 不能讓 AI 完全消除幻覺,但能大幅降低錯誤進入系統的機率。AI Ready 應把 prompt、資料 schema、輸出 schema、欄位白名單、驗證失敗處理與人工審核串成一套流程。
這篇文章適合誰?#
AI 提示詞工程師與系統整合規劃師。
需要讓模型輸出可回寫 JSON 的後端工程師。
正在處理商品、訂單、客服資料自動化的電商技術團隊。
為什麼單靠 Prompt 不夠?#
Prompt 可以告訴模型「請回傳 JSON」或「不要編造商品資訊」,但模型仍可能:
回傳不存在的欄位。
把價格、庫存或材質改錯。
產生無法解析的 JSON。
在客服回覆中做出未授權承諾。
把建議內容寫成正式決策。
因此 AI Ready 需要把 prompt 後面接上 validation。模型輸出不是流程終點,而是待驗證資料。
Schema Context:讓模型理解可用欄位#
在送出任務前,系統應提供必要 schema context:
{
"resource": "product",
"writable_fields": {
"draft_short_description": "string, max 280 chars",
"draft_long_description": "string, max 3000 chars",
"meta_title": "string, max 70 chars",
"meta_description": "string, max 155 chars"
},
"read_only_fields": ["sku", "price", "stock_quantity", "certifications"],
"required_output_fields": ["draft_short_description", "meta_description"]
}
這讓模型知道哪些欄位可以寫、哪些只能參考。
Output Schema:讓系統能驗證#
{
"type": "object",
"required": ["draft_short_description", "meta_description"],
"additionalProperties": false,
"properties": {
"draft_short_description": {
"type": "string",
"maxLength": 280
},
"meta_description": {
"type": "string",
"maxLength": 155
},
"faq": {
"type": "array",
"maxItems": 5
}
}
}
additionalProperties: false 很重要,因為它可以拒絕模型自行新增欄位。
驗證失敗時該怎麼辦?#
不要自動硬修所有錯誤。建議分級處理:
JSON 無法解析:要求模型重試一次,仍失敗則人工處理。
欄位長度超過:可要求模型縮短。
出現禁止欄位:拒絕輸出並記錄事件。
商品事實不一致:進人工審核。
高風險承諾:攔截並標記風險。
Prompt 設計範例#
你是電商商品內容助理。
只能根據 data.attributes 與 data.product_name 產生內容。
不得新增價格、保固、認證、醫療效果或庫存資訊。
輸出必須符合 output_schema。
如果資料不足,請在 notes 欄位列出需要人工補充的資訊。
Prompt 的目標不是讓模型「自由發揮」,而是讓它在系統邊界內完成特定任務。
人工審核仍不可省略#
即使 schema 驗證通過,也不代表內容一定正確。Schema 只能驗證格式,不能完全驗證商業事實。以下內容建議人工審核:
高流量商品頁。
法規敏感品類。
價格、折扣、退款。
醫療、食品、安全相關描述。
多語高價值市場。
FAQ#
Schema 能完全消除 AI 幻覺嗎?#
不能。Schema 可以限制格式與欄位,降低錯誤進入系統的機率,但仍需要資料驗證、事實檢查與人工審核。
Prompt Engineering 還重要嗎?#
重要,但它應與 schema、validation、權限與審核一起使用。只靠 prompt 管控系統風險是不夠的。
什麼情況可以自動回寫?#
只有低風險、可回滾、欄位受限且驗證通過的內容適合自動回寫,例如內部草稿或圖片 ALT 候選。正式頁面仍建議審核。
參考資料#
- JSON Schema,https://json-schema.org/
- Google Search Central: structured data introduction,https://developers.google.com/search/docs/appearance/structured-data/intro-structured-data
Content Map
Series: AI Ready 協議深潛
Pillar: AI Ready 技術架構
常見問題
這篇文章適合誰?
AI 提示詞工程師與系統整合規劃師。 需要讓模型輸出可回寫 JSON 的後端工程師。 正在處理商品、訂單、客服資料自動化的電商技術團隊。
為什麼單靠 Prompt 不夠?
Prompt 可以告訴模型「請回傳 JSON」或「不要編造商品資訊」,但模型仍可能: 回傳不存在的欄位。 把價格、庫存或材質改錯。 產生無法解析的 JSON。 在客服回覆中做出未授權承諾。 把建議內容寫成正式決策。 因此 AI Ready 需要把 prompt 後面接上 validation。模型輸出不是流程終點,而是待驗證資料。
驗證失敗時該怎麼辦?
不要自動硬修所有錯誤。建議分級處理: JSON 無法解析:要求模型重試一次,仍失敗則人工處理。 欄位長度超過:可要求模型縮短。 出現禁止欄位:拒絕輸出並記錄事件。 商品事實不一致:進人工審核。 高風險承諾:攔截並標記風險。
Next Step
延伸閱讀與下一步
從相關分類、產品頁與 Docs 中繼續完成主題研究與實作評估。