Gemini Nano te permite ofrecer experiencias de IA generativa enriquecidas sin necesidad de una conexión de red ni de enviar datos a la nube. La IA integrada en el dispositivo es una excelente solución para los casos de uso en los que tus principales preocupaciones son el bajo costo y las protecciones de privacidad.
Para los casos de uso integrados en el dispositivo, puedes aprovechar el modelo de base Gemini Nano de Google. Gemini Nano se ejecuta en el servicio del sistema AICore de Android, que aprovecha el hardware del dispositivo para permitir una baja latencia de inferencia y mantener el modelo actualizado.
APIs de IA generativa de ML Kit
Las APIs de IA generativa de ML Kit aprovechan la potencia de Gemini Nano para ayudar a tus apps a realizar tareas de IA generativa integrada en el dispositivo. Estas APIs se compilan sobre AICore, un servicio del sistema de Android que permite la ejecución de modelos de base de IA generativa en el dispositivo para facilitar funciones como las funcionalidades de la app mejoradas y una mayor privacidad del usuario a través del procesamiento de datos de forma local. Obtén más información.
Características clave
El ML Kit organiza sus capacidades de IA generativa en las siguientes categorías:
Generación y agentes personalizados
Trabaja directamente con el modelo de base de Gemini Nano para casos de uso personalizados:
- Acceso directo al modelo (con la clase
GenerativeModel): Genera texto o un resultado estructurado con tipo a partir de instrucciones solo de texto o instrucciones multimodales personalizadas, o administra tu propio historial de chat de varios turnos directamente con un objetoList<Content>con rolesUSERyMODELy un valorsessionId. - Flujos de trabajo basados en agentes (con la clase
AgentRunner): Se basan en la claseGenerativeModely automatizan la administración de sesiones de varios turnos (incluido el historial de conversaciones en la memoria) y los bucles de llamadas a herramientas de varios pasos.
Voz y audio
Transcribe, traduce y sintetiza audio de voz integrado en el dispositivo:
- Reconocimiento de voz: Transcribe contenido de audio hablado a texto en el mismo idioma.
- Traducción de voz: Traduce audio hablado a texto en otro idioma en tiempo real.
- Text-to-Speech: Sintetiza audio de voz con sonido natural a partir de texto.
Tareas de texto y de imagen
Usa APIs específicas para tareas optimizadas para tareas comunes de visión, escritura y búsqueda a través de una interfaz de alto nivel:
- Descripción de la imagen: Genera una descripción breve de una imagen determinada.
- Resumen: Resume artículos o conversaciones como una lista con viñetas.
- Revisión de texto: Revisa mensajes de chat cortos.
- Reescritura: Reescribe mensajes de chat cortos en diferentes tonos o estilos.
- Búsqueda semántica: Genera embeddings de vectores para texto e imágenes con la API de Embedding y vincúlalos con AppSearch de AndroidX para encontrar contenido por significado.
Habilidades de Android
Ver en GitHubUsa la API de Prompt de ML Kit
android skills add ml-kit-genai-prompt-apiArquitectura a través de AICore
Como módulo a nivel del sistema, accedes a AICore a través de una serie de APIs para ejecutar la inferencia integrado en el dispositivo. Además, AICore tiene varias funciones de seguridad integradas, lo que garantiza una evaluación exhaustiva con nuestros filtros de seguridad. En el siguiente diagrama, se describe cómo una app accede a AICore para ejecutar Gemini Nano integrado en el dispositivo.
Mantener la privacidad y la seguridad de los datos de los usuarios
La IA generativa integrada en el dispositivo ejecuta instrucciones de forma local, lo que elimina las llamadas al servidor. Si bien esto quita la latencia de red, la velocidad de inferencia depende del hardware del dispositivo. Este enfoque mejora la privacidad, ya que mantiene los datos sensibles en el dispositivo, habilita la funcionalidad sin conexión y reduce los costos de inferencia.
AICore se adhiere a los principios de Private Compute Core, con las siguientes características clave:
- Vinculación de paquetes restringida: AICore está aislado de la mayoría de los demás paquetes, con excepciones limitadas para paquetes específicos del sistema. Cualquier modificación en esta lista de entidades permitidas solo puede realizarse durante una actualización OTA completa de Android.
- Acceso indirecto a Internet: AICore no tiene acceso directo a Internet. Todas las solicitudes de Internet, incluidas las descargas de modelos, se enrutan a través del APK complementario de código abierto de Private Compute Services. Las APIs de Private Compute Services deben demostrar explícitamente su naturaleza centrada en la privacidad.
Además, AICore está diseñado para aislar cada solicitud y no almacena ningún registro de los datos de entrada ni de los resultados después de procesarlos, lo que protege la privacidad del usuario. Lee la entrada de blog Introducción a la privacidad y la seguridad de Gemini Nano para obtener más información.
Beneficios de acceder a modelos de base de IA con AICore
AICore permite que el SO Android proporcione y administre modelos de base de IA. Esto reduce significativamente el costo de usar estos modelos grandes en tu app, principalmente debido a lo siguiente:
- Facilidad de implementación: AICore administra la distribución de Gemini Nano y controla las actualizaciones futuras. No tienes que preocuparte por descargar o actualizar modelos grandes a través de la red, ni por el impacto en el presupuesto de memoria de disco y de tiempo de ejecución de tu app.
- Inferencia acelerada: AICore aprovecha el hardware integrado en el dispositivo para acelerar la inferencia. Tu app obtiene el mejor rendimiento en cada dispositivo, y no necesitas preocuparte por las interfaces de hardware subyacentes.
Cuándo usar la inferencia híbrida
Aunque Gemini Nano es ideal para tareas sin conexión y sensibles a la privacidad, tiene restricciones integradas en el dispositivo, como límites de tokens, limitaciones de hardware del dispositivo y límites de capacidad del modelo. En estas situaciones, puedes usar la inferencia híbrida para balancear las cargas de trabajo de IA entre el dispositivo local y la nube.
Para garantizar una experiencia del usuario coherente en todos los dispositivos y controlar consultas complejas, puedes usar la API híbrida de Firebase AI Logic. Esto permite que tu app haga lo siguiente:
- Respaldo elegante: Enruta automáticamente las solicitudes a los modelos de Gemini Flash o Gemini Pro en la nube cuando Gemini Nano no esté disponible o no sea compatible con el dispositivo del usuario.
- Aplica la seguridad: Protege la inferencia en la nube con la Verificación de aplicaciones de Firebase (y sus proveedores de certificación compatibles, como Play Integrity) y mantén las instrucciones del sistema sensibles del lado del servidor.