LangChain 可以用来轻松构建LLM应用和 Agent 的原型。然而,将LLM应用交付到生产环境将会困难得多。我们必须多次迭代提示词、链和其他组件才能构建高质量的产品。

在这个过程中间,LangSmith 可以协助我们轻松调试、测试和持续改进LLM应用程序。

那么,什么时候需要用到 LangSmith 呢。主要使用场景如下:

  • 快速调试一个新的链、Agent或工具集
  • 创建和管理数据集以进行微调、少样本提示以及评估
  • 对应用程序进行回归测试以便开发更顺利
  • 为进一步洞察产品和持续改进,需要进行产品深入分析

前提

创建 LangSmith 帐户并在 Settings - API keys 创建 API 密钥。相关文档参见 docs**

注:LangSmith 处于封闭测试阶段,单人使用有免费额度。

将记录运行结果记录到 LangSmith

要将中间运行结果记录到 LangSmith,我们需要配置几个环境变量。

1
2
3
4
LANGCHAIN_TRACING_V2="true"
LANGCHAIN_PROJECT="Tracing Walkthrough - mytest"
LANGCHAIN_ENDPOINT="https://api.smith.langchain.com"
LANGCHAIN_API_KEY="ls__xxxxxxxxxxxx <langsmith api key> xxxxxxxxx"

其中,将 LANGCHAIN_TRACING_V2 环境变量设置为 true 为开启 LangSmith记录。 LANGCHAIN_PROJECT 环境变量为项目名称(如果未设置,运行结果将记录到 default 项目)。如果项目不存在,将自动创建。 LANGCHAIN_ENDPOINT 是 LangSmith api 访问地址。 LANGCHAIN_API_KEY 为 LangSmith 网站上创建的 API key。

配置完之后,我们就可以将之前的案例运行一下,看看 LangSmith 中记录的数据。

LangSmith Projects

Projects

这里可以查看各项目的最近7天总体数据情况。点击创建的项目名,将会展示该项目的内部调用信息。

tracing

点击其中每次模型调用,可以查看调用的输入输出。

inputoutput

通过LangSmith,我们可以一步一步跟踪查看大模型每次调用的细节内容,更方便 LLM 应用的调试和优化。