STT 语音转文本
NUWA 提供统一的语音转文本(STT)接口,兼容 OpenAI 规范,支持实时流式转写与文件转写,适用于通话记录、会议纪要、客服质检等场景。
接口规格
- Python
- TypeScript
from openai import OpenAI
client = OpenAI(
api_key="sk-***", # NUWA 控制台生成的 Key
base_url="https://api.nuwaapi.com/v1"
)
with open("/path/to/audio.wav", "rb") as audio_file:
transcript = client.audio.transcriptions.create(
model="whisper-1",
file=audio_file,
)
print(transcript.text)
import OpenAI from "openai";
import fs from "fs";
const client = new OpenAI({
apiKey: "sk-***",
baseURL: "https://api.nuwaapi.com/v1",
});
async function main() {
const transcript = await client.audio.transcriptions.create({
model: "whisper-1",
file: fs.createReadStream("/path/to/audio.wav"),
});
console.log(transcript.text);
}
main().catch(console.error);
- 返回格式:JSON,包含转写文本和可选的分段信息
请求参数(文件转写)
| 参数 | 类型 | 是否必填 | 说明 |
|---|---|---|---|
file | file | 是 | 音频文件,常见格式:mp3、mp4、mpeg、mpga、m4a、wav、webm |
model | string | 是 | 模型 ID,默认 whisper-1 |
language | string | 否 | 提示音频语言,例如 zh、en,可提升准确度 |
temperature | number | 否 | 采样温度,控制随机性,默认 0 |
prompt | string | 否 | 先验文本/词汇提示,帮助消除歧义 |
response_format | string | 否 | 输出格式,默认 json,支持 text、srt、verbose_json 等 |
调用示例
基础转写
- Python
- TypeScript
from openai import OpenAI
client = OpenAI(
api_key="sk-***",
base_url="https://api.nuwaapi.com/v1"
)
with open("/path/to/audio.mp3", "rb") as audio_file:
transcript = client.audio.transcriptions.create(
model="whisper-1",
file=audio_file,
)
print(transcript.text)
import OpenAI from "openai";
import fs from "fs";
const client = new OpenAI({
apiKey: "sk-***",
baseURL: "https://api.nuwaapi.com/v1",
});
async function main() {
const transcript = await client.audio.transcriptions.create({
model: "whisper-1",
file: fs.createReadStream("/path/to/audio.mp3"),
});
console.log(transcript.text);
}
main().catch(console.error);
指定语言与提示词
- Python
- TypeScript
from openai import OpenAI
client = OpenAI(
api_key="sk-***",
base_url="https://api.nuwaapi.com/v1"
)
with open("/path/to/meeting.wav", "rb") as audio_file:
transcript = client.audio.transcriptions.create(
model="whisper-1",
file=audio_file,
language="zh",
prompt="本次会议讨论了 API 集成和结算问题",
)
print(transcript.text)
import OpenAI from "openai";
import fs from "fs";
const client = new OpenAI({
apiKey: "sk-***",
baseURL: "https://api.nuwaapi.com/v1",
});
async function main() {
const transcript = await client.audio.transcriptions.create({
model: "whisper-1",
file: fs.createReadStream("/path/to/meeting.wav"),
language: "zh",
prompt: "本次会议讨论了 API 集成和结算问题",
});
console.log(transcript.text);
}
main().catch(console.error);
获取字幕格式(SRT)
- Python
- TypeScript
from openai import OpenAI
client = OpenAI(
api_key="sk-***",
base_url="https://api.nuwaapi.com/v1"
)
with open("/path/to/video_audio.m4a", "rb") as audio_file:
transcript = client.audio.transcriptions.create(
model="whisper-1",
file=audio_file,
response_format="srt",
)
print(transcript) # 返回 SRT 字幕字符串
import OpenAI from "openai";
import fs from "fs";
const client = new OpenAI({
apiKey: "sk-***",
baseURL: "https://api.nuwaapi.com/v1",
});
async function main() {
const transcript = await client.audio.transcriptions.create({
model: "whisper-1",
file: fs.createReadStream("/path/to/video_audio.m4a"),
response_format: "srt",
});
console.log(transcript); // 返回 SRT 字幕字符串
}
main().catch(console.error);
返回示例(简化)
{
"text": "欢迎使用 NUWA 语音转文本接口。"
}