Lyria
Muzikos generavimas iš teksto, prašant nuo vieno iki aštuonių įrašų su sinchroniniu rezultato pateikimu.
Apie modelį
Šis aprašas apima modelio galimybes. Pasirinktam metodui Ailoot prieinamos įvestys, išvestys ir parinktys nurodytos toliau.
google/lyria kuria muziką iš rašytinės užklausos per /v1/music/generations. Konkretus naudojimas — paprašyti santūraus instrumentinio fono produkto demonstracijai, aprašant pagrindinius instrumentus ir pasakojimui reikalingą erdvę. Šį maršrutą rinkitės, kai norimas rezultatas yra sugeneruotas muzikos įrašas.
Užklausai privalomi model ir prompt. n ar count valdiklis priima nuo vieno iki aštuonių įrašų, o metodas generavimo rezultatą grąžina sinchroniškai. Išsaugokite kiekvieną grąžintą įrašą ir tikrus jo metaduomenis. Šis įrašas neturi garso pavyzdžio įvesties, trukmės nustatymo ar tempo lauko, todėl jų negalima pasirinkti kaip atskirų valdiklių. Muzikinį sumanymą aprašykite užklausoje, nelaikydami jo garantuota išmatuota išvesties savybe.
Ailoot · Muzika POST /v1/music/generations google/lyria
google/lyriaPradžia
Muzikos generavimas iš teksto, prašant nuo vieno iki aštuonių įrašų su sinchroniniu rezultato pateikimu.
- Leidžiamos įvestys
- Tekstas
- Rezultatai
- music
Prieinama Ailoot · įvestys ir metodai
Ailoot · Muzika POST /v1/music/generations
- Įvestis
text- Išvestis
music- Išvesties formatas
- visi jums priklausantys garso klipai / JSON nuorodos
| Laukas | Tipas | Reikalavimas | Reikšmės ir ribos | Numatyta |
|---|---|---|---|---|
Laukasmodel | Tipasstring | ReikalavimasPrivaloma | Reikšmės ir ribos google/lyria | Numatyta— |
Laukasprompt | Tipasstring | ReikalavimasPrivaloma | Reikšmės ir ribos Mažiausias ilgis: 1 | Numatyta— |
Laukasn | Tipasinteger | ReikalavimasNeprivaloma | Reikšmės ir ribos Mažiausia reikšmė: 1 Didžiausia reikšmė: 8 | Numatyta1 |
Laukascount | Tipasinteger | ReikalavimasNeprivaloma | Reikšmės ir ribos Mažiausia reikšmė: 1 Didžiausia reikšmė: 8 Sąlygos: Jei pateiktas ir n, kiekis turi sutapti | Numatyta— |
Įvesties medžiagos deriniai
text_to_music · Privaloma: prompt
Metodo parametrai ir gyvavimo ciklas
| Parametras | Specifikacija |
|---|---|
Parametrasmaterial_types | Specifikacijatext |
Parametrasrequired | Specifikacijanull |
Parametrasoptional_controls | Specifikacijanull |
Gyvavimo ciklas: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · faktiškai grąžinta task_id reikšmė arba medijos bibliotekos įrašas
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Metodų struktūros ir ID yra tikslūs; tiekėjo galimybės yra atskirtos nuo užklausos priėmimo.
Planai
Ailoot metodų įkainiai
POST /v1/music/generations- Išvestis
- 0,08 USD už klipą
- Tik nuoroda · nepridedama
- 0,08 USD už užklausą
Pateikti klipai × bazinė klipo kaina. Referencinė užklausos kaina nepridedama. Pavyzdžiai prieš taikomus koregavimus.
1 × 0,08 USD = 0,08 USD
4 × 0,08 USD = 0,32 USD
Ailoot prieš užklausą rezervuoja numatomą sumą. Gavus rezultatą, galutinis mokestis nuskaitomas pagal išmatuotą naudojimą. Srautinio atsakymo atsiskaitymui naudojamas galutinis naudojimo įrašas. Kaip veikia rezervavimas ir atsiskaitymas →
Užklausų pavyzdžiai
Ailoot · Muzika
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
Gauti ir išsaugoti rezultatus
Ailoot · Muzika
visi jums priklausantys garso klipai / JSON nuorodos
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Išsaugoti visus baigtus rezultatus
Išsaugokite kiekvieną visą grąžintą atsakymą, failą ir turinio dalį.
Išsaugokite arba gaukite kiekvieną grąžintą garso klipą ir išsaugokite tikrąjį ID, MIME ir metaduomenis. Metodas sinchroninis; atskiras Ailoot muzikos generavimo būsenos tikrinimo URL neįvedamas.
Jei reikia patikrinti pradinį atsakymą
Jei muzikos rezultatą reikia patikrinti, išsaugokite pradinius operation_id/X-Client-Request-ID ir grąžintą klipų informaciją. Jau sukurtus jums priklausančius klipus atkurkite per medijos biblioteką pagal tikras task_id arba asset_id reikšmes. Neteikite muzikos užklausos dar kartą ir iš operation_id nekurkite generavimo būsenos tikrinimo URL.
Atsakymo laukai
| Laukas | Tipas |
|---|---|
Laukasmodel | Tipasstring |
Laukasresponse_id | Tipasstring |
Laukasdata[] | Tipasowned clip record |
Klaidos ir tolesni veiksmai
| Atsakymas | Sąlyga | Kitas žingsnis |
|---|---|---|
Atsakymas400 · invalid_request_error | SąlygaNetinkami privalomi laukai, medžiagos pateikimo forma arba parametro reikšmė | Kitas žingsnisPrieš naują kūrimo užklausą pataisykite nurodytus laukus. |
Atsakymasserver_error | SąlygaGrąžintame atsakyme nurodoma, kad operaciją arba rezultatą reikia patikrinti | Kitas žingsnisIšsaugokite pradinį grąžintą operacijos ar užduoties ID, užklausos antraštes ir atsakymą; toliau tikrinkite tos pačios pradinės operacijos duomenis palaikomais būdais. Kūrimo užklausos pakartotinai neteikite. |
Pseudonimai
Modelių pseudonimai
Ailoot google/lyria
Metodų kelių pseudonimai
Naudokite aukščiau nurodytus metodų kelius.
Susiję ID iškvietimui
FAQ · Lyria
- Kokios įvestys ir rezultatai prieinami?
POST /v1/music/generations·google/lyria:text→music- Kokius laukus naudoja užklausa?
POST /v1/music/generations·google/lyria:model,prompt,n,count- Kokie apribojimai taikomi?
POST /v1/music/generations·google/lyria:n.minimum:1;n.maximum:8;count.minimum:1;count.maximum:8