快速开始:启动本地 LangGraph 服务器¶
这是一个快速入门指南,帮助您在本地启动并运行 LangGraph 应用。
要求
- Python >= 3.11
- LangGraph CLI:需要 langchain-cli[inmem] >= 0.1.58
安装 LangGraph CLI¶
🌱 创建 LangGraph 应用¶
从 react-agent
模板创建一个新应用。此模板是一个简单的 agent,可以灵活地扩展到许多工具。
其他模板
如果您使用 langgraph new
而不指定模板,您将看到一个交互式菜单,允许您从可用模板列表中选择。
安装依赖¶
在新的 LangGraph 应用的根目录中,以 edit
模式安装依赖,以便服务器使用您的本地更改
创建 .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 服务器。如果运行成功,您应该看到类似以下内容
准备就绪!
LangGraph Studio Web UI: https://smith.langchain.com/studio/?baseUrl=http://127.0.0.1:2024
内存模式
langgraph dev
命令以内存模式启动 LangGraph 服务器。此模式适用于开发和测试目的。对于生产用途,您应该部署可以访问持久存储后端的 LangGraph 服务器。
如果您想使用持久存储后端测试您的应用程序,您可以使用 langgraph up
命令而不是 langgraph 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://127.0.0.1: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 云¶
- LangGraph 云快速入门:使用 LangGraph 云部署您的 LangGraph 应用。
📚 了解更多关于 LangGraph 平台的信息¶
通过以下资源扩展您的知识
- LangGraph 平台概念:了解 LangGraph 平台的基础概念。
- LangGraph 平台操作指南:探索构建和部署应用程序的逐步指南。
🛠️ 开发者参考¶
访问有关开发和 API 使用的详细文档
- LangGraph 服务器 API 参考:探索 LangGraph 服务器 API 文档。
- Python SDK 参考:探索 Python SDK API 参考。
- JS/TS SDK 参考:探索 JS/TS SDK API 参考。