本页还没有译文
本页 30 段还没译成Español,下面显示的是英文原文。Run a local server
还没翻译译自英文(docs.langchain.com)本页 30 段都还没译
This guide shows you how to run a LangGraph agent locally.
Prerequisites
Before you begin, ensure you have the following:
- An API key for LangSmith - free to sign up
1. Install the LangGraph CLI
npm install --save-dev @langchain/langgraph-cli2. Create a LangGraph agent
Create agent code from the new-langgraph-project-js template. This template demonstrates a single-node graph you can extend with your own logic.
npm create langgraphAdding LangGraph to an existing project
If you have an existing project with LangGraph agents, you can automatically generate a langgraph.json configuration file using the config command:
npm create langgraph configThis command scans your project for LangGraph agents (such as createAgent(), StateGraph.compile(), or workflow.compile() patterns) and generates a configuration file with all exported agents.
Example output:
{
"node_version": "24",
"graphs": {
"agent": "./src/agent.ts:agent",
"searchAgent": "./src/search.ts:searchAgent"
},
"env": ".env"
}Tip
Only exported agents are included in the configuration. If an agent is not exported, the command will warn you so you can add the export keyword.
3. Install dependencies
In the root of your new LangGraph app, install the dependencies in edit mode so your local changes are used by the server:
cd path/to/your/app
npm install4. Create a .env file
Note
In an agent-based workspace, create an agent once before sending traces. Use agent addressing to select its identifier and environment. If an integration requires project_name, use the selected environment's tracer_session_name as a compatibility value.
You will find a .env.example in the root of your new LangGraph app. Create a .env file in the root of your new LangGraph app and copy the contents of the .env.example file into it, filling in the necessary API keys:
LANGSMITH_API_KEY=lsv2...
LANGSMITH_AGENT_ID="<your-agent-id>"
LANGSMITH_AGENT_ENVIRONMENT="production"5. Launch Agent server
Start the LangGraph API server locally:
npx @langchain/langgraph-cli devSample output:
INFO:langgraph_api.cli:
Welcome to
╦ ┌─┐┌┐┌┌─┐╔═╗┬─┐┌─┐┌─┐┬ ┬
║ ├─┤││││ ┬║ ╦├┬┘├─┤├─┘├─┤
╩═╝┴ ┴┘└┘└─┘╚═╝┴└─┴ ┴┴ ┴ ┴
- 🚀 API: http://127.0.0.1:2024
- 🎨 Studio UI: https://smith.langchain.com/studio/?baseUrl=http://127.0.0.1:2024
- 📚 API Docs: http://127.0.0.1:2024/docs
This in-memory server is designed for development and testing.
For production use, please use LangSmith Deployment.
The langgraph dev command starts Agent Server in an in-memory mode. This mode is suitable for development and testing purposes. For production use, deploy Agent Server with access to a persistent storage backend. For more information, see the Platform setup overview.
6. Test your agent in Studio
Studio is a specialized UI that you can connect to LangGraph API server to visualize, interact with, and debug your agent locally. Test your graph in Studio by visiting the URL provided in the output of the langgraph dev command:
> - LangGraph Studio Web UI: https://smith.langchain.com/studio/?baseUrl=http://127.0.0.1:2024
For an Agent Server running on a custom host/port, update the baseUrl query parameter in the URL. For example, if your server is running on http://myhost:3000:
https://smith.langchain.com/studio/?baseUrl=http://myhost:3000
Safari compatibility
Use the --tunnel flag with your command to create a secure tunnel, as Safari has limitations when connecting to localhost servers:
langgraph dev --tunnel7. Test the API
Javascript SDKRest API
- Install the LangGraph JS SDK:
npm install @langchain/langgraph-sdk - Send a message to the assistant (threadless run):
import { Client } from "@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-tuple",
}
);
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");
}curl -s --request POST \
--url "http://localhost:2024/runs/stream" \
--header 'Content-Type: application/json' \
--data "{
\"assistant_id\": \"agent\",
\"input\": {
\"messages\": [
{
\"role\": \"human\",
\"content\": \"What is LangGraph?\"
}
]
},
\"stream_mode\": \"messages-tuple\"
}"Next steps
Now that you have a LangGraph app running locally, take your journey further by exploring deployment and advanced features:
-
Deployment quickstart: Deploy your LangGraph app using LangSmith.
-
LangSmith: Learn about foundational LangSmith concepts.
-
SDK Reference: Explore the SDK API Reference.