观测与部署

  |   0 评论   |   0 浏览

你将学会: 打开 LangSmith 追踪;本地评测不依赖云;知道部署入口。
前置: 阶段 2。没有 LangSmith 账号也能做完本课前半。

生产事故里最常见的不是「模型不够聪明」,而是不知道它调了什么工具、为什么那样调

1. 追踪(有 key 才上报,没有也能跑 agent)

.env 增加:

LANGSMITH_TRACING=true
LANGSMITH_API_KEY=...
import os

from dotenv import load_dotenv

load_dotenv()

from langchain.agents import create_agent
from langchain.chat_models import init_chat_model

model = init_chat_model(
    "deepseek:deepseek-chat",
    temperature=0.5,
    max_tokens=2500,
    timeout=300,
    max_retries=6,
)


def get_weather(city: str) -> str:
    """获取某城市的天气。"""
    return f"{city}今天晴,25°C。"


agent = create_agent(model=model, tools=[get_weather])
print(agent.invoke(
    {"messages": [{"role": "user", "content": "杭州天气?"}]},
    config={"tags": ["l12"], "metadata": {"lesson": "observability"}},
)["messages"][-1].content)
print("tracing =>", os.environ.get("LANGSMITH_TRACING"), "key =>", bool(os.environ.get("LANGSMITH_API_KEY")))

打开 smith.langchain.com 看这次运行的工具调用。

2. 本地评测(不需要 LangSmith)

def classify(text: str) -> str:
    bad = ("白痴", "idiot")
    return "Toxic" if any(k in text.lower() for k in bad) else "Not toxic"

rows = [("你真是个白痴", "Toxic"), ("谢谢", "Not toxic")]
ok = sum(classify(x) == y for x, y in rows)
print("准确率 =>", ok / len(rows))

云端 Dataset / Experiment:仓库 10-测试与评估/LangSmith-evaluation评测.py

3. 部署你需要知道的三件事

  1. create_agent 的产物已经是一张 LangGraph 图,可以交给 LangSmith Deployment / langgraph dev
  2. langgraph.json 里的名字 = 前端 assistantId
  3. 前端现成壳:npx create-agent-chat-apphttps://agentchat.vercel.app ,本地默认 http://localhost:2024

仓库根目录放这样一个 langgraph.json(路径按你的文件改;本课只要求看懂,不必真的部署):

{
  "dependencies": ["."],
  "graphs": {
    "agent": "./my_agent.py:agent"
  },
  "env": ".env"
}

graphs.agent 左边的 agent 就是前端要填的 assistantIdmy_agent.py 里导出变量 agent = create_agent(...)

本地起服务(装好官方 CLI 之后):

langgraph dev

浏览器打开 Studio 或把 Agent Chat UI 指到 http://localhost:2024。没有账号也能把 L08 的测试和上面的本地评测当作交付底线。

详细点选仓库 11-可观测性与部署/09-前端与UI/

本章验收

  •  知道怎么打开 tracing(两个环境变量)
  •  有一条不依赖云的准确率计算
  •  能说出 langgraph.json 里的名字就是前端 assistantId

下一课:综合项目


标题:观测与部署
作者:llp
地址:https://llinp.cn/articles/2026/08/23/1787493881963.html