Gemini Omni
Los modelos de Gemini Omni se llaman a través de una API de trabajos asíncrona y unificada. Inicia una tarea con POST /api/generate y luego sondea GET /api/generate/{taskId} hasta que termine. Esta familia expone 3 endpoints.
Resumen
Todos los endpoints comparten la misma envoltura — solo cambian model y los campos input. Ejecuta cualquiera desde el playground del Mercado de modelos.
Autenticación
Crea una API key en /api-keys y luego envíala como token Bearer. Las solicitudes desde el navegador con sesión iniciada también funcionan mediante la cookie de sesión.
Authorization: Bearer <YOUR_API_KEY>Crear tarea
POST https://api.lithovas.com/api/generateCuerpo: { "model": "<slug>", "input": { … } }
Respuesta: { "taskId": "<id>", "state": "waiting" }
Consultar resultado
GET https://api.lithovas.com/api/generate/<taskId>Respuesta: { "taskId", "state": "waiting" | "success" | "fail", "resultUrls": [ … ], "creditsConsumed", "failMsg", "balance" }
state sea success o fail. Las tareas fallidas no se facturan.Endpoints
| Modelo | Tarea | model slug |
|---|---|---|
| Gemini Omni Video | Text to Video | gemini-omni-video |
| Gemini Omni Audio | Text to Speech | gemini-omni-audio |
| Gemini Omni Character | Chat | gemini-omni-character |
Gemini Omni Video · Text to Video
gemini-omni-videopromptstringobligatorioVideo prompt describing content, style, camera language, or actions
image_urlsarray<string>opcionalArray of reference image URLs (max 7, each <=20MB)
audio_idsarray<string>opcionalAudio IDs from gemini-omni-audio for narration/dialogue (max 3)
video_listarray<object>opcionalSource video clips with trim ranges (max 1, <=100MB, <=30s)
character_idsarray<string>opcionalCharacter IDs from gemini-omni-character API (max 3)
durationenum<string>opcionalGenerated video duration in seconds
aspect_ratioenum<string>opcionalVideo aspect ratio (16:9 landscape, 9:16 portrait)
seedintegeropcionalRandom seed [0, 2147483647] for reproducibility
resolutionenum<string>opcionalOutput video resolution
curl -X POST https://api.lithovas.com/api/generate \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-omni-video",
"input": {
"prompt": "A cinematic red panda surfing through neon rain at dusk.",
"image_urls": [
"https://example.com/input.jpg"
],
"audio_ids": [
"https://example.com/reference.mp3"
],
"video_list": [],
"character_ids": [
"https://example.com/file"
],
"duration": "4",
"aspect_ratio": "16:9",
"seed": 42,
"resolution": "720p"
}
}'Gemini Omni Audio · Text to Speech
gemini-omni-audioaudio_idenum<string>obligatorioVoice character preset selection
namestringobligatorioVoice identifier (max 210 characters)
voice_descriptionstringopcionalTimbre, style, rate, emotion characteristics (max 20000 chars)
example_dialoguestringopcionalSample speech utterance for voice preview (max 120 chars)
curl -X POST https://api.lithovas.com/api/generate \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-omni-audio",
"input": {
"audio_id": "achernar",
"name": "example",
"voice_description": "example",
"example_dialogue": "example"
}
}'Gemini Omni Character · Chat
gemini-omni-characterdescriptionsstringobligatorioCharacter appearance, identity, style, clothing, or personality
image_urlsarray<string>obligatorioArray of character reference image URLs (max 1, <=20MB each)
audio_idsarray<string>opcionalAudio IDs from gemini-omni-audio for voice traits/persona
character_namestringopcionalCharacter name
curl -X POST https://api.lithovas.com/api/generate \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-omni-character",
"input": {
"descriptions": "example",
"image_urls": [
"https://example.com/input.jpg"
],
"audio_ids": [
"https://example.com/reference.mp3"
],
"character_name": "example"
}
}'