ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

【AI大模型接入SDK】ChatGPT API

2026/9/6 11:54:30 拓冰建站 浏览量
【AI大模型接入SDK】ChatGPT API 个人主页艾莉丝努力练剑❄专栏传送门《C语言》《数据结构与算法》《C/C干货分享学习过程记录》《Linux操作系统编程详解》《笔试/面试常见算法从基础到进阶》《Python干货分享》⭐️为天地立心为生民立命为往圣继绝学为万世开太平 艾莉丝的简介文章目录1 ~ OpenAI API 体系与版本演进1.1 两套核心 API 定位1.2 核心能力对比1.3 官方选型建议2 ~ Chat Completions API传统聊天接口2.1 接口基础信息2.2 请求参数详解2.2.1 核心必填参数2.2.2 常用可选参数2.2.3 消息角色Role定义2.3 请求头规范2.4 响应体结构非流式2.5 会话上下文机制3 ~ Responses API新一代多模态接口3.1 接口基础信息3.2 核心请求参数3.2.1 核心输入参数3.2.2 常用控制参数3.2.3 高级参数3.3 请求头规范3.4 全量响应结构非流式3.5 流式响应与事件驱动机制3.5.1 流式开启方式3.5.2 标准事件类型3.5.3 流式数据解析要点3.6 多模态能力支持4 ~ Apifox 接口测试实操流程4.1 环境与密钥配置4.1.1 环境变量配置4.1.2 全局前置 URL 配置4.2 接口创建与参数配置4.3 网络代理配置4.4 非流式响应测试与解析4.5 流式响应测试与事件解析结尾1 ~ OpenAI API 体系与版本演进1.1 两套核心 API 定位OpenAI 对外提供两代聊天交互 API分别面向不同场景与技术架构Chat Completions API传统文本聊天接口架构简单仅面向文本交互场景Responses API新一代事件驱动型接口原生支持多模态官方推荐新项目优先使用1.2 核心能力对比对比维度Chat Completions APIResponses API产品定位对话生成场景聊天机器人、客服问答、简单 FAQ多模态智能助手文本、语音、图像、函数调用等复杂交互输入格式聊天消息数组messages:[{role, content}]统一输入字段input支持文本、音频、图像、文件等多类型输出形式完整文本回复支持文本流式输出基于语义事件流输出包含文本增量、音频增量、工具调用、完成事件等流式能力仅支持文本逐 token 流式返回支持多模态细粒度流式输出包含文本、语音、工具调用状态多模态支持部分模型支持图像输入能力有限原生全链路支持多模态可同步输出文本与语音交互可控性一次请求对应一次完整回复生成过程不可干预支持生成中动态打断、分支跳转、工具函数调用典型应用简单对话机器人、文本补全、问答系统智能办公助手、语音对话机器人、多模态应用、Agent 系统1.3 官方选型建议新项目优先采用Responses API以适配 OpenAI 平台最新特性与多模态能力存量简单文本对话项目可继续使用 Chat Completions API具备广泛的模型兼容性2 ~ Chat Completions API传统聊天接口2.1 接口基础信息请求方法POST接口地址https://api.openai.com/v1/chat/completions核心能力文本对话生成兼容绝大多数开源与闭源大模型2.2 请求参数详解2.2.1 核心必填参数参数名称参数类型必填参数说明modelstring是模型名称如gpt-4o-mini、gpt-4.1messagesarray是对话历史数组每条消息包含role与content字段2.2.2 常用可选参数参数名称参数类型默认值参数说明temperaturenumber1采样温度取值范围 0~2值越高输出随机性越强值越低输出越确定top_pnumber1核心采样阈值与 temperature 二选一不可同时设置0.1 表示仅考虑概率前 10% 的 tokenstreambooleanfalse是否开启流式响应开启后以增量数据形式返回stopstring / arraynone停止词最多支持 4 个模型生成到对应字符时终止输出max_tokensinteger-生成内容的最大 token 数OpenAI 官方已不推荐使用但多数模型仍兼容max_completion_tokensinteger-生成 token 数上限包含可见输出 token 与推理 tokenpresence_penaltynumber0重复惩罚取值 - 2.0~2.0正值降低重复概率负值增加重复概率frequency_penaltynumber0频率惩罚取值 - 2.0~2.0根据 token 出现频率惩罚减少重复内容ninteger1单次请求生成的回复结果数量seedinteger-随机种子指定后相同参数与种子的请求将返回确定性结果toolsarray-工具调用列表仅支持函数类型工具用于实现 Function Calling 能力2.2.3 消息角色Role定义system系统提示词用于给模型设定角色与行为规范新版模型推荐使用developer替代developer开发者指令优先级高于历史消息用于注入模型必须遵循的规则user用户输入消息即终端用户向模型提交的提问与内容assistant助手回复消息即模型生成的回答内容tool工具调用结果用于将外部工具执行结果返回给模型2.3 请求头规范字段名称字段值说明Content-Typeapplication/json请求体格式为 JSONAuthorizationBearer ${API_KEY}认证方式为 Bearer Token值为 OpenAI API 密钥2.4 响应体结构非流式{id:chatcmpl-B9MBs8CjcvOU2jLnn5755qMJKT,object:chat.completion,created:1741569952,model:gpt-4.1-2025-04-14,choices:[{index:0,message:{role:assistant,content:Hello! How can I assist you today?,refusal:null,annotations:[]},logprobs:null,finish_reason:stop}],usage:{prompt_tokens:19,completion_tokens:10,total_tokens:29,prompt_tokens_details:{cached_tokens:0,audio_tokens:0},completion_tokens_details:{reasoning_tokens:0,audio_tokens:0,accepted_prediction_tokens:0,rejected_prediction_tokens:0}},service_tier:default}核心字段说明choices[0].message.content模型生成的完整文本回复finish_reason生成终止原因常见值stop正常结束、length达到 token 上限usagetoken 消耗统计用于计费与用量监控2.5 会话上下文机制OpenAI API 本身为无状态设计不具备会话记忆能力实现多轮对话必须将完整历史对话通过messages数组全部提交给模型官方已推出记忆功能但仅面向 C 端用户API 调用仍需开发者自行维护上下文3 ~ Responses API新一代多模态接口3.1 接口基础信息请求方法POST接口地址https://api.openai.com/v1/responses核心定位事件驱动型多模态交互接口官方主推的新一代 API 标准3.2 核心请求参数3.2.1 核心输入参数参数名称参数类型必填参数说明modelstring是模型名称如gpt-4o-mini、gpt-4.1inputstring / array是多模态输入支持文本、图像、文件等多种格式替代 Chat Completions 的messages字段3.2.2 常用控制参数参数名称参数类型默认值参数说明instructionsstring-系统 / 开发者指令作用等同于 system 消息与previous_response_id联用时不会继承历史指令max_output_tokensinteger-生成 token 上限替代原max_tokens包含可见输出与推理 tokentemperaturenumber1.0采样温度作用与 Chat Completions 一致top_pnumber1.0核心采样阈值作用与 Chat Completions 一致streambooleanfalse是否开启流式响应max_tool_callsinteger-单次响应中内置工具的最大调用次数tool_choicestringauto工具调用策略可选值auto、none、指定工具storebooleantrue是否存储该对话用于后续会话继承previous_response_idstringnull上一条响应 ID用于实现多轮会话上下文继承3.2.3 高级参数background布尔值是否后台运行模型响应适用于长耗时任务conversation会话 ID 或会话对象用于关联多轮对话响应完成后自动追加内容include数组指定额外输出数据支持网页搜索来源、代码解释器输出、文件搜索结果输入图片 URL、输出文本 logprobs、推理加密内容3.3 请求头规范与 Chat Completions API 完全一致字段名称字段值说明Content-Typeapplication/json请求体格式为 JSONAuthorizationBearer ${API_KEY}Bearer Token 认证3.4 全量响应结构非流式{id:resp_67ccd2bed1ec819b14f964abc54267bb6a6b4523795b,object:response,created_at:1741476542,status:completed,error:null,incomplete_details:null,instructions:null,max_output_tokens:null,model:gpt-4.1-2025-04-14,output:[{type:message,id:msg_67ccd2bf17f81981f3bb3cf658e6bb6a6b4523d3795b,status:completed,role:assistant,content:[{type:output_text,text:In a peaceful grove beneath a silver,annotations:[]}]}],parallel_tool_calls:true,previous_response_id:null,reasoning:{effort:null,summary:null},temperature:1.0,text:{format:{type:text},verbosity:medium},tool_choice:auto,tools:[],top_p:1.0,truncation:disabled,usage:{input_tokens:36,input_tokens_details:{cached_tokens:2},output_tokens:22,output_tokens_details:{reasoning_tokens:0},total_tokens:58}}核心提取字段output[0].content[0].text为模型生成的完整文本内容3.5 流式响应与事件驱动机制3.5.1 流式开启方式请求体中设置stream: true即可开启流式响应响应以 Server-Sent EventsSSE事件流形式返回3.5.2 标准事件类型事件类型触发时机携带数据response.created响应对象创建完成模型开始处理前响应基础信息response.in_progress模型开始生成内容进度状态response.output_text.delta文本增量输出每生成一段文本触发一次增量文本内容deltaresponse.output_text.completed单个文本输出块生成完成完整文本块response.output_item.added新增输出项如工具调用、音频等输出项信息response.content_part.added新增内容分片内容分片信息response.completed整个响应生成结束最终完整响应与用量统计3.5.3 流式数据解析要点核心文本数据通过连续的response.output_text.delta事件返回每个事件携带一段增量文本客户端需按顺序拼接所有delta字段得到完整回复最终通过response.completed事件确认响应结束并获取最终 token 用量与 DeepSeek 等模型不同OpenAI 流式响应的结束事件同时携带完整结果3.6 多模态能力支持Responses API 原生支持多模态输入输出输入侧文本、图片、文件、音频输出侧文本、音频、结构化数据、工具调用结果内置工具网页搜索、文件搜索、代码解释器、计算机调用4 ~ Apifox 接口测试实操流程4.1 环境与密钥配置4.1.1 环境变量配置在 Apifox 环境管理中配置全局环境变量用于密钥管理变量名类型说明CHATGPT_APIKEY秘密ChatGPT 官方 API 密钥DEEPSEEK_APIKEY秘密DeepSeek API 密钥GEMINI_APIKEY秘密Gemini API 密钥4.1.2 全局前置 URL 配置ChatGPT 官方接口基础地址https://api.openai.com所有接口继承全局前置 URL避免重复填写域名4.2 接口创建与参数配置新建接口请求方法选择POST路径填写/v1/responses请求头配置Content-Type:application/jsonAuthorization:Bearer {{CHATGPT_APIKEY}}请求体Body配置选择 JSON 格式填写核心参数model、input、stream等示例{ model: gpt-4o-mini, input: 你好, stream: false }4.3 网络代理配置由于 OpenAI 接口为外网服务需配置请求代理代理模式自定义代理代理服务器127.0.0.1代理端口7890本地代理工具默认端口生效范围仅应用于发送接口请求不影响 Apifox 服务器连接4.4 非流式响应测试与解析发送请求响应状态码为200 OK表示请求成功Apifox 自动反序列化 JSON 响应体展示结构化数据核心数据提取路径output[0].content[0].text即为模型返回的文本内容可通过usage字段查看本次请求的 token 消耗情况4.5 流式响应测试与事件解析请求体设置stream: true发送请求Apifox 控制台实时展示事件流按时间顺序输出所有事件解析要点忽略初始的创建、进度事件聚焦response.output_text.delta事件每个 delta 事件携带一段增量文本按顺序拼接得到完整内容最终通过response.completed事件确认响应结束代码实现时需使用 SSE 解析器逐事件处理实现打字机效果结尾uu们本文的内容到这里就全部结束了艾莉丝在这里再次感谢您的阅读艾莉丝努力练剑C/C Linux 底层探索者 | 一个正在努力练剑的技术博主【关注】跟随我一起深耕技术领域见证每一次成长。❤️【点赞】让优质内容被更多人看见让知识传递更有力量。⭐【收藏】把核心知识点存好在需要时随时查、随时用。【评论】分享你的经验或疑问评论区一起交流避坑不要忘记给博主“一键四连”哦“今日练剑达成”“技术之路难免有困惑但同行的人会让前进更有方向。”结语希望对学习Linux相关内容的uu有所帮助不要忘记给博主“一键四连”哦往期回顾【AI大模型接入SDK】ChatGPT 模型接入博主在这里放了一只小狗大家看完了摸摸小狗放松一下吧૮₍ ˶ ˊ ᴥ ˋ˶₎ა