Puedes compilar apps y funciones de Apple potenciadas por IA con inferencia híbrida usando Firebase AI Logic. La inferencia híbrida permite ejecutar la inferencia con modelos integrados en el dispositivo (específicamente, el framework de modelos de base de Apple) cuando están disponibles y, de lo contrario, recurrir sin problemas a los modelos de Google alojados en la nube (y viceversa).
En esta página, se describe cómo comenzar a usar el SDK cliente, así como también se muestran opciones de configuración y capacidades adicionales, como la temperatura.
Ten en cuenta que la inferencia integrada en el dispositivo a través de Firebase AI Logic es compatible con las apps para Apple que usan el SDK de Firebase AI Logic v12.13.0 o una versión posterior y que se ejecutan en dispositivos con Apple Intelligence habilitado. Se rige por los Requisitos de uso aceptable para el framework de modelos de base de Apple.
Casos de uso recomendados
Usar un modelo integrado en el dispositivo para la inferencia ofrece lo siguiente:
- Privacidad mejorada
- Inferencia sin costo
- Funcionalidad sin conexión
El uso de la funcionalidad híbrida ofrece lo siguiente:
- Proporcionar a todos los clientes una experiencia en la app similar, independientemente del dispositivo del usuario final
- Mejorar la disponibilidad de las funciones potenciadas por IA generativa, independientemente de la conectividad a Internet, las limitaciones de cuota o las capacidades del dispositivo
Funciones, APIs y dispositivos compatibles
Antes de implementar la inferencia híbrida y integrada en el dispositivo con Firebase AI Logic, revisa esta sección para comprender qué se admite en las apps para Apple.
Funciones y capacidades compatibles para la inferencia integrada en el dispositivo
La inferencia integrada en el dispositivo solo admite la generación de texto, específicamente las siguientes capacidades de generación de texto:
Asegúrate de revisar la lista detallada de inferencias híbridas o integradas en el dispositivo que aún no se admiten al final de esta página.
APIs y dispositivos compatibles
La inferencia en la nube usa el proveedor de Gemini API que elijas (ya sea Gemini Developer API o Agent Platform Gemini API (formerly Vertex AI)).
La inferencia integrada en el dispositivo usa el framework de modelos de base de Apple, que solo está disponible en dispositivos con Apple Intelligence habilitado. El modelo integrado en el dispositivo se descarga automáticamente cuando se habilita Apple Intelligence.
Comenzar
Asegúrate de haber revisado la sección anterior, en la que se describen las capacidades, las APIs y los dispositivos compatibles.
En estos pasos para comenzar, se describe la configuración general requerida para cualquier solicitud de instrucción admitida que quieras enviar.
Paso 1: Configura un proyecto de Firebase y conecta tu app a Firebase
Accede a la consola de Firebase y, luego, selecciona tu proyecto de Firebase.
En la consola de Firebase, ve a Servicios de IA > AI Logic.
Haz clic en Comenzar para iniciar un flujo de trabajo guiado que te ayude a configurar las APIs y los recursos necesarios para tu proyecto.
Si se te solicita, sigue las instrucciones en pantalla para registrar la app y agregar la configuración de Firebase a la app.
Cuando se te solicite que elijas un "proveedor de la API de Gemini", te recomendamos que selecciones la API de Gemini Developer, que te permite comenzar rápidamente sin costo.
En cualquier momento posterior, puedes configurar el Agent Platform Gemini API (formerly Vertex AI) (y su requisito de facturación).
Continúa en el flujo de trabajo para configurar las APIs requeridas y los servicios asociados para Firebase AI Logic.
A partir de principios de julio de 2026, esta etapa del flujo de trabajo aplicará automáticamente Firebase App Check para AI Logic, que es un servicio fundamental para ayudar a proteger la Gemini API cuando se accede directamente desde tu app. Como parte de los primeros pasos (consulta los pasos más adelante en esta guía), deberás configurar el proveedor de depuración de App Check para el desarrollo local cuando se aplique App Check.
Continúa con el siguiente paso de esta guía para agregar los SDKs necesarios a tu app.
Paso 2: Agrega los SDKs requeridos
Usa Swift Package Manager (SPM) para instalar y administrar las dependencias de Xcode. La compatibilidad con híbridos solo está disponible cuando se usa SPM.
La biblioteca Firebase AI Logic proporciona acceso a las APIs para interactuar
con modelos generativos. La biblioteca se incluye como parte del SDK de Firebase
para plataformas de Apple (firebase-ios-sdk).
Si ya usas Firebase, asegúrate de que tu paquete de Firebase sea la versión 12.13.0 o una posterior.
En Xcode, con tu proyecto de app abierto, navega a File > Add Package Dependencies.
Cuando se te solicite, agrega el repositorio del SDK de Firebase para plataformas de Apple:
https://github.com/firebase/firebase-ios-sdkSelecciona la versión más reciente del SDK.
Selecciona las bibliotecas
FirebaseAILogicyFirebaseAppCheck.
Cuando termines, Xcode comenzará a resolver y descargar automáticamente tus dependencias en segundo plano.
Paso 3: Configura el proveedor de depuración de App Check para el desarrollo local
A partir de principios de julio de 2026, como parte del flujo de trabajo de configuración guiada para AI Logic en la consola, se aplica automáticamente Firebase App Check para proteger la Gemini API. Para el desarrollo local, debes configurar el proveedor de depuración de App Check para omitir la certificación y, al mismo tiempo, mantener la aplicación de App Check.
A continuación, se explica cómo usar el proveedor de depuración mientras ejecutas la app en un simulador de manera interactiva (por ejemplo, durante el desarrollo local):
En tu proyecto de Xcode, importa
FirebaseAppChecke inicializa App Check con la fábrica de proveedores de depuración antes de configurarFirebase.import SwiftUI import FirebaseCore import FirebaseAppCheck @main struct YourApp: App { init() { let providerFactory = AppCheckDebugProviderFactory() AppCheck.setAppCheckProviderFactory(providerFactory) FirebaseApp.configure() } var body: some Scene { WindowGroup { NavigationView { ContentView() } } } }Obtén tu token de depuración:
Inicia la app en el simulador o en tu dispositivo de prueba.
Abre la consola de Xcode y busca el token de depuración de App Check. Por ejemplo:
<Warning> [AppCheckCore][I-GAC004001] App Check debug token: '123a4567-b89c-12d3-e456-789012345678'.Copia el token (por ejemplo,
123a4567-b89c-12d3-e456-789012345678).
Registra tu token de depuración con App Check:
En la consola de Firebase, ve a la pestaña Seguridad > Verificación de aplicaciones > Apps.
Busca tu app, haz clic en el menú ampliado () y, luego, selecciona Administrar tokens de depuración.
Sigue las instrucciones en pantalla para registrar tu token de depuración.
Para obtener detalles sobre el proveedor de depuración (incluido cómo obtener un token de depuración nuevo), consulta la documentación oficial de App Check.
Paso 4: Inicializa el servicio y crea una instancia de sesión de modelo
|
Haz clic en tu proveedor de Gemini API para ver el contenido y el código específicos del proveedor en esta página. |
Configura lo siguiente antes de enviar una solicitud de instrucción al modelo.
Inicializa el servicio para el proveedor de Gemini API que elegiste.
Crea una instancia de
GenerativeModelSessioncon unHybridModel.Establece los modelos
primaryysecondarysegún tus preferencias. Puedes establecer el orden de la inferencia intentada:Primero, intenta realizar la inferencia integrada en el dispositivo, pero permite el resguardo en la nube: establece
primaryen un modelo de "sistema" ysecondaryen un modelo de nube.Primero, intenta realizar la inferencia en la nube, pero permite el resguardo integrado en el dispositivo: establece
primaryen un modelo de nube ysecondaryen un modelo de "sistema".
Ten en cuenta que el SDK admite la configuración de solo un
model, lo que significa que el SDK solo intentará realizar la inferencia integrado en el dispositivo o en la nube. Sin embargo, para una experiencia híbrida, debes crear unHybridModely establecer los modelosprimaryysecondary.Obtén más información sobre el comportamiento de los "modos de inferencia" (el orden de la inferencia intentada) en Opciones de configuración.
En el siguiente ejemplo, se muestra cómo intentar primero la inferencia integrada en el dispositivo, pero permitir el resguardo al modelo alojado en la nube:
// Initialize the Gemini Developer API backend service.
let ai = FirebaseAI.firebaseAI(backend: .googleAI())
// Initialize a cloud model that supports your use case.
let cloudModel = ai.geminiModel(name: "GEMINI_MODEL_NAME")
// Initialize an on-device model that supports your use case.
let systemModel = FirebaseAI.SystemLanguageModel.default
// Create a Hybrid Model.
// Provide your preferred model as `primary` and your fallback model as `secondary`.
// In this example, attempt to use on-device model; otherwise, fall back to cloud.
let hybridModel = HybridModel(
primary: systemModel,
secondary: cloudModel
)
// Create a GenerativeModelSession with the HybridModel created earlier.
let session = firebaseAI.generativeModelSession(
model: hybridModel,
)
Paso 5: Envía una solicitud de instrucción a un modelo
En esta sección, se muestra cómo hacer lo siguiente:
Genera texto a partir de una entrada de solo texto
| Antes de probar este ejemplo, asegúrate de haber completado la sección Comienza de esta guía. |
Para generar texto a partir de una instrucción que contiene texto, usa respond(to:) de la siguiente manera:
// Imports + initialization of Gemini API backend service + creation of model session
// Provide a prompt that contains text
let prompt = "Write a story about a magic backpack."
// To generate text output, call `respond(to:)` with the text input
let response = try await session.respond(to: prompt)
print(response.content)
Transmite texto desde una entrada de solo texto
| Antes de probar este ejemplo, asegúrate de haber completado la sección Comienza de esta guía. |
Puedes lograr interacciones más rápidas si no esperas el resultado completo de
la generación del modelo y, en su lugar, usas la transmisión para controlar los resultados parciales. Para
transmitir texto generado a partir de una instrucción que contiene texto, usa
streamResponse(to:) de la siguiente manera:
// Imports + initialization of Gemini API backend service + creation of model session
// Provide a prompt that contains text
let prompt = "Write a story about a magic backpack."
// To stream generated text output, call `streamResponse(to:)` with the text input
let stream = session.streamResponse(to: prompt)
for try await snapshot in stream {
print(snapshot.content)
}
¿Qué más puedes hacer?
Puedes usar varias opciones y funciones de configuración adicionales para tus experiencias híbridas:
Verifica si el modelo integrado en el dispositivo está disponible.
Determina si se usó la inferencia integrada en el dispositivo o en la nube.
Usa la configuración del modelo para controlar las respuestas (como la temperatura).
Funciones que aún no se admiten para la inferencia híbrida o integrada en el dispositivo
Como versión experimental, no se admiten todas las funciones de Firebase AI Logic ni de los modelos alojados en la nube.
Los siguientes no se admiten para implementaciones híbridas o integradas en el dispositivo: las plantillas de instrucciones de Gemini Live API y del servidor. Además, no se debe confiar en los tokens de recuento, ya que el recuento diferirá entre los modelos alojados en la nube y los integrados en el dispositivo, por lo que no hay un resguardo intuitivo.
Las siguientes funciones aún no son compatibles con la inferencia integrada en el dispositivo. Si quieres usar cualquiera de estas funciones, te recomendamos que uses solo un modelo alojado en la nube para obtener una experiencia más coherente.
Generar texto a partir de entradas multimodales, como imágenes, audio, video y documentos (PDF)
Generar contenido multimedia, como imágenes, audio o video
Enviar solicitudes que superen los 4,096 tokens (o aproximadamente 3,000 palabras en inglés)
Proporcionar al modelo integrado en el dispositivo herramientas integradas para ayudarlo a generar su respuesta (como la ejecución de código, el contexto de URL y la Fundamentación con la Búsqueda de Google)
La supervisión de la IA en la consola de Firebase no muestra ningún dato de la inferencia integrada en el dispositivo (incluidos los registros del dispositivo). Sin embargo, cualquier inferencia que use un modelo alojado en la nube se puede supervisar como cualquier otra inferencia a través de Firebase AI Logic.
Limitaciones adicionales
Además de lo anterior, la inferencia integrada en el dispositivo tiene las siguientes limitaciones:
El usuario final de tu app debe usar un dispositivo con Apple Intelligence habilitado.
Tu app puede ejecutar la inferencia integrada en el dispositivo solo cuando está en primer plano.
Envía comentarios sobre tu experiencia con Firebase AI Logic