Открыть в интерактивной справке · markdown для агентов: https://neuraldeep.ru/docs/music.md
Музыка · Music API
Генерация музыки тем же ключом, ручки под /v1/music/*. Модель Google Lyria 3 Pro: песня с вокалом по описанию стиля и тексту или инструментал, 48 кГц, mp3. Трек обычно готов секунд за 20–30.
Единица счёта — трек. Остаток видно в GET /v1/music/quota. На кошельке трек стоит 10 ₽. Списываются только готовые треки: упавшая задача квоту и деньги возвращает.
Как устроено. Всё асинхронно, формат свой, не OpenAI. POST /v1/music/generate создаёт задачу и сразу отвечает {"task_id": "...", "status": "queued", "poll": "/v1/music/tasks/..."}. Дальше опрашиваете GET /v1/music/tasks/{id}, пока status не станет succeeded или failed (по дороге queued и running). У готовой задачи есть tracks[] со ссылкой url. Файл забираете через GET /v1/music/tasks/{id}/result?index=0, пока трек не готов, эта ручка отвечает 409.
| ручка | что |
|---|---|
POST /v1/music/generate |
генерация, JSON |
GET /v1/music/tasks/{id} |
статус и трек |
GET /v1/music/tasks/{id}/result?index=0 |
трек файлом, по умолчанию mp3, другой формат задаёт audio_format: wav, wav32, flac, opus, aac |
GET /v1/music/quota |
остаток треков |
GET /v1/music/models |
доступные модели |
Что писать в запрос.
prompt: стиль словами — жанр, инструменты, настроение, тип вокала. Например «мрачный синтвейв, аналоговые синты, женский вокал».lyrics: текст песни, можно с разметкой[verse],[chorus],[bridge]. Для трека без голоса напишите[instrumental].vocal_language: язык вокала, напримерruилиen.audio_duration: желаемая длина в секундах, от 10 до 300. Это подсказка модели, точную длину она не гарантирует.bpm,key_scale,time_signature: темп, тональность, размер. Тоже подсказки.seed: повторить результат.
Поля вне списка отбрасываются молча. За раз одна песня, batch_size больше 1 даёт 422. Каверы, правка куска и отдельные дорожки сейчас недоступны.
id=$(curl -s https://api.neuraldeep.ru/v1/music/generate \
-H "Authorization: Bearer $YOUR_KEY" -H "Content-Type: application/json" \
-d '{"prompt":"инди-поп, акустическая гитара, тёплый женский вокал","lyrics":"[verse]\nПо лужам до утра\n[chorus]\nМы снова дома","vocal_language":"ru","audio_duration":90}' | jq -r .task_id)
curl https://api.neuraldeep.ru/v1/music/tasks/$id \
-H "Authorization: Bearer $YOUR_KEY"
curl "https://api.neuraldeep.ru/v1/music/tasks/$id/result?index=0" \
-H "Authorization: Bearer $YOUR_KEY" -o track.mp3
import time, httpx
H = {"Authorization": "Bearer $YOUR_KEY"}
job = httpx.post(
"https://api.neuraldeep.ru/v1/music/generate", headers=H,
json={"prompt": "весёлый поп-панк про кота, который ненавидит понедельники", "vocal_language": "ru"},
).json()
tid = job["task_id"]
for _ in range(120):
st = httpx.get(f"https://api.neuraldeep.ru/v1/music/tasks/{tid}", headers=H).json()
if st["status"] in ("succeeded", "failed"):
break
time.sleep(3)
audio = httpx.get(f"https://api.neuraldeep.ru/v1/music/tasks/{tid}/result?index=0", headers=H).content
open("track.mp3", "wb").write(audio)
Ошибки.
400: пустой запрос: нет ни описания, ни текста.402: на кошельке не хватает денег на трек.404: задачи с таким номером нет у вашего ключа или генерация не удалась.409: трек ещё не готов.422: недоступныйtask_type,batch_sizeбольше 1, файлы в запросе, параметр не того типа.429: кончилась квота (телоquota_exceeded, см. начало).503: генерация временно недоступна, повторите позже.
Разделы справки (markdown для агентов)
- Начало · ключ, ошибки, квоты
- Текст · чат
- Векторизация
- Реранжирование
- Транскрибация
- Распознавание картинок
- Structured output
- Клиенты · агенты
- Остатки лимитов · Limits API
- Поиск · Search API
- OCR · документы
- Картинки · Image API
- Музыка · Music API
- Анонимизация ПДн · PII Guard
- SpeechCore · STT
- Озвучка · TTS API
- Кто когда говорил · диаризация
- Решения по тексту · FRIDA-Decisions, clef-flash
- Drift · обзор
- Файлы + sandbox preview
- Свои tools, skills, MCP
- Задачи · proactive
- Память · memory
- Изоляция и безопасность
- Настройки агента
- Лимиты · ошибки
- Книга · поиск и MCP
- Стриминг
- SDK · Python / JS
- Приватность