最近 AI Agent 又火起来了。

但很多刚学 Python 和大模型的人,都会卡在一个地方:

“我已经会调用大模型 API 了,下一步到底怎么做 Agent?”

这篇文章不准备从一堆概念讲起。

我们直接用 Python 3.14 + OpenAI Agents SDK 做一个真正可以运行的 AI Agent,让它不仅能够回答问题,还能够根据任务主动选择 Python 工具执行操作,然后把执行结果整理成最终答案。

更重要的是,本文会把 Agent 的工作流程直接画成图,让你一眼看懂:

Agent 到底和普通聊天机器人有什么区别?

一、先问一个问题:大模型为什么还需要 Agent?

先看一个最简单的场景。

你问大模型:

帮我计算 12345 × 6789

普通大模型完全可以直接给你一个结果。

这时候程序的工作非常简单:

用户输入
→
大模型
→
生成答案
→
返回用户

这种方式没什么问题。

但是如果你问:

帮我分析这个 Excel 文件,
找出销售下降最多的产品,
然后生成一份总结报告。

事情就完全不一样了。

因为这个任务已经不是“回答一句话”这么简单。

它需要:

  • 读取文件

  • 分析数据

  • 找出异常

  • 继续处理

  • 最后生成报告

这时候,单纯调用一次大模型就不够了。

这就是 AI Agent 发挥作用的地方。


二、普通大模型和 AI Agent,到底差在哪?

上图可以简单理解成:

普通大模型更偏向“回答问题”。

而:

AI Agent 更偏向“完成任务”。

OpenAI 当前的 Agents SDK 文档把 Agent 描述为由大模型、指令和工具组成,并提供任务转移、护栏、会话等运行能力;SDK 还提供内置追踪,用于观察和调试 Agent 的执行过程。

所以你可以把它粗略理解成:

大模型负责思考。

工具负责干活。

Agent 负责把两者组织起来。


三、今天到底做什么?

这次我们不做“只能聊天”的 Demo。

直接做一个:

Python AI 智能助手

它有两个能力:

能力一:查看当前 Python 版本

能力二:执行数学计算

例如用户输入:

帮我看看当前 Python 版本,并计算 12345 × 6789。

Agent 就要自己判断:

哪个部分需要 Python 版本工具?

哪个部分需要计算工具?

最后再把结果整理成人类容易看懂的话。

这才是我们今天真正要学的 Agent。


四、先把 Agent 的核心流程看懂

这一部分以前我们很容易写成大量箭头文字。

这次直接看图。

从这张图可以看出来,Agent 并不是简单地:

用户问 → 模型答

而是:

用户提出任务之后,Agent 需要不断理解、规划、选择工具、执行工具、读取结果,再决定下一步。

这就是 Agent 的核心。

而且这个循环并不一定只执行一次。

复杂任务完全可能连续调用多个工具。

比如:

用户:
帮我分析销售数据,并找出异常产品。

Agent 可能先:

读取文件

然后:

分析数据

接着:

计算异常指标

最后:

生成总结

所以 Agent 更像一个“任务执行器”。


五、Python 3.14 为什么值得关注?

截至目前,Python 官方发布的最新 Python 3 系列版本是 Python 3.14.7,发布日期为 2026 年 8 月 5 日。Python 官方说明,Python 3.14 系列带来了包括自由线程模式正式支持、注解延迟求值、模板字符串、多解释器标准库支持以及 Zstandard 压缩模块等变化。

这里我们特别关注一个变化:

自由线程模式正式得到支持

过去大家聊 Python 性能,经常会提到一个东西:

全局解释器锁。

Python 3.14 已经正式支持自由线程模式。

但是这里一定不要产生一个误解:

不是升级到 Python 3.14,所有程序就自动快很多。

实际收益还和你的任务类型、依赖库、代码结构有关。

所以对于 AI Agent 开发来说,我更愿意把 Python 3.14 理解成:

Python 生态继续向更强的并发和运行能力演进。

而 AI Agent 恰好又是一个非常适合做:

  • 工具调用

  • API 调用

  • 数据处理

  • 多步骤任务

  • 自动化执行

的方向。


六、今天的技术栈

整个 Demo 尽量保持简单。

Python 3.14
+
OpenAI Agents SDK
+
Python 工具函数

OpenAI 官方当前推荐可以通过以下命令安装 Agents SDK:

pip install openai-agents

官方 Quickstart 也是从创建虚拟环境、安装 SDK、创建 Agent、给 Agent 增加工具开始。


七、第一步:创建项目

创建项目:

mkdir python_agent_demo
cd python_agent_demo

创建虚拟环境:

python -m venv .venv

Windows:

.venv\Scripts\activate

Linux / macOS:

source .venv/bin/activate

安装 SDK:

pip install openai-agents

然后设置:

OPENAI_API_KEY

Windows PowerShell:

$env:OPENAI_API_KEY="你的 API Key"

Linux / macOS:

export OPENAI_API_KEY="你的 API Key"

八、第二步:先创建一个最简单的 Agent

新建文件:

main.py

代码如下:

from agents import Agent, Runner


agent = Agent(
    name="Python助手",
    instructions="""
    你是一名专业的 Python 技术助手。
    请用简单、清晰的中文回答问题。
    """
)


result = Runner.run_sync(
    agent,
    "用一句话告诉我 Python 是什么?"
)


print(result.final_output)

运行:

python main.py

如果环境配置正常,就可以得到模型返回的答案。

这一步其实已经完成了一个最基础的 Agent。

但它还有一个非常明显的问题:

它只会说,不会做。


九、第三步:让 Agent 拥有真正的“手脚”

Agent 真正开始变强的关键,就是:

工具

OpenAI Agents SDK 当前支持多种工具方式,其中一个非常重要的方式就是把 Python 函数直接变成工具。官方文档明确提供了 Function Tools,并支持自动生成参数模式和参数校验。

这意味着:

你原来写好的 Python 函数,

可以直接交给 Agent 使用。


十、先写一个计算工具

先不管 AI。

我们直接写一个普通的 Python 函数:

def calculate(a: float, b: float, operation: str) -> float:
    """执行基础数学计算。"""

    if operation == "add":
        return a + b

    if operation == "sub":
        return a - b

    if operation == "mul":
        return a * b

    if operation == "div":
        if b == 0:
            raise ValueError("除数不能为 0")
        return a / b

    raise ValueError(f"不支持的运算:{operation}")

这个函数一点 AI 都没有。

就是一个很普通的 Python 函数。

但是接下来,我们要把它变成:

Agent 可以调用的工具


十一、第四步:把 Python 函数交给 Agent

按照目前 Agents SDK 官方 Quickstart 的写法,我们可以使用工具装饰器把普通 Python 函数注册成工具。

代码:

from agents import Agent, Runner
from agents.decorators import tool


@tool
def calculate(a: float, b: float, operation: str) -> float:
    """
    执行基础数学计算。

    operation:
    add = 加法
    sub = 减法
    mul = 乘法
    div = 除法
    """

    if operation == "add":
        return a + b

    if operation == "sub":
        return a - b

    if operation == "mul":
        return a * b

    if operation == "div":
        if b == 0:
            raise ValueError("除数不能为 0")
        return a / b

    raise ValueError("不支持的操作")


agent = Agent(
    name="计算助手",
    instructions="""
    你是一名计算助手。

    如果用户提出数学计算需求,
    优先使用 calculate 工具。

    不要自己猜测计算结果。
    最终请使用中文给出清晰的结果。
    """,
    tools=[calculate],
)


result = Runner.run_sync(
    agent,
    "请计算 12345 × 6789"
)


print(result.final_output)

这里最关键的是:

tools=[calculate]

它的意思很简单:

告诉 Agent:你现在拥有 calculate 这个工具。


十二、Agent 什么时候会调用这个工具?

假设用户问:

请计算 12345 × 6789

Agent 并不是简单地看到 Python 函数然后机械调用。

它需要根据任务判断:

这个问题是否需要计算?

如果需要,那么:

应该调用哪个工具?

工具参数应该是什么?

例如:

a = 12345
b = 6789
operation = mul

然后 Python 真正执行。

执行完成之后,再把结果交回 Agent。

这就是:

工具调用


十三、再增加一个工具:查看 Python 版本

我们继续增加功能。

import platform


@tool
def get_python_version() -> str:
    """获取当前运行环境的 Python 版本。"""

    return platform.python_version()

现在 Agent 就有两个工具:

计算工具
+
Python 版本工具

完整代码:

import platform

from agents import Agent, Runner
from agents.decorators import tool


@tool
def get_python_version() -> str:
    """获取当前运行环境的 Python 版本。"""

    return platform.python_version()


@tool
def calculate(a: float, b: float, operation: str) -> float:
    """执行基础数学计算。"""

    if operation == "add":
        return a + b

    if operation == "sub":
        return a - b

    if operation == "mul":
        return a * b

    if operation == "div":
        if b == 0:
            raise ValueError("除数不能为 0")
        return a / b

    raise ValueError("不支持的操作")


agent = Agent(
    name="Python智能助手",
    instructions="""
    你是一名专业的 Python 技术助手。

    当用户询问 Python 版本时,
    使用 get_python_version。

    当用户需要数学计算时,
    使用 calculate。

    不要凭空猜测工具结果。
    最终使用简洁、清晰的中文回答。
    """,
    tools=[
        get_python_version,
        calculate,
    ],
)


result = Runner.run_sync(
    agent,
    "帮我看看当前 Python 版本,并计算 12345 × 6789"
)


print(result.final_output)

十四、现在这个 Agent 已经开始“像 Agent”了

用户一句话:

帮我看看当前 Python 版本,
并计算 12345 × 6789。

实际上已经包含两个任务。

Agent 需要:

识别任务。

决定需要哪些工具。

执行工具。

读取结果。

组织最终答案。

这和最开始的“一问一答”已经有明显区别。


十五、再看一遍真正的 Agent 架构

整个系统可以用一句非常简单的话概括:

模型负责理解和推理,工具负责执行,Agent 负责组织整个过程。

这句话我建议大家记住。

因为以后你学习:

  • RAG

  • MCP

  • 多 Agent

  • 工作流

  • AI 自动化

  • AI 编程

  • 企业智能助手

你会不断看到这几个东西。


十六、为什么“工具”这么重要?

假设你告诉普通大模型:

帮我查一下数据库中今天新增了多少订单。

它可能会告诉你:

你可以使用 SQL:
SELECT COUNT(*) FROM orders ...

问题来了。

它只是告诉你怎么做。

真正的数据它并没有拿到。

如果是 Agent:

它可以拥有:

数据库工具

于是就可以:

理解任务
→
决定查询数据库
→
调用数据库工具
→
拿到结果
→
继续分析
→
返回答案

这就是为什么 Agent 的核心能力,不只是:

“会不会生成文字”

而是:

“能不能调用外部能力完成任务。”

OpenAI Agents SDK 当前的工具体系已经覆盖函数工具、托管工具、MCP 工具以及其他运行时工具等多种方式。


十七、从这里就可以继续扩展

今天我们只有两个工具。

但是你完全可以继续往里面增加:

搜索工具
数据库工具
文件工具
Excel 工具
PDF 工具
邮件工具
企业 API
Python 数据分析工具
浏览器工具

这样就能逐渐形成:

一个真正能做事情的 AI 助手。

比如:

“帮我分析今天的销售数据。”

Agent 可以:

读取 Excel

↓

分析数据

↓

找出异常

↓

计算增长率

↓

生成结论

↓

返回报告

这才是 AI Agent 真正有价值的地方。


十八、Agent 不是越复杂越好

这一点非常重要。

现在 Agent 很火。

但是:

并不是所有项目都需要 Agent。

假设你的需求只是:

用户输入问题
→
调用大模型
→
返回答案

那根本不需要搞复杂的 Agent。

普通模型调用就够了。

只有当任务开始出现:

需要规划
需要工具
需要多个步骤
需要根据结果继续行动
需要状态管理

这种场景时,Agent 才真正有价值。


十九、复杂 Agent 最后会变成什么?

简单 Agent 可能只有:

一个 Agent
+
几个工具

复杂一点之后,会变成:

一个主 Agent
+
多个专业 Agent
+
多个工具
+
状态
+
护栏
+
人工审批
+
追踪

OpenAI Agents SDK 目前也已经提供:

  • Agents as tools

  • Handoffs

  • Guardrails

  • Sessions

  • Human in the loop

  • Tracing

等能力。

这说明一个趋势:

Agent 正在从“能不能调用工具”逐渐走向“怎样可靠地执行复杂任务”。


二十、生产环境真正难的,不是把 Agent 跑起来

前面的 Demo 其实不难。

真正做项目时,难点会慢慢变成:

工具调用失败怎么办?
Agent 无限循环怎么办?
调用错误 API 怎么办?
敏感操作要不要人工确认?
用户输入是否安全?
怎么记录 Agent 到底做了什么?
成本怎么控制?
多个 Agent 怎么协调?

这些问题才是生产级 Agent 真正需要解决的。

而官方 SDK 现在也已经提供护栏、人工参与和追踪等能力,帮助开发者对 Agent 的运行过程进行控制和观察。


二十一、一个非常重要的认识

以前我们学习 Python,通常是:

写代码
→
代码执行
→
得到结果

而 Agent 出现之后,会越来越像:

提出目标
→
AI 理解目标
→
AI 决定调用什么
→
工具执行
→
AI 获取结果
→
继续判断
→
完成目标

这实际上意味着:

软件开发正在从“写死流程”逐渐走向“让 AI 参与流程决策”。

当然,这不意味着以后程序员不需要写代码。

恰恰相反。

真正高质量的 AI 应用依然离不开:

Python、数据库、API、权限、日志、异常处理和工程能力。

只是现在多了一层:

AI 决策层


二十二、对于 Python 开发者来说,接下来应该学什么?

如果你现在已经会一点 Python,我建议学习路线不要一上来就追几十个框架。

可以按照这个顺序:

第一阶段:Python

先把:

函数
类
模块
异常
文件
网络请求
异步

这些基础打牢。

第二阶段:大模型

掌握:

模型调用
提示词
结构化输出
上下文
API

第三阶段:Agent

开始理解:

Agent
工具
工具调用
任务规划
状态

第四阶段:复杂 Agent

再学习:

RAG
MCP
多 Agent
工作流
记忆
护栏
人工确认

这样会比直接背框架舒服很多。


二十三、最后再看一次今天真正学到了什么

今天我们没有搞复杂的项目。

但是已经把 Agent 最核心的思想跑了一遍:

模型

Agent

工具

执行

这四个东西组合起来,就构成了现代 AI 应用开发非常重要的一条主线。

你可以把它简单记成:

模型负责想。

工具负责做。

Agent 负责安排怎么做。

这也是为什么我认为:

Python + AI Agent,会是未来一段时间非常值得持续学习的方向。

Python 3.14.7 目前已经是 Python 3 系列最新版本,而 Agents SDK 也在持续向工具调用、任务编排、护栏、会话、追踪以及更复杂的 Agent 运行场景扩展。


二十四、最后

如果你现在只会:

Python
+
调用大模型

其实已经不错了。

但是不要停在这里。

下一步真正值得做的是:

让 AI 调用 Python

然后:

让 AI 调用数据库

再然后:

让 AI 调用搜索

最后:

让 AI 自己完成一整套任务

当你真正把这个过程做出来之后,你会发现:

Agent 并没有想象中神秘。

它本质上就是:

“让 AI 拥有工具,并让 AI 决定什么时候使用这些工具。”

而真正厉害的地方,是当工具越来越多、任务越来越复杂之后,AI 开始能够协调这些工具完成原本需要人一步一步操作的工作。

这才是 AI Agent 真正值得学习的地方。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐