亲测有效!手把手教你用o4-mini API文档搭建第一个对话机器人(含代码模板)
2026-08-03
亲测有效!手把手教你用o4-mini API文档搭建第一个对话机器人(含代码模板) #
说实话,想快速跑通一个能对话的AI应用,最怕什么?最怕看了一堆文档,结果连第一步的API密钥都搞不明白,或者好不容易跑通,却发现用的是官方示例里的占位符地址,根本连不上。
最近趁着试用云雾ai中转站的o4-mini模型,我花了几个小时,亲自把搭建对话机器人的全流程走了一遍。从注册、获取密钥,到写代码、跑通对话,中间踩了几个坑,也总结了一套可以直接复制粘贴的模板。
这篇文章,就是我的全流程亲测笔记。你跟着做,几分钟就能拥有一个属于自己的、能正常对话的AI机器人。
开始之前:你得准备好这三样东西 #
工欲善其事,必先利其器。动手前,先确认你手上有这三样东西:
- 一个云雾ai中转站账号:这是你的“入场券”,用来获取API密钥和调用的大模型接口。
- 一个API密钥:在注册并登录云雾ai中转站后,进入控制台,点“创建API Key”,复制下来保存好。密钥格式类似
sk-xxxxxxx。 - 一个Python环境:最好是用Python 3.9及以上版本。如果你电脑上还没有,去官网下载安装一个,或者用Anaconda都行。
准备好了吗?我们直接进入正题。
第一步:获取你的“金钥匙”——API密钥和Base URL #
这是最关键的一步。云雾ai中转站兼容OpenAI的接口格式,所以你需要两个核心信息:
- API Key:你刚刚在控制台创建的那个字符串。
- Base URL:所有请求发送的地址。云雾ai中转站提供的地址是:
https://www.yunwuai.cc/v1
注意,这里的 /v1 是必须的,很多新手容易漏掉。
小贴士:在云雾ai中转站的文档里,你会看到大量关于调用配置的说明,核心就一句话:把官方OpenAI SDK里的base_url换成云雾的地址,api_key换成云雾的密钥,就能直接用了。
第二步:写代码——搭建你的对话机器人核心 #
现在我们开始写代码。我选择使用 openai 这个Python库,因为它最通用,而且云雾ai中转站完美兼容它。
首先,如果你还没安装,在终端里运行:
bash pip install openai
然后,创建一个 chatbot.py 文件,把以下代码复制进去。
(重要:请务必将代码里的 YOUR_API_KEY 替换成你从云雾ai中转站复制的真实密钥)
python
chatbot.py #
from openai import OpenAI
1. 初始化客户端,这是最关键的一步 #
client = OpenAI( api_key=“YOUR_API_KEY”, # 替换成你自己的密钥 base_url=“https://www.yunwuai.cc/v1" # 云雾ai中转站的API接口 )
2. 创建一个函数,专门用来发送消息和获取回复 #
def chat_with_robot(user_message): try: # 发送请求,指定模型为o4-mini response = client.chat.completions.create( model=“gpt-4o-mini”, # o4-mini在云雾ai中转站上对应的模型标识 messages=[ {“role”: “system”, “content”: “你是一个有用的AI助手,请用中文回答我的问题。”}, {“role”: “user”, “content”: user_message} ], max_tokens=500, # 限制回复长度 temperature=0.7 # 控制回复的创造性,0-1之间 ) # 提取回复内容 reply = response.choices[0].message.content return reply except Exception as e: return f"抱歉,我在回复时遇到了问题:{e}”
3. 主程序:和你的机器人对话 #
if name == “main”: print(“你好!我是你的AI小助手(输入quit退出对话)”) while True: user_input = input("\n你说:") if user_input.lower() == ‘quit’: print(“再见!”) break robot_reply = chat_with_robot(user_input) print(f"\n机器人:{robot_reply}")
代码深度拆解:每一行都干了什么 #
这段代码很简洁,但背后其实包含了几个关键点,理解它们能让你的开发更顺手。
base_url的作用:这个参数告诉你的程序,不要去OpenAI的官方服务器,而是去云雾ai中转站的服务端。只要这一行改对,后面的逻辑和官方一模一样。model参数:这里我写了"gpt-4o-mini",这是云雾ai中转站上对o4-mini模型的映射名称。你可以在云雾的控制台或文档里找到完整的模型列表。messages列表:这是核心数据结构。它由一个system消息(定义机器人人格和规则)和user消息(你的输入)组成。如果你想实现多轮对话,只需要把这个列表拉长,把历史对话都放进去。try...except错误处理:网络不稳定或API返回错误是家常便饭,加上这个能保证你的程序不崩溃,并给出友好的提示。
第三步:跑起来!见证奇迹 #
打开终端,在 chatbot.py 文件所在的目录下,运行:
bash python chatbot.py
如果一切顺利,你会看到终端里出现:
text 你好!我是你的AI小助手(输入quit退出对话)
你说:
现在,你可以输入任何问题试试看。比如输入“给新手程序员推荐一本书”,它应该会立刻给出回复。恭喜你,你的第一个对话机器人已经搭建成功了!
进阶技巧:让你的机器人更聪明 #
基础版跑通了,但一个合格的对话机器人不能只回答单次提问。我们需要加两句代码,让它能记住“上下文”。
只需要修改上面代码中的 chat_with_robot 函数:
python
创建一个列表来存储对话历史 #
conversation_history = [{“role”: “system”, “content”: “你是一个有用的AI助手,请用中文回答我的问题。”}]
def chat_with_robot(user_message): global conversation_history try: # 1. 把用户的输入添加到历史列表中 conversation_history.append({“role”: “user”, “content”: user_message})
# 2. 把整个对话历史发送给模型
response = client.chat.completions.create(
model="gpt-4o-mini",
messages=conversation_history,
max_tokens=500,
temperature=0.7
)
reply = response.choices[0].message.content
# 3. 别忘了把模型的回复也添加到历史里
conversation_history.append({"role": "assistant", "content": reply})
return reply
except Exception as e:
return f"抱歉,我在回复时遇到了问题:{e}"
现在,当你问它“你刚才推荐的是什么书?”它就能记得上一轮对话的内容了。
避坑指南:我踩过的几个坑 #
- 密钥不是代码:记住,绝对不要把
YOUR_API_KEY硬编码到代码里,或者更糟,直接上传到GitHub。你应该用环境变量来存储它。例如,在代码顶部加一行import os,然后api_key = os.getenv("OPENAI_API_KEY"),再从终端设置环境变量。 - 模型名要写对:云雾ai中转站的模型名可能和官方不完全一样。一定要去它的控制台或文档里查一下最新的模型标识。用错模型名会导致报错。
- 网络问题:虽然云雾ai中转站国内直连,但偶尔网络波动会导致请求超时。可以在创建client时加一个
timeout参数,比如timeout=60.0,给请求更多时间。
为什么我推荐从云雾ai中转站开始 #
自从开始做AI应用开发,我试过好几个中转服务,云雾ai中转站是让我最省心的一个。
它最核心的吸引力,就是省去了国际支付和网络环境的麻烦。对国内开发者来说,这是一个巨大的门槛。而云雾提供了一个“即插即用”的环境:接口兼容、价格透明、模型丰富。
对于一个刚开始学搭建AI应用的新手,或者想快速验证一个创意的独立开发者来说,这种“零摩擦”的体验,比省几块钱重要得多。
总结与下一步行动 #
我们刚刚用不到30行代码,走完了从注册到拥有一个能实时对话的AI机器人的全过程。这个基础版功能虽然简单,但它是所有复杂应用(比如智能客服、联网搜索助手)的起点。
不要只停留在看,现在就去注册云雾ai中转站,把上面的代码跑起来。当你看到自己写的程序第一次给出有意义的回复时,那种成就感是这个时代最好的编程入门礼物。
👉 立即注册云雾ai中转站,领取 $0.2 免费额度,开启你的AI开发之旅
下一步,你可以尝试修改 system 消息的角色设定,比如把它变成一个“英语老师”或“私家厨师”,看看模型会如何调整回答风格。AI的大门刚刚打开,你可以从这个小机器人开始,探索无限可能。