Перейти к основному содержанию
Генерация музыки от 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.
Полная документация API: Генерация медиа

Обзор

ХарактеристикаProClip
ID моделиgoogle/lyria-3-pro-previewgoogle/lyria-3-clip-preview
ЭндпоинтPOST /api/v1/mediaPOST /api/v1/media
Формат результатаMP3MP3
Стоимость клиенту8 ₽ / трек (фикс.)4 ₽ / трек (фикс.)
Себестоимость$0.08$0.04
Max prompt5 000 символов5 000 символов
Изображения-референсыопциональноопционально
Async
Цена фиксированная за генерацию (flat pricing), не зависит от длины — как у Suno.

Возможности

Text-to-Music

Создание трека по текстовому описанию

Изображения-референсы

Опционально: до нескольких картинок-референсов стиля

Фикс-цена

8 ₽ за Pro-трек, 4 ₽ за Clip — независимо от длины

Async-режим

Для длинных генераций — синхронный или асинхронный через taskId

Примеры запросов

Простой запрос (синхронный)

const response = await fetch('https://polza.ai/api/v1/media', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer <POLZA_AI_API_KEY>',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    model: 'google/lyria-3-pro-preview',
    input: {
      prompt: 'Спокойная инструментальная музыка для медитации, мягкое пиано'
    },
    async: false
  })
});

const result = await response.json();
console.log('ID генерации:', result.id);
console.log('Трек:', result.data[0].url);
console.log('Длительность:', result.data[0].duration);

С изображениями-референсами

const response = await fetch('https://polza.ai/api/v1/media', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer <POLZA_AI_API_KEY>',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    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' }
      ]
    }
  })
});

Параметры

ПараметрТипОбязательныйОписание
modelstringДаgoogle/lyria-3-pro-preview или google/lyria-3-clip-preview
input.promptstringДаОписание трека, до 5000 символов
input.imagesarrayНетИзображения-референсы (URL или base64)
callBackUrlstringНетURL для callback по завершении генерации
asyncbooleanНетАсинхронный режим (по умолчанию false)

Параметры, которые отклоняются для Lyria

Lyria — не Suno-модель, поэтому следующие параметры вернут ошибку 400:
  • uploadUrlList
  • customMode, instrumental
  • style, title
  • negativeTags, vocalGender
  • styleWeight, weirdnessConstraint, audioWeight
  • personaId, version
  • soundLoop, soundTempo, soundKey
  • grabLyrics
Для этих параметров используйте Suno-модели (suno/generate, suno/mashup, suno/sounds) — они принимают полный набор Suno-параметров.

Советы и лучшие практики

Pro — полноценный трек (8 ₽). Clip — короткий клип (4 ₽). Clip дешевле, но короче. Если нужна длинная композиция с развитием — берите Pro.
Описывайте жанр, настроение, инструменты и темп: «Меланхоличная акустическая баллада с гитарой и скрипкой, медленный темп». Lyria хорошо работает с конкретными стилевыми указаниями.
Используйте 1–2 изображения, чтобы задать визуальный стиль трека. Это работает как настроенческий якорь для модели.
Pro-треки генерируются дольше. Используйте async: true и опрашивайте статус через GET /v1/media/{id}, чтобы не держать HTTP-соединение.

Асинхронная генерация

Генерация музыки — асинхронный процесс. После отправки запроса с async: true вы получите id, который нужно использовать для проверки статуса:
1

Отправка запроса

POST /api/v1/media с "async": true возвращает id генерации и status: "pending"
2

Проверка статуса

GET /v1/media/{id} возвращает текущий статус: pending, processing, completed, failed, cancelled
3

Получение результата

Когда статус completed, в ответе будут URL аудиофайла, обложка, название и длительность трека

Схема ответа

Синхронный успех (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.polza.ai/tracks/abc.mp3",
      "thumbnail_url": "https://storage.polza.ai/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.

Следующие шаги

Статус генерации

Проверка статуса генерации медиа

Suno Music

Альтернативный движок с вокалом, custom mode и расширенными параметрами