Day50——早课 API调用:用代码调AI

作者:

!API调用:用代码调AI

系列教程说明

这是「AI零基础学习」系列教程的第50篇,共70篇。从今天开始,我们进入第8周——AI应用开发。前几周你学会了用各种AI工具,从今天起,我们要学习用代码控制AI

上篇回顾

上周我们沉浸在AI与创意的世界里——游戏设计、创意项目、艺术与版权。你可能已经发现,AI不仅能帮你做事,还能激发灵感。但从今天起,我们要换个角度:不再只是AI的用户,而是AI的开发者。


什么是API?

API,全称 Application Programming Interface(应用程序编程接口),听起来很技术,但其实你每天都在用。

打个比方:你去餐厅吃饭,服务员就是”API”。你告诉服务员”来一份宫保鸡丁”(请求),服务员把你的需求传达给厨房(服务器),厨房做好后服务员把菜端给你(响应)。你不需要知道厨房怎么炒菜,只需要跟服务员沟通。

API就是程序之间的”服务员”。 当你用代码调用ChatGPT时,你的程序把请求发给OpenAI的API,OpenAI处理后把结果返回来。你不需要知道OpenAI的服务器在哪里、用了什么模型,只需要按照API的”菜单”(文档)来点菜。

为什么需要用代码调AI?

你可能会问:直接用ChatGPT网页不好吗?为什么要用代码?

三个核心原因:

第一,自动化。 你有一个Excel表格,里面有1000条客户反馈需要分析。手动一条条复制到ChatGPT?太慢了。用代码,几行循环就能自动处理全部数据。

第二,集成。 你想让公司的客服系统自动回复常见问题,或者让网站的搜索功能更智能。这些都需要把AI能力”嵌入”到你自己的应用里,而不是让用户去ChatGPT网站。

第三,定制。 API提供了网页版没有的精细控制——你可以设置温度参数控制AI的”创造力”,限制回复长度,甚至传入系统指令让AI始终保持某种角色。

API调用的基本流程

用代码调AI,本质上就四步:

第一步:获取API密钥(API Key)

去AI服务商的官网注册账号,在”API Keys”或”开发者”页面生成一个密钥。这个密钥就像你的身份证,证明”这个请求是我发的”。

⚠️ 重要:API密钥是私密的,绝对不能分享给别人或上传到公开的代码仓库。 就像你的银行卡密码一样。

第二步:安装客户端库

大多数AI服务商都提供了Python库,让你不用手动构造HTTP请求。比如OpenAI的库:

`bash

pip install openai

`

第三步:编写调用代码

`python

from openai import OpenAI

client = OpenAI(api_key=”你的密钥”)

response = client.chat.completions.create(

model=”gpt-4o”,

messages=[

{“role”: “system”, “content”: “你是一个友好的助手”},

{“role”: “user”, “content”: “用一句话解释什么是API”}

]

)

print(response.choices[0].message.content)

`

第四步:处理返回结果

API返回的是一个结构化的对象,包含AI的回复、使用的token数量、耗时等信息。你只需要提取 .choices[0].message.content 就能拿到AI的文本回复。

动手试试:你的第一次API调用

现在,让我们真正写一段代码。别怕,我一步一步带你走。

准备工作:

  1. 注册一个OpenAI账号(或任何AI服务商,如Anthropic、国内的通义千问等)
  2. 获取API密钥
  3. 确保你的电脑装了Python和pip

完整代码示例:

`python

import os

from openai import OpenAI

# 设置密钥(推荐用环境变量,而不是直接写在代码里)

client = OpenAI(

api_key=os.environ.get(“OPENAI_API_KEY”)

)

# 发送请求

response = client.chat.completions.create(

model=”gpt-4o-mini”, # 使用便宜的模型

messages=[

{

“role”: “user”,

“content”: “请用3个要点总结Python语言的特点”

}

],

temperature=0.7, # 控制创造性,0=最严谨,1=最随机

max_tokens=500 # 限制回复长度

)

# 打印结果

result = response.choices[0].message.content

print(“AI回复:”)

print(result)

# 打印消耗信息

print(f”n消耗token数:{response.usage.total_tokens}”)

print(f”模型:{response.model}”)

`

运行方式:

`bash

# 方法1:设置环境变量后运行

export OPENAI_API_KEY=”sk-你的密钥”

python3 my_first_api.py

# 方法2:在代码中直接填写(仅用于测试,不要提交到代码仓库)

`

理解核心概念:Messages格式

API调用中最重要的是 messages 参数。它是一个列表,每个元素都是一个”消息”,包含两个关键字段:

role(角色):有三种取值——

  • system:系统指令,告诉AI”你是谁”,设定角色和行为规则
  • user:用户消息,就是你说的话
  • assistant:AI的回复,你可以预填一些对话历史

content(内容):消息的具体文字。

为什么要这样设计? 因为API是无状态的——每次调用都是全新的对话。不像网页版ChatGPT会记住之前的聊天,API调用需要你自己维护对话历史

`python

# 多轮对话示例

messages = [

{“role”: “system”, “content”: “你是一个Python编程老师”},

{“role”: “user”, “content”: “什么是列表推导式?”},

{“role”: “assistant”, “content”: “列表推导式是Python的一种简洁语法…”},

{“role”: “user”, “content”: “能给个例子吗?”}

]

`

流行的AI API服务商对比

不只是OpenAI一家提供API,市面上有很多选择:

OpenAI(GPT系列)

  • 模型:gpt-4o、gpt-4o-mini、o1
  • 特点:生态最完善,文档最全,社区最大
  • 价格:gpt-4o-mini很便宜,适合日常使用

Anthropic(Claude系列)

  • 模型:Claude Sonnet 4、Claude Opus 4
  • 特点:长上下文能力强,安全性好
  • 代码风格和OpenAI类似,容易上手

Google(Gemini系列)

  • 模型:Gemini 2.5 Pro、Gemini 2.5 Flash
  • 特点:多模态能力强,免费额度较多
  • 有专门的AI Studio方便测试

国内服务商

  • 通义千问(阿里)、文心一言(百度)、智谱GLM、Kimi等
  • 特点:中文优化好,访问速度快,部分有免费额度
  • 适合国内用户,不需要翻墙

API调用的实际应用场景

学会了API调用,你能做什么?这里有几个真实案例:

场景一:批量文本分析

公司有5000条用户评论需要分类(正面/负面/中性)。手动做要几天,用API几小时搞定:

`python

for comment in comments:

response = client.chat.completions.create(

model=”gpt-4o-mini”,

messages=[{

“role”: “user”,

“content”: f”判断以下评论的情感(正面/负面/中性):{comment}”

}]

)

sentiment = response.choices[0].message.content

# 保存到Excel…

`

场景二:智能客服机器人

把AI嵌入到你的网站或App里,自动回答常见问题。用户发消息 → 你的服务器调用API → 返回AI回复 → 显示给用户。

场景三:文档自动生成

输入几个关键参数,AI自动生成合同、报告、邮件。比如输入客户名称、产品、价格,AI就生成一份完整的报价单。

费用控制:别让账单吓到你

API调用是按使用量计费的,主要按token(词元)收费。1个token大约是0.75个英文单词或0.5个中文字。

省钱技巧:

  1. 选对模型。 不是所有任务都需要最强的模型。简单的分类任务用gpt-4o-mini就够了,价格只有gpt-4o的十分之一。
  2. 控制max_tokens。 设置合理的回复长度上限,避免AI”话痨”。
  3. 用缓存。 如果同样的问题会反复问,把结果缓存起来,不要每次都调API。
  4. 设置用量上限。 在服务商后台设置每月花费上限,防止意外超支。

参考价格(2026年):

  • gpt-4o-mini:约 $0.15 / 100万输入token
  • gpt-4o:约 $2.50 / 100万输入token
  • Claude Sonnet 4:约 $3 / 100万输入token

处理一篇1000字的文章,用gpt-4o-mini大约花费不到1分钱。

常见错误和调试技巧

刚开始用API,你可能会遇到这些问题:

401 Unauthorized(未授权)

  • 原因:API密钥错误或已过期
  • 解决:检查密钥是否正确,重新生成一个

429 Too Many Requests(请求过多)

  • 原因:发送请求太快,触发了限流
  • 解决:加入重试机制,或降低请求频率

Timeout(超时)

  • 原因:AI处理时间太长,或网络问题
  • 解决:增加超时时间,或用流式响应

Rate Limit(速率限制)

  • 每个服务商都有每分钟/每小时的请求上限
  • 新账号通常限制更严格,需要逐步提升

今日行动项

今天的行动很简单:

  1. 注册一个AI API账号(推荐OpenAI或国内的通义千问,都有免费额度)
  2. 获取API密钥并保存好
  3. 运行上面的代码示例,看到AI的回复从终端输出
  4. 尝试修改messages内容,看看不同提示词的效果

不需要一次学会所有概念,今天只要成功调用一次API就是胜利。


📖 地铁深读:API的前世今生

这个板块专为地铁通勤设计,每篇5-10分钟。不想深读可以跳过,不影响主线学习。

从”电话线”到”互联网”:API的进化史

API这个概念其实比互联网还老。

最早的”API”可以追溯到1960年代。那时候大型计算机刚出现,程序员需要通过打孔卡片来跟计算机”对话”。为了简化这个过程,操作系统提供了标准化的函数接口——你不需要知道计算机底层怎么处理数据,只需要调用 read()write() 这样的函数就行。

这就是API的原型:隐藏复杂性,暴露简洁接口。

到了1990年代,Web API随着互联网兴起。Salesforce在2000年推出了第一个商业化的Web API,让第三方开发者可以在Salesforce的平台上构建应用。这个思路后来被Amazon、Google、Facebook发扬光大,催生了整个”平台经济”。

2022年ChatGPT发布后,OpenAI的API掀起了一场新的革命。AI从”只能聊天”变成了”可以被任何程序调用的能力”。 这就像电力刚发明时,人们只能用电灯照明;后来电力变成了标准化的公共服务,任何电器都能插上插座就用。

一个有趣的事实:OpenAI的API改变了整个行业格局

你知道吗?ChatGPT刚发布时,OpenAI其实没有计划做API。是开发者社区的强烈呼声,让他们意识到”让AI能力可以被代码调用”比”做一个聊天网站”重要得多。

2023年3月,OpenAI正式开放API后,短短几个月内就有超过200万个开发者注册。这些开发者用API构建了从AI写作助手、智能客服到代码审查工具的各类应用。

API的本质是”能力民主化”。 在API之前,想在自己的产品里加入AI功能,你需要训练自己的模型——这需要几百万美元和一个博士团队。有了API,一个大学生用50行代码就能做到同样的事。

思考题

想一个问题:如果你有一个AI API,你会用它来解决自己生活或工作中的什么问题?

比如:

  • 自动总结每天收到的100封邮件?
  • 把会议录音自动转成会议纪要?
  • 让AI帮你审阅写好的文章,找出逻辑漏洞?

这些都不是科幻,用今天学到的知识就能实现。

留个悬念:Day 52我们会讲到RAG(检索增强生成)——那时候你就能让AI”读”你自己的文档,回答关于你公司内部资料的问题了。


今日收获

今天你学到了:

  • API是什么:程序之间的”服务员”,让你的代码能调用AI能力
  • 为什么用API:自动化、集成到自己的应用、精细控制
  • 调用的四步流程:获取密钥→安装库→编写代码→处理结果
  • Messages格式:system/user/assistant三种角色的消息列表
  • 费用控制:选对模型、控制长度、缓存结果、设置上限

明日预告

明天早上8点:Day51——早课 搭建你的AI聊天机器人

今晚5点:Day50——晚课 API调用实战

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注