Lyft 如何利用 LangGraph 和 LangSmith 构建自助式 AI 代理平台
Lyft 采用 LangGraph 和 LangSmith 构建了一个自助式 AI 代理平台,用于客户支持,将代理开发时间从数月缩短至数周。该平台通过路由多代理架构、LangGraph 的子图功能以及 LangSmith 的追踪与监控工具,赋能非技术领域专家独立开发 AI 代理,并借助 LLM-as-a-Judge 评估系统确保质量。
文章情报
要点
- Lyft 通过让运营团队、VoC 负责人和产品经理直接使用提示和配置来定义代理,减少了机器学习工程师的介入。
- 基于路由器的多代理架构使用 LangGraph 协调专业子代理,实现安全检查和状态管理。
- 生产质量依赖于评估、监控和提示纪律,Lyft 使用 LangSmith 进行追踪和 LLM-as-a-Judge 评估。
- 结构化提示编写成为代理可靠性的关键因素。
为什么重要
这条新闻值得关注,因为Lyft 通过让运营团队、VoC 负责人和产品经理直接使用提示和配置来定义代理,减少了机器学习工程师的介入。
技术影响
可能影响模型选型、推理成本、产品能力和评测基准。
Lyft 利用 LangGraph 和 LangSmith 构建了一个自助式 AI 代理平台,用于客户支持,显著加快了代理开发速度。该平台通过路由多代理架构,实现了对乘客和司机请求的智能处理。
在架构方面,系统采用 LangGraph 的路由多代理模式:一个元代理充当有状态路由器,根据传入请求分类并分派到专门的子代理。每个子代理都是一个完整的 LangGraph StateGraph,作为子图节点注册在元代理中。对于乘客和司机,系统分别运行独立的路由器实例。当乘客联系客服时,元代理路由到乘客意图子代理;司机则路由到司机意图子代理。若意图代理在对话过程中发现需要更专业的代理,它可以通过 Command(goto=..., graph=Command.PARENT) 将控制权交回元代理,元代理再重新路由到合适的专家代理。
子代理遵循一致的节点模式:安全检测与恶意意图检测通过 LangGraph 的 Command(goto=[...]) 并行执行,先于任何 LLM 推理。这种设计既保证了安全性,又实现了模块化部署——添加新代理只需定义新子图并注册到元代理。
Lyft 将代理分为两类:专业代理(由 MLE 手工构建,处理复杂高风险的工单)和可配置代理(自助服务层)。可配置代理在运行时从 JSON 配置中动态加载,提示从 LangSmith 的 Prompt Hub 中获取。领域专家按照结构化模板编写提示,包含角色、范围、工作流阶段和内容指南等五个必需部分。然后,ConfigurableAgent 类处理图构建、工具绑定、安全门和状态管理。产品经理可通过编写提示和 JSON 配置来定义新代理,无需 MLE 代码变更。
状态持久化方面,Lyft 构建了自定义的 DynamoDBSaver,实现了 LangGraph 的 BaseCheckpointSaver 接口,为多轮对话提供持久状态存储。每个检查点保存完整的图状态、执行元数据和父检查点引用,支持对话回放和调试。
LangSmith 用于全面追踪和监控:每个代理调用都被追踪,捕获图执行详情。通过 LLM-as-a-Judge 评估管道,代理在全面上线前必须通过自动评估。评估指标包括任务完成率、安全违规率、回复相关性和客户满意度。此外,每个代理都有生产监控仪表板,跟踪运行量、错误率、延迟、令牌使用和评估分数,并与 PagerDuty 集成实现自动告警。
Lyft 团队发现,最大的瓶颈不是基础设施,而是提示质量。领域专家虽然了解问题类型,但难以将知识转化为 LLM 可靠遵循的指令。为此,Lyft 开发了结构化提示编写框架和自动提示验证管线,确保每个提示在生产前通过审查。这包括五部分模板和审查清单,以及基于 Git 的提示检查流程。
通过这一平台,Lyft 将代理开发周期从数月缩短至数周,同时保持了高标准的质量和安全。