LangChain vs LangGraph vs LlamaIndex:Agent/RAG 框架怎么选
AI 应用绕不开框架选择,但 LangChain、LangGraph、LlamaIndex 的边界很多人没搞清——以为它们是竞争关系,其实各管一段。本文讲清三者定位(LangChain 全栈胶水 / LangGraph Agent 编排 / LlamaIndex 数据与 RAG),按你的需求选,以及一个被低估的选项:什么都不用,自己写。
这里聚合 CodeNodeX AI 社区中与 AI Agent 相关的技术文章和讨论,覆盖概念解释、工具对比、工程实践、常见问题和独立开发经验。
如果你正在研究 AI Agent,建议先阅读高质量长文,再参与帖子讨论,形成从理解到实践的完整路径。
AI 应用绕不开框架选择,但 LangChain、LangGraph、LlamaIndex 的边界很多人没搞清——以为它们是竞争关系,其实各管一段。本文讲清三者定位(LangChain 全栈胶水 / LangGraph Agent 编排 / LlamaIndex 数据与 RAG),按你的需求选,以及一个被低估的选项:什么都不用,自己写。
单个 Agent 跑得通,不等于能服务多用户、多任务。本文讲清 Agent 服务的并发模型(每请求一 Agent vs Agent 池)、资源管理(模型 API 并发限/工具并发)、调度(优先级/队列/限流)、多用户状态隔离,把 Agent 从"单线程 demo"推到"能扛流量的服务"。
复杂任务一次 LLM 调用搞不定,要拆成多步链——但链怎么拆、中间结果怎么传、错误怎么恢复,是工程问题。本文讲清 prompt chaining 的几种模式(顺序/并行/路由/循环)、何时该链何时该用 Agent、中间状态管理,以及和单次调用的成本/质量权衡。
让 Agent 自己开浏览器、点页面、抓数据、填表单——agentic browsing 是 AI 自动化的高价值场景,也是工程深水区。本文讲清架构(Playwright/Puppeteer + 视觉模型)、操作模式(坐标点击 vs DOM 选择器)、健壮性(等待/重试/反爬)、安全沙箱,以及它当前能做和做不好的事。
单轮好做,多轮难——用户会追问、改主意、引用上文、打断。本文讲清多轮对话的工程:上下文管理(窗口/摘要/压缩)、对话状态(槽位/实体/阶段)、指代消解、话题切换、中断与恢复,把"聊着聊着就乱了"治好。
Agent 非确定、多步、调工具,靠手动试根本测不过来。本文讲清怎么把 Agent 评估自动化:建任务集 + 评判标准、LLM-as-judge 批量打分、trace 驱动的回归、把 eval 挂进 CI,以及从线上 trace 挖 bad case 自动入库——让 Agent 每次改动都有客观分数。
MCP 让 AI 工具能即插即用调用你的能力,也把你的数据和操作暴露给了所有兼容客户端——安全面不小。本文讲清 MCP Server 的安全审计要点:工具权限最小化、参数校验与注入防护、远程 Server 的鉴权与限流、信任边界(本地 vs 远程)、供应链(第三方 MCP server 的风险),以及一份 MCP Server 上线前的安全 checklist。
Agent 的核心是个循环,但"循环"设计得好不好决定它是智能还是乱跑。本文讲清 Agent 循环的几个关键设计:停止条件(何时结束)、反思(self-reflection,做完一步自评)、分支与回溯、最大步数与预算、以及在循环里加"人工检查点"把不可逆操作拦住。
上线前不主动攻,上线后被用户攻。LLM 应用的红队测试是主动找 prompt injection、越权、数据泄露、有害输出。本文讲清红队测什么(注入/越狱/越权/数据外泄/拒绝服务)、怎么自动化(对抗性 prompt 集 + LLM 生成攻击)、以及把红队发现变成回归测试,把"靠用户试出来"变成"自己先发现"。
多个 Agent 协作,最难的不是各自能力,是它们之间怎么通信——共享状态还是消息传递、用什么协议、怎么处理异步和错误。本文讲清多 Agent 通信的几种模式(共享黑板/消息传递/handoff)、序列化与契约、常见架构(supervisor/pub-sub/对等),以及工程上的序列化/版本/容错。