OpenAI 音频与语音能力全解析 | 附代码示例
OpenAI 的 API 提供了一系列音频处理功能,支持从语音识别、文本转语音到实时语音交互等多个场景。如果你正在开发语音相关应用,本文将帮助你全面了解 OpenAI 在音频方向的能力。
一、音频能力总览
OpenAI 的多模态模型可处理音频作为输入,也可生成音频作为输出,适合构建智能语音助手、语音识别系统、语音播报功能等。
| 功能类别 | 简介 |
|---|---|
| 语音代理 | 构建会“说话”和“听话”的智能代理 |
| 实时音频 | 实现低延迟的音频传入传出处理 |
| 语音识别 | 将音频文件快速转换为文本 |
| 文本转语音 | 将模型输出的文本转为自然语音 |
二、常见场景介绍
1. 构建语音代理(Voice Agent)
你可以选择两种方式构建语音代理:
-
使用 语音-语音模型 + Realtime API
-
采用串联方式:语音 → 文本 → LLM → 文本 → 语音
第一种方式更自然、延迟更低;第二种方式更容易扩展已有文本聊天应用。
如果你已在使用 OpenAI Agents SDK,也可以快速为现有 Agent 增加语音能力。
2. 实时音频处理
通过 Realtime API 实现实时语音交互或语音识别,支持音频的连续输入输出。非常适合用于智能语音客服、会议实时转录等场景。
3. 文本转语音(TTS)
使用 audio/speech 接口可以将文本转换为音频,目前支持的模型包括:
-
gpt-4o-mini-tts -
tts-1 -
tts-1-hd
你还可以指定声音类型(如:alloy、echo、onyx 等),控制语音语调和风格。
4. 语音转文本(STT)
使用 audio/transcriptions 接口将音频文件转为文字,支持模型包括:
-
gpt-4o-transcribe -
gpt-4o-mini-transcribe -
whisper-1
支持多语言、支持流式识别。
三、如何选择正确的 API?
| API | 支持内容 | 是否支持流式 |
|---|---|---|
| Realtime API | 音频 & 文本 输入/输出 | ✅ |
| Chat Completions API | 音频 & 文本 输入/输出 | ✅(音频输出) |
| Transcription API | 音频输入 | ✅ |
| Speech API | 文本转音频输出 | ✅ |
推荐:
-
如果你需要低延迟交互或实时识别,推荐使用
Realtime API -
如果你要构建具备函数调用能力的语音代理,可使用
Chat Completions API -
只需要某个单一功能?那就直接用
Transcription或Speech API
四、语音输出示例(Python)
import base64
from openai import OpenAI
client = OpenAI(base_url="https://api.aaaaapi.com")
completion = client.chat.completions.create(
model="gpt-4o-audio-preview",
modalities=["text", "audio"],
audio={"voice": "alloy", "format": "wav"},
messages=[
{
"role": "user",
"content": "金毛适合做家庭犬吗?"
}
]
)
wav_bytes = base64.b64decode(completion.choices[0].message.audio.data)
with open("dog.wav", "wb") as f:
f.write(wav_bytes)
五、语音输入示例(Python)
import base64
import requests
from openai import OpenAI
client = OpenAI(base_url="https://api.aaaaapi.com")
# 下载音频文件并转为 base64 编码
url = "https://cdn.openai.com/API/docs/audio/alloy.wav"
response = requests.get(url)
wav_data = response.content
encoded = base64.b64encode(wav_data).decode("utf-8")
completion = client.chat.completions.create(
model="gpt-4o-audio-preview",
modalities=["text", "audio"],
audio={"voice": "alloy", "format": "wav"},
messages=[
{
"role": "user",
"content": [
{"type": "text", "text": "这段录音中说了什么?"},
{"type": "input_audio", "input_audio": {"data": encoded, "format": "wav"}}
]
}
]
)
print(completion.choices[0].message)
六、总结推荐
| 使用场景 | 推荐 API |
|---|---|
| 实时交互 / 语音识别 | ✅ Realtime API |
| 普通语音聊天 / 函数调用 | ✅ Chat Completions API |
| 单独语音识别 / TTS | ✅ Transcription / Speech API |
✅ 值得一试:OpenAI API 中转站(稳定 · 高速 · 开箱即用)
如果你在国内调用 OpenAI 官方 API 网络不稳定、速度慢、调用失败等问题频繁出现,推荐你试试 API 中转平台:
-
🚀 稳定高速,支持 GPT-4o 全系列模型
-
🔄 完全兼容 OpenAI 接口,无缝替换
-
🔑 Base URL:
https://api.aaaaapi.com
只需一行代码更改 base_url,即可接入!
如果你觉得本文有帮助,欢迎点赞、收藏并转发!你也可以在评论区留言交流,分享你的语音 AI 应用实践。
更多推荐


所有评论(0)