
1、LangSmith概述1.1 什么是LangSmith?LangSmith 是 LangChain 生态系统中专门用于 LLM大语言模型应用调试、监控、评估和管理 的平台。 追踪(tracing)记录每次 LLM 调用的详细信息 监控(monitoring)实时查看应用性能 调试(debug)排查问题和优化性能 评估(evaluate)系统化测试 LLM 应用主界面1.2 具体功能功能1核心应用与开发1、Tracing追踪功能这是 LangSmith 最核心的功能。它会完整记录你大模型应用的每一次调用链路Trace。作用当你的 Agent智能体或 RAG 系统运行变慢或报错时点击进入对应的项目如上图中的 langchain1.2_smith 你可以看到每一步具体的 Prompt 是什么、模型返回了什么、消耗了多少 Token以及每一个链条节点的耗时非常方便排查 Bug 和优化性能。2、Monitoring监控功能提供生产环境的高级数据可视化看板。作用帮你从宏观角度监控应用在一段时间内的运行状况。你可以看到 Token 消耗趋势、QPS每秒请求数、错误率、平均延迟Latency以及成本预估。适合应用上线后观察系统的稳定性和开销。3、Datasets Experiments数据集与实验功能用于管理测试数据集并运行对比实验。作用你可以把用户的真实输入、特定的边界情况Edge Cases存为数据集。当你修改了Prompt 或更换了底层大模型时可以在这里运行自动化对比测试直观看到新旧版本在同一批测试集上的表现差异。4、Evaluators评估器功能配置和自动化评估任务。作用大模型的输出往往难以用传统的断言Assert来测试。这里允许你配置基于规则如关键词匹配或基于模型LLM-as-a-judge的评估指标如答案相关性、是否包含幻觉等对追踪到的数据或实验结果进行自动打分。5、Annotation Queues标注队列功能人工反馈与数据清洗工具。作用在应用开发或初上线阶段你可以把一部分痕迹Traces发送到标注队列中让团队中的核心成员、业务专家或人工客服进行手动打分、纠正回答或贴标签这些高质量的人工标注数据后续可直接用于微调模型或充当测试集。功能2提示词与调试工具1、Prompts提示词管理功能类似“提示词版的 GitHub”。作用把 Prompt 从代码中解耦出来统一在云端管理。你可以在这里对 Prompt 进行版本控制如 v1 、v2 直接在代码中通过 API 动态拉取最新的提示词。它还支持团队协作和 Prompt的分享。2、Playground演练场功能一个网页端的模型交互界面。作用无需写任何代码直接在这里选择不同的模型如 OpenAI、Anthropic 或是本地模型快速微调并测试你的 Prompt 效果还可以一键将调整好的 Prompt 保存到上方的 Prompts 仓库中。3、Studio工作室功能通常与 LangGraph 深度集成提供可视化的图形交互界面。作用如果你的应用是基于图结构Graph-based的复杂复杂 Agent 架构Studio 可以让你可视化地看到状态机State在各个节点之间的流转甚至支持在某个节点“暂停”手动修改数据后再继续向下执行是调试复杂智能体交互的利器。4、Context Hub上下文中心功能管理全局上下文或通用组件配置。作用用于存放可在多个项目或 Prompt 中复用的公共上下文模板、全局变量或系统预设提示。功能3部署与沙盒1、Deployments部署功能一键将你的 LangChain 应用或 LangGraph Agent 部署为线上可用的 API 服务通常依托于LangGraph Cloud。作用提供开箱即用的生产端点帮你处理高并发、队列管理和状态持久化让你专注于编写业务逻辑。2、Sandboxes沙盒功能提供轻量级的在线运行和测试环境。作用在不污染生产环境的前提下供开发人员安全地试运行、测试新部署的 Agent 或执行自动化脚本。建议现阶段大家可以重点关注 Tracing观察你的项目里的调用细节和 Playground快速调优提示词。当你的应用结构开始走向复杂比如引入了复杂的 RAG 检索或多 Agent 协同时再逐步引入 Datasets 进行量化评估并利用 Studio 进行可视化调试。2、准备账号2.1 注册或登录步骤1访问官网访问Langsmith官网https://smith.LangChain.com/步骤2自由选择注册或登录方式步骤3登录成功2.2 获取API_KEY步骤1打开设置步骤2创建API_KEY步骤3保存KEY注意点击copy 将API_KEY保存到剪贴板并关闭弹窗API_KEY只在上述窗口出现一次关闭弹窗后回到设置页面此后就无法在官网查看API_KEY的内容了请妥善保存。步骤4可选按需删除如果需要删除KEY点击右侧图标即可。2.3 新增环境变量在.env配置文件中添加四个环境变量1 # 是否启用Langsmith监控功能 2 LANGSMITH_TRACINGtrue 3 4 # Langsmith监控WebUI地址 5 LANGSMITH_ENDPOINThttps://api.smith.LangChain.com 6 7 # 创建的API_KEY 8 LANGSMITH_API_KEYYOUR_API_KEY 9 10 # 自定义项目名称可以在Langsmith WebUI监控页面根据名称查看对应的运行记录 11 LANGSMITH_PROJECTpr-clear-harmony-323、查看监控指标添加上述环境变量后在程序中通过load_dotenv()加载而后运行LangChain代码LangSmith会自动记录运行指标并同步至后台服务我们可以在LangSmith官网查看运行记录。步骤1运行任意LangChain程序举例11 import os 2 3 from dotenv import load_dotenv 4 from langchain_deepseek import ChatDeepSeek 5 6 # 将env文件中的变量加载为环境变量 7 #overrideTrue表示.env优先 8 load_dotenv(overrideTrue) 9 10 DEEPSEEK_API_KEY os.getenv(DEEPSEEK_API_KEY) 11 DEEPSEEK_BASE_URL os.getenv(DEEPSEEK_BASE_URL) 12 13 model ChatDeepSeek( 14 api_keyDEEPSEEK_API_KEY, 15 api_baseDEEPSEEK_BASE_URL, 16 model_namedeepseek-v4-flash17 ) 18 19 print(model.invoke(你好))举例21 from langchain.chat_models import init_chat_model 2 from dotenv import load_dotenv 3 import os 4 5 load_dotenv(overrideTrue) 6 7 CLOSEAI_API_KEYos.getenv(CLOSEAI_API_KEY) 8 CLOSEAI_BASE_URLos.getenv(CLOSEAI_BASE_URL) 9 10 model init_chat_model(modeldeepseek-v4-flash, 11 model_provideropenai, 12 api_keyCLOSEAI_API_KEY, 13 base_urlCLOSEAI_BASE_URL) 14 15 print(model.invoke(你好用一句话回答))举例31 from langchain.chat_models import init_chat_model 2 from dotenv import load_dotenv 3 import os 4 from rich import print as rprint 5 6 # 从.env文件中加载环境变量 7 load_dotenv(overrideTrue) 8 9 DEEPSEEK_API_KEY os.getenv(DEEPSEEK_API_KEY) 10 DEEPSEEK_BASE_URL os.getenv(DEEPSEEK_BASE_URL) 11 12 # 1. 初始化模型 13 model init_chat_model( 14 modeldeepseek-v4-flash, 15 model_providerdeepseek, 16 api_keyDEEPSEEK_API_KEY, 17 base_urlDEEPSEEK_BASE_URL, 18 temperature0.2, 19 max_tokens500, 20 # 指定可调整参数 21 configurable_fields(model, model_provider, temperature, max_tokens), 22 ) 23 24 # 2. 准备 config 字典 25 config { 26 run_name: joke_generation, # 在LangSmith中这次运行会显示为 joke_generation 27 tags: [my_tag1, my_tag2], # 打上标签便于分类查找 28 metadata: { 29 user_id: shkstart, # 记录用户ID 30 session_id: sess_123 # 记录会话ID31 }, 32 configurable: { 33 model: deepseek-v4-pro, # 配置模型参数 34 model_provider: openai, # 配置模型提供商参数 35 temperature: 0.7, # 配置温度参数 36 max_tokens: 1000 # 配置最大令牌数 37 } 38 } 39 40 # 3. 调用模型并传入config 41 response model.invoke( 42 1 2 , 43 configconfig 44 ) 45 46 rprint(response)步骤2打开监控界面此时在LangSmith官方WebUI的Tracing界面下可以看到按照LANGSMITH_PROJECT 命名的项目。步骤3查看运行指标点击条目任意位置可以进入详情页面此处列出了详细的运行指标点击某次运行记录可以查看更详细的信息自行探索。步骤4查看运行报表此处提供了大量指标的报表点击上述标签或下滑页面可以切换指标。自行探索。