快速入门:启动本地 LangGraph 服务器¶
本指南旨在帮助您快速在本地启动并运行 LangGraph 应用。
安装 LangGraph CLI¶
$ npx @langchain/langgraph-cli@latest
# Or install globally, will be available as `langgraphjs`
$ npm install -g @langchain/langgraph-cli
🌱 创建 LangGraph 应用¶
创建一个新的应用并按照说明操作,选择 ReAct Agent 作为模板。此模板是一个简单的智能体,可以灵活地扩展到多种工具。
安装依赖¶
在新的 LangGraph 应用的根目录下,以编辑模式安装依赖项,以便服务器使用您的本地更改
创建 .env 文件¶
您将在新的 LangGraph 应用的根目录下找到一个 .env.example 文件。在新的 LangGraph 应用的根目录下创建一个 .env 文件,将 .env.example 文件的内容复制进去,并填写必要的 API 密钥
获取 API 密钥
- LANGSMITH_API_KEY:前往 LangSmith 设置页面。然后点击 创建 API 密钥。
- ANTHROPIC_API_KEY:从 Anthropic 获取 API 密钥。
- OPENAI_API_KEY:从 OpenAI 获取 API 密钥。
- TAVILY_API_KEY:在 Tavily 网站上获取 API 密钥。
🚀 启动 LangGraph 服务器¶
这将在本地启动 LangGraph API 服务器。如果成功运行,您应该会看到类似以下内容:
内存模式
`langgraphjs dev` 命令以内存模式启动 LangGraph 服务器。此模式适用于开发和测试目的。对于生产用途,您应该部署 LangGraph Cloud 并访问持久存储后端。
如果您想使用持久存储后端测试您的应用,可以使用 `langgraphjs up` 命令代替 `langgraphjs dev`。您需要在机器上安装 Docker 才能使用此命令。
LangGraph Studio Web UI¶
LangGraph Studio Web 是一个专门的 UI,您可以连接到 LangGraph API 服务器,以在本地启用应用的可视化、交互和调试。通过访问 `langgraph dev` 命令输出中提供的 URL,在 LangGraph Studio Web UI 中测试您的图。
- LangGraph Studio Web UI: https://smith.langchain.com/studio/?baseUrl=http://localhost:2024
连接到具有自定义主机/端口的服务器
如果您正在使用自定义主机/端口运行 LangGraph API 服务器,可以通过更改 `baseUrl` URL 参数将 Studio Web UI 指向它。例如,如果您的服务器运行在端口 8000 上,您可以将上面的 URL 更改为以下内容
Safari 兼容性
当前,LangGraph Studio Web 在本地运行服务器时不支持 Safari。
测试 API¶
安装 LangGraph Python SDK
向助手发送消息 (无线程运行)
from langgraph_sdk import get_client
client = get_client(url="http://localhost:2024")
async for chunk in client.runs.stream(
None, # Threadless run
"agent", # Name of assistant. Defined in langgraph.json.
input={
"messages": [{
"role": "human",
"content": "What is LangGraph?",
}],
},
stream_mode="updates",
):
print(f"Receiving new event of type: {chunk.event}...")
print(chunk.data)
print("\n\n")
安装 LangGraph Python SDK
向助手发送消息 (无线程运行)
from langgraph_sdk import get_sync_client
client = get_sync_client(url="http://localhost:2024")
for chunk in client.runs.stream(
None, # Threadless run
"agent", # Name of assistant. Defined in langgraph.json.
input={
"messages": [{
"role": "human",
"content": "What is LangGraph?",
}],
},
stream_mode="updates",
):
print(f"Receiving new event of type: {chunk.event}...")
print(chunk.data)
print("\n\n")
安装 LangGraph JS SDK
向助手发送消息 (无线程运行)
const { Client } = await import("@langchain/langgraph-sdk");
// only set the apiUrl if you changed the default port when calling langgraph dev
const client = new Client({ apiUrl: "http://localhost:2024"});
const streamResponse = client.runs.stream(
null, // Threadless run
"agent", // Assistant ID
{
input: {
"messages": [
{ "role": "user", "content": "What is LangGraph?"}
]
},
streamMode: "messages",
}
);
for await (const chunk of streamResponse) {
console.log(`Receiving new event of type: ${chunk.event}...`);
console.log(JSON.stringify(chunk.data));
console.log("\n\n");
}
认证
如果您连接到远程服务器,您需要提供 LangSmith API 密钥进行授权。请参阅客户端的 API 参考以获取更多信息。
下一步¶
现在您已经在本地运行了 LangGraph 应用,通过探索部署和高级功能来进一步深入学习
🌐 部署到 LangGraph Cloud¶
- LangGraph Cloud 快速入门:使用 LangGraph Cloud 部署您的 LangGraph 应用。
📚 了解更多关于 LangGraph 平台¶
利用这些资源扩展您的知识
- LangGraph 平台概念:理解 LangGraph 平台的基础概念。
- LangGraph 平台操作指南:查找构建和部署应用的逐步指南。
🛠️ 开发者参考¶
查阅详细的开发和 API 使用文档
- LangGraph 服务器 API 参考:探索 LangGraph 服务器 API 文档。
- Python SDK 参考:探索 Python SDK API 参考。
- JS/TS SDK 参考:探索 JS/TS SDK API 参考。