Publicado el 20 de mayo de 2025
Para satisfacer las necesidades de los usuarios, independientemente de la plataforma o el hardware que usen, puedes configurar un resguardo en la nube con Firebase AI Logic para la API de Prompt integrada.
Crea una experiencia de IA híbrida
La IA integrada ofrece una gran cantidad de beneficios, entre los que se destacan los siguientes:
- Procesamiento local de datos sensibles: Si trabajas con datos sensibles, puedes ofrecer funciones basadas en IA a los usuarios con encriptación de extremo a extremo.
- Uso de la IA sin conexión: Tus usuarios pueden acceder a las funciones basadas en IA, incluso cuando no tienen conexión o esta es intermitente.
Si bien estos beneficios no se aplican a las aplicaciones en la nube, puedes garantizar una experiencia fluida para quienes no pueden acceder a la IA integrada.
Comienza a usar Firebase
- Crea un proyecto de Firebase y registra tu aplicación web.
- Lee la documentación del SDK de Firebase JavaScript para continuar con la configuración de tu aplicación web.
Los proyectos de Firebase crean un proyecto de Google Cloud con configuraciones y servicios específicos de Firebase. Obtén más información sobre Google Cloud y Firebase.
Cómo instalar el SDK
Este flujo de trabajo usa npm y requiere agrupadores de módulos o herramientas del framework de JavaScript. Firebase AI Logic está optimizado para trabajar con agrupadores de módulos y, así, eliminar el código que no se usa y reducir el tamaño del SDK.
npm install firebase
Una vez instalado, inicializa Firebase en tu aplicación.
Usa Firebase AI Logic
Una vez que Firebase esté instalado y se haya inicializado, elige la API de Gemini Developer o la API de Gemini de Vertex AI, y, luego, inicializa y crea una instancia.
Una vez inicializado, puedes solicitarle al modelo que genere texto o que proporcione entradas multimodales.
Instrucciones de texto
Puedes usar texto sin formato para darle instrucciones al modelo. Por ejemplo, podrías pedirle al modelo que te cuente un chiste.
Para asegurarte de que se use la IA integrada cuando esté disponible en la función getGenerativeModel
, establece mode
en prefer_on_device
.
// Initialize the Google AI service.
const googleAI = getAI(firebaseApp);
// Create a `GenerativeModel` instance with a model that supports your use case.
const model = getGenerativeModel(googleAI, { mode: 'prefer_on_device' });
const prompt = 'Tell me a joke';
const result = await model.generateContentStream(prompt);
for await (const chunk of result.stream) {
const chunkText = chunk.text();
console.log(chunkText);
}
console.log('Complete response', await result.response);
Instrucciones multimodales
También puedes usar imágenes o audio como instrucciones, además de texto. Podrías pedirle al modelo que describa el contenido de una imagen o que transcriba un archivo de audio.
Las imágenes deben pasarse como una cadena codificada en Base64 como un objeto FileDataPart
de Firebase, lo que puedes hacer con la función de ayuda fileToGenerativePart()
.
// Converts a File object to a `FileDataPart` object.
// https://firebase.google.com/docs/reference/js/vertexai.filedatapart
async function fileToGenerativePart(file) {
const base64EncodedDataPromise = new Promise((resolve) => {
const reader = new FileReader();
reader.onload = () => resolve(reader.result.split(',')[1]);
reader.readAsDataURL(file);
});
return {
inlineData: { data: await base64EncodedDataPromise, mimeType: file.type },
};
}
const fileInputEl = document.querySelector('input[type=file]');
fileInputEl.addEventListener('change', async () => {
const prompt = 'Describe the contents of this image.';
const imagePart = await fileToGenerativePart(fileInputEl.files[0]);
// To generate text output, call generateContent with the text and image
const result = await model.generateContentStream([prompt, imagePart]);
for await (const chunk of result.stream) {
const chunkText = chunk.text();
console.log(chunkText);
}
console.log(Complete response: ', await result.response);
});
Demostración
Visita la demostración de Firebase AI Logic en diferentes dispositivos y navegadores. Puedes ver cómo la respuesta del modelo proviene del modelo de IA integrado o de la nube.
Cuando se ejecuta en hardware compatible en Chrome, la demostración usa la API de Prompt y Gemini Nano. Solo se realizan 3 solicitudes para el documento principal, el archivo JavaScript y el archivo CSS.
Cuando se usa otro navegador o un sistema operativo sin asistencia de IA integrada, se realiza una solicitud adicional al extremo de Firebase, https://firebasevertexai.googleapis.com
.
Participa y comparte tus comentarios
Firebase AI Logic puede ser una excelente opción para integrar capacidades de IA en tus apps web. Al proporcionar una alternativa en la nube cuando la API de Prompt no está disponible, el SDK garantiza una mayor accesibilidad y confiabilidad de las funciones basadas en IA.
Recuerda que las aplicaciones en la nube generan nuevas expectativas de privacidad y funcionalidad, por lo que es importante que informes a los usuarios dónde se procesan sus datos.
- Para enviar comentarios sobre la implementación de Chrome, informa un error o envía una solicitud de función.
- Para enviar comentarios sobre Firebase AI Logic, presenta un informe de errores.