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)
  • 编程助手
posted @ 2026-04-12 09:37  ZhenyangQ  阅读(9)  评论(0)    收藏  举报