追踪树每个节点代表一个 Run,清晰呈现执行逻辑:根节点(RunnableSequence)是应用顶层调用; 父节点(LLMChain)是具体链或代理;子节点展示父节点组件的执行细节 ——(PromptTemplate) 显示填充变量后的完整提示; (LLM Call) 记录模型调用的名称、耗时、Token 消耗; Agent 应用还会显示工具调用及输入输出;(OutputParser) 展示输出解析步骤。
这种结构与 LangChain 表达式语言(LCEL)执行图直接对应,代码逻辑结构与追踪可视化结构同构。开发者使用 LangSmith 调试时,不仅能查看日志,还能直观验证代码逻辑是否符合预期,提升调试效率。
mkdir langsmith - translator
cd langsmith - translator
\# Mac/Linux
python3 -m venv venv
source venv/bin/activate
\# Windows
python -m venv venv
venv\Scripts\activate
以简单翻译应用为例,展示 LangSmith 的代码集成方式,基于 LangChain 的 LLMChain 实现翻译功能:
import os
from langchain import LLMChain, PromptTemplate
from langchain.chat\_models import ChatOpenAI
from langsmith import Client
from langsmith.run\_helpers import traceable
\# 设置环境变量
os.environ\["LANGCHAIN\_API\_KEY"] = "YOUR\_API\_KEY"
os.environ\["OPENAI\_API\_KEY"] = "YOUR\_OPENAI\_KEY"
os.environ\["LANGCHAIN\_PROJECT"] = "translation\_project"
\# 初始化LangSmith client
client = Client()
\# 定义翻译模板
template = """Translate the following English text to French: {text}"""
prompt = PromptTemplate(input\_variables=\["text"], template=template)
\# 创建LLMChain
@traceable(run\_type="translation")
def translate\_text(text):
  llm = ChatOpenAI(temperature=0)
  chain = LLMChain(llm=llm, prompt=prompt)
  result = chain.run(text)
  return result
\# 调用翻译函数
text\_to\_translate = "Hello, world!"
translation = translate\_text(text\_to\_translate)
print(translation)
上述代码中,通过环境变量建立与 LangSmith 的连接,用
@traceable
装饰器标记翻译函数,实现函数运行情况的 LangSmith 追踪。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。