Lyria
Birdan sakkiztagacha klip so‘rash va natijani sinxron olish bilan matndan musiqa yaratish.
Model haqida
Bu tavsif model imkoniyatlarini yoritadi. Ailoot da tanlangan usul uchun mavjud kirish, chiqish va parametrlar quyida keltirilgan.
google/lyria /v1/music/generations orqali yozma promptdan musiqa yaratadi. Masalan, mahsulot namoyishi uchun sokin cholg‘u fonini so‘rab, asosiy asboblar va hikoyachi ovoziga kerakli bo‘shliqni tasvirlang. Kerakli natija yaratilgan musiqa klipi bo‘lsa, shu yo‘lni tanlang.
So‘rovda model va prompt majburiy. n yoki count birdan sakkiztagacha klipni qabul qiladi; natija sinxron qaytariladi. Har bir klip va haqiqiy metama’lumotini saqlang. Audio namuna kirishi, davomiylik sozlamasi yoki temp maydoni yo‘q, ularni mustaqil tanlab bo‘lmaydi. Musiqiy maqsadni promptda yozing, ammo chiqishning o‘lchangan xususiyati kafolati deb qaramang.
Ailoot · Musiqa POST /v1/music/generations google/lyria
google/lyriaBoshlash
Birdan sakkiztagacha klip so‘rash va natijani sinxron olish bilan matndan musiqa yaratish.
- Qabul qilinadigan kirish ma’lumotlari
- Matn
- Natijalar
- music
Ailoot da mavjud · kirish ma’lumotlari va usullar
Ailoot · Musiqa POST /v1/music/generations
- Kirish
text- Chiqish
music- Chiqish formati
- egalik qilinadigan to‘liq audio kliplar / JSON havolalar
| Maydon | Tur | Talab | Qiymatlar va cheklovlar | Standart |
|---|---|---|---|---|
Maydonmodel | Turstring | TalabMajburiy | Qiymatlar va cheklovlar google/lyria | Standart— |
Maydonprompt | Turstring | TalabMajburiy | Qiymatlar va cheklovlar Eng kam uzunlik: 1 | Standart— |
Maydonn | Turinteger | TalabIxtiyoriy | Qiymatlar va cheklovlar Eng kam: 1 Eng ko‘p: 8 | Standart1 |
Maydoncount | Turinteger | TalabIxtiyoriy | Qiymatlar va cheklovlar Eng kam: 1 Eng ko‘p: 8 Shartlar: n ham berilsa, miqdorlar mos kelishi kerak | Standart— |
Kirish materiallari birikmalari
text_to_music · Majburiy: prompt
Usul parametrlari va hayot sikli
| Parametr | Parametr talablari |
|---|---|
Parametrmaterial_types | Parametr talablaritext |
Parametrrequired | Parametr talablarinull |
Parametroptional_controls | Parametr talablarinull |
Hayot sikli: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · Amalda qaytarilgan task_id yoki media kutubxonasidagi yozuv
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Metod tuzilishlari va IDlari aniq; yetkazib beruvchining imkoniyati so‘rovni qabul qilishga ruxsatdan alohida.
Tariflar
Ailoot usullari tariflari
POST /v1/music/generations- Chiqish
- 0,08 US$ klip uchun
- Faqat ma’lumot · qo‘shilmaydi
- 0,08 US$ har bir so‘rov uchun
Yetkazilgan kliplar × har klip uchun asosiy tarif. So‘rov uchun ma’lumot tarifi qo‘shilmaydi. Misollar tegishli tuzatishlardan oldin berilgan.
1 × 0,08 US$ = 0,08 US$
4 × 0,08 US$ = 0,32 US$
Ailoot so‘rovdan oldin taxminiy summani band qiladi. Natijadan keyin o‘lchangan sarf asosidagi yakuniy to‘lovni yechadi. Oqimli javob bo‘yicha yakuniy hisob-kitob yakuniy sarf yozuviga asoslanadi. Summani band qilish va to‘lovni hisoblash tartibi →
So‘rov namunalari
Ailoot · Musiqa
set -eu
: "${AILOOT_API_KEY:?Set your Ailoot API key}"
: "${AILOOT_PROMPT_FILE:?Set your actual UTF-8 music brief}"
export AILOOT_PROMPT_FILE
python3 - <<'PY_REQUEST'
import json,os
from pathlib import Path
p=json.loads('{"model": "google/lyria", "prompt": ""}')
f=Path(os.environ["AILOOT_PROMPT_FILE"])
if not f.is_file():raise SystemExit("Choose your actual UTF-8 brief")
p['prompt']=f.read_text(encoding="utf-8")
if not p['prompt'].strip():raise SystemExit("Brief must contain text")
Path("request.json").write_text(json.dumps(p,ensure_ascii=False))
PY_REQUEST
curl --fail-with-body --silent --show-error https://api.ailoot.ai/v1/music/generations \
-H "Authorization: Bearer $AILOOT_API_KEY" -H 'Content-Type: application/json' \
--data-binary @request.json -D response-headers.txt -o result.json
export AILOOT_API_KEY
python3 - <<'PY_RESULT'
import json, os, subprocess
from pathlib import Path
from urllib.parse import urljoin, urlparse
result=json.loads(Path("result.json").read_text(encoding="utf-8"))
print(json.dumps(result,ensure_ascii=False,indent=2))
for number,clip in enumerate(result.get("data") or []):
u=urlparse(urljoin("https://api.ailoot.ai",clip["url"]))
if u.scheme!="https" or not u.hostname or u.username or u.password:
raise SystemExit("Result URL must be HTTPS without embedded credentials")
owned=u.netloc=="api.ailoot.ai" and u.path.startswith("/v1/media/assets/") and u.path.endswith("/content")
args=["curl","--fail-with-body","--silent","--show-error",u.geturl()]
if owned: args += ["-H","Authorization: Bearer "+os.environ["AILOOT_API_KEY"]]
raw=subprocess.check_output(args)
ext="wav" if raw.startswith(b"RIFF") and raw[8:12]==b"WAVE" else "flac" if raw.startswith(b"fLaC") else "ogg" if raw.startswith(b"OggS") else "mp3" if raw.startswith(b"ID3") or raw[:1]==b"\xff" else "bin"
f=Path("music-"+str(number)+"."+ext);f.write_bytes(raw)
print("Saved",f,clip.get("asset_id"))
PY_RESULT
Natijalarni olish va saqlash
Ailoot · Musiqa
egalik qilinadigan to‘liq audio kliplar / JSON havolalar
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Barcha tayyor natijalarni saqlash
Qaytarilgan har bir to‘liq javob, fayl va kontent qismini saqlang.
Qaytarilgan har bir klipni saqlang/oling va haqiqiy ID, MIME hamda metama’lumotlarni saqlang. Usul sinxron ishlaydi; Ailoot da musiqa yaratish uchun alohida holatni so‘rash URL i kiritilmagan.
Asl javobni tekshirish kerak bo‘lsa
Musiqa natijasini tekshirish zarur bo‘lsa, dastlabki operation_id/X-Client-Request-ID va qaytarilgan klip ma’lumotlarini saqlang. Haqiqiy task_id yoki asset_id qiymatlari bilan media kutubxonasi orqali mavjud, egalik qilinadigan kliplarni tiklang. Musiqa so‘rovini qayta yubormang va operation_id dan yaratish holatini so‘rash URL ini tuzmang.
Javob maydonlari
| Maydon | Tur |
|---|---|
Maydonmodel | Turstring |
Maydonresponse_id | Turstring |
Maydondata[] | Turowned clip record |
Xatolar va keyingi qadamlar
| Javob | Shart | Keyingi qadam |
|---|---|---|
Javob400 · invalid_request_error | ShartMajburiy maydonlar, material ifodasi yoki parametr qiymati noto‘g‘ri | Keyingi qadamYangi yaratish so‘rovidan oldin ko‘rsatilgan maydonlarni tuzating. |
Javobserver_error | ShartQaytarilgan javob operatsiya yoki natijani tekshirish kerakligini bildiradi | Keyingi qadamDastlab qaytarilgan operatsiya/vazifa ID sini, so‘rov sarlavhalarini va javobni saqlang; aynan shu operatsiya uchun qo‘llab-quvvatlanadigan o‘qish so‘rovlarini davom ettiring. Yaratish so‘rovini qayta yubormang. |
Taxalluslar
Model taxalluslari
Ailoot google/lyria
Usul yo‘llari taxalluslari
Yuqorida ko‘rsatilgan usul yo‘llaridan foydalaning.
Chaqirish uchun tegishli ID lar
FAQ · Lyria
- Qanday kirish ma’lumotlari va natijalar mavjud?
POST /v1/music/generations·google/lyria:text→music- So‘rov qaysi maydonlardan foydalanadi?
POST /v1/music/generations·google/lyria:model,prompt,n,count- Qanday cheklovlar amal qiladi?
POST /v1/music/generations·google/lyria:n.minimum:1;n.maximum:8;count.minimum:1;count.maximum:8