语音转文本 API 指南
概述
音频 API 提供两个主要端点:
- 📝 transcriptions:音频转文本
- 🔄 translations:音频翻译为英文
支持格式
- 📁 文件大小:最大25 MB
- 🎵 支持格式:mp3、mp4、mpeg、mpg、m4a、wav、webm
使用方法
1. 转录(Transcription)
将音频转换为原语言文本
from openai import OpenAI client = OpenAI( base_url="https://api.aimanyi.top/v1", api_key=key ) # 基础转录 audio_file = open("/path/to/file/audio.mp3", "rb") transcription = client.audio.transcriptions.create( model="whisper-1", file=audio_file ) print(transcription.text) # 指定输出格式 transcription = client.audio.transcriptions.create( model="whisper-1", file=audio_file, response_format="text" )
2. 翻译(Translation)
将任意语言音频转换为英文文本
from openai import OpenAI client = OpenAI( base_url="https://api.aimanyi.top/v1", api_key=key ) audio_file = open("/path/to/file/german.mp3", "rb") translation = client.audio.translations.create( model="whisper-1", file=audio_file ) print(translation.text)
3. 时间戳功能
from openai import OpenAI client = OpenAI( base_url="https://api.aimanyi.top/v1", api_key=key ) audio_file = open("speech.mp3", "rb") transcript = client.audio.transcriptions.create( file=audio_file, model="whisper-1", response_format="verbose_json", timestamp_granularities=["word"] ) print(transcript.words)
4. 处理大文件
使用 PyDub 分割大于25MB的文件:
from pydub import AudioSegment song = AudioSegment.from_mp3("good_morning.mp3") # 分割为10分钟片段 ten_minutes = 10 * 60 * 1000 first_10_minutes = song[:ten_minutes] first_10_minutes.export("good_morning_10.mp3", format="mp3")
优化建议
提示(Prompts)使用技巧
- 🔍 用于纠正特定词汇识别
- 📜 保持上下文连贯性
- ✍️ 控制标点符号输出
- 🗣️ 保留填充词
- 📝 控制输出文字样式(如中文简繁体)
支持语言
支持98种语言,包括:
- 主要亚洲语言:中文、日语、韩语等
- 欧洲语言:英语、法语、德语等
- 其他地区语言:阿拉伯语、印地语等
注意:仅列出词错误率(WER)低于50%的语言,其他语言虽支持但质量可能较低