Puedes agregar audio a las solicitudes de Gemini para realizar tareas que impliquen comprender el contenido del audio incluido. En esta página, se muestra cómo agregar audio a tus solicitudes a Gemini en Vertex AI con laGoogle Cloud consola y la API de Vertex AI.
Modelos compatibles
En la siguiente tabla, se enumeran los modelos que admiten la comprensión de audio:
Modelo | Detalles de los medios | Tipos de MIME |
---|---|---|
Gemini 2.5 Flash-Lite |
|
|
Gemini 2.5 Flash con audio nativo de la API de Live |
|
|
Gemini 2.0 Flash con la API de Live |
|
|
Gemini 2.0 Flash con generación de imágenes |
|
|
Gemini 2.5 Pro |
|
|
Gemini 2.5 Flash |
|
|
Gemini 2.0 Flash |
|
|
Gemini 2.0 Flash-Lite |
|
|
La métrica de cuota es generate_content_audio_input_per_base_model_id_and_resolution
.
Para obtener una lista de los idiomas compatibles con los modelos de Gemini, consulta la información del modelo de los Modelos de Google. Para obtener más información sobre cómo diseñar instrucciones multimodales, consulta Diseña instrucciones multimodales. Si buscas una manera de usar Gemini directamente desde tus apps web y para dispositivos móviles, consulta los SDKs de cliente de Firebase AI Logic para apps de Swift, Android, Web, Flutter y Unity.
Agrega audio a una solicitud
Puedes agregar archivos de audio a tus solicitudes de Gemini.
Audio único
A continuación, se muestra cómo usar un archivo de audio para resumir un podcast.
Console
Para enviar una instrucción multimodal con la Google Cloud consola, haz lo siguiente:En la sección Vertex AI de la Google Cloud consola, ve a la página Vertex AI Studio.
Haz clic en Crear mensaje.
Opcional: Configura el modelo y los parámetros:
- Modelo: Selecciona un modelo.
Opcional: Para configurar parámetros avanzados, haz clic en Avanzada y establece la configuración de la siguiente manera:
Haz clic para expandir las configuraciones avanzadas
K superior: Usa el control deslizante o el cuadro de texto con el fin de ingresar un valor para K superior.
K superior cambia la manera en que el modelo selecciona tokens para la salida. K superior a1
significa que el siguiente token seleccionado es el más probable entre todos los tokens en el vocabulario del modelo (también llamado decodificación voraz), mientras que el K superior a3
significa que el siguiente token se selecciona de los tres tokens más probables mediante la temperatura.Para cada paso de selección de tokens, se muestran los tokens de K superior con las probabilidades más altas. Luego, los tokens se filtran según el superior con el token final seleccionado mediante el muestreo de temperatura.
Especifica un valor más bajo para respuestas menos aleatorias y un valor más alto para respuestas más aleatorias.
- P superior: Usa el control deslizante o el cuadro de texto con el fin de ingresar un valor de P superior.
Los tokens se seleccionan del más probable al menos hasta que la suma de sus probabilidades sea igual al valor de P superior. Para obtener los resultados menos variables, establece top-P como
0
. - Respuestas máximas: Usa el control deslizante o el cuadro de texto para ingresar un valor para la cantidad de respuestas que se generarán.
- Respuestas de transmisión: Habilita esta opción para imprimir las respuestas a medida que se generan.
- Umbral del filtro de seguridad: Selecciona el umbral de probabilidad de ver respuestas que podrían ser dañinas.
- Habilitar fundamentos: Los fundamentos no son compatibles con las instrucciones multimodales.
- Región: selecciona la región que deseas usar.
- Temperatura: Usa el control deslizante o el cuadro de texto para ingresar un valor de temperatura.
The temperature is used for sampling during response generation, which occurs when
andtopP
topK
are applied. Temperature controls the degree of randomness in token selection. Lower temperatures are good for prompts that require a less open-ended or creative response, while higher temperatures can lead to more diverse or creative results. A temperature of0
means that the highest probability tokens are always selected. In this case, responses for a given prompt are mostly deterministic, but a small amount of variation is still possible.If the model returns a response that's too generic, too short, or the model gives a fallback response, try increasing the temperature.
</li> <li>**Output token limit**: Use the slider or textbox to enter a value for the max output limit. Maximum number of tokens that can be generated in the response. A token is approximately four characters. 100 tokens correspond to roughly 60-80 words.Specify a lower value for shorter responses and a higher value for potentially longer responses.
</li> <li>**Add stop sequence**: Optional. Enter a stop sequence, which is a series of characters that includes spaces. If the model encounters a stop sequence, the response generation stops. The stop sequence isn't included in the response, and you can add up to five stop sequences.</li> </ul>
Haz clic en Insertar medios y selecciona una fuente para tu archivo.
Subir
Selecciona el archivo que quieras subir y haz clic en Abrir.
Por URL
Ingresa la URL del archivo que quieres usar y haz clic en Insertar.
Cloud Storage
Selecciona el bucket y, luego, el archivo del bucket que deseas importar y haz clic en Seleccionar.
Google Drive
- Elige una cuenta y da consentimiento a Vertex AI Studio para acceder a tu cuenta la primera vez que selecciones esta opción. Puedes subir varios archivos con un tamaño total de hasta 10 MB. Un solo archivo no puede superar los 7 MB.
- Haz clic en el archivo que quieras agregar.
Haz clic en Seleccionar.
La miniatura del archivo se muestra en el panel Instrucción. También se muestra la cantidad total de tokens. Si los datos de la instrucción superan el límite de tokens, los tokens se truncan y no se incluyen en el procesamiento de tus datos.
Ingresa tu mensaje de texto en el panel Mensaje.
Opcional: Para ver el ID de token a texto y los IDs de token, haz clic en el recuento de tokens en el panel Instrucción.
Haz clic en Enviar.
Opcional: Para guardar la instrucción en Mis instrucciones, haz clic en
Guardar.Opcional: Para obtener el código de Python o un comando curl para tu instrucción, haz clic en
Compilar con código > Obtener código.
Python
Instalar
pip install --upgrade google-genai
Para obtener más información, consulta la documentación de referencia del SDK.
Establece variables de entorno para usar el SDK de IA generativa con Vertex AI:
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_VERTEXAI=True
Go
Obtén información para instalar o actualizar Go.
Para obtener más información, consulta la documentación de referencia del SDK.
Establece variables de entorno para usar el SDK de IA generativa con Vertex AI:
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_VERTEXAI=True
REST
Después de configurar tu entorno, puedes usar REST para probar una instrucción de texto. En el siguiente ejemplo, se envía una solicitud al extremo del modelo de publicador.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
PROJECT_ID
: El ID del proyecto.FILE_URI
: Es el URI o la URL del archivo que se incluirá en la instrucción. Los valores aceptables son los siguientes:- URI del bucket de Cloud Storage: El objeto debe poder leerse de forma pública o residir en el mismo proyecto Google Cloud que envía la solicitud. Para
gemini-2.0-flash
ygemini-2.0-flash-lite
, el límite de tamaño es de 2 GB. - URL HTTP: La URL del archivo debe ser legible públicamente. Puedes especificar un archivo de video, un archivo de audio y hasta 10 archivos de imagen por solicitud. Los archivos de audio, los archivos de video y los documentos no pueden superar los 15 MB.
- URL del video de YouTube: El video de YouTube debe ser propiedad de la cuenta que usaste para acceder a la Google Cloud consola o ser público. Solo se admite una URL de video de YouTube por solicitud.
Cuando especifiques un
fileURI
, también debes especificar el tipo de medio (mimeType
) del archivo. Si los Controles del servicio de VPC están habilitados, no se admite la especificación de una URL de archivo multimedia parafileURI
.Si no tienes un archivo de audio en Cloud Storage, puedes usar el siguiente archivo disponible de forma pública:
gs://cloud-samples-data/generative-ai/audio/pixel.mp3
con un tipo de MIME deaudio/mp3
. Para escuchar este audio, abre el archivo MP3 de muestra.- URI del bucket de Cloud Storage: El objeto debe poder leerse de forma pública o residir en el mismo proyecto Google Cloud que envía la solicitud. Para
MIME_TYPE
El tipo de medio del archivo especificado en los camposdata
ofileUri
. Los valores aceptables son los siguientes:Haz clic para expandir los tipos de MIME.
application/pdf
audio/mpeg
audio/mp3
audio/wav
image/png
image/jpeg
image/webp
text/plain
video/mov
video/mpeg
video/mp4
video/mpg
video/avi
video/wmv
video/mpegps
video/flv
Las instrucciones de texto que se incluirán en el mensaje. Por ejemplo,TEXT
Please provide a summary for the audio. Provide chapter titles, be concise and short, no need to provide chapter summaries. Do not make up any information that is not part of the audio and do not be verbose.
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json
.
Ejecuta el comando siguiente en la terminal para crear o reemplazar este archivo en el directorio actual:
cat > request.json << 'EOF' { "contents": { "role": "USER", "parts": [ { "fileData": { "fileUri": "FILE_URI", "mimeType": "MIME_TYPE" } }, { "text": "TEXT" } ] } } EOF
Luego, ejecuta el siguiente comando para enviar tu solicitud de REST:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/global/publishers/google/models/gemini-2.0-flash:generateContent"
PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado request.json
.
Ejecuta el comando siguiente en la terminal para crear o reemplazar este archivo en el directorio actual:
@' { "contents": { "role": "USER", "parts": [ { "fileData": { "fileUri": "FILE_URI", "mimeType": "MIME_TYPE" } }, { "text": "TEXT" } ] } } '@ | Out-File -FilePath request.json -Encoding utf8
Luego, ejecuta el siguiente comando para enviar tu solicitud de REST:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/global/publishers/google/models/gemini-2.0-flash:generateContent" | Select-Object -Expand Content
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
Ten en cuenta lo siguiente en la URL para esta muestra:- Usa el método
generateContent
para solicitar que la respuesta se muestre después de que se haya generado por completo. Para reducir la percepción de latencia a un público humano, transmite la respuesta a medida que se genera; para ello, usa el métodostreamGenerateContent
. - El ID del modelo multimodal se encuentra al final de la URL antes del método
(por ejemplo,
gemini-2.0-flash
). Esta muestra también puede admitir otros modelos.
Transcripción de audio
A continuación, se muestra cómo usar un archivo de audio para transcribir una entrevista. Para habilitar la comprensión de marcas de tiempo para archivos de solo audio, habilita el parámetro audioTimestamp
en GenerationConfig
.
Console
Para enviar una instrucción multimodal con la Google Cloud consola, haz lo siguiente:En la sección Vertex AI de la Google Cloud consola, ve a la página Vertex AI Studio.
Haz clic en Crear mensaje.
Opcional: Configura el modelo y los parámetros:
- Modelo: Selecciona un modelo.
Opcional: Para configurar parámetros avanzados, haz clic en Avanzada y establece la configuración de la siguiente manera:
Haz clic para expandir las configuraciones avanzadas
K superior: Usa el control deslizante o el cuadro de texto con el fin de ingresar un valor para K superior.
K superior cambia la manera en que el modelo selecciona tokens para la salida. K superior a1
significa que el siguiente token seleccionado es el más probable entre todos los tokens en el vocabulario del modelo (también llamado decodificación voraz), mientras que el K superior a3
significa que el siguiente token se selecciona de los tres tokens más probables mediante la temperatura.Para cada paso de selección de tokens, se muestran los tokens de K superior con las probabilidades más altas. Luego, los tokens se filtran según el superior con el token final seleccionado mediante el muestreo de temperatura.
Especifica un valor más bajo para respuestas menos aleatorias y un valor más alto para respuestas más aleatorias.
- P superior: Usa el control deslizante o el cuadro de texto con el fin de ingresar un valor de P superior.
Los tokens se seleccionan del más probable al menos hasta que la suma de sus probabilidades sea igual al valor de P superior. Para obtener los resultados menos variables, establece top-P como
0
. - Respuestas máximas: Usa el control deslizante o el cuadro de texto para ingresar un valor para la cantidad de respuestas que se generarán.
- Respuestas de transmisión: Habilita esta opción para imprimir las respuestas a medida que se generan.
- Umbral del filtro de seguridad: Selecciona el umbral de probabilidad de ver respuestas que podrían ser dañinas.
- Habilitar fundamentos: Los fundamentos no son compatibles con las instrucciones multimodales.
- Región: selecciona la región que deseas usar.
- Temperatura: Usa el control deslizante o el cuadro de texto para ingresar un valor de temperatura.
The temperature is used for sampling during response generation, which occurs when
andtopP
topK
are applied. Temperature controls the degree of randomness in token selection. Lower temperatures are good for prompts that require a less open-ended or creative response, while higher temperatures can lead to more diverse or creative results. A temperature of0
means that the highest probability tokens are always selected. In this case, responses for a given prompt are mostly deterministic, but a small amount of variation is still possible.If the model returns a response that's too generic, too short, or the model gives a fallback response, try increasing the temperature.
</li> <li>**Output token limit**: Use the slider or textbox to enter a value for the max output limit. Maximum number of tokens that can be generated in the response. A token is approximately four characters. 100 tokens correspond to roughly 60-80 words.Specify a lower value for shorter responses and a higher value for potentially longer responses.
</li> <li>**Add stop sequence**: Optional. Enter a stop sequence, which is a series of characters that includes spaces. If the model encounters a stop sequence, the response generation stops. The stop sequence isn't included in the response, and you can add up to five stop sequences.</li> </ul>
Haz clic en Insertar medios y selecciona una fuente para tu archivo.
Subir
Selecciona el archivo que quieras subir y haz clic en Abrir.
Por URL
Ingresa la URL del archivo que quieres usar y haz clic en Insertar.
Cloud Storage
Selecciona el bucket y, luego, el archivo del bucket que deseas importar y haz clic en Seleccionar.
Google Drive
- Elige una cuenta y da consentimiento a Vertex AI Studio para acceder a tu cuenta la primera vez que selecciones esta opción. Puedes subir varios archivos con un tamaño total de hasta 10 MB. Un solo archivo no puede superar los 7 MB.
- Haz clic en el archivo que quieras agregar.
Haz clic en Seleccionar.
La miniatura del archivo se muestra en el panel Instrucción. También se muestra la cantidad total de tokens. Si los datos de la instrucción superan el límite de tokens, los tokens se truncan y no se incluyen en el procesamiento de tus datos.
Ingresa tu mensaje de texto en el panel Mensaje.
Opcional: Para ver el ID de token a texto y los IDs de token, haz clic en el recuento de tokens en el panel Instrucción.
Haz clic en Enviar.
Opcional: Para guardar la instrucción en Mis instrucciones, haz clic en
Guardar.Opcional: Para obtener el código de Python o un comando curl para tu instrucción, haz clic en
Compilar con código > Obtener código.
Python
Instalar
pip install --upgrade google-genai
Para obtener más información, consulta la documentación de referencia del SDK.
Establece variables de entorno para usar el SDK de IA generativa con Vertex AI:
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_VERTEXAI=True
Go
Obtén información para instalar o actualizar Go.
Para obtener más información, consulta la documentación de referencia del SDK.
Establece variables de entorno para usar el SDK de IA generativa con Vertex AI:
# Replace the `GOOGLE_CLOUD_PROJECT` and `GOOGLE_CLOUD_LOCATION` values # with appropriate values for your project. export GOOGLE_CLOUD_PROJECT=GOOGLE_CLOUD_PROJECT export GOOGLE_CLOUD_LOCATION=global export GOOGLE_GENAI_USE_VERTEXAI=True
REST
Después de configurar tu entorno, puedes usar REST para probar una instrucción de texto. En el siguiente ejemplo, se envía una solicitud al extremo del modelo de publicador.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
PROJECT_ID
: El ID del proyecto.FILE_URI
: Es el URI o la URL del archivo que se incluirá en la instrucción. Los valores aceptables son los siguientes:- URI del bucket de Cloud Storage: El objeto debe poder leerse de forma pública o residir en el mismo proyecto Google Cloud que envía la solicitud. Para
gemini-2.0-flash
ygemini-2.0-flash-lite
, el límite de tamaño es de 2 GB. - URL HTTP: La URL del archivo debe ser legible públicamente. Puedes especificar un archivo de video, un archivo de audio y hasta 10 archivos de imagen por solicitud. Los archivos de audio, los archivos de video y los documentos no pueden superar los 15 MB.
- URL del video de YouTube: El video de YouTube debe ser propiedad de la cuenta que usaste para acceder a la Google Cloud consola o ser público. Solo se admite una URL de video de YouTube por solicitud.
Cuando especifiques un
fileURI
, también debes especificar el tipo de medio (mimeType
) del archivo. Si los Controles del servicio de VPC están habilitados, no se admite la especificación de una URL de archivo multimedia parafileURI
.Si no tienes un archivo de audio en Cloud Storage, puedes usar el siguiente archivo disponible de forma pública:
gs://cloud-samples-data/generative-ai/audio/pixel.mp3
con un tipo de MIME deaudio/mp3
. Para escuchar este audio, abre el archivo MP3 de muestra.- URI del bucket de Cloud Storage: El objeto debe poder leerse de forma pública o residir en el mismo proyecto Google Cloud que envía la solicitud. Para
MIME_TYPE
El tipo de medio del archivo especificado en los camposdata
ofileUri
. Los valores aceptables son los siguientes:Haz clic para expandir los tipos de MIME.
application/pdf
audio/mpeg
audio/mp3
audio/wav
image/png
image/jpeg
image/webp
text/plain
video/mov
video/mpeg
video/mp4
video/mpg
video/avi
video/wmv
video/mpegps
video/flv
Las instrucciones de texto que se incluirán en el mensaje. Por ejemplo,TEXT
Can you transcribe this interview, in the format of timecode, speaker, caption. Use speaker A, speaker B, etc. to identify speakers.
Para enviar tu solicitud, elige una de estas opciones:
curl
Guarda el cuerpo de la solicitud en un archivo llamado request.json
.
Ejecuta el comando siguiente en la terminal para crear o reemplazar este archivo en el directorio actual:
cat > request.json << 'EOF' { "contents": { "role": "USER", "parts": [ { "fileData": { "fileUri": "FILE_URI", "mimeType": "MIME_TYPE" } }, { "text": "TEXT" } ] }, "generatationConfig": { "audioTimestamp": true } } EOF
Luego, ejecuta el siguiente comando para enviar tu solicitud de REST:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/global/publishers/google/models/gemini-2.0-flash:generateContent"
PowerShell
Guarda el cuerpo de la solicitud en un archivo llamado request.json
.
Ejecuta el comando siguiente en la terminal para crear o reemplazar este archivo en el directorio actual:
@' { "contents": { "role": "USER", "parts": [ { "fileData": { "fileUri": "FILE_URI", "mimeType": "MIME_TYPE" } }, { "text": "TEXT" } ] }, "generatationConfig": { "audioTimestamp": true } } '@ | Out-File -FilePath request.json -Encoding utf8
Luego, ejecuta el siguiente comando para enviar tu solicitud de REST:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/global/publishers/google/models/gemini-2.0-flash:generateContent" | Select-Object -Expand Content
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
Ten en cuenta lo siguiente en la URL para esta muestra:- Usa el método
generateContent
para solicitar que la respuesta se muestre después de que se haya generado por completo. Para reducir la percepción de latencia a un público humano, transmite la respuesta a medida que se genera; para ello, usa el métodostreamGenerateContent
. - El ID del modelo multimodal se encuentra al final de la URL antes del método
(por ejemplo,
gemini-2.0-flash
). Esta muestra también puede admitir otros modelos.
Cómo establecer parámetros del modelo opcionales
Cada modelo tiene un conjunto de parámetros opcionales que puedes establecer. Para obtener más información, consulta Parámetros de generación de contenido.
Limitaciones
Si bien los modelos multimodales de Gemini son potentes en muchos casos de usuarios multimodales, es importante comprender las limitaciones de los modelos:
- Reconocimiento de sonido sin voz: los modelos que admiten audio pueden cometer errores que reconozcan un sonido que no es una voz.
- Marcas de tiempo de solo audio: Para generar marcas de tiempo con exactitud para archivos de solo audio, debes configurar el parámetro
audio_timestamp
engeneration_config
.
¿Qué sigue?
- Comienza a compilar con los modelos multimodales de Gemini: Los clientes nuevos obtienen $300 en créditos Google Cloud gratuitos para explorar lo que pueden hacer con Gemini.
- Aprende a enviar solicitudes de mensaje de chat.
- Obtén información sobre las prácticas recomendadas de IA responsable y los filtros de seguridad de Vertex AI.