Python 3.14 + AI Agent 实战:从“会聊天”到“会干活”,手把手做一个真正能调用工具的智能体
最近 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 真正值得学习的地方。
更多推荐

所有评论(0)