Data di pubblicazione: 20 maggio 2025
Per soddisfare le esigenze degli utenti, indipendentemente dalla piattaforma o dall'hardware che utilizzano, puoi configurare un fallback al cloud con Firebase AI Logic per l'API Prompt integrata.
Creare un'esperienza di AI ibrida
L'AI integrata offre una serie di vantaggi, in particolare:
- Elaborazione locale dei dati sensibili:se lavori con dati sensibili, puoi offrire funzionalità di AI agli utenti con crittografia end-to-end.
- Utilizzo dell'AI offline:i tuoi utenti possono accedere alle funzionalità di AI anche quando sono offline o la connettività è scaduta
Sebbene questi vantaggi non si applichino alle applicazioni cloud, puoi garantire un'esperienza fluida per chi non può accedere all'AI integrata.
Inizia a utilizzare Firebase
- Crea un progetto Firebase e registra la tua applicazione web.
- Per continuare la configurazione dell'applicazione web, leggi la documentazione dell'SDK Firebase JavaScript.
I progetti Firebase creano un progetto Google Cloud con configurazioni e servizi specifici di Firebase. Scopri di più su Google Cloud e Firebase.
Installa l'SDK
Questo flusso di lavoro utilizza npm e richiede bundler di moduli o strumenti di framework JavaScript. Firebase AI Logic è ottimizzato per funzionare con i bundler di moduli per eliminare il codice inutilizzato e ridurre le dimensioni dell'SDK.
npm install firebase
Una volta installato, inizializza Firebase nella tua applicazione.
Utilizzare Firebase AI Logic
Una volta installato e inizializzato Firebase, scegli l'API Gemini Developer o l'API Vertex AI Gemini, quindi inizializza e crea un'istanza.
Una volta inizializzato, puoi richiedere al modello di inserire testo o input multimodali.
Prompt di testo
Puoi utilizzare testo normale per le istruzioni al modello. Ad esempio, puoi chiedere al modello di raccontarti una barzelletta.
Per assicurarti che l'AI integrata venga utilizzata quando è disponibile nella funzione getGenerativeModel
, imposta mode
su 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);
Prompt multimodali
Oltre al testo, puoi anche usare prompt con immagini o audio. Potresti chiedere al modello di descrivere i contenuti di un'immagine o trascrivere un file audio.
Le immagini devono essere trasmesse come stringa con codifica base64 come oggetto FileDataPart
di Firebase, cosa che puoi fare con la funzione helper 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);
});
Demo
Visita la demo di Firebase AI Logic su diversi dispositivi e browser. Puoi vedere se la risposta del modello proviene dal modello di AI integrato o dal cloud.
Quando viene eseguita su hardware supportato in Chrome, la demo utilizza l'API Prompt e Gemini Nano. Vengono effettuate solo tre richieste per il documento principale, il file JavaScript e il file CSS.
Quando si utilizza un altro browser o un sistema operativo senza supporto AI integrato,
viene effettuata una richiesta aggiuntiva all'endpoint Firebase,
https://firebasevertexai.googleapis.com
.
Partecipare e condividere feedback
Firebase AI Logic può essere un'ottima opzione per integrare funzionalità di AI nelle tue app web. Fornendo un fallback al cloud quando l'API Prompt non è disponibile, l'SDK garantisce una maggiore accessibilità e affidabilità delle funzionalità di AI.
Ricorda che le applicazioni cloud creano nuove aspettative in termini di privacy e funzionalità, quindi è importante informare gli utenti su dove vengono elaborati i loro dati.
- Per inviare feedback sull'implementazione di Chrome, compila una segnalazione di bug o una richiesta di funzionalità.
- Per fornire feedback su Firebase AI Logic, invia una segnalazione di bug.