LangChain ReAct Agent
基于 LangChain / LangGraph 的 ReAct Agent 智能客服系统。
核验日期
核心信息
以下信息由程序从官方接口读取,不经模型改写。
- 许可证
- MIT
- 语言
- Python
- 维护方
- lhh737
- 核验日期
它是什么
这是一个基于 LangChain / LangGraph 的 ReAct Agent 智能客服系统。它基于 LangChain 实现为 ReAct(Reasoning + Acting)Agent,集成 RAG 检索增强、多工具调用与动态提示词切换。系统根据用户意图自动判断任务类型(知识问答 / 报告生成),调用合适的工具与知识库完成推理,并通过 Streamlit 流式界面实时展示 Agent 的思考与执行过程。项目采用 MIT 许可,作者为 lhh737。
主要能力
ReAct 范式采用 Thought → Action → Observation 循环,Agent 自主推理并决定调用哪个工具。
RAG 检索增强使用 Chroma 向量库加 DashScope Embedding,带 MD5 文件去重,支持 txt/pdf 混合加载。
多工具调用涵盖天气查询、用户定位、外部数据检索与报告上下文填充,由 Agent 按需自动选择。
动态提示词切换由 Middleware 根据运行时上下文,在「普通问答」与「报告生成」两套 System Prompt 之间自动切换。
流式对话界面由 Streamlit 构建,支持流式逐字输出、历史消息留存,并使 Agent 推理过程可见。
模块化结构由 Agent、RAG、Model、Tools、Middleware 独立模块组成,由 YAML 配置驱动。
怎么上手
环境要求 Python 3.10 或更新版本。
DashScope API Key 在阿里云百炼申请。
首次运行时,只需确保 DashScope API Key 已设置,且 data 目录下有知识库文档即可。
测试问题“扫地机器人有哪些主要功能?”对应 RAG 知识库问答。
测试问题“如果机器人无法正常回充,该如何处理?”对应知识库故障排查。
测试请求“请根据用户数据生成一份个性化使用报告”对应报告生成加工具调用。
git clone https://github.com/lhh737/LangChain-ReAct-Agent.git
cd LangChain-ReAct-Agentpip install -r requirements.txt# Linux / macOS
export DASHSCOPE_API_KEY="your-api-key"
# Windows (CMD)
set DASHSCOPE_API_KEY=your-api-keypython -c "from rag.vector_store import VectorStoreService; VectorStoreService().load_document()"streamlit run app.py适合谁
技术栈中,LLM 层使用通义千问(DashScope / ChatTongyi)。Agent 框架使用 LangChain 加 LangGraph。向量数据库使用 Chroma。
文档处理使用 PyPDF 加 RecursiveCharacterTextSplitter。前端使用 Streamlit。配置由 YAML 驱动,涉及 Agent、RAG、Chroma 与 Prompts。
项目通过 config 目录下的 YAML 文件统一管理配置。rag.yml 记录对话模型名称与 Embedding 模型名称。chroma.yml 记录 Chroma 持久化路径、分块大小、检索 Top-K 与支持的文件类型。
prompts.yml 记录各场景提示词模板文件路径。agent.yml 记录 Agent 超时时间、外部数据路径等。
来源
本页内容整理自以下官方来源,点击可核对原文。
- GitHub READMEhttps://github.com/lhh737/LangChain-ReAct-Agent抓取于
核验日期 ·
本页由 AI 依据上述官方来源整理,并经自动核对,未经本站实测。 发现错误?告诉我们。