有两种方法可以使用 Comet 跟踪您的 LangChain 执行:
  1. LANGCHAIN_COMET_TRACING 环境变量设置为 “true”。这是推荐的方式。
  2. 手动导入 CometTracer 并显式传递它。
import os

import comet_llm
from langchain_openai import OpenAI

os.environ["LANGCHAIN_COMET_TRACING"] = "true"

# 如果未设置 API 密钥,则连接到 Comet
comet_llm.init()

# comet 文档,使用环境变量配置 comet
# https://www.comet.com/docs/v2/api-and-sdk/llm-sdk/configuration/
# 这里我们正在配置 comet 项目
os.environ["COMET_PROJECT_NAME"] = "comet-example-langchain-tracing"

from langchain.agents import AgentType, initialize_agent, load_tools
# 带跟踪的代理运行。确保 OPENAI_API_KEY 设置正确以运行此示例。

llm = OpenAI(temperature=0)
tools = load_tools(["llm-math"], llm=llm)
agent = initialize_agent(
    tools, llm, agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION, verbose=True
)

agent.run("What is 2 raised to .123243 power?")  # 这应该被跟踪
# 链的 URL 应该会在您的控制台中打印,如下所示:
# https://www.comet.com/<workspace>/<project_name>
# 该 URL 可用于在 Comet 中查看 LLM 链。
# 现在,我们取消设置环境变量并使用上下文管理器。
if "LANGCHAIN_COMET_TRACING" in os.environ:
    del os.environ["LANGCHAIN_COMET_TRACING"]

from langchain_community.callbacks.tracers.comet import CometTracer

tracer = CometTracer()

# 重新创建 LLM、工具和代理,并将回调传递给它们中的每一个
llm = OpenAI(temperature=0)
tools = load_tools(["llm-math"], llm=llm)
agent = initialize_agent(
    tools, llm, agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION, verbose=True
)

agent.run(
    "What is 2 raised to .123243 power?", callbacks=[tracer]
)  # 这应该被跟踪

Connect these docs programmatically to Claude, VSCode, and more via MCP for real-time answers.