大多数初学者以为是这样的:
用户↓
GPT↓
天气 API
但事实并非如此。
真相是:
用户↓
GPT↓
描述工具调用的文本↓
你的 Python 代码↓
天气 API↓
你的 Python 代码↓
GPT↓
回答
这是 AI 工程中最重要的概念之一。
黄金法则
LLM 只做一件事:
生成下一个 token。
就这样。
- 不会调用 API。
- 不会访问数据库。
- 不会发送邮件。
- 不会查询天气。
- 不会预订航班。
只会生成文本。
想象 GPT 被困在一个盒子里
把 GPT 想象成一个被锁在房间里的非常聪明的人。
这个人可以:
- ✅ 阅读文本
- ✅ 书写文本
这个人不能:
- ❌ 访问互联网
- ❌ 打开数据库
- ❌ 调用 API
- ❌ 运行 Python
- ❌ 发送邮件
这个人唯一能做的,就是在纸上写下指令。
这就是 LLM 的工作方式。
示例 1:天气机器人
用户问:
德里的天气怎么样?
大多数人想象的是:
用户↓
GPT↓
天气 API↓
回答
现实:
用户↓
GPT↓
"我需要深圳的天气"↓
Python 代码↓
天气 API↓
Python 代码↓
GPT↓
回答
GPT 首先生成类似这样的内容:
{"tool": "get_weather","city": "Shenzhen"
}
注意一个重要的事情。
GPT 并没有调用天气 API。
GPT 仅仅是生成了描述工具调用的文本。
你的代码才是真正干活的
你的 Python 代码看到:
{"tool": "get_weather","city": "Shenzhen"
}
然后执行:
weather = get_weather("Shenzhen")
现在 API 才被真正调用了。
返回结果可能是:
{"temperature": 36,"condition": "Sunny"
}
你的代码将结果发回给 GPT。
然后 GPT 写出:
德里的天气是 36°C,晴天。
把 GPT 想象成一个经理
想象一家公司。
经理(GPT) 说:
查一下德里的天气。
员工(Python 代码) 实际执行:
- 调用 API
- 获取结果
- 返回结果
经理(GPT) 向客户解释结果:
36°C,晴天。
GPT 是经理。
你的代码是员工。
经理从不离开办公室。
示例 2:SQL 数据库
用户问:
我们有多少客户?
GPT 无法访问数据库。
GPT 生成的是:
SELECT COUNT(*)
FROM customers;
你的代码执行这条 SQL。
数据库返回:
12567
你的代码发送:
{"customer_count": 12567
}
回给 GPT。
GPT 回复:
您目前有 12,567 位客户。
再次强调:
GPT 从未接触过数据库。
你的代码做了这件事。
示例 3:发送邮件
用户说:
给 John 发一封邮件。
GPT 无法发送邮件。
它只能生成:
{"tool": "send_email","to": "john@example.com","subject": "Meeting","body": "Let's meet tomorrow."
}
你的代码接收到这段内容。
然后:
send_email(...)
才被真正执行。
没有你的代码:
什么也不会发生。
你永远不会忘记的心智模型
想象一家餐厅。
顾客:
我要一份披萨。
服务员(GPT):
写下订单。
5号桌要一份披萨。
厨房(工具/API):
实际烹饪披萨。
服务员(GPT):
把披萨端回来。
服务员从不做饭。
厨房从不与顾客交谈。
各司其职。
顾客↓
GPT(服务员)↓
工具/API(厨房)↓
GPT(服务员)↓
顾客
每个 AI 工程师都应该记住的公式
LLM = 决策者
工具 = 执行者
或者更简单地说:
LLM 思考。
代码 行动。
总结
LLM 做决策,
代码 来执行。
这一句话几乎解释了你将构建的每一个 AI Agent、聊天机器人、智能助手和工具调用系统。
