5分钟入门 AI Agent:用 LangChain 构建你的第一个智能助手
5分钟入门 AI Agent:用 LangChain 构建你的第一个智能助手
前言
最近在学习 AI Agent,于是用 LangChain 写了一个最简单的 Demo。
目标很简单:让 AI 不只是“聊天”,而是可以调用工具解决问题
比如:
- 问天气 → 调用天气函数
- 问计算 → 调用计算器
- 问数据库 → 查询数据
这篇文章就从一个最简单的例子入门
一、完整代码(第一个 Agent)
from langchain.agents import create_agent
from langchain_community.chat_models.tongyi import ChatTongyi
from langchain_core.tools import tool
@tool(description="查询天气")
def get_weather() -> str:
return "晴天"
agent = create_agent(
model=ChatTongyi(model="qwen3-max"),
tools=[get_weather],
system_prompt="你是一个聊天助手,可以回答用户问题。",
)
res = agent.invoke(
{
"messages": [
{"role": "user", "content": "明天天气如何?"},
]
}
)
for message in res["messages"]:
print(message.content)
二、什么是 Agent?
在传统 LLM(大模型)中:模型只能“回答问题”
但 Agent 的核心是: 让模型具备“行动能力”(调用工具)
对比一下
| 类型 | 能力 |
|---|---|
| 普通大模型 | 只能生成文本 |
| Agent | 能思考 + 调用工具 + 给出结果 |
三、代码逐行解析
1. 定义工具(Tool)
@tool(description="查询天气")
def get_weather() -> str:
return "晴天"
这里做了两件事:
- 用
@tool把函数注册为工具 - 提供描述,让模型知道“这个工具能干嘛”
本质:把普通函数 → 变成 AI 可调用的能力
2. 创建模型
ChatTongyi(model="qwen3-max")
使用的是 Alibaba Cloud 的通义千问模型
3. 创建 Agent
agent = create_agent(
model=ChatTongyi(model="qwen3-max"),
tools=[get_weather],
system_prompt="你是一个聊天助手,可以回答用户问题。",
)
关键点:
model:大模型(负责“思考”)tools:工具列表(负责“行动”)system_prompt:角色设定
4. 发起请求
agent.invoke(...)
输入格式:
{
"messages": [
{"role": "user", "content": "明天天气如何?"}
]
}
5. 输出结果
for message in res["messages"]:
print(message.content)
Agent 可能会输出多轮信息:
- 思考过程
- 工具调用
- 最终答案
四、Agent 的执行过程(重点)
当你问:
明天天气如何?
Agent 内部其实经历了:
Step 1:理解问题
“这是一个天气问题”
Step 2:选择工具
找到 get_weather
Step 3:调用函数
执行:
get_weather()
Step 4:返回结果
“晴天”
五、为什么 Agent 很重要?
Agent 是当前 AI 的一个重要方向:从“生成内容” → “执行任务”
应用场景:
- 自动办公(查数据、写报告)
- 智能客服
- 自动化流程(Workflow)
- 编程助手
浙公网安备 33010602011771号