Gemini de Google ofrece modelos potentes para cargas de trabajo de IA, pero en una aplicación pública gratuita, un prototipo o un proyecto de hackathon, el coste por token puede crecer rápido. Puter.js cambia el modelo de integración: permite usar Gemini y Gemma desde el navegador sin clave API de Google, sin proyecto de Google Cloud y sin backend. El uso se asocia al usuario final mediante su cuenta de Puter, mientras que tú integras el modelo desde JavaScript.
TL;DR
- Puter.js permite acceder a modelos Gemini y Gemma sin clave API de Google.
- Modelos Gemini soportados: 2.5 Pro, 2.5 Flash, 2.5 Flash Lite, 2.0 Flash, 2.0 Flash Lite, 3 Flash Preview y vistas previas anteriores.
- Modelos Gemma soportados: Gemma 2, 3 y 4 en varios tamaños.
- La integración mínima requiere una etiqueta
<script>y una llamada aputer.ai.chat(). - Soporta streaming, entrada de imagen, temperatura y conversaciones multiturno desde el navegador.
- El usuario final cubre su uso mediante una cuenta de Puter; tú no gestionas claves ni facturación de Google.
- Usa Apidog para comparar tu prototipo con la API oficial de Gemini antes de migrar.
Cómo funciona el modelo “gratuito e ilimitado”
Con la API oficial de Gemini, normalmente tú creas un proyecto en Google Cloud o Google AI Studio, generas una clave API y pagas por el consumo de tokens.
Con Puter.js, el flujo cambia:
- El usuario abre tu aplicación en el navegador.
- Tu aplicación carga Puter.js.
- El usuario inicia sesión en Puter o crea una cuenta.
- Las llamadas a Gemini se ejecutan a través de Puter.
- El uso se descuenta del saldo del usuario final.
Para el desarrollador, esto implica:
- Sin clave de Google AI Studio.
- Sin proyecto de Google Cloud.
- Sin gestión de cuotas ni rotación de claves.
- Sin backend obligatorio para llamar al modelo.
- Sin coste directo por token desde tu cuenta.
La limitación principal: Puter.js está pensado para aplicaciones de navegador. Si necesitas tareas programadas, webhooks, jobs batch o procesos de backend, la API oficial de Gemini sigue siendo la ruta adecuada.
Paso 1: Instalar Puter.js
Para una página HTML estática, añade el script desde CDN:
<script src="https://js.puter.com/v2/"></script>
Ejemplo mínimo:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title>Gemini con Puter.js</title>
</head>
<body>
<div id="output"></div>
<script src="https://js.puter.com/v2/"></script>
<script>
async function main() {
const response = await puter.ai.chat(
'Explica qué es una API REST en tres frases.',
{
model: 'google/gemini-2.5-flash'
}
);
document.getElementById('output').innerText = response;
}
main();
</script>
</body>
</html>
Si trabajas en una aplicación empaquetada:
npm install @heyputer/puter.js
import { puter } from '@heyputer/puter.js';
Paso 2: Elegir el modelo adecuado
Usa el modelo según el tipo de tarea. Para la mayoría de aplicaciones, empieza con google/gemini-2.5-flash.
| ID del modelo | Cuándo usarlo |
|---|---|
google/gemini-2.5-pro |
Razonamiento más profundo, análisis complejo y tareas de contexto largo |
google/gemini-2.5-flash |
Modelo por defecto para chat, Q&A, generación de contenido y prototipos |
google/gemini-2.5-flash-lite |
Clasificación, etiquetado y tareas simples de alto volumen |
google/gemini-2.0-flash |
Base estable con comportamiento conocido |
google/gemini-3-flash-preview |
Vista previa reciente para probar nuevas capacidades |
google/gemma-3-27b-it |
Modelo abierto Gemma ajustado por instrucciones |
google/gemma-4-31b-it |
Variante Gemma más grande disponible en Puter |
Regla práctica:
- Usa Flash por defecto.
- Usa Pro cuando el prompt requiera razonamiento más difícil.
- Usa Flash Lite para tareas repetitivas, simples y de gran volumen.
Paso 3: Hacer una primera llamada a Gemini
La llamada básica usa puter.ai.chat():
<!DOCTYPE html>
<html>
<body>
<script src="https://js.puter.com/v2/"></script>
<script>
puter.ai.chat(
'Explain machine learning in three sentences',
{
model: 'google/gemini-2.5-flash'
}
).then(response => {
puter.print(response);
});
</script>
</body>
</html>
Al abrir la página en el navegador:
- Puter carga el SDK.
- El usuario inicia sesión si todavía no lo ha hecho.
- Se envía el prompt al modelo.
- La respuesta se imprime en la página.
No necesitas .env, servidor ni clave API.
Paso 4: Mostrar respuestas en streaming
Para interfaces de chat, usa streaming. Esto mejora la percepción de velocidad porque el usuario ve la respuesta mientras se genera.
const outputDiv = document.getElementById('output');
const response = await puter.ai.chat(
'Explain photosynthesis in detail',
{
model: 'google/gemini-2.5-flash',
stream: true
}
);
for await (const part of response) {
if (part?.text) {
outputDiv.innerHTML += part.text;
}
}
Un ejemplo de HTML completo:
<!DOCTYPE html>
<html>
<body>
<button id="run">Preguntar</button>
<pre id="output"></pre>
<script src="https://js.puter.com/v2/"></script>
<script>
document.getElementById('run').addEventListener('click', async () => {
const output = document.getElementById('output');
output.textContent = '';
const stream = await puter.ai.chat(
'Resume qué es el patrón Repository en backend.',
{
model: 'google/gemini-2.5-flash',
stream: true
}
);
for await (const part of stream) {
if (part?.text) {
output.textContent += part.text;
}
}
});
</script>
</body>
</html>
Paso 5: Usar visión con una imagen
Gemini también puede analizar imágenes. Pasa la URL de la imagen como segundo argumento:
puter.ai.chat(
'What do you see in this image? Describe colors, objects, and mood.',
'https://assets.puter.site/doge.jpeg',
{
model: 'google/gemini-2.5-flash'
}
).then(response => {
puter.print(response);
});
Casos de uso comunes:
- Generación de texto alternativo.
- Análisis de capturas de pantalla.
- OCR básico.
- Revisión visual de productos.
- Herramientas de accesibilidad.
- Clasificación o etiquetado de imágenes.
Para imágenes naturales y diagramas, Gemini suele ofrecer buen rendimiento. Para capturas con texto muy denso, puede que otros modelos funcionen mejor según el caso.
Paso 6: Ajustar la temperatura
Pasa parámetros en el objeto de opciones:
const response = await puter.ai.chat(
'Write a creative short story about a robot chef',
{
model: 'google/gemini-2.5-flash',
temperature: 0.2
}
);
Guía rápida:
| Temperatura | Uso recomendado |
|---|---|
0.0 - 0.3
|
Respuestas factuales, extracción de datos, clasificación |
0.4 - 0.7
|
Chat general, explicaciones, asistencia técnica |
0.8 - 1.0
|
Escritura creativa, brainstorming, variaciones de estilo |
Para la mayoría de casos de chat, 0.7 funciona bien como punto de partida.
Paso 7: Crear conversaciones multiturno
Para mantener contexto entre mensajes, envía un array de mensajes:
const messages = [
{
role: 'user',
content: 'I am building a Next.js app with Postgres.'
},
{
role: 'assistant',
content: 'Got it. What do you need help with?'
},
{
role: 'user',
content: 'How should I structure migrations?'
}
];
const response = await puter.ai.chat(messages, {
model: 'google/gemini-2.5-pro'
});
console.log(response);
Patrón de implementación:
const messages = [];
async function sendMessage(userInput) {
messages.push({
role: 'user',
content: userInput
});
const response = await puter.ai.chat(messages, {
model: 'google/gemini-2.5-flash'
});
messages.push({
role: 'assistant',
content: response
});
return response;
}
Antes de cada nueva llamada, añade el mensaje del usuario y la respuesta anterior del asistente. Así el modelo recibe la transcripción completa disponible.
Comparar Gemini con otros modelos usando el mismo prompt
Puter expone varios proveedores mediante una interfaz similar. Puedes ejecutar el mismo prompt contra varios modelos y comparar latencia y calidad:
const models = [
'google/gemini-2.5-flash',
'claude-sonnet-4-6',
'gpt-5.5',
'x-ai/grok-4.3'
];
const prompt = 'Refactor this React component to use hooks: ...';
for (const model of models) {
const start = performance.now();
const response = await puter.ai.chat(prompt, {
model
});
const elapsed = performance.now() - start;
console.log(`${model}: ${elapsed.toFixed(0)}ms`);
console.log(response);
console.log('---');
}
Usa este patrón para decidir con datos propios:
- Latencia percibida.
- Calidad de respuesta.
- Consistencia.
- Adecuación al tipo de prompt.
- Comportamiento en errores o entradas incompletas.
Lo que obtienes y lo que no
Obtienes
- Acceso a modelos Gemini 2.5, 2.0, 3 Flash Preview y 2.5 Pro.
- Acceso a la familia abierta Gemma 2/3/4.
- Conversaciones multiturno.
- Respuestas en streaming.
- Entrada de visión mediante URL de imagen.
- Parámetros como
temperature,max_tokensy prompts de sistema. - Integración directa en navegador.
Puede que no obtengas, según la versión de Puter
- Function calling nativo de Gemini.
- Herramienta de ejecución de código.
- Fundamentación en Google Search.
- Contexto completo de 2M tokens de Gemini.
- Uso limpio desde backend sin sesión de usuario.
- Visibilidad directa de los límites de velocidad de Google.
Para agentes complejos, ejecución de código, fundamentación en Search o contexto máximo, usa la API oficial de Google AI Studio. Para chat, Q&A, generación de contenido, prototipos y tareas visuales desde navegador, Puter puede ser suficiente.
Cuándo usar Puter y cuándo usar la API oficial de Gemini
Usa Puter cuando
- Estás creando una app pública gratuita y no quieres asumir facturación por tokens.
- Estás prototipando y quieres evitar configuración de Google Cloud.
- Quieres usar Gemini en un sitio estático.
- Estás construyendo una demo, hackathon o extensión de navegador.
- Tus usuarios pueden iniciar sesión en Puter.
Usa la API oficial de Gemini cuando
- Necesitas llamadas desde backend.
- Tienes jobs programados, webhooks, colas o procesos batch.
- Necesitas ejecución de código o fundamentación en Search.
- Necesitas el contexto completo de 2M tokens.
- Necesitas cumplimiento contractual directo con Google.
- Necesitas ajuste fino sobre tus propios datos.
- No puedes introducir un paso de inicio de sesión con Puter.
Para una guía específica sobre Gemini 3 Flash, consulta Cómo usar la API de vista previa de Gemini 3 Flash.
Probar la integración con Apidog
Las llamadas de Puter ocurren en el navegador, por lo que no se prueban igual que una API backend. Un flujo práctico es separar prototipo y producción:
- Crea una página estática con Puter.js.
- Añade un parámetro de consulta para enviar prompts de prueba.
- Usa Apidog para documentar y validar la API oficial de Gemini si después migras.
- Mantén dos entornos: uno para el prototipo con Puter y otro para la API oficial.
Ejemplo de estructura:
Entorno 1: puter-prototype
Base URL: http://localhost:3000
Entorno 2: gemini-prod
Base URL: https://generativelanguage.googleapis.com/v1
Puedes descargar Apidog y configurar ambos entornos en una misma colección. Así puedes documentar el flujo, probar requests equivalentes y preparar la migración a la API oficial si tu proyecto lo requiere.
Para patrones más amplios de testing de APIs, consulta Herramienta de prueba de API para ingenieros de control de calidad.
Otras rutas gratuitas de LLM a través de Puter
El mismo patrón de integración funciona con otros modelos disponibles mediante Puter. Cambias el valor de model y mantienes una interfaz similar:
const response = await puter.ai.chat(
'Resume este texto para un usuario técnico.',
{
model: 'google/gemini-2.5-flash'
}
);
Recursos relacionados:
- Obtén API de Claude ilimitada y gratuita
- Obtén API de GPT-5.5 ilimitada y gratuita
- Cómo usar Grok 4.3 gratis
- Obtén API de DeepSeek ilimitada y gratuita
Preguntas frecuentes
¿Es realmente ilimitado?
Desde tu lado como desarrollador, sí: no gestionas una cuota propia de Google ni pagas los tokens desde tu cuenta. El consumo depende del saldo disponible en la cuenta Puter del usuario final.
¿Necesito una cuenta de Google o un proyecto de Google Cloud?
No. Puter gestiona la integración ascendente. Tu aplicación no necesita una clave API de Google.
¿Puedo usar esto en producción?
Sí, si tu aplicación está basada en navegador y el flujo de inicio de sesión de Puter encaja con tu producto. Para backend puro, usa la API oficial.
¿El rendimiento es idéntico al de la API oficial de Gemini?
El modelo subyacente es el mismo, pero puede existir una pequeña diferencia de latencia por la capa adicional de Puter. El comportamiento del modelo no debería cambiar por el hecho de llamarlo desde Puter.
¿Qué pasa con la ventana de contexto de 2M tokens?
Puter puede no exponer el límite completo de 2M tokens en todas las variantes. Si tu caso depende de contextos extremadamente largos, usa la API oficial de Google AI Studio.
¿Puedo usarlo en un bot de Discord o servicio backend?
No de forma limpia. Puter está diseñado principalmente para navegador y asume una sesión de usuario. Para bots, workers, cron jobs o servicios backend, usa la API oficial de Gemini.
¿Qué modelo debería usar por defecto?
Usa google/gemini-2.5-flash.
Cambia a google/gemini-2.5-pro para tareas de razonamiento más difíciles y a google/gemini-2.5-flash-lite para clasificación o etiquetado de alto volumen.
¿Puter soporta generación de imágenes con Imagen?
Actualmente, Puter expone generación de imágenes mediante gpt-image-2 y variantes de DALL-E de OpenAI, no Imagen. Para esa ruta, consulta Obtén API de GPT-5.5 ilimitada y gratuita.
Conclusión
Puter.js es una forma directa de usar Gemini desde el navegador sin clave API, sin backend y sin configurar Google Cloud. Para empezar:
- Añade
https://js.puter.com/v2/. - Llama a
puter.ai.chat(). - Usa
google/gemini-2.5-flashcomo modelo inicial. - Añade streaming, visión o multiturno según tu caso.
Para prototipos, sitios estáticos, hackathons y apps públicas gratuitas, Puter reduce la fricción de integración. Para backend, ajuste fino, ejecución de código o contexto máximo de Gemini, la API oficial sigue siendo la opción correcta.
Crea tu solicitud una vez en Apidog, compara el prototipo con Puter frente a la API oficial de Gemini y elige la ruta que encaje con tu arquitectura.
Top comments (0)