Audio y tiempo real

Crear transcripción

Transcribe audio al idioma de entrada

POST
/v1/audio/transcriptions

Cuerpo de la solicitud

La transcripción puede devolver el texto directamente o aceptar una tarea asíncrona con HTTP 200, id y status. Para una tarea aceptada, sigue poll_url o consulta /v1/tasks/{id}. Para audio largo procesado de forma síncrona, permite al menos 120s de espera.

filefileobligatorio

Archivo de audio para transcribir. Formatos compatibles: flac, mp3, mp4, mpeg, mpga, m4a, ogg, wav, webm. Tamaño máximo del archivo: 25 MB.

modelstringpredeterminado: whisper-1

ID del modelo de transcripción, como whisper-1 o gpt-4o-transcribe. Consulta las opciones actuales con GET /v1/models?recommended_for=stt.

languagestring

Idioma del audio en formato ISO-639-1 (p. ej., en, zh, ja).

promptstring

Texto opcional para guiar el estilo del modelo o continuar un segmento anterior.

response_formatstringpredeterminado: json

Formato de salida. Whisper admite json, text, srt, verbose_json y vtt; otros modelos pueden admitir un conjunto distinto. Consulta los detalles del modelo.

temperaturenumber

Temperatura de muestreo de 0 a 1, solo para modelos compatibles con este parámetro.

timestamp_granularitiesarray

word y/o segment, si el modelo los admite. Whisper requiere response_format=verbose_json. En multipart, repite timestamp_granularities[] para enviar varios valores.

Respuesta

Los campos siguientes describen respuestas JSON de transcripción o traducción. text, srt y vtt devuelven texto o subtítulos sin envolverlos en JSON. Los campos adicionales dependen del modelo y del formato.

textstring

El texto transcrito.

Para verbose_json:

taskstring

Nombre de la tarea cuando se devuelve, como transcribe.

languagestring

Idioma detectado.

durationnumber

Duración del audio en segundos.

segmentsarray

Segmentos de la transcripción con marcas de tiempo.

wordsarray

Marcas de tiempo a nivel de palabra (si se solicitan).

Una tarea asíncrona de transcripción aceptada devuelve los campos siguientes en lugar del texto:

idstring

ID de la tarea.

task_idstring

Alias del identificador de tarea asíncrona cuando está disponible.

statusstring

Estado de la tarea: pending, processing, completed o failed.

poll_urlstring

URL de sondeo preferida cuando la respuesta de creación la proporciona.

Solicitud

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"

Respuesta

{
  "text": "Hello, this is a test of the transcription API."
}

Traducción

Para traducir audio al inglés, utiliza el endpoint de traducciones:

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

print(response.text)

Autorización

BearerAuth
AuthorizationBearer <token>

Autenticación con API Key. Cree o gestione API keys en Dashboard > API > API Keys.

Ubicación: header

Encabezados

X-TokenLab-Delivery-Policy?string

Política de entrega por solicitud. Sustituye los valores predeterminados de la API key y del Workspace. Auto intenta primero con TokenLab Verified y puede cambiar una vez a Official solo antes de la salida, la aceptación de la solicitud o la creación de recursos persistentes.

Valores permitidos

  • "auto"
  • "verified"
  • "official"

Cuerpo de la solicitud

multipart/form-data

Respuesta

application/json

application/json

application/json

application/json

application/json

application/json