01 / DECIDE
架構決策
當回答必須根據受控 corpus,而不能只依賴 model memory 時使用。
Embedding 支援語意比較;production retrieval 還需要 chunk ownership、metadata filter、freshness、citation 與 deletion。 先把 input、output、state 與 side effect 畫成一條可觀察路徑,再決定 把 retrieval 與 generation 分開 要放在哪一層。
02 / BUILD
三步實作
- 01
框定合約
先寫下 caller、資料分類、成功條件、timeout、取消與 ownership。當回答必須根據受控 corpus,而不能只依賴 model memory 時使用。
- 02
建立單一路徑
只實作一條 end-to-end path,保留 request correlation、typed state 與可逆 failure handling。Embedding 支援語意比較;production retrieval 還需要 chunk ownership、metadata filter、freshness、citation 與 deletion。
- 03
證明結果
把驗收寫成可重跑的 fixture、contract test 或 browser test。Golden query set 衡量 relevant recall、citation precision、stale-document leakage 與 no-answer behavior。
03 / BOUND
Production 邊界
Retrieval 前先執行 document-level authorization,刪除或撤銷內容也要從所有 derived index 移除。
04 / PROVE
驗收證據
Golden query set 衡量 relevant recall、citation precision、stale-document leakage 與 no-answer behavior。
SOURCE / HTTP
可重現來源探針
curl -fsSI 'https://developers.openai.com/api/docs/guides/embeddings' | sed -n '1,5p'