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行文件。