Lyria
Generering af musik fra tekst med én til otte ønskede klip og synkron levering af resultatet.
Om modellen
Denne beskrivelse dækker modellens funktioner. Tilgængelige input, output og indstillinger i Ailoot står nedenfor for den valgte metode.
google/lyria skaber musik fra en skriftlig prompt via /v1/music/generations. En konkret anvendelse er at bede om afdæmpet instrumental baggrundsmusik til en produktdemonstration med beskrivelse af de fremtrædende instrumenter og den plads, fortællerstemmen har brug for. Vælg ruten, når det ønskede resultat er et genereret musikklip.
Forespørgslen kræver model og prompt. Feltet n eller count accepterer ét til otte klip, og metoden returnerer genereringsresultatet synkront. Gem alle returnerede klip og deres faktiske metadata. Profilen har hverken lydreferenceinput, varighedsindstilling eller tempofelt som selvstændigt valgbare styringsmuligheder. Beskriv den musikalske hensigt i prompten uden at behandle den som en garanteret målt egenskab ved output.
Ailoot · Musik POST /v1/music/generations google/lyria
google/lyriaStart
Generering af musik fra tekst med én til otte ønskede klip og synkron levering af resultatet.
- Accepterede input
- Tekst
- Resultater
- music
Tilgængelig i Ailoot · input og metoder
Ailoot · Musik POST /v1/music/generations
- Inputtyper
text- Outputtyper
music- Outputformat
- komplette lydklip, du ejer, / JSON-links
| Felt | Type | Krav | Værdier og grænser | Standard |
|---|---|---|---|---|
Feltmodel | Typestring | KravPåkrævet | Værdier og grænser google/lyria | Standard— |
Feltprompt | Typestring | KravPåkrævet | Værdier og grænser Minimumslængde: 1 | Standard— |
Feltn | Typeinteger | KravValgfrit | Værdier og grænser Minimum: 1 Maksimum: 8 | Standard1 |
Feltcount | Typeinteger | KravValgfrit | Værdier og grænser Minimum: 1 Maksimum: 8 Betingelser: Hvis n også angives, skal antallet stemme overens | Standard— |
Kombinationer af inputmaterialer
text_to_music · Påkrævet: prompt
Metodeparametre og livscyklus
| Parameter | Kontrakt |
|---|---|
Parametermaterial_types | Kontrakttext |
Parameterrequired | Kontraktnull |
Parameteroptional_controls | Kontraktnull |
Livscyklus: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · det faktisk returnerede task_id eller posten i mediebiblioteket
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
Metodernes strukturer og ID’er er præcise; leverandørens muligheder er adskilt fra adgangstilladelse.
Priser
Ailoot-metodetakster
POST /v1/music/generations- Output
- 0,08 US$ pr. klip
- Kun reference · lægges ikke til
- 0,08 US$ pr. anmodning
Leverede klip × grundpris pr. klip. Referenceprisen pr. anmodning lægges ikke til. Eksempler før gældende justeringer.
1 × 0,08 US$ = 0,08 US$
4 × 0,08 US$ = 0,32 US$
Ailoot reserverer et estimeret beløb før en anmodning. Efter resultatet afregnes det endelige beløb ud fra det målte forbrug. Ved streaming bruges den endelige forbrugsregistrering til afregningen. Sådan fungerer reservation og afregning →
Eksempelanmodninger
Ailoot · Musik
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
Hent og gem resultater
Ailoot · Musik
komplette lydklip, du ejer, / JSON-links
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Behold alle færdige resultater
Gem hvert fuldstændigt returneret svar, hver fil og hver indholdsdel.
Gem eller hent hvert returneret klip, og bevar det faktiske ID, MIME og metadata. Metoden er synkron; der indføres ingen særskilt generationpollingURL til musikgenerering i Ailoot.
Hvis det oprindelige svar skal kontrolleres
Hvis et musikresultat kræver kontrol, skal du beholde det oprindelige operation_id/X-Client-Request-ID og de returnerede klipoplysninger. Gendan eksisterende klip, du ejer, via mediebiblioteket med faktiske task_id- eller asset_id-værdier. Indsend ikke musikforespørgslen igen, og konstruér ikke en URL til statusforespørgsler om genereringen ud fra operation_id.
Svarfelter
| Felt | Type |
|---|---|
Feltmodel | Typestring |
Feltresponse_id | Typestring |
Feltdata[] | Typeowned clip record |
Fejl og næste trin
| Svar | Betingelse | Næste trin |
|---|---|---|
Svar400 · invalid_request_error | BetingelseUgyldige obligatoriske felter, materialerepræsentation eller parameterværdi | Næste trinRet de angivne felter før en ny oprettelsesanmodning. |
Svarserver_error | BetingelseDet returnerede svar angiver, at operationen eller resultatet skal kontrolleres | Næste trinGem det oprindeligt returnerede operations-/opgave-ID, anmodningens headere og svaret; fortsæt med de understøttede læseanmodninger for den oprindelige operation. Send ikke oprettelsesanmodningen igen. |
Aliaser
Modelaliaser
Ailoot google/lyria
Aliaser for metodestier
Brug metodestierne vist ovenfor.
Relaterede kalder-ID’er
FAQ · Lyria
- Hvilke input og resultater er tilgængelige?
POST /v1/music/generations·google/lyria:text→music- Hvilke felter bruger anmodningen?
POST /v1/music/generations·google/lyria:model,prompt,n,count- Hvilke grænser gælder?
POST /v1/music/generations·google/lyria:n.minimum:1;n.maximum:8;count.minimum:1;count.maximum:8