> 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.

# Guida rapida a Speech to Text

Questa guida ti mostrerà come convertire l'audio parlato in testo utilizzando l'API Speech to Text.

> **Tip**
>
> Usa la [skill speech-to-text di ElevenLabs](https://github.com/elevenlabs/skills/tree/main/speech-to-text) per trascrivere l'audio dal tuo assistente di coding IA:
>
> ```bash
> npx skills add elevenlabs/skills --skill speech-to-text
> ```

> **Info**
>
> Questo tutorial mostrerà come usare l'API batch Speech to Text. Per una guida su come usare
> l'API Speech to Text Realtime, consulta le guide su [streaming lato client](/docs/it/eleven-api/guides/how-to/speech-to-text/realtime/client-side-streaming) o [streaming lato server](/docs/it/eleven-api/guides/how-to/speech-to-text/realtime/server-side-streaming).

## Utilizzo dell'API Speech to Text

#### Crea una chiave API

[Crea qui una chiave API nella dashboard](https://elevenlabs.io/app/settings/api-keys), che userai per [accedere all'API](/docs/it/api-reference/authentication) in modo sicuro.

Archivia la chiave come secret gestito e passala agli SDK come variabile d'ambiente tramite un file `.env` oppure direttamente nella configurazione della tua app, a seconda delle tue preferenze.

**`.env`**

```js title=".env"
ELEVENLABS_API_KEY=<your_api_key_here>
```

#### Installa l'SDK

#### SDK

Useremo anche la libreria `dotenv` per caricare la nostra chiave API da una variabile d'ambiente.

```python
pip install elevenlabs
pip install python-dotenv
```

```typescript
npm install @elevenlabs/elevenlabs-js
npm install dotenv
```

#### CLI

Installa la CLI di ElevenLabs. Consigliamo Homebrew (macOS) e Scoop (Windows).

**`Homebrew (macOS)`**

```bash title="Homebrew (macOS)"
brew install elevenlabs/tap/elevenlabs
```

**`Scoop (Windows)`**

```powershell title="Scoop (Windows)"
scoop bucket add elevenlabs https://github.com/elevenlabs/scoop-bucket
scoop install elevenlabs
```

**`npm`**

```bash title="npm"
npm install -g @elevenlabs/cli
```

**`curl`**

```bash title="curl"
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/elevenlabs/cli/releases/latest/download/elevenlabs-cli-installer.sh | sh
```

> **Tip**
>
> Lavori con un assistente di coding IA? Esegui `elevenlabs generate-skills` nel tuo progetto per creare un
> file `SKILL.md` per ogni gruppo di comandi in `skills/`, così il tuo assistente conosce tutte le funzionalità della CLI
> senza che tu debba incollare la documentazione. Usa `--output-dir` per inserirli altrove. Il comando legge la definizione API
> integrata della CLI, quindi non richiede una chiave API e funziona offline — inoltre rimane allineato
> alla versione della CLI che hai installato.

Poi autentica la CLI: si aprirà il browser per autorizzarla.

```bash
elevenlabs auth login
```

#### Effettua la richiesta API

#### SDK

Crea un nuovo file denominato `example.py` o `example.mts`, a seconda del linguaggio che preferisci, e aggiungi il seguente codice:

```python maxLines=0
# example.py
import os
from dotenv import load_dotenv
from io import BytesIO
import requests
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"
)
response = requests.get(audio_url)
audio_data = BytesIO(response.content)

transcription = elevenlabs.speech_to_text.convert(
    file=audio_data,
    model_id="scribe_v2", # Model to use
    tag_audio_events=True, # Tag audio events like laughter, applause, etc.
    language_code="eng", # Language of the audio file. If set to None, the model will detect the language automatically.
    diarize=True, # Whether to annotate who is speaking
)

print(transcription)
```

```typescript maxLines=0
// example.mts
import { ElevenLabsClient } from "@elevenlabs/elevenlabs-js";
import "dotenv/config";

const elevenlabs = new ElevenLabsClient();

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

const transcription = await elevenlabs.speechToText.convert({
  file: audioBlob,
  modelId: "scribe_v2", // Model to use
  tagAudioEvents: true, // Tag audio events like laughter, applause, etc.
  languageCode: "eng", // Language of the audio file. If set to null, the model will detect the language automatically.
  diarize: true, // Whether to annotate who is speaking
});

console.log(transcription);
```

Quindi eseguilo:

```python
python example.py
```

```typescript
npx tsx example.mts
```

Dovresti vedere la trascrizione del file audio stampata nella console.

> **Note**
>
> Per l'audio medico e clinico, imposta `model_id` su `scribe_v2_medical`. La struttura della richiesta
> è la stessa di `scribe_v2` e viene fatturata alla stessa tariffa. Consulta [Scribe v2 Medical](/docs/it/overview/models#scribe-v2-medical).

#### CLI

Scarica l'audio di esempio, quindi trascrivilo:

```bash
curl -O https://storage.googleapis.com/eleven-public-cdn/audio/marketing/nicole.mp3

elevenlabs speech-to-text convert \
  --file nicole.mp3 \
  --model-id scribe_v2 \
  --tag-audio-events true \
  --language-code eng \
  --diarize true
```

La trascrizione viene stampata nel terminale.

Per l'audio medico e clinico, passa `--model-id scribe_v2_medical`.

## Passaggi successivi

#### [Trascrizione batch](/docs/it/eleven-api/guides/how-to/speech-to-text/batch)

Trascrivi file audio preregistrati con diarizzazione degli interlocutori e tagging degli eventi

#### [Trascrizione in tempo reale](/docs/it/eleven-api/guides/how-to/speech-to-text/realtime)

Trasmetti l'audio in streaming e ricevi trascrizioni in tempo reale

#### [Riferimento API](/docs/it/api-reference/speech-to-text/convert)

Esplora tutti i parametri e i formati di risposta di Speech to Text