跳转到主要内容
语音转文本可将口语音频转录为文字。向 /audio/transcriptions 发送一个音频文件,选择转录模型,并指定所需的响应格式。

基本用法

import os

import requests

with open("meeting.mp3", "rb") as audio:
    response = requests.post(
        "https://api.venice.ai/api/v1/audio/transcriptions",
        headers={"Authorization": f"Bearer {os.environ['VENICE_API_KEY']}"},
        files={"file": audio},
        data={
            "model": "nvidia/parakeet-tdt-0.6b-v3",
            "response_format": "json",
        },
    )

response.raise_for_status()
print(response.json()["text"])
import { createReadStream } from "node:fs";
import FormData from "form-data";

const form = new FormData();
form.append("file", createReadStream("meeting.mp3"));
form.append("model", "nvidia/parakeet-tdt-0.6b-v3");
form.append("response_format", "json");

const response = await fetch("https://api.venice.ai/api/v1/audio/transcriptions", {
  method: "POST",
  headers: {
    Authorization: `Bearer ${process.env.VENICE_API_KEY}`,
    ...form.getHeaders(),
  },
  body: form,
});

if (!response.ok) {
  throw new Error(await response.text());
}

const transcript = await response.json();
console.log(transcript.text);
curl https://api.venice.ai/api/v1/audio/transcriptions \
  -H "Authorization: Bearer $VENICE_API_KEY" \
  --form [email protected] \
  --form model=nvidia/parakeet-tdt-0.6b-v3 \
  --form response_format=json

支持的输入

常见音频格式包括 mp3mp4mpegmpgam4awavwebmflacogg。请查阅 语音转文本模型 页面了解当前模型支持情况和价格。

响应格式

格式适用场景
json需要简单的 { "text": "..." } 响应时。
text需要纯文本、无需解析 JSON 时。
srt需要 SubRip 字幕时。
vtt需要 WebVTT 字幕时。
verbose_json需要更丰富的时间戳和分段元数据时。
当转录内容将与媒体播放配合使用时,请选择字幕格式。当转录用于摘要生成、搜索或下游聊天提示时,请使用 jsontext

生产环境建议

  • 尽量保证音频清晰,避免多人同时说话。
  • 如果工作流需要更低延迟或更方便重试,可将过长的录音切分为较小的片段。
  • 为每份转录保存原始音频路径、模型 ID 和响应格式,便于审计。

相关资源