> This is a page from the ElevenLabs documentation. For a complete page index, fetch https://elevenlabs.io/docs/llms.txt. For the full documentation in a single file, fetch https://elevenlabs.io/docs/llms-full.txt.

# Opciones de números e idiomas

> **Note**
>
> **Guía práctica** · Da por hecho que has completado la [guía de inicio rápido de Voz a Texto ](/docs/es/eleven-api/guides/cookbooks/speech-to-text).

## Descripción general

[Scribe v3](/docs/es/overview/models#scribe-v3) añade dos parámetros opcionales a la API de Voz a Texto por lotes:

* `numbers_format` establece si los números de la transcripción se escriben como dígitos (`42`) o como palabras (`forty-two`).
* `secondary_language_codes` enumera otros idiomas que podrían hablarse en el audio junto con `language_code`. Esto mejora la precisión en audios donde los hablantes cambian de idioma.

Ambos parámetros solo son compatibles con `scribe_v3`. Enviar cualquiera de ellos con otro modelo devuelve un error `invalid_parameters`.

> **Note**
>
> Los SDK aún no tienen argumentos tipados para estos parámetros. En Python, pásalos mediante
> `request_options`. En TypeScript, envía la solicitud con `fetch`.

## Formatear números

Configura `numbers_format` como `digits` o `words`. Cuando se omite el parámetro, el modelo elige el formato.

| Valor     | Ejemplo de salida     |
| --------- | --------------------- |
| `digits`  | `42`                  |
| `words`   | `forty-two`           |
| (omitido) | Elegido por el modelo |

```python maxLines=0 {19-24}
import os
from io import BytesIO

import requests
from dotenv import load_dotenv
from elevenlabs.client import ElevenLabs

load_dotenv()

elevenlabs = ElevenLabs(
    api_key=os.getenv("ELEVENLABS_API_KEY"),
)

audio_url = "https://storage.googleapis.com/eleven-public-cdn/audio/marketing/nicole.mp3"
audio_data = BytesIO(requests.get(audio_url).content)

transcription = elevenlabs.speech_to_text.convert(
    file=audio_data,
    model_id="scribe_v3",
    request_options={
        "additional_body_parameters": {
            "numbers_format": "digits",
        },
    },
)

print(transcription.text)
```

```typescript maxLines=0 {10-11}
import "dotenv/config";

const audio = await fetch(
  "https://storage.googleapis.com/eleven-public-cdn/audio/marketing/nicole.mp3"
);
const audioBlob = new Blob([await audio.arrayBuffer()], { type: "audio/mp3" });

const form = new FormData();
form.append("file", audioBlob, "nicole.mp3");
form.append("model_id", "scribe_v3");
form.append("numbers_format", "digits");

const response = await fetch("https://api.elevenlabs.io/v1/speech-to-text", {
  method: "POST",
  headers: { "xi-api-key": process.env.ELEVENLABS_API_KEY! },
  body: form,
});

const transcription = await response.json();
console.log(transcription.text);
```

`numbers_format` controla cómo transcribe números el modelo. Para otros cambios en la forma de escribir fechas, horas o unidades, usa la [edición de transcripciones](/docs/es/eleven-api/guides/how-to/speech-to-text/batch/transcript-editing).

## Declarar idiomas secundarios

Configura `language_code` como el idioma principal del audio y `secondary_language_codes` como los otros idiomas que esperas. Ambos aceptan códigos ISO-639-1 o ISO-639-3.

`secondary_language_codes` es una lista. Repite el campo del formulario una vez por idioma. No se acepta una matriz JSON enviada como una sola cadena.

El siguiente ejemplo transcribe audio en inglés que también contiene español y francés:

```python maxLines=0 {4-9}
transcription = elevenlabs.speech_to_text.convert(
    file=audio_data,
    model_id="scribe_v3",
    language_code="en",
    request_options={
        "additional_body_parameters": {
            "secondary_language_codes": ["es", "fr"],
        },
    },
)
```

```typescript maxLines=0 {4-7}
const form = new FormData();
form.append("file", audioBlob, "recording.mp3");
form.append("model_id", "scribe_v3");
form.append("language_code", "en");
for (const code of ["es", "fr"]) {
  form.append("secondary_language_codes", code);
}

const response = await fetch("https://api.elevenlabs.io/v1/speech-to-text", {
  method: "POST",
  headers: { "xi-api-key": process.env.ELEVENLABS_API_KEY! },
  body: form,
});
```

> **Warning**
>
> Los códigos no reconocidos en `secondary_language_codes` se omiten sin generar un error. Comprueba los códigos
> con los [idiomas compatibles](/docs/es/overview/capabilities/speech-to-text#supported-languages)
> antes de enviar la solicitud.

Scribe v3 transcribe el habla en el idioma en que se habla. No traduce entre los idiomas principal y secundarios.

## Combinar con otros parámetros

Ambos parámetros pueden usarse juntos y con otros parámetros por lotes, como `keyterms`, `diarize` y `no_verbatim`. Consulta el [prompting de términos clave](/docs/es/eleven-api/guides/how-to/speech-to-text/batch/keyterm-prompting) para orientar la transcripción hacia términos específicos.

## Próximos pasos

#### [Modelos](/docs/es/overview/models#scribe-v3)

Funciones de Scribe v3 y cómo actualizar desde Scribe v2.

#### [Opciones de idioma en tiempo real](/docs/es/eleven-api/guides/how-to/speech-to-text/realtime/language-options)

Transcribe audio en directo en más de un idioma con Scribe v3 Live.