Comprendere l'audio

Gemini può rispondere ai prompt relativi all'audio. Puoi aggiungere audio alle richieste a Gemini per eseguire attività che comportano la comprensione dei contenuti dell'audio incluso. Ad esempio, Gemini può fare quanto segue:

  • Descrivere, riassumere o rispondere a domande sui contenuti audio.
  • Fornisci una trascrizione dell'audio.
  • Fornisci risposte o una trascrizione su un segmento specifico dell'audio.

La comprensione dell'audio è uno degli input multimodali di Gemini che combinano il testo con i file multimediali.

Per saperne di più sulla comprensione dell'audio con Gemini e per istruzioni passo passo per l'invio di richieste API, consulta Inviare un prompt multimodale.

Specifiche per i prompt con audio

Puoi aggiungere file audio alla tua richiesta a Gemini. La durata massima supportata dei dati audio in un singolo prompt è di 15 minuti o fino a 32.000 token. Gemini non limita il numero di file audio in un singolo prompt, ma la durata totale combinata di tutti i file audio in un singolo prompt non può superare i 15 minuti.

Gemini può comprendere la voce per il riepilogo, la trascrizione e la traduzione dell'audio.

L'audio deve essere in uno dei seguenti tipi MIME di formato audio:

  • AAC: audio/aac
  • AIF: audio/aiff
  • FLAC: audio/flac
  • MP3: audio/mp3
  • OGG: audio/ogg
  • WAV: audio/wav

Gemini impone le seguenti regole per l'audio:

  • Rappresenta ogni secondo di audio con 25 token. Ad esempio, un minuto di audio è rappresentato da 1500 token.
  • Inferisce le risposte solo per la lingua inglese.
  • Analizza i componenti non vocali, come il canto degli uccelli o le sirene.
  • Esegui il campionamento dei file audio a una risoluzione dei dati di 16 Kbps. Se la sorgente audio contiene più canali, Gemini li combina in un unico canale.

Puoi utilizzare l'endpoint Completamento chat nell'API REST e utilizzare un client HTTP o gli SDK ufficiali di OpenAI per Python. Puoi fornire l'audio come dati incorporati nella richiesta di prompt come file codificato in base64 o caricare il file audio in un bucket di archiviazione prima di effettuare la richiesta di prompt.

Scopri di più sulle limitazioni per l'audio nella documentazione di Google Cloud .

Per saperne di più su OpenAI e sull'endpoint Chat Completions che Gemini implementa in Google Distributed Cloud (GDC) air-gapped, consulta https://platform.openai.com/docs/api-reference/chat.

Comprendere l'audio di un prompt

Gli esempi seguenti mostrano una richiesta dell'API Gemini Chat Completions per generare testo dall'input di testo e audio utilizzando gli SDK ufficiali di OpenAI per Python o curl. Puoi inviare l'audio come dati incorporati o fornire un URL audio nella richiesta.

Inviare richieste di dati inline

Fornisci l'audio come dati incorporati alla richiesta di prompt da file con codifica base64. La richiesta API contiene il campo input_audio per l'audio codificato in base64. Il seguente esempio mostra come inviare richieste audio codificate in base64:

Python

import openai

client = openai.OpenAI()
model_response = client.chat.completions.create(
  model = "MODEL_ID",
  messages =  [
                {
                  "role": "user",
                  "content": "Show me the lyrics of this song."
                },
                {
                  "role": "user",
                  "content": [
                    {
                      "type": "input_audio",
                      "input_audio": {
                        "data": BASE64_DATA,
                        # Valid formats are aac, aiff, flac, mp3, ogg, or wav
                        "format": "mp3"
                      }
                    }
                  ]
                }
              ]
)

print(model_response)

Sostituisci quanto segue:

  • MODEL_ID: l'ID endpoint del modello da cui vuoi generare la risposta.
  • BASE64_DATA: i dati codificati in Base64 del file audio. I dati con codifica Base64 devono avere come prefisso uno schema URI dati, RFC 2397. Pertanto, il formato del campo data per i dati con codifica Base64 è, ad esempio, "data": f"data:audio/mp3;base64,{base64_audio}".

curl

curl \
  -X POST "https://ENDPOINT:443/v1/projects/PROJECT/locations/PROJECT/chat/completions" \
  -H "Content-Type: application/json; charset=utf-8" \
  -H "Authorization: Bearer $(gdcloud auth print-identity-token)" \
  -d  '{
          "model_id": "MODEL_ID",
          "messages": [
            {
              "role": "user",
              "content": "Show me the lyrics of this song."
            },
            {
              "role": "user",
              "content": [
                {
                  "type": "input_audio",
                  "input_audio": {
                    "data": BASE64_DATA,
                    # Valid formats are aac, aiff, flac, mp3, ogg, or wav
                    "format": "mp3"
                  }
                }
              ]
            }
          ],
      }'

Sostituisci quanto segue:

  • ENDPOINT: l'endpoint API che utilizzi per la tua organizzazione.
  • PROJECT: il tuo ID progetto.
  • MODEL_ID: l'ID endpoint del modello da cui vuoi generare la risposta.
  • BASE64_DATA: i dati codificati in Base64 del file audio. I dati con codifica Base64 devono avere come prefisso uno schema URI dati, RFC 2397. Pertanto, il formato del campo data per i dati con codifica Base64 è, ad esempio, "data": f"data:audio/mp3;base64,{base64_audio}".

Inviare gli URL audio nella richiesta

Carica il file audio in un bucket di archiviazione prima di effettuare la richiesta di prompt. La richiesta API contiene il campo audio_url per i file audio nei bucket di archiviazione. Il seguente esempio mostra come inviare richieste di URL audio:

curl \
  -X POST "https://ENDPOINT:443/v1/projects/PROJECT/locations/PROJECT/chat/completions" \
  -H "Content-Type: application/json; charset=utf-8" \
  -H "Authorization: Bearer $(gdcloud auth print-identity-token)" \
  -d  '{
          "model_id": "MODEL_ID",
          "messages": [
            {
              "role": "user",
              "content": "Show me the lyrics of this song."
            },
            {
              "role": "user",
              "content": [
                {
                  "type": "audio_url",
                  "audio_url": {
                    "url": "AUDIO_URL",
                  }
                }
              ]
            }
          ],
      }'

Sostituisci quanto segue:

  • ENDPOINT: l'endpoint API che utilizzi per la tua organizzazione.
  • PROJECT: il tuo ID progetto.
  • MODEL_ID: l'ID endpoint del modello da cui vuoi generare la risposta.
  • AUDIO_URL: il percorso di un URL audio in un bucket di archiviazione. Gli URL audio devono fare riferimento a file audio archiviati in un bucket di archiviazione GDC. Per maggiori informazioni, consulta la pagina Memorizzare i dati.

Passaggi successivi