API de Lyria

Lyria es un nuevo modelo base para la generación de audio de alta calidad, capaz de crear paisajes sonoros y piezas musicales diversos a partir de peticiones de texto. Lyria permite a los usuarios generar música instrumental de alta calidad a partir de peticiones de texto.

Para explorar este modelo en la consola, consulta la tarjeta del modelo Lyria en Model Garden (a la que se puede acceder mediante la pestaña Media Studio).

Probar Lyria en Vertex AI (Vertex AI Studio)

Probar Lyria en Colab

Modelos admitidos

La API Lyria admite el siguiente modelo:

  • lyria-002

Solicitud HTTP

curl -X POST \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
  https://LOCATION[-aiplatform.googleapis.com/v1/projects/](https://-aiplatform.googleapis.com/v1/projects/)PROJECT_ID/locations/LOCATION/publishers/google/models/lyria-002:predict \
  -d '{
    "instances": [
      {
        "prompt": "string",
        "negative_prompt": "string", // Optional
        "seed": 0 // Optional. Cannot be used with sample_count.
      }
    ],
    "parameters": {
      "sample_count": 1 // Optional. Cannot be used with seed.
    }
  }'

Usa los siguientes parámetros para el modelo Lyria. Para obtener más información, consulta los detalles de la tarjeta Lyria Model Garden.

Parámetro

prompt

(en el objeto instances)

string

Obligatorio. La descripción de texto en inglés de EE. UU. (en-us) del audio que se va a generar.

Ejemplo: "Una canción electrónica de baile enérgica con un tempo rápido".

negative_prompt

(en el objeto instances)

string

Opcional. Una descripción de lo que se debe excluir del audio generado.

Ejemplo: "vocals, slow tempo" ("voces, tempo lento")

seed

(en el objeto instances)

integer

Opcional. Una semilla para la generación determinista. Si se proporciona, el modelo intentará producir el mismo audio con la misma petición y otros parámetros.

No se puede usar con sample_count en la misma solicitud.

Ejemplo: 12345

sample_count

(en el objeto parameters)

integer

Opcional. Número de muestras de audio que se van a generar. El valor predeterminado es 1 si no se especifica y no se usa ninguna semilla.

No se puede usar con seed en la misma solicitud.

Ejemplo: 2

Solicitud de ejemplo

Usa la siguiente solicitud para generar música instrumental a partir de una petición de texto:

Solicitud de generación de texto a música

curl

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://us-central1-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/us-central1/publishers/google/models/lyria-002:predict \
-d '{
  "instances": [
    {
      "prompt": "A calm acoustic folk song with a gentle guitar melody and soft strings.",
      "negative_prompt": "drums, electric guitar",
      "seed": 98765
    }
  ],
  "parameters": {}
}'

JSON

En este ejemplo se usa seed para obtener resultados reproducibles.


{
  "instances": [
    {
      "prompt": "A calm acoustic folk song with a gentle guitar melody and soft strings.",
      "negative_prompt": "drums, electric guitar",
      "seed": 98765
    }
  ],
  "parameters": {}
}

JSON con sample_count

En este ejemplo se usa sample_count para generar varias muestras.

Para probar una petición de texto con la API Lyria, envía una solicitud POST al endpoint del modelo de la editorial. En el siguiente ejemplo se omite seed del objeto instances y se usa sample_count en el objeto parameters para generar varias muestras.


{
  "instances": [
    {
      "prompt": "A calm acoustic folk song with a gentle guitar melody and soft strings.",
      "negative_prompt": "drums, electric guitar"
    }
  ],
  "parameters": {
    "sample_count": 2
  }
}

Cuerpo de la respuesta

Si la solicitud se realiza correctamente, se devuelve un objeto JSON que contiene los datos de audio generados. Cada clip de audio generado tiene una duración de 30 segundos y se proporciona como un archivo de audio WAV con una frecuencia de muestreo de 48 kHz.

{
  "predictions": [
    {
      "audioContent": "BASE64_ENCODED_WAV_STRING_SAMPLE_1",
      "mimeType": "audio/wav"
    }
    // Additional audio samples will be listed here if sample_count > 1
    // e.g.,
    //{"audioContent": "BASE64_ENCODED_WAV_STRING_SAMPLE_2",
    // "mimeType": "audio/wav"
    //}
  ],
  "deployedModelId": "xxxxxxxxxxxxxxx", // Actual ID may vary based on deployment
  "model": "projects/PROJECT_ID/locations/LOCATION/publishers/google/models/lyria-002",
  "modelDisplayName": "Lyria 2"
}
Elemento de respuesta
predictions

array

Matriz de muestras de audio generadas. Cada objeto de la matriz representa un clip de audio.

predictions[].audioContent

string

Cadena codificada en Base64 de los datos de audio WAV generados.

predictions[].mimeType

string

El tipo MIME de los datos de audio. En el caso de Lyria, es "audio/wav".

deployedModelId

string

ID del modelo desplegado que ha procesado la solicitud (si procede para el tipo de endpoint).

model

string

Nombre de recurso completo del modelo que ha procesado la solicitud.

modelDisplayName

string

Nombre visible del modelo.

Prácticas recomendadas y limitaciones

Consulta la tarjeta del modelo Lyria para obtener información detallada sobre las prácticas recomendadas para las peticiones, los idiomas admitidos (solo inglés de EE. UU. para las peticiones), los tiempos de generación, el formato de salida (WAV, 48 kHz, clips instrumentales de 30 segundos), las medidas de seguridad y la información de implementación.

Puntos clave:

  • Peticiones detalladas: suelen dar mejores resultados de audio.
  • Especifica: género, estado de ánimo, instrumentación, tempo.
  • Peticiones negativas: usa negative_prompt para excluir elementos.
  • Resultado: clips de audio WAV de 30 segundos, 48 kHz, solo instrumental.
  • Seguridad: se aplican filtros de seguridad de contenido, comprobaciones de recitación, comprobaciones de la intención del artista y marcas de agua de SynthID.

Precios

El uso de Lyria 2 se factura a 0,06 USD por cada 30 segundos de música generada. Para obtener más información, consulta los precios de Vertex AI.

Más información

  • Consulta más información sobre Generative AI en Vertex AI.
  • Para obtener una descripción general de Lyria, consulta su tarjeta de modelo disponible en Model Garden (Media Studio).

Siguientes pasos