AI News HubLIVE
站內改寫2 分鐘閱讀

LlamaIndex 'legal-kb': 基於Index v2的代理檢索,集成retrieve、find、read和grep工具

LlamaIndex發佈了legal-kb,這是一個基於Index v2的公共參考應用,展示了代理檢索模式。該應用為AI代理提供類似文件系統的工具集,包括混合語義搜索、文件查找、內容讀取和正則表達式grep,並支持自動版本控制和可視化引用。

來源MarkTechPost作者: Michal Sutter

LlamaIndex 發佈了 legal-kb,這是一個基於 GitHub 的公共參考應用,旨在為法律文檔提供知識庫功能,底層由 LlamaIndex Index v2(即 LlamaParse 平台)驅動。該項目展示了一種稱為“檢索工具集”(Retrieval Harness)的代理檢索模式。

與單次檢索不同,該模式為 AI 代理提供類似文件系統的工具,使其能夠在大規模且持續更新的知識庫中自主探索以解決問題。這些工具模擬了工程師熟悉的操作:語義與關鍵詞搜索、正則表達式 grep、文件搜索和文件讀取。

legal-kb 是一個基於 TanStack Start 的 Web 應用,而非庫。用户登錄後可以創建項目、上傳文件並與代理聊天。每個項目對應一個由 LlamaCloud 管理的 Index v2。上傳的文件會在後台自動解析和索引,聊天代理在每次交互中實時查詢該索引。

檢索工具集提供了持久化的數據管道,連接數據源、索引並保持更新。在此基礎上,它向代理暴露一組工具。這些工具刻意接近文件系統操作:代理可以列出文件、讀取文件、在文件內執行 grep 或運行混合搜索。由於工具的通用性,用户可以將此工具集集成到自己的代理中。

代理擁有四個工具,每個工具對應 Index v2 的檢索 API:

  • retrieve:運行混合語義搜索,支持可選的重新排序和元數據過濾。
  • findFiles:通過精確名稱或子串搜索文件,自動分頁。
  • readFile:讀取文件原始內容,支持偏移量和長度窗口。
  • grepFile:在一個文件中匹配模式,返回字符位置。

系統提示強制了執行順序:代理必須先調用 findFiles 建立文檔清單,然後通過 retrieve 縮小範圍,最後用 readFile 或 grepFile 確認具體措辭後再引用。

上傳遵循清晰的管道:文件被推送到 LlamaCloud 源目錄,同時記錄到 PostgreSQL。索引同步是異步的,UI 會輪詢狀態直至就緒。版本化基於(項目,文件名)對,重新上傳同一文件會產生 v1、v2、v3 等版本,檢索層可以通過版本元數據字段過濾。

代理使用 Vercel AI SDK 6 的 ToolLoopAgent,支持 OpenAI 或 Anthropic 模型,用户需自帶 API 密鑰。推理過程會流式輸出,Claude 模型使用擴展思考,OpenAI 推理模型使用中等推理努力。

答案附帶可視化引用:每個檢索到的塊有一個短 ID(如 cite:c7f2qa),代理在回答中內聯引用,UI 渲染可點擊的引用芯片,點擊後打開源文件頁面截圖,並高亮顯示引用文本的矩形框。

與傳統的單次 RAG 相比,代理檢索工具集在多個維度上有所不同:檢索流程為多步工具循環而非單次向量搜索;搜索模式包括混合搜索、關鍵詞和正則表達式;代理可按需讀取完整文件;知識庫持續更新且支持版本控制;精度控制參數(如 top_k、分數閾值)暴露給用户。

該設計針對需要代理導航大型文檔集的領域,如法律和金融科技。例如,合同問題可通過代理列出文件、檢索相關條款、grep 精確句子來回答。在盡職調查場景中,代理可以按名稱查找文件並逐一讀取,無需人工打開每個 PDF。版本化策略支持隨時間追蹤變更。

legal-kb 是一個重要的參考實現,展示瞭如何將 Index v2 的檢索能力與代理框架結合,為構建高級文檔問答系統提供了藍圖。