Lyria
Geração musical por texto, com 1 a 8 excertos pedidos e entrega síncrona do resultado.
Sobre o modelo
Esta descrição apresenta as capacidades do modelo. As entradas, saídas e opções disponíveis no Ailoot para o método selecionado estão indicadas abaixo.
google/lyria cria música a partir de texto em /v1/music/generations. Pode pedir um fundo instrumental discreto para demonstração de produto, descrevendo instrumentos principais e espaço necessário à narração. Escolha esta rota quando o resultado pretendido for um excerto musical gerado.
O pedido exige model e prompt. n ou count aceita 1 a 8 excertos e o método devolve o resultado sincronamente. Guarde todos os excertos e metadados reais. Não expõe referência áudio, duração ou andamento como controlos independentes. Descreva a intenção musical no prompt sem a tratar como propriedade medida garantida da saída.
Ailoot · Música POST /v1/music/generations google/lyria
google/lyriaIntrodução
Geração musical por texto, com 1 a 8 excertos pedidos e entrega síncrona do resultado.
- Entradas aceites
- Texto
- Resultados
- music
Disponível no Ailoot · entradas e métodos
Ailoot · Música POST /v1/music/generations
- Entrada
text- Saída
music- Formato de saída
- excertos completos de áudio pertencentes ao utilizador / ligações JSON
| Campo | Tipo | Requisito | Valores e limites | Predefinição |
|---|---|---|---|---|
Campomodel | Tipostring | RequisitoObrigatório | Valores e limites google/lyria | Predefinição— |
Campoprompt | Tipostring | RequisitoObrigatório | Valores e limites Comprimento mínimo: 1 | Predefinição— |
Campon | Tipointeger | RequisitoOpcional | Valores e limites Mínimo: 1 Máximo: 8 | Predefinição1 |
Campocount | Tipointeger | RequisitoOpcional | Valores e limites Mínimo: 1 Máximo: 8 Condições: Se n também for fornecido, a contagem tem de coincidir | Predefinição— |
Combinações de materiais de entrada
text_to_music · Obrigatório: prompt
Parâmetros e ciclo de vida do método
| Parâmetro | Contrato |
|---|---|
Parâmetromaterial_types | Contratotext |
Parâmetrorequired | Contratonull |
Parâmetrooptional_controls | Contratonull |
Ciclo de vida: synchronous_result_then_owned_library
GET /v1/media/tasks/{task_id} · task_id efetivamente devolvido ou registo na biblioteca de multimédia
GET /v1/media/assets/{asset_id}/content
GET /v1/media/assets
GET /v1/media/assets/{asset_id}
As estruturas dos métodos e os ID são exatos; a capacidade do fornecedor é distinta da admissão dos pedidos.
Tarifários
Tarifas dos métodos Ailoot
POST /v1/music/generations- Saída
- 0,08 US$ por clip
- Apenas referência · não somada
- 0,08 US$ por pedido
Clipes entregues × tarifa base por clipe. A referência por pedido não é somada. Exemplos antes dos ajustes aplicáveis.
1 × 0,08 US$ = 0,08 US$
4 × 0,08 US$ = 0,32 US$
O Ailoot reserva um montante estimado antes de um pedido. Após o resultado, liquida o custo final com base na utilização medida. No streaming, a liquidação usa o registo final de utilização. Como funcionam a reserva e a liquidação →
Exemplos de pedidos
Ailoot · Música
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
Receber e guardar os resultados
Ailoot · Música
excertos completos de áudio pertencentes ao utilizador / ligações JSON
GET /v1/media/tasks/{task_id}GET /v1/media/assets/{asset_id}/contentGET /v1/media/assetsGET /v1/media/assets/{asset_id}
Guardar todos os resultados concluídos
Guarde cada resposta, ficheiro e parte de conteúdo devolvidos na íntegra.
Guarde/obtenha todos os excertos devolvidos e conserve o ID, MIME e metadados reais. O método é síncrono; não introduz um URL separado de consulta periódica da geração de música da Ailoot.
Se for necessário verificar a resposta original
Se um resultado de música precisar de verificação, conserve o operation_id/X-Client-Request-ID original e a informação dos excertos devolvidos. Recupere os excertos existentes que pertencem ao utilizador através da biblioteca multimédia, utilizando os valores reais de task_id ou asset_id. Não volte a enviar o pedido de música nem construa um URL de consulta periódica da geração a partir de operation_id.
Campos da resposta
| Campo | Tipo |
|---|---|
Campomodel | Tipostring |
Camporesponse_id | Tipostring |
Campodata[] | Tipoowned clip record |
Erros e passos seguintes
| Resposta | Condição | Passo seguinte |
|---|---|---|
Resposta400 · invalid_request_error | CondiçãoCampos obrigatórios, representação do material ou valor do parâmetro inválidos | Passo seguinteCorrija os campos indicados antes de um novo pedido de criação. |
Respostaserver_error | CondiçãoA resposta devolvida indica que a operação ou o resultado requer verificação | Passo seguinteGuarde o ID original da operação/tarefa devolvido, os cabeçalhos do pedido e a resposta; continue a consultar essa operação original através das consultas suportadas. Não volte a enviar o pedido de criação. |
Aliases
Aliases do modelo
Ailoot google/lyria
Aliases dos caminhos dos métodos
Use os caminhos dos métodos indicados acima.
IDs de chamada relacionados
FAQ · Lyria
- Que entradas e resultados estão disponíveis?
POST /v1/music/generations·google/lyria:text→music- Que campos utiliza o pedido?
POST /v1/music/generations·google/lyria:model,prompt,n,count- Que limites se aplicam?
POST /v1/music/generations·google/lyria:n.minimum:1;n.maximum:8;count.minimum:1;count.maximum:8