You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[F2-09] Proveedor Google AI Studio (texto, voz, música Lyria, imagen) con la clave del usuario #36
Fase: F2 · Tamaño: L · Depende de:#32 (F2-07) Decisiones: D-03 y D-17 en #1
Objetivo
Mantener Gemini, Gemini TTS, Lyria e Imagen como una opción más, usando la clave de AI Studio de cada usuario y sin nada de Google Cloud.
Alcance
Text:generateJson con responseMimeType: 'application/json' + responseSchema derivado del zod.
TTS:listVoices (la lista que hoy está fija en el prompt, con rasgos de cada voz para @@voice_palette) y synthesize → PCM 24 kHz mono → pcmToMp3. Soporte de idioma de salida. Corrige que generateGeminiVoice ignore req.genAI y lea la clave global.
Music (Lyria realtime): cliente creado por llamada (apiVersion: 'v1alpha'), duración ≤ 120 s, timeout duro, session.close() en finally, sin executor async; PCM 48 kHz estéreo → mp3; onProgress según segundos recibidos.
Image (Imagen): relación 9:16, seed opcional.
Mapeo de errores del SDK a ProviderError (401/403 → auth, 429 → rate_limit con retryAfterMs, bloqueos de seguridad → safety, 5xx → unavailable).
Opciones específicas (personGeneration, addWatermark, bpm) dentro del adaptador, no en el núcleo.
Catálogo inicial a partir de los valores actuales de GEMINI_MODEL_*, con precios.
Activity