正式環境場景

RAG 聊天機器人用 LLM API

內部政策助理依人事手冊與各地補充規定回答問題。 先檢索資料,再呼叫模型。 每段資料保留文件 ID、章節、生效日期與存取權限標記。

連結私人文件支持段落的 RAG 回答
RAG 聊天機器人用 LLM API

正式環境實作

API、主要模型與備援設定

正式環境選擇建議原因
APIPOST /v1/chat/completionsOpenAI 相容伺服器端請求
主要模型gemini-2.5-pro長篇證據與跨文件整理,優先使用 Gemini 2.5 Pro。
備援模型gemini-2.5-flash資料檢索完整的簡短回答,使用 Gemini 2.5 Flash。 先確認檢索品質,再將不明確的政策整合交給 Terra。
升級模型gpt-5.6-terra只在主要路徑未達品質或複雜度門檻時使用
輸出規則任務文字或修正每個重要說法後附資料段落 ID,或明確說明證據不足。
01
情境

正式應用中的 RAG 聊天機器人

內部政策助理依人事手冊與各地補充規定回答問題。 先檢索資料,再呼叫模型。 每段資料保留文件 ID、章節、生效日期與存取權限標記。

Gemini 2.5 Pro 只接收選定段落,且必須引用所用段落 ID。 各地政策不一致時,回答應指出衝突,不可默默選擇其中一個。

02
架構

RAG 聊天機器人流程如何運作

  • 檢索前先確認使用者權限。
  • 檢索並重新排序段落,保留文件中繼資料。
  • 傳送足以回答的最小證據集。
  • 要求每句附段落 ID。
  • 核對引用是否支持說法,證據不足時不回答。
03
API 請求

透過 LLMFly AI 呼叫 gemini-2.5-pro

從伺服器送出請求,將範例內容與預留工具格式換成應用的資料與工具。

request.example
curl https://app.llmfly.ai/v1/chat/completions \
  -H "Authorization: Bearer $LLMFLY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gemini-2.5-pro",
    "messages": [
      {"role": "system", "content": "Answer only from the supplied passages. Cite passage IDs after each material sentence. If passages are missing or conflicting, state that explicitly."},
      {"role": "user", "content": "Can a Shanghai employee carry unused leave into next year? Use the supplied policy passages."}
    ]
  }'
04
模型選擇

為什麼以 gemini-2.5-pro 為主要模型

長篇證據與跨文件整理,優先使用 Gemini 2.5 Pro。

資料檢索完整的簡短回答,使用 Gemini 2.5 Flash。 先確認檢索品質,再將不明確的政策整合交給 Terra。

05
驗收

RAG 聊天機器人驗收檢查

指標通過條件
檢索召回率可回答的測試問題能檢索到已知支持段落
引用正確率每個引用直接支持所附的句子或欄位
無據說法比例最終回答不包含來源無法支持的重要說法
正確拒答率來源缺失、過期或衝突時,助理拒答或說明限制
06
失敗處理

部署前要處理的失敗

  • 把檢索漏失怪到模型頭上
  • 把所有文件塞進上下文
  • 顯示不相關引用
  • 沒有證據仍強迫回答
07
輸出

回傳輸出與執行紀錄

每個重要說法後附資料段落 ID,或明確說明證據不足。

每次正式執行記錄模型 ID、請求 ID、token 用量、重試、驗證結果與最終處理。

常見問題

檢索和模型,哪個更重要?

兩者都重要,但要分開評估,避免把檢索漏失誤判成生成失敗。

提示詞應放入多少段資料?

在預算內,使用足以支持回答的最小資料集。

來源互相矛盾時怎麼辦?

列出差異、來源與日期,不要默默選擇其中一種說法。

用自己的輸入測試設定

以相同請求、工具與驗證規則比較主要和備援模型。

比較模型