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

AI代理架構教育實驗室

一個基於LangChain和本地Ollama伺服器的AI代理架構教育實驗室,包含多種代理變體,涵蓋聊天記憶、工具呼叫、RAG、混合和代理RAG等類別,每個變體均可獨立執行CLI以研究其機制。

來源Hacker News AI作者: ilia53

該專案是一個用於教育目的的AI代理架構實驗室,基於LangChain和本地Ollama伺服器構建。它提供了多種獨立的代理變體,每個變體都是一個可執行的命令列介面(CLI),方便使用者逐個研究不同的機制,並透過日誌觀察其執行過程。

專案使用gemma4:e4b作為生成模型,mxbai-embed-large作為嵌入模型,預設連線到本地Ollama伺服器(http://10.100.102.10:11434),也可配置為使用OpenRouter。

包含的代理類別包括:

  • 聊天+記憶:完整緩衝區(chat-buffer)和摘要緩衝區(chat-summary),支援持久化到SQLite。
  • 工具呼叫:ReAct文本協議(tools-react)和原生bind_tools(tools-native)。
  • 僅RAG:多種後端,包括純numpy餘弦相似度(rag-numpy)、Chroma向量資料庫(rag-chroma)、LlamaIndex(rag-llamaindex)、LlamaIndex+Chroma(rag-llamaindex-chroma)、Haystack(rag-haystack)以及混合BM25+稠密+交叉編碼器重排序(rag-rerank)。
  • 混合(聊天+RAG):語義路由器(hybrid-semantic)、LLM分類器路由器(hybrid-llm)、自適應RAG(hybrid-adaptive,基於LangGraph)和修正性RAG(hybrid-adaptive-plus,含多重評分和重寫)。
  • 代理RAG:將檢索作為工具的工具呼叫代理(agentic-rag)。

所有RAG代理實現統一的檢索器介面,並在啟動時索引data/corpus/目錄中的檔案。查詢時,嵌入查詢並透過餘弦相似度檢索Top-K塊,然後由LLM根據上下文生成答案。不同的RAG後端在分塊方式和儲存上有所不同:numpy和Chroma按字元視窗分塊,LlamaIndex和Haystack按句子分塊。重排序版本使用混合檢索和交叉編碼器提高相關性。

專案還包含一個評估工具(rag-eval),用於比較各RAG後端在標註問題集上的命中率和上下文召回率。

其他功能包括:技能系統(skills/目錄中的可選markdown檔案)、全域性規則(rules/目錄)、MCP伺服器整合(用於擴充套件工具集)、以及透過/remember命令實現的持久化記憶(寫入SOUL.md)。

生產特性包括:危險工具的人類確認機制、LLM呼叫重試和回退模型、以及LangSmith可觀測性支援。日誌系統同時輸出可讀的控制台日誌和結構化的JSON行檔案。