快速入门:启动本地LangGraph服务器¶
这是一个快速入门指南,帮助你在本地启动并运行一个LangGraph应用。
要求
- Python >= 3.11
- LangGraph CLI: 需要 langchain-cli[inmem] >= 0.1.58
安装LangGraph CLI¶
🌱 创建一个LangGraph应用¶
从react-agent
模板创建一个新的应用。这个模板是一个简单的代理程序,可以灵活地扩展到许多工具中。
额外的模板
如果您使用langgraph new
而不指定模板,则会呈现一个交互式菜单,允许您从可用模板列表中进行选择。
安装依赖项¶
在你的新LangGraph应用的根目录下,以edit
模式安装依赖项,这样你的本地更改就可以被服务器使用:
创建一个.env
文件¶
在你的新LangGraph应用的根目录中,你会找到一个.env.example
文件。在该应用的根目录下创建一个.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 界面¶
LangGraph Studio Web 是一个专门的用户界面,你可以将其连接到 LangGraph API 服务器,以实现在本地可视化、交互和调试你的应用程序。通过访问 langgraph dev
命令提供的 URL,可以在 LangGraph Studio Web 界面中测试你的图。
- LangGraph Studio Web 界面: https://smith.langchain.com/studio/?baseUrl=http://127.0.0.1:2024
连接到具有自定义主机/端口的服务器
如果你在运行具有自定义主机/端口的 LangGraph API 服务器,可以通过更改 baseUrl
URL 参数来指向它。例如,如果你的服务器运行在端口 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, # 无线程运行
"agent", # 助手名称。定义在langgraph.json中。
input={
"messages": [{
"role": "human",
"content": "What is LangGraph?",
}],
},
stream_mode="updates",
):
print(f"接收新事件类型:{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, # 无线程运行
"agent", # 助手名称。定义在langgraph.json中。
input={
"messages": [{
"role": "human",
"content": "What is LangGraph?",
}],
},
stream_mode="updates",
):
print(f"接收新事件类型:{chunk.event}...")
print(chunk.data)
print("\n\n")
安装LangGraph JS SDK
向助手发送消息(无线程运行)
const { Client } = await import("@langchain/langgraph-sdk");
// 如果您更改了调用langgraph dev时的默认端口,请设置apiUrl
const client = new Client({ apiUrl: "http://localhost:2024"});
const streamResponse = client.runs.stream(
null, // 无线程运行
"agent", // 助手ID
{
input: {
"messages": [
{ "role": "user", "content": "What is LangGraph?"}
]
},
streamMode: "messages",
}
);
for await (const chunk of streamResponse) {
console.log(`接收新事件类型:${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参考。