Google Lyria 3
Генерация музыки с моделями Google Lyria 3 (Pro и Clip)
Google Lyria 3
Генерация музыки от Google - две модели: Lyria 3 Pro (полноценный трек) и Lyria 3 Clip (короткий клип). Принимают текстовое описание и опциональные изображения-референсы. Стоимость фиксированная за генерацию (flat pricing), не зависит от длины трека.
Lyria - не Suno-модель. Все Suno-специфичные параметры (customMode, instrumental, style, title, vocalGender, styleWeight, weirdnessConstraint, audioWeight, personaId, version, soundLoop, soundTempo, soundKey, grabLyrics, uploadUrlList, negativeTags) отклоняются с ошибкой 400.
Обзор
| Характеристика | Pro | Clip |
|---|---|---|
| ID модели | google/lyria-3-pro-preview | google/lyria-3-clip-preview |
| Эндпоинт | POST /v1/media | POST /v1/media |
| Формат результата | MP3 | MP3 |
| Стоимость клиенту | 8 ₽ / трек (фикс.) | 4 ₽ / трек (фикс.) |
| Max prompt | 5 000 символов | 5 000 символов |
| Изображения-референсы | опционально | опционально |
| Async | ✅ | ✅ |
Цена фиксированная за генерацию (flat pricing), не зависит от длины, как у Suno.
Возможности
Создание трека по текстовому описанию
Опционально: до нескольких картинок-референсов стиля
8 ₽ за Pro-трек, 4 ₽ за Clip - независимо от длины
Для длинных генераций: синхронный или асинхронный через taskId
Параметры
| Параметр | Тип | Обязательный | Описание |
|---|---|---|---|
model | string | Да | google/lyria-3-pro-preview или google/lyria-3-clip-preview |
input.prompt | string | Да | Описание трека, до 5000 символов |
input.images | array | Нет | Изображения-референсы (URL или base64) |
callBackUrl | string | Нет | URL для callback по завершении генерации |
async | boolean | Нет | Асинхронный режим (по умолчанию false) |
Параметры, которые отклоняются для Lyria
Lyria - не Suno-модель, поэтому следующие параметры вернут ошибку 400:
uploadUrlListcustomMode,instrumentalstyle,titlenegativeTags,vocalGenderstyleWeight,weirdnessConstraint,audioWeightpersonaId,versionsoundLoop,soundTempo,soundKeygrabLyrics
Для этих параметров используйте Suno-модели (suno/generate, suno/mashup, suno/sounds): они принимают полный набор Suno-параметров.
Примеры запросов
Простой запрос (синхронный)
curl -X POST "https://api.usellm.ru/v1/media" \
-H "Authorization: Bearer <USELLM_API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"model": "google/lyria-3-pro-preview",
"input": {
"prompt": "Спокойная инструментальная музыка для медитации, мягкое пиано"
},
"async": false
}'
С изображениями-референсами
curl -X POST "https://api.usellm.ru/v1/media" \
-H "Authorization: Bearer <USELLM_API_KEY>" \
-H "Content-Type: application/json" \
-d '{
"model": "google/lyria-3-clip-preview",
"input": {
"prompt": "Энергичный электронный трек в стиле synthwave, драйвовый бит",
"images": [
{"type": "url", "data": "https://example.com/reference-1.jpg"},
{"type": "url", "data": "https://example.com/reference-2.jpg"}
]
}
}'
Схема ответа
Синхронный успех (async: false)
{
"id": "gen_581761234567890123",
"object": "media.generation",
"status": "completed",
"created": 1703001234,
"completed_at": 1703001244,
"model": "google/lyria-3-pro-preview",
"data": [
{
"url": "https://storage.example.com/tracks/abc.mp3",
"thumbnail_url": "https://storage.example.com/covers/abc.jpeg",
"title": "Peaceful Meditation",
"duration": 198.44
}
],
"usage": { "output_units": 1, "cost": 8, "cost_rub": 8 }
}
В процессе генерации
{
"id": "gen_581761234567890123",
"object": "media.generation",
"status": "pending",
"created": 1703001234,
"model": "google/lyria-3-pro-preview"
}
Ошибка
{
"id": "gen_581761234567890123",
"object": "media.generation",
"status": "failed",
"created": 1703001234,
"model": "google/lyria-3-pro-preview",
"error": { "code": "<код>", "message": "<человекочитаемое описание>" }
}
Возможные значения status: pending, processing, completed, failed, cancelled. cost/cost_rub фиксированные: 8 ₽ для Pro, 4 ₽ для Clip.
Асинхронная генерация
Генерация музыки - асинхронный процесс. После отправки запроса с async: true вы получите id, который нужно использовать для проверки статуса:
- Отправка запроса: POST на
/v1/mediaс"async": trueвозвращаетidгенерации иstatus: "pending" - Проверка статуса - GET на
/v1/media/{id}возвращает текущий статус:pending,processing,completed,failed,cancelled - Получение результата: когда статус
completed, в ответе будут URL аудиофайла, обложка, название и длительность трека