Skip to main content
在本地使用 LangChain 构建代理时,可视化代理内部发生的情况、与其进行实时交互以及在问题发生时进行调试是非常有帮助的。LangSmith Studio 是一个免费的可视化界面,用于从本地机器开发和测试 LangChain 代理。 Studio 连接到您本地运行的代理,向您展示代理执行的每一步:发送给模型的提示、工具调用及其结果以及最终输出。您可以测试不同的输入,检查中间状态,并在不需要额外代码或部署的情况下迭代代理的行为。 本页描述了如何使用本地 LangChain 代理设置 Studio。

先决条件

在开始之前,请确保您拥有以下内容:
  • 一个 LangSmith 账户:在 smith.langchain.com 注册(免费)或登录。
  • 一个 LangSmith API 密钥:按照 创建 API 密钥 指南进行操作。
  • 如果您不希望数据被 跟踪 到 LangSmith,请在应用程序的 .env 文件中设置 LANGSMITH_TRACING=false。禁用跟踪后,没有数据会离开您的本地服务器。

设置本地代理服务器

1. 安装 LangGraph CLI

LangGraph CLI 提供了一个本地开发服务器(也称为 代理服务器),用于将您的代理连接到 Studio。
npx @langchain/langgraph-cli

2. 准备您的代理

如果您已经有一个 LangChain 代理,可以直接使用它。本示例使用一个简单的电子邮件代理:
agent.ts
import { createAgent } from "@langchain/langgraph";

function sendEmail(to: string, subject: string, body: string): string {
    // 发送电子邮件
    const email = {
        to: to,
        subject: subject,
        body: body
    };
    // ... 邮件发送逻辑

    return `Email sent to ${to}`;
}

const agent = createAgent({
    model: "gpt-4.1",
    tools: [sendEmail],
    systemPrompt: "You are an email assistant. Always use the sendEmail tool.",
});

export { agent };

3. 环境变量

Studio 需要 LangSmith API 密钥来连接您的本地代理。在项目根目录下创建一个 .env 文件,并添加来自 LangSmith 的 API 密钥。
确保您的 .env 文件未提交到版本控制(如 Git)。
.env
LANGSMITH_API_KEY=lsv2...

4. 创建 LangGraph 配置文件

LangGraph CLI 使用配置文件来定位您的代理并管理依赖项。在您的应用程序目录中创建一个 langgraph.json 文件:
langgraph.json
{
  "dependencies": ["."],
  "graphs": {
    "agent": "./src/agent.ts:agent"
  },
  "env": ".env"
}
createAgent 函数自动返回一个编译后的 LangGraph 图,这正是配置文件中 graphs 键所期望的。
有关配置文件 JSON 对象中每个键的详细解释,请参阅 LangGraph 配置文件参考
此时,项目结构将如下所示:
my-app/
├── src
   └── agent.ts
├── .env
├── package.json
└── langgraph.json

5. 安装依赖项

yarn install

6. 在 Studio 中查看您的代理

启动开发服务器以将您的代理连接到 Studio:
npx @langchain/langgraph-cli dev
Safari 阻止 localhost 连接到 Studio。要解决此问题,请使用 --tunnel 运行上述命令,通过安全隧道访问 Studio。您需要在 Studio UI 中点击 Connect to a local server(连接到本地服务器),手动将隧道 URL 添加到允许的来源中。有关步骤,请参阅 故障排除指南
服务器运行后,您的代理可以通过 API http://127.0.0.1:2024 访问,也可以通过 Studio UI https://smith.langchain.com/studio/?baseUrl=http://127.0.0.1:2024 访问:
Agent view in the Studio UI
将 Studio 连接到本地代理后,您可以快速迭代代理的行为。运行测试输入,在 LangSmith 中检查完整的执行跟踪,包括提示、工具参数、返回值和令牌/延迟指标。当出现问题时,Studio 会捕获异常以及周围的状态,帮助您了解发生了什么。 开发服务器支持热重载——在代码中更改提示或工具签名,Studio 会立即反映这些更改。从任何步骤重新运行对话线程以测试您的更改,而无需重新开始。此工作流程适用于从简单的单工具代理到复杂的多节点图。 有关如何运行 Studio 的更多信息,请参阅 LangSmith 文档 中的以下指南:

视频指南