Digital Green Farmer.chat: 以 LLM 作為評審提升 RAG
Digital Green 開發了 Farmer.chat,一款檢索增強生成(RAG)聊天機器人,旨在為小農戶和推廣工作者提供個人化的農業建議。為確保從包含 46,000 篇研究論文的知識庫中傳遞資訊的可靠性與準確性,團隊實施了「LLM 作為評審」的評估系統,以在大規模上量化效能。
農業支援系統架構
Farmer.chat 採用多元組件架構,以確保回應根植於精選且可信賴的農業資料。
知識庫建構
- 前處理: PDF 文件透過 Scio API 讀入,主題依地理區域自動分類並以語意方式分組。
- 語意分塊: 文字被處理成分塊,將意義相似的句子透過小型文字嵌入的餘弦相似度分組在一起。
- 向量儲存: 分塊被轉換為向量表示,並儲存於 QdrantDB。
RAG 流程與使用者代理
- 資訊檢索: 系統在向量資料庫中搜尋與使用者查詢相符的文字分塊。
- 生成: LLM 使用檢索到的分塊與使用者查詢,產生類似人類的回應。
- 面向使用者的代理: 由 GPT-4o 提供動力,此規劃代理使用基於 ReAct 的提示,理解使用者意圖、請求缺失資訊,並呼叫執行工具。可用工具包括 RAG QA 端點、影片檢索、天氣端點與作物表格。
實作 LLM 作為評審的評估
由於農業建議的品質缺乏決定性的衡量指標,Digital Green 採用了 LLM 作為評審的技術,利用 LLM 依據特定、預先定義的標準對輸出進行評分。
主要評估指標
- 提示清晰度: 依據意圖清晰度、主題具體性與實體屬性辨識,以 1-3 分量表評分使用者輸入。
- 問題類型: 將查詢分類為六種認知複雜度類別:記憶、理解、應用、分析、評估與創造。
- 已回答查詢: 追蹤聊天機器人成功回應的問題比例,以識別知識庫的缺口。
- RAG 準確度: 二元(0 或 1)指標,評估回應是否事實上源自提供的上下文。此方法在約 360 個測試問題中與人工評估呈高度相關。
RAG 準確度提示
為評估忠實度,系統使用受 RAGAS 函式庫啟發的自然語言推理提示。評審 LLM 解析回應中產生的原子事實敘述,並與檢索到的上下文比較,若該敘述可從上下文推導則給予 1,否則給予 0。
LLM 基準測試於 RAG 效能
Digital Green 測試了超過 700 筆隨機使用者查詢的資料集,涵蓋各種作物與日期,以比較四款領先的 LLM:GPT-4-Turbo、Llama-3-70B-Instruct、Gemini-1.5-Pro 與 Gemini-1.5-Flash。
| LLM | 忠實度 | 相關度 | 已回答 * 相關度 | 已回答 * 忠實度 | 未回答 |
|---|---|---|---|---|---|
| GPT-4-turbo | 88% | 75% | 59% | 69% | 21.9% |
| Llama-3-70B | 78% | 76% | 76% | 78% | 0.3% |
| Gemini-1.5-Pro | 91% | 88% | 71% | 73% | 19.4% |
| Gemini-1.5-Flash | 89% | 78% | 74% | 85% | 4.5% |
主要發現:
- 最高忠實度: Gemini-1.5-Pro 達到最高的事實正確性(91%)。
- 最佳取捨: 由於在高忠實度(89%)與低未回答問題比例(4.5%)之間取得優秀平衡,選擇 Gemini-1.5-Flash 作為正式上線版本。
影響與成果
在一年以 LLM 作為評審指標指導的迭代開發過程中,Farmer.chat 已達成以下里程碑:
- 覆蓋範圍: 服務超過 20,000 位農民。
- 量能: 處理超過 340,000 筆查詢。
- 規模: 支援超過 6 種語言與 50 種價值鏈作物。
- 安全性: 維持近乎零的偏見或有害回應。