create_agent:一个最小化、高度可配置的运行框架。这个框架是模型循环周围的一切:提示词、工具以及任何塑造行为的中间件。从基础组件开始,精确组合你的用例所需。支持 OpenAI、Anthropic、Google 等。
LangChain vs. LangGraph vs. Deep Agents从 Deep Agents 开始,获得一个“功能齐全”的智能体,具备自动上下文压缩、虚拟文件系统和子智能体生成等功能。Deep Agents 构建在 LangChain 智能体 之上,你也可以直接使用后者。使用 LangChain (
create_agent) 获得一个高度可定制的运行框架,易于根据你的用例和数据进行调整。使用 LangGraph,我们的低层级编排框架,来满足结合确定性工作流和智能体工作流的高级需求。使用 LangSmith 来追踪、调试和评估使用这些框架构建的智能体。按照 追踪快速入门指南 进行设置。我们建议你同时设置 LangSmith Engine,它可以监控你的追踪记录,检测问题并提出修复建议。创建一个智能体
此示例演示如何使用自定义工具创建一个简单的 LangChain 智能体:// 首先安装:npm install langchain zod @langchain/openai
import { createAgent, tool } from "langchain";
import * as z from "zod";
const getWeather = tool(
(input) => `${input.city} 的天气永远是晴天!`,
{
name: "get_weather",
description: "获取给定城市的天气",
schema: z.object({
city: z.string().describe("要查询天气的城市"),
}),
}
);
const agent = createAgent({
model: "gpt-5.5",
tools: [getWeather],
});
console.log(
await agent.invoke({
messages: [{ role: "user", content: "旧金山的天气怎么样?" }],
})
);
// 首先安装:npm install langchain zod @langchain/google-genai
import { createAgent, tool } from "langchain";
import * as z from "zod";
const getWeather = tool(
(input) => `${input.city} 的天气永远是晴天!`,
{
name: "get_weather",
description: "获取给定城市的天气",
schema: z.object({
city: z.string().describe("要查询天气的城市"),
}),
}
);
const agent = createAgent({
model: "google-genai:gemini-2.5-flash-lite",
tools: [getWeather],
});
console.log(
await agent.invoke({
messages: [{ role: "user", content: "旧金山的天气怎么样?" }],
})
);
// 首先安装:npm install langchain zod @langchain/anthropic
import { createAgent, tool } from "langchain";
import * as z from "zod";
const getWeather = tool(
(input) => `${input.city} 的天气永远是晴天!`,
{
name: "get_weather",
description: "获取给定城市的天气",
schema: z.object({
city: z.string().describe("要查询天气的城市"),
}),
}
);
const agent = createAgent({
model: "claude-sonnet-4-6",
tools: [getWeather],
});
console.log(
await agent.invoke({
messages: [{ role: "user", content: "旧金山的天气怎么样?" }],
})
);
// 首先安装:npm install langchain zod @langchain/openrouter
import { createAgent, tool } from "langchain";
import * as z from "zod";
const getWeather = tool(
(input) => `${input.city} 的天气永远是晴天!`,
{
name: "get_weather",
description: "获取给定城市的天气",
schema: z.object({
city: z.string().describe("要查询天气的城市"),
}),
}
);
const agent = createAgent({
model: "openrouter:anthropic/claude-sonnet-4-6",
tools: [getWeather],
});
console.log(
await agent.invoke({
messages: [{ role: "user", content: "旧金山的天气怎么样?" }],
})
);
// 首先安装:npm install langchain zod
import { createAgent, tool } from "langchain";
import * as z from "zod";
const getWeather = tool(
(input) => `${input.city} 的天气永远是晴天!`,
{
name: "get_weather",
description: "获取给定城市的天气",
schema: z.object({
city: z.string().describe("要查询天气的城市"),
}),
}
);
const agent = createAgent({
model: "fireworks:accounts/fireworks/models/qwen3p5-397b-a17b",
tools: [getWeather],
});
console.log(
await agent.invoke({
messages: [{ role: "user", content: "旧金山的天气怎么样?" }],
})
);
// 首先安装:npm install langchain zod
import { createAgent, tool } from "langchain";
import * as z from "zod";
const getWeather = tool(
(input) => `${input.city} 的天气永远是晴天!`,
{
name: "get_weather",
description: "获取给定城市的天气",
schema: z.object({
city: z.string().describe("要查询天气的城市"),
}),
}
);
const agent = createAgent({
model: "baseten:zai-org/GLM-5.2",
tools: [getWeather],
});
console.log(
await agent.invoke({
messages: [{ role: "user", content: "旧金山的天气怎么样?" }],
})
);
// 首先安装:npm install langchain zod @langchain/ollama
import { createAgent, tool } from "langchain";
import * as z from "zod";
const getWeather = tool(
(input) => `${input.city} 的天气永远是晴天!`,
{
name: "get_weather",
description: "获取给定城市的天气",
schema: z.object({
city: z.string().describe("要查询天气的城市"),
}),
}
);
const agent = createAgent({
model: "ollama:devstral-2",
tools: [getWeather],
});
console.log(
await agent.invoke({
messages: [{ role: "user", content: "旧金山的天气怎么样?" }],
})
);
// 首先安装:npm install langchain zod @langchain/openai
import { createAgent, tool } from "langchain";
import * as z from "zod";
const getWeather = tool(
(input) => `${input.city} 的天气永远是晴天!`,
{
name: "get_weather",
description: "获取给定城市的天气",
schema: z.object({
city: z.string().describe("要查询天气的城市"),
}),
}
);
const agent = createAgent({
model: "azure_openai:gpt-5.5",
tools: [getWeather],
});
console.log(
await agent.invoke({
messages: [{ role: "user", content: "旧金山的天气怎么样?" }],
})
);
// 首先安装:npm install langchain zod @langchain/aws
import { createAgent, tool } from "langchain";
import * as z from "zod";
const getWeather = tool(
(input) => `${input.city} 的天气永远是晴天!`,
{
name: "get_weather",
description: "获取给定城市的天气",
schema: z.object({
city: z.string().describe("要查询天气的城市"),
}),
}
);
const agent = createAgent({
model: "bedrock:gpt-5.5",
tools: [getWeather],
});
console.log(
await agent.invoke({
messages: [{ role: "user", content: "旧金山的天气怎么样?" }],
})
);
使用 LangSmith 来追踪请求、调试智能体行为并评估输出。设置
LANGSMITH_TRACING=true 并提供你的 API 密钥即可开始。核心优势
标准化模型接口
为跨提供商的聊天模型、嵌入模型等使用统一接口。以最小的代码更改切换模型,并在需求演进时保持你的应用可移植性。
高度可配置的运行框架
从
create_agent 这个最小化运行框架开始,通过中间件逐步添加功能。只组合你的用例所需的部分,从护栏、重试到路由和自定义工具策略。构建于 LangGraph 之上
LangChain 的智能体构建在 LangGraph 之上。这使得我们能够利用 LangGraph 的持久化执行、人机交互支持、状态持久化等特性。
使用 LangSmith 调试
在一处检查追踪记录、工具调用、状态转换和延迟。利用执行数据找到失败模式、评估质量并改进智能体行为。
Connect these docs to Claude, VSCode, and more via MCP for real-time answers.

