跳转到主要内容

请求体

同步请求超时: 这个非聊天端点会等待路由到的模型完成处理。大输入、长音频或大批量请求可能超过常见的 30s 客户端默认超时,因此请将 HTTP 客户端超时设置为至少 120s
file
file
必填
要转录的音频文件。支持的格式:flac、mp3、mp4、mpeg、mpga、m4a、ogg、wav、webm。
model
string
默认值:"whisper-1"
要使用的模型。目前仅支持 whisper-1
language
string
音频的语言,采用 ISO-639-1 格式(例如:enzhja)。
prompt
string
可选文本,用于引导模型的风格或续接上一段内容。
response_format
string
默认值:"json"
输出格式:jsontextsrtverbose_jsonvtt
temperature
number
默认值:"0"
采样温度(0 到 1)。
timestamp_granularities
array
时间戳粒度:word 和/或 segment。需要 verbose_json

响应

text
string
转录后的文本。
对于 verbose_json
task
string
始终为 transcribe
language
string
检测到的语言。
duration
number
音频时长,单位为秒。
segments
array
带时间戳的转录片段。
words
array
词级时间戳(如已请求)。
curl -X POST "https://api.tokenlab.sh/v1/audio/transcriptions" \
  -H "Authorization: Bearer sk-your-api-key" \
  -F file="@audio.mp3" \
  -F model="whisper-1" \
  -F language="en"
from openai import OpenAI

client = OpenAI(
    api_key="sk-your-api-key",
    base_url="https://api.tokenlab.sh/v1"
)

with open("audio.mp3", "rb") as audio_file:
    response = client.audio.transcriptions.create(
        model="whisper-1",
        file=audio_file,
        language="en"
    )

print(response.text)
import OpenAI from 'openai';
import fs from 'fs';

const client = new OpenAI({
  apiKey: 'sk-your-api-key',
  baseURL: 'https://api.tokenlab.sh/v1'
});

const response = await client.audio.transcriptions.create({
  model: 'whisper-1',
  file: fs.createReadStream('audio.mp3'),
  language: 'en'
});

console.log(response.text);
<?php
$ch = curl_init('https://api.tokenlab.sh/v1/audio/transcriptions');

$file = new CURLFile('audio.mp3', 'audio/mpeg', 'audio.mp3');

curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POST => true,
    CURLOPT_HTTPHEADER => [
        'Authorization: Bearer sk-your-api-key'
    ],
    CURLOPT_POSTFIELDS => [
        'file' => $file,
        'model' => 'whisper-1',
        'language' => 'en'
    ]
]);

$response = curl_exec($ch);
curl_close($ch);

$data = json_decode($response, true);
echo $data['text'];
{
  "text": "Hello, this is a test of the transcription API."
}
{
  "task": "transcribe",
  "language": "english",
  "duration": 5.5,
  "text": "Hello, this is a test of the transcription API.",
  "segments": [
    {
      "id": 0,
      "start": 0.0,
      "end": 2.5,
      "text": "Hello, this is a test",
      "tokens": [...]
    }
  ]
}

翻译

要将音频翻译为英语,请使用 translations endpoint:
response = client.audio.translations.create(
    model="whisper-1",
    file=audio_file
)