原文链接: https://docs.langchain.com/oss/python/langchain/studio
在本地使用 LangChain 构建智能体时,可视化智能体内部执行过程、实时交互并调试问题会很有帮助。LangSmith Studio 是一个免费的视觉界面,用于在本地开发和测试 LangChain 智能体。
Studio 会连接到你在本地运行的智能体,展示:
- 智能体执行的每一步;
- 发送给模型的提示词;
- 工具调用及其结果;
- 最终输出。
你可以:
- 测试不同输入;
- 检查中间状态;
- 迭代优化智能体行为;
而无需额外代码或部署。本页说明如何将 Studio 与本地 LangChain 智能体连接。
开始前,请确保:
- LangSmith 账户:在 smith.langchain.com 注册(免费)或登录。
- LangSmith API Key:按照“创建 API Key 指南”获取。
- 如果不想将数据追踪到 LangSmith,可在应用的
.env文件中设置LANGSMITH_TRACING=false。禁用追踪后,不会有数据离开你的本地服务器。
LangGraph CLI 提供一个本地开发服务器(也称为 Agent Server),用于将智能体连接到 Studio。
# 需要 Python >= 3.11
pip install --upgrade "langgraph-cli[inmem]"如果你已有 LangChain 智能体,可以直接使用。下面示例使用一个简单的邮件智能体:
agent.py
from langchain.agents import create_agent
def send_email(to: str, subject: str, body: str):
"""Send an email"""
email = {
"to": to,
"subject": subject,
"body": body,
}
# ... email sending logic
return f"Email sent to {to}"
agent = create_agent(
"gpt-4o",
tools=[send_email],
system_prompt="You are an email assistant. Always use the send_email tool.",
)Studio 需要 LangSmith API Key 来连接本地智能体。在项目根目录创建 .env 文件,并添加从 LangSmith 获取的 API Key。
确保 .env 文件不会被提交到版本控制系统(如 Git)。
.env
LANGSMITH_API_KEY=lsv2...LangGraph CLI 使用配置文件来定位智能体并管理依赖。在应用目录创建 langgraph.json 文件:
langgraph.json
{
"dependencies": ["."],
"graphs": {
"agent": "./src/agent.py:agent"
},
"env": ".env"
}create_agent 函数会自动返回一个已编译的 LangGraph 图,这正是配置文件中 graphs 键所期望的。
关于配置文件中每个键的详细说明,可参考 LangGraph 配置文件参考文档。
此时,项目结构应如下:
my-app/
├── src
│ └── agent.py
├── .env
└── langgraph.json
从根目录安装项目依赖:
pip install langchain langchain-openai启动开发服务器以将智能体连接到 Studio:
langgraph devSafari 会阻止
localhost连接到 Studio。要解决此问题,可在上述命令中添加--tunnel参数,通过安全隧道访问 Studio。
服务器运行后,你的智能体可通过以下方式访问:
- API:
http://127.0.0.1:2024 - Studio UI:
https://smith.langchain.com/studio/?baseUrl=http://127.0.0.1:2024
Studio UI 中的智能体视图:
(原文包含截图,此处略)
连接 Studio 到本地智能体后,你可以快速迭代智能体行为:
- 运行测试输入,检查完整执行轨迹,包括:
- 提示词
- 工具参数
- 返回值
- token / 延迟指标
- 出现问题时,Studio 会捕获异常及周围状态,帮助理解发生了什么。
- 开发服务器支持热重载:修改代码中的提示词或工具签名,Studio 会立即反映这些更改。
- 可以从任意步骤重新运行对话线程,测试更改而无需从头开始。
该工作流适用于从简单的单工具智能体到复杂的多节点图。
关于如何运行 Studio 的更多信息,可参考 LangSmith 文档中的以下指南:
- Run application(运行应用)
- Manage assistants(管理助手)
- Manage threads(管理线程)
- Iterate on prompts(迭代提示词)
- Debug LangSmith traces(调试 LangSmith 轨迹)
- Add node to dataset(将节点添加到数据集)
关于本地和已部署智能体的更多信息,可参见:
- Set up local Agent Server(设置本地智能体服务器)
- Deploy(部署)
本文档由 LangChain 官方文档翻译而来