Skip to content
Search
See the whole radar
Vercel 3.8Covered by Cipher

Gemini 3.8 Live llega a AI Gateway de Vercel

Vercel suma dos modelos de voz en tiempo real de Google a su Gateway. Sirve si estás construyendo asistentes de voz o experiencias conversacionales por audio.

Dos modelos, dos casos de uso

google/gemini-3.8-live soporta audio en tiempo real, grounding visual, cambio automático entre 97 idiomas y tool calls en segundo plano mientras la conversación sigue. google/gemini-3.8-live-extended-thinking agrega razonamiento multi-paso que corre en paralelo con el habla, así el modelo puede confirmar que recibió el pedido y narrar el progreso sin cortar la conversación.

Instalación

Necesitás el provider de Gateway del AI SDK más un cliente WebSocket. La conexión se hace por token de corta duración, no por API key directa.

bash
pnpm add @ai-sdk/gateway@latest ws

Cómo se arma la conexión

Pedís un token con gateway.experimental_realtime.getToken(), armás el adapter del modelo con getWebSocketConfig() y abrís el WebSocket con esa config. Desde ahí serializás eventos del cliente (como session-update o conversation-item-create) y parseás los eventos que llegan del servidor, incluyendo deltas de transcripción de audio y el evento de error.

typescript
import { gateway } from '@ai-sdk/gateway';
import WebSocket from 'ws';
​
const modelId = 'google/gemini-3.8-live';
​
const { token, url } = await gateway.experimental_realtime.getToken({
model: modelId,
});
​
const model = gateway.experimental_realtime(modelId);
const config = model.getWebSocketConfig({ token, url });
const ws = new WebSocket(config.url, config.protocols);
​
const send = async (
event: Parameters<typeof model.serializeClientEvent>[0],
) => ws.send(JSON.stringify(await model.serializeClientEvent(event)));
​
ws.on('open', async () => {
await send({
type: 'session-update',
config: {
outputModalities: ['audio'],
outputAudioTranscription: {},
// Extended Thinking only. Set exactly one of thinkingLevel or thinkingBudget:
// providerOptions: {
// google: { thinkingConfig: { thinkingLevel: 'LOW' } },
// },
},
});
​
await send({
type: 'conversation-item-create',
item: {
type: 'text-message',
role: 'user',
text: 'Say hello in one sentence.',
},
});
});
​
ws.on('message', (data) => {
const parsed = model.parseServerEvent(JSON.parse(data.toString()));
for (const event of Array.isArray(parsed) ? parsed : [parsed]) {
if (event.type === 'audio-transcript-delta') {
process.stdout.write(event.delta);
}
if (event.type === 'response-done') {
console.log();
ws.close();
}
if (event.type === 'error') {
console.error(event.message);
ws.close();
}
}
});
​
ws.on('close', (code, reason) => {
if (code !== 1000) {
console.error(`WebSocket closed (${code}): ${reason.toString()}`);
}
});

What you get

  • Gemini 3.8 Live y su variante Extended Thinking ya están disponibles en AI Gateway para interacciones habladas en tiempo real.

  • Se usan a través de la API realtime del AI SDK, con conexión por WebSocket y token de corta duración.

  • Extended Thinking permite razonar en paralelo sin cortar el flujo de la conversación, útil para tareas que requieren varios pasos.

  • AI Gateway centraliza el acceso a estos modelos junto con tracking de uso, costo, reintentos y failover.

We wrote this summary from the official release notes. What wasn't there isn't here.

Original announcement from Vercel

Want a class on this?

If enough people ask for it, it goes on the schedule. No email, no name needed.