本节适合需要把 Codex 代码生成能力集成到 Python 项目、批量处理代码任务的场景,通过官方 SDK 调用接口,可灵活定制功能。调用按 Token 按量计费,与 ChatGPT 订阅额度不共享。
前置准备
- 电脑已安装 Python 3.8 及以上版本(推荐 3.9/3.10 稳定版)
- 已按 1.3 节步骤获取可用的 API 密钥
- 网络环境可正常访问 OpenAI 接口
一、安装官方 Python SDK
官方提供标准化 SDK,无需手动封装网络请求,是最稳妥的调用方式:
- 打开系统终端(CMD / PowerShell / 终端.app),执行安装命令:
pip install openai
- 验证安装结果:执行
pip show openai,能看到版本号即安装成功。
注意:务必安装官方
openai包,不要使用第三方封装的 SDK,存在密钥泄露、功能异常的风险。
二、密钥配置(两种方式,优先选第一种)
API 密钥是调用凭证,严禁直接写在业务代码里提交到公开代码仓库。
- 推荐方式:系统环境变量配置(最安全)
SDK 会自动读取系统环境变量 OPENAI_API_KEY,无需在代码里明文写密钥,是官方推荐的最佳实践。
- Windows:右键「此电脑」→「属性」→「高级系统设置」→「环境变量」,新建用户变量,变量名填
OPENAI_API_KEY,变量值填你的 API 密钥,确定后重启终端生效。 - Mac/Linux:打开终端,执行
echo 'export OPENAI_API_KEY="你的API密钥"' >> ~/.zshrc(bash 用户替换为.bashrc),再执行source ~/.zshrc立即生效。
- 临时测试方式:代码内传入
如果只是本地临时跑脚本测试,可直接在代码里传入密钥。绝对不能把带密钥的代码上传到 GitHub、Gitee 等公开平台。
三、最简调用示例(复制就能跑)
新建 codex_demo.py 文件,粘贴以下代码,配置好密钥后即可运行。
from openai import OpenAI
# 已配置环境变量的话,无需传 api_key 参数,SDK 会自动读取
client = OpenAI(
# api_key="你的API密钥" # 仅本地临时测试时取消注释填写,正式环境禁用
)
# 调用 Codex 生成代码
response = client.chat.completions.create(
model="gpt-5.3-codex", # 编码专用主力模型
messages=[
{"role": "system", "content": "你是专业编程助手,只输出可运行的代码,不添加多余解释。"},
{"role": "user", "content": "写一个快速排序的Python函数"}
],
temperature=0.2, # 写代码建议设低值,输出更严谨稳定
max_tokens=1000
)
# 打印生成的结果
print("生成的代码:")
print(response.choices[0].message.content)
运行与验证:
终端执行 python codex_demo.py,终端输出完整的快速排序函数代码,即为调用配置成功。
四、核心参数说明(新手掌握4个即可)
不用记忆全部参数,用好这几个就能满足绝大多数编码场景:
- model:指定调用的模型。主力编码用
gpt-5.3-codex,简单补全、注释生成可用轻量模型,成本更低。 - temperature:结果随机性,范围 0~2。写代码建议设 0.1~0.3,数值越低输出越稳定、逻辑越严谨;需要创意性方案可适当调高。
- messages:对话上下文。
system用来设定角色规则,user是你的具体需求,支持多轮对话连续修改。 - max_tokens:单次调用最大输出长度,根据需求设置,避免不必要的额度消耗。
五、实用补充配置
- 网络代理设置
本地需要代理才能访问接口时,可在初始化客户端时指定代理地址,或配置系统环境变量 HTTPS_PROXY,SDK 会自动识别:
client = OpenAI(
base_url="你的代理服务地址"
)
- 流式输出配置
需要实现打字机效果、实时查看生成过程时,开启流式输出:
stream = client.chat.completions.create(
model="gpt-5.3-codex",
messages=[{"role": "user", "content": "写一个冒泡排序函数"}],
stream=True
)
for chunk in stream:
if chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="")
六、常见问题排查
- 报错「No module named openai」:SDK 未安装成功,重新执行安装命令,检查当前 Python 环境与安装环境是否一致。
- 报错「Invalid API Key」:密钥错误或已被删除,核对密钥字符串无多余空格;若怀疑泄露,立即去后台删除旧密钥并重新生成。
- 报错「Connection timeout」:网络不通,检查网络环境,或配置代理后重试。
- 报错「The model does not exist」:模型名称拼写错误,核对可用模型列表,确认你的账号有权限调用该模型。
实用提醒:新手测试阶段务必按 1.4 节设置好消费上限,先跑小任务测试成本,再批量投入使用;生产环境建议添加异常捕获和重试逻辑,避免接口波动影响业务。