【AI】十五.大模型链路调试平台之LangSmith实战 小滴课堂讲师 2025年09月19日 ai大模型, aigc 预计阅读 8 分钟 #### 大模型LLM调用链路分析和LangSmith介绍 ##### 需求背景 * 开发基于大语言模型(LLM)的智能体时,会遇到以下问题: * 调试困难 * LLM 的输出不可预测,难以追踪中间步骤(如思维链、工具调用)。 * 错误定位耗时(如工具返回异常,但不知道具体哪一步出错)。 * 测试复杂 * 需要验证不同输入场景下的输出稳定性。 * 手动测试效率低,缺乏自动化验证。 * 监控缺失 * 生产环境中的智能体行为难以追踪(如 API 调用延迟、错误率)。 * 无法分析用户高频问题或模型性能瓶颈。 ##### LangSmith 是什么 * **LangChain官方出品**的LLM应用开发调试与监控平台 * 地址:https://smith.langchain.com/ * 解决大模型应用开发中的**调试困难**、**效果追踪**、**生产监控**三大痛点 * 类似:Java中的Spring Boot Actuator(监控)、ELK Stack(日志分析) * 核心功能说明 * 调试与追踪 - 记录智能体完整执行链路(LLM 调用、工具调用、中间结果)。 - 可视化展示每一步的输入输出和耗时。 - 统计成功率、延迟等关键指标。 * 生产监控 - 实时监控 API 调用异常(如超时、错误响应)。 - 分析用户高频请求和模型性能趋势 * 功能矩阵 | 功能模块 | 作用描述 | 典型应用场景 | | :----------: | :---------------------------------------: | :---------------------: | | 运行追踪 | 记录LLM调用链的完整执行过程 | 调试复杂Chain/Agent逻辑 | | 提示工程分析 | 对比不同Prompt模板的实际效果 | 优化系统提示词 | | 版本对比 | 比对不同模型版本或参数的表现 | 模型升级效果验证 | | 生产监控 | 实时监控API调用指标(延迟、成本、错误率) | 服务健康状态跟踪 | | 团队协作 | 共享调试结果和监控仪表盘 | 多人协作开发LLM应用 | ##### LangSmith 系统架构 * SDK捕获所有LLM相关操作 * 加密传输到LangSmith服务端 * 数据存储与索引 * 可视化界面动态查询 ``` [Your Application] │ ▼ [LangChain SDK] → [LangSmith API] │ │ ▼ ▼ [LLM Providers] [Trace Storage] │ │ ▼ ▼ [External Tools] [Analytics Engine] ``` ##### 相关环境实战 * 注册地址:https://smith.langchain.com/  * 配置项目前准备 * 项目安装依赖 ``` pip install langsmith==0.3.19 ``` * 生成密钥,记得保存 * 配置项目名称(不存在的话会自动新建)  #### 大模型调用接入LangSmith分析实战 * LangChain接入调用链路分析实战 * 项目配置 ``` #示例配置 import os os.environ["LANGCHAIN_TRACING_V2"] = "true" os.environ["LANGCHAIN_API_KEY"] = "ls_xxxxx" # 替换为实际Key os.environ["LANGCHAIN_PROJECT"] = "My_Project" # 自定义项目名 os.environ["LANGSMITH_ENDPOINT"] = "https://api.smith.langchain.com" #后端接口路径 ``` ```python #真正配置 import os os.environ["LANGCHAIN_TRACING_V2"] = "true" os.environ["LANGCHAIN_API_KEY"] = "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" os.environ["LANGSMITH_ENDPOINT"] = "https://api.smith.langchain.com" os.environ["LANGSMITH_PROJECT"] = "agent_v1" ``` * 如果需要本地私有化部署 langfuse * 案例实战分析 * 单独案例测试 ```python import os os.environ["LANGCHAIN_TRACING_V2"] = "true" os.environ["LANGCHAIN_API_KEY"] = "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" os.environ["LANGSMITH_ENDPOINT"] = "https://api.smith.langchain.com" os.environ["LANGSMITH_PROJECT"] = "xdclass_test_v1" from langchain_openai import ChatOpenAI import logging logging.basicConfig(level=logging.DEBUG) # 初始化大模型 llm = ChatOpenAI( model_name = "qwen-plus", base_url="https://dashscope.aliyuncs.com/compatible-mode/v1", api_key="sk-005c3c25f6d042848b29d75f2f020f08", temperature=0.7 ) resp = llm.invoke("什么是智能体") print(resp.content) ```  * 进阶案例测试【选择之前的案例代码-43.2】 
评论区