# Set the API keyclient = OpenAI(api_key="your_api_key_here")技术支持
将 "your_api_key_here" 替换为您的实际 API 密钥。
完成客户端连接后,即可使用 GPT-4o 生成文本:
MODEL ="gpt-4o"completion = client.chat.completions.create( model=MODEL, messages=[{"role":"system","content":"You are a helpful assistant that helps me with my math homework!"},{"role":"user","content":"Hello! Could you solve 20 x 5?"}])print("Assistant: "+ completion.choices[0].message.content)技术支持
response = client.chat.completions.create( model=MODEL, messages=[{"role":"system","content":"""You are generating a transcript summary. Create a summary of the provided transcription. Respond in Markdown."""},{"role":"user","content":[{"type":"text","text":f"The audio transcription is: {transcription.text}"}],}], temperature=0,)print(response.choices[0].message.content)技术支持
import base64IMAGE_PATH ="image_path"# Open the image file and encode it as a base64 stringdef encode_image(image_path): with open(image_path, "rb") as image_file: return base64.b64encode(image_file.read()).decode("utf-8")base64_image = encode_image(IMAGE_PATH)技术支持
response = client.chat.completions.create( model=MODEL, messages=[{"role":"system","content":"You are a helpful assistant that responds in Markdown. Help me with my math homework!"},{"role":"user","content":[{"type":"text","text":"What's the area of the shape in this image?"},{"type":"image_url","image_url":{"url":f"data:image/png;base64,{base64_image}"}}]}], temperature=0.0,)print(response.choices[0].message.content)技术支持
再来看这个图形:
我们将图像 URL 传给 GPT-4o 来求图形的面积:
response = client.chat.completions.create( model=MODEL, messages=[{"role":"system","content":"You are a helpful assistant that responds in Markdown. Help me with my math homework!"},{"role":"user","content":[{"type":"text","text":"What's the area of the shape in the image?"},{"type":"image_url","image_url":{"url":"https://images.saymedia-content.com/.image/c_limit%2Ccs_srgb%2Cq_auto:eco%2Cw_538/MTczOTQ5NDQyMzQ3NTc0NTc5/compound-shapes-how-to-find-the-area-of-a-l-shape.webp"}}]}], temperature=0.0,)print(response.choices[0].message.content)技术支持
当任务涉及多模态数据(文本、音频、图像)时,GPT-4o 表现出色;而 o1 API 在复杂推理与问题求解方面更具优势,尤其是在科学、编码和数学领域。若您需要快速响应且中等强度的推理,GPT-4o 更适合;但对于需要深入逻辑分析与高准确性的任务(如生成复杂代码或解答高等数学问题),o1 API 的能力更强。
Ryan 是一名首席数据科学家,专注于使用大型语言模型构建 AI 应用。他是伦敦帝国理工学院自然语言处理与知识图谱方向的博士候选人,并在该校获得了计算机科学硕士学位。除数据科学之外,他还撰写每周的 Substack 时事通讯 The Limitless Playbook,分享来自全球顶尖思想家的一个可操作理念,并不时撰写关于核心 AI 概念的文章。
OpenAI 的 GPT-4o 将音频、视觉和文本能力整合到一个强大的语言模型中。
这一进展标志着人机交互正迈向更加自然、直观的方向。
在本教程中,我将通过 OpenAI API 提供使用 GPT-4o 的分步指导。
尽管 OpenAI 近日发布了其最强推理模型 o3 模型,但在需要快速响应、图像处理或函数调用的应用中,GPT-4o 和 GPT-4o mini 仍是最佳选择。如果您的项目对高级推理有更高要求,建议参考这篇 OpenAI O1 API 教程,其将带您通过 API 使用推理模型的流程。
什么是 GPT-4o?
GPT-4o,是“omni(全能)”的缩写,代表了人工智能的一次重大飞跃。不同于仅能处理文本的 GPT-4,GPT-4o 是一个多模态模型,能够处理并生成文本、音频和视觉数据。
通过将音频与视觉数据与文本一并纳入,GPT-4o 打破了传统仅文本模型的限制,带来更自然、直观的交互体验。
GPT-4o 响应更快,价格比 GPT-4 Turbo 便宜 50%,并且在音频与视觉理解方面优于现有模型。
如果您想更全面地了解 GPT-4o,请查阅这篇文章:什么是 OpenAI 的 GPT-4o。
GPT-4o 的使用场景
除了通过 ChatGPT 界面与 GPT-4o 交互外,开发者还可以通过 OpenAI API 使用 GPT-4o,从而将其能力集成到自己的应用和系统中。
利用其多模态能力,GPT-4o API 可开启广泛的潜在应用:
模态
使用场景
描述
文本
文本生成、文本摘要、数据分析与编码
内容创作、精炼摘要、代码讲解与编程辅助。
音频
音频转写、实时翻译、音频生成
将音频转为文本、实时翻译、打造虚拟助理或语言学习场景。
视觉
图像描述、图像分析与推理、视障辅助
描述图像、分析视觉信息、为视障人士提供无障碍支持。
多模
多模态交互、角色扮演场景
无缝融合多种模态,打造沉浸式体验。
GPT-4o API:如何连接到 OpenAI 的 API
下面来看看如何通过 OpenAI API 使用 GPT-4o。
步骤 1:生成 API 密钥
在使用 GPT-4o API 之前,您需要注册 OpenAI 账户并获取 API 密钥。可在 OpenAI API 网站创建账户。
创建账户后,进入 API 密钥页面:
现在即可生成 API 密钥。请妥善保管,您之后将无法再次查看。但若遗失或不同项目需要,也可随时生成新密钥。
步骤 2:在 Python 中导入 OpenAI API
要以编程方式与 GPT-4o API 交互,需要安装 OpenAI 的 Python 库。可通过运行以下命令完成安装:
安装完成后,在 Python 脚本中导入所需模块:
步骤 3:发起 API 调用
在发起 API 请求前,需使用您的 API 密钥进行认证:
将
"your_api_key_here"替换为您的实际 API 密钥。完成客户端连接后,即可使用 GPT-4o 生成文本:
该代码片段使用 GPT-4o 的聊天补全 API,将数学相关问题作为输入并生成响应:
GPT-4o API:音频使用场景
音频转写与摘要已成为多种应用中的关键工具,从提升无障碍体验到增强工作效率皆是如此。借助 GPT-4o API,我们可以高效完成音频内容的转写与总结等任务。
尽管 GPT-4o 具备直接处理音频的潜力,但目前 API 尚未开放直接音频输入功能。现阶段可采用两步流程:先用 GPT-4o API 转写音频,再进行摘要。
步骤 1:将音频转写为文本
要使用 GPT-4o 转写音频文件,需向 API 提供音频数据。示例如下:
将
"path/to/audio.mp3"替换为音频文件的实际路径。此示例使用whisper-1模型进行转写。步骤 2:对转写文本进行摘要
GPT-4o API:视觉使用场景
从医疗到安防等诸多领域,视觉数据分析至关重要。借助 GPT-4o API,您可以无缝分析图像、就视觉内容进行对话,并从图像中提取有价值的信息。
步骤 1:向 API 添加图像数据
要使用 GPT-4o 分析图像,需先将图像数据提供给 API。可以将本地图像编码为
base64字符串,或直接提供在线图像的 URL:步骤 2:分析图像数据
处理好图像输入后,即可将图像数据传给 API 进行分析。
我们来尝试通过图像求一个图形的面积。先使用下图:
现在我们让 GPT-4o 计算该图形的面积——注意下面示例使用的是 base64 图像输入:
再来看这个图形:
我们将图像 URL 传给 GPT-4o 来求图形的面积:
请注意,GPT-4o 误判了竖直矩形的宽度——应为 4 厘米而非 2 厘米。该偏差源于测量标注与矩形实际比例不一致。这也再次凸显了人工监督与验证的重要性。
GPT-4o API 定价
截至 2025 年 7 月,GPT-4o 的按量计费价格为:
输入 Token:每百万个 $5.00
缓存的输入 Token:每百万个 $2.50
输出 Token:每百万个 $20.00
GPT-4o Mini:高性价比替代方案
对于需要高频 API 调用的应用,OpenAI 提供了 GPT-4o Mini,即 GPT-4o 的精简版本:
输入 Token:每百万个 $0.60
缓存的输入 Token:每百万个 $0.30
输出 Token:每百万个 $2.40
批处理 API 折扣
OpenAI 的批处理 API 为 GPT-4o 的输入与输出 Token 成本提供 50% 折扣:
输入 Token:每百万个 $2.50
输出 Token:每百万个 $10.00
这非常适合以异步方式处理海量数据。
GPT-4o API:关键注意事项
使用 GPT-4o API 时,请牢记若干关键点,以确保性能最优、成本可控,并与具体用例保持一致。以下是三个重要因素:
定价与成本管理
OpenAI API 采用按量计费模式,费用基于处理的 Token 数量产生。
尽管 GPT-4o 比 GPT-4 Turbo 更便宜,但仍需合理规划用量,以便评估并管理成本。
为降低成本,您可以考虑批处理、优化提示词等技巧,以减少 API 调用次数与处理 Token 数量。
延迟与性能
尽管 GPT-4o 具有出色性能与低延迟,但它仍是大型语言模型,处理请求计算量大,可能带来相对较高的延迟。
我们需要优化代码,并采用缓存与异步处理等技术来缓解延迟问题。
此外,还可考虑使用 OpenAI 的专用实例,或根据具体用例对模型进行微调,以提升性能并降低延迟。
用例匹配
GPT-4o 是功能强大的通用模型,但我们仍需确保具体用例契合其优势。
在完全依赖 GPT-4o 之前,应仔细评估用例,判断其能力是否满足需求。
如有必要,可以微调更小的模型,或探索其他更适合特定任务的模型。
结语
GPT-4o 的多模态能力弥补了早期模型在无缝整合与处理不同数据类型方面的不足。
借助 GPT-4o API,开发者可以构建将文本、音频与视觉数据无缝集成的创新解决方案。
如果您想进一步练习使用 GPT-4o,推荐这段关于用 GPT-4o 创建 AI 助手的代码演练。同样地,如需了解更多 API 的使用,推荐以下资源: