目录

一、LangSmith是什么?

二、如何使用LangSmith

2.1 使用步骤示例

2.2 简单的langchain示例代码

2.3 其他"可观测工具"了解

三、文章总结


一、LangSmith是什么?

        LangSmith 是 LangChain 官方推出的一个“智能体工程平台”,可以理解为 LLM 应用的全生命周期管理平台。如果说 LCEL 是帮你在“本地”高效构建应用工作流的工具,那么 LangSmith 就是帮你将这个应用“安全可靠地送上生产线并持续监控”的平台。

        它解决了 LLM 应用开发中的一个核心痛点:大模型的“黑盒”特性与“非确定性”(即同样输入可能得到不同输出)使得应用难以调试和评估。LangSmith 通过提供强大的可观测性和评估能力,让 AI 应用的行为变得透明、可控。

        

二、如何使用LangSmith

        LangSmith 是一个与框架无关的平台,无论你是否使用 LangChain 都可以接入.

  1. 注册账号:你可以访问 smith.langchain.com 免费注册账号。

  2. 获取 API 密钥:在账号的设置页面创建你的 API 密钥。

  3. 集成到应用:通过设置一个简单的环境变量,即可将你的 LangChain 或 LangGraph 应用与 LangSmith 连接起来。LangSmith 也提供了 Python、TypeScript、Go 和 Java 的 SDK,方便自定义集成。

2.1 使用步骤示例

        1、登录官网

        2、进入主界面

        3、获取LangSmith追踪配置

        4、设置相关配置

        5、在python项目下的.env中配置相关参数即可

        PS:代码中无侵入性。若相关配置有自定义,则增加load_dotenv组件并加载配置即可。

import os
#1.导入所需的核心组件
from dotenv import load_dotenv

#从.env 文件加载我们配置的环境变量
load_dotenv()

api_key = os.getenv("DASHSCOPE_API_KEY")

        6、执行项目调试后在smith官网中查看“跟踪”日志.

        原有项目无需更改,smith加载.env配置后,在执行时会自动把调用日志传递到平台中,        运行原有python项目后,刷新smith界面即可。

2.2 简单的langchain示例代码

#简单的链应用,用于:处理语言的翻译
import os
#1.导入所需的核心组件
from dotenv import load_dotenv
from langchain_core.prompts import ChatPromptTemplate
#字符串解析器
from langchain_core.output_parsers import StrOutputParser
from langchain_openai import ChatOpenAI

#从.env 文件加载我们配置的环境变量
load_dotenv()

api_base = os.getenv("DASHSCOPE_API_BASE")
api_key = os.getenv("DASHSCOPE_API_KEY")

#2.定义我们的提示模板
#这个模板包含了两个动态变量:language和text。
#它清晰地指示模型,将text从英语翻译成指定的Tnguage.
system_template="将下列内容从英语翻译为{language}"
prompt_template = ChatPromptTemplate.from_messages([
    ("system", system_template),
    ("human","{text}")
])

#3.初始化我们的语言模型
#temperature=0表示我们希望模型的输出更具确定性,减少随机发挥。
model = ChatOpenAI(
    base_url=api_base,
    api_key=api_key,
    model="qwen3.7-max",
    temperature=0,
    extra_body={"enable_thinking": False}
)

#4。初始化输出解析器
#StrOutputParser会将模型返回的聊天消息对象,转换为我们更易于使用的简单字符串。
parser = StrOutputParser()

#5.使用 LCEL。管道操作符 |将三大组件链接成链
#这行代码可以说是LangcChain现代用法的精髓所在。
#它以声明式的方式,定义了一个清晰的执行流程,输入一>提示模板一>模型一>解析器一>输出
chain = prompt_template | model | parser

#6.调用链并传入我们的输入数据
#我们使用 invoke方法来执行这条链。
#输入是一个字典,其键必须与提示模板中定义的变量名完全对应。
input_data = {"language":"中文", "text": "Hello, how are you?"}
response = chain.invoke(input_data)

print(f"输入:{input_data}")
print(f"翻译结果:{response}")

input_data_japanese = {"language":"日语", "text": "I love programming."}
response_japanese = chain.invoke(input_data_japanese)
print(f"\ni入: {input_data_japanese}")
print(f"翻译结果:{response_japanese}")

2.3 其他"可观测工具"了解

         主流本地可观测性工具对比

工具 一句话定位 核心特点 部署与上手难度 适用场景
Langfuse 功能全面的开源 LLM 工程平台- 功能最全面,覆盖追踪、评估、提示词管理、数据集、Playground 等。基于 MIT 协议-,与 LangChain、OpenAI SDK 等集成良好。 中等。提供 Docker 一键部署-,文档详尽。 寻求功能最接近 LangSmith、社区活跃的开源替代方案--11
Arize Phoenix 专为 LLM 应用调试和生产环境设计- 强大的可视化追踪调试能力-。可部署在本地 Jupyter Notebook 或 Docker 中-。 简单。可通过 pip install 和一条命令启动-。 需要深入可视化、调试和评估 LLM 应用,尤其是 RAG 或 Agent 场景-。
AgentLens 为 GDPR 和严苛数据合规场景设计 强调数据主权,支持完全离线(Air-gap)模式。内置质量评分、幻觉检测、预算告警等功能。 简单。提供一键安装脚本或 Docker Compose 部署。 对数据隐私和合规有极高要求(如金融、医疗、欧洲市场)的团队-。
PeekAI 轻量级、本地优先的 Python Agent 调试工具 极简主义,一行代码 peekai.init() 即可开始追踪。数据存储在本地 SQLite,提供 CLI 和 Web UI。 非常简单。直接 pip install 即可。 快速本地调试 Python AI Agent,追求极致轻量和零配置-。
Lumina 面向生产环境的 OpenTelemetry 原生平台 基于 OpenTelemetry 标准-,避免厂商锁定。支持成本追踪、分布式追踪、回归测试和智能告警。 中等。通过 Docker Compose 快速启动。 已采用或计划采用 OpenTelemetry 标准,希望将 LLM 观测融入现有基础设施的团队。
Lunary 开源 LLM 可观测性与评估平台 功能集完整,包括追踪、提示词管理、数据集、评估和分析。基于 Apache 2.0 协议-。 中等。提供自托管部署选项。 需要一个功能全面、协议友好的开源平台。
  • 功能最全面、社区最活跃:选择 Langfuse。它是目前公认的 LangSmith 最强开源替代者。

  • 数据隐私和合规要求极高:选择 AgentLens。其“气隙模式”专为敏感环境设计。

  • 追求轻量级和快速本地调试:选择 PeekAI。对于 Python 开发者来说,它几乎是零成本的调试利器。

  • 希望拥抱 OpenTelemetry 标准:选择 Lumina

  • 需要深入可视化和调试:选择 Arize Phoenix

  • 需要LangSmith 自托管:选择本地化的LangSmith,不过是收费的。

三、文章总结

        总的来说,LangSmith 为 LLM 应用开发提供了从调试、测试、评估到部署、监控的一站式解决方案,是构建可靠、生产级 AI 应用的关键基础设施。但是云端线上版本一般自己进行测试和使用是可以的。如果公司资金充足也可以考虑LangSmith的自托管版本。可以根据自己个人或公司的实际需要对比开源工具和LangSmith找到合适自己的“LLM监控跟踪”方案。

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐