企业 Agent 的桌面级推理底座:边缘算力与推理引擎技术实践
2026/7/9 5:29:19
本文档介绍如何利用LangChain的环境变量机制,实现零代码侵入的 LangSmith 自动追踪。
LangChain 框架内置了对 LangSmith 的支持。你不需要在代码里显式初始化 Client 或写日志,只需设置一个环境变量开关:
LANGCHAIN_TRACING_V2=true只要这个开关打开,你的所有 Chain、LLM、Retriever 的运行细节都会被自动发送到 LangSmith 云端。
确保你的.env文件包含以下核心配置:
# 1. 总开关 (必须 true) LANGCHAIN_TRACING_V2=true # 2. 身份认证 (你的 Key) LANGCHAIN_API_KEY="ls__xxxxxx" # 3. 区域端点 (如果你是 EU 账号,必须加这行;US 账号不用加) # LANGCHAIN_ENDPOINT="https://eu.api.smith.langchain.com" # 4. 项目名称 (可选,如果不填,默认存入 "default" 项目) # LANGCHAIN_PROJECT="Mydemo"我们已经准备好了一个测试脚本:src/examples/trace_demo.py。
这个脚本非常简单,就是一个普通的 LangChain 对话链,没有任何与 LangSmith 相关的代码。
importsrc.configs.configfromlangchain_openaiimportChatOpenAIfromlangchain_core.promptsimportChatPromptTemplatefromlangchain_core.output_parsersimportStrOutputParserfromsrc.llm.gemini_chat_modelimportget_gemini_llm# 1. 确保环境变量已加载 (.env)# 必须包含:# LANGCHAIN_TRACING_V2=true# LANGCHAIN_API_KEY=...# 2. 定义一个简单的链prompt=ChatPromptTemplate.from_template("请用{language}写一首关于{topic}的四行诗。")model=get_gemini_llm()parser=StrOutputParser()chain=prompt|model|parser# 3. 运行链# 这次运行会自动被 LangSmith 记录,因为环境变量开关已打开print("正在生成诗歌...")response=chain.invoke({"language":"中文","topic":"人工智能"})print("\n=== 生成结果 ===")print(response)print("==================")print("请去 LangSmith 控制台查看本次运行的 Trace 详情。")在终端执行:
python src/examples/trace_demo.py脚本运行结束后,请按照以下步骤查看“上帝视角”的运行记录:
登录控制台:访问 LangSmith (EU) 或 LangSmith (US)。
进入项目:
LANGCHAIN_PROJECT变量)。查看 Trace:
RunnableSequence或ChatOpenAI。深度透视:
在右侧弹出的详情页中,你可以看到完整的调用链路树。
Prompt: 点击ChatPromptTemplate节点,查看填入变量后的完整提示词。
LLM: 点击ChatOpenAI节点,查看发给 API 的原始 Payload 和 Token 消耗。
Output: 查看最终输出结果和耗时。
Zero Code Instrumentation (零代码插桩)是 LangSmith 最强大的特性之一。你只管写业务逻辑,监控和日志交给环境变量去处理。