Encuentra la solución de IA/AA adecuada para tu app

Esta guía está diseñada para ayudarte a integrar las soluciones de aprendizaje automático y de inteligencia artificial (IA/AA) generativa de Google en tus aplicaciones. Proporciona orientación para ayudarte a explorar las diversas soluciones de aprendizaje automático y de inteligencia artificial disponibles, y elegir la que mejor se adapte a tus necesidades. El objetivo de este documento es ayudarte a determinar qué herramienta usar y por qué, enfocándonos en tus necesidades y casos de uso.

Para ayudarte a seleccionar la solución de IA/AA más adecuada para tus requisitos específicos, este documento incluye una guía de soluciones. Si respondes una serie de preguntas sobre los objetivos y las limitaciones de tu proyecto, la guía te dirigirá a las herramientas y tecnologías más adecuadas.

Esta guía te ayuda a elegir la mejor solución de IA para tu app. Ten en cuenta los siguientes factores: el tipo de datos (texto, imágenes, audio, video), la complejidad de la tarea (desde un resumen simple hasta tareas complejas que requieren conocimientos especializados) y el tamaño de los datos (entradas cortas en comparación con documentos grandes). Esto te ayudará a decidir entre usar Gemini Nano en tu dispositivo o la IA basada en la nube de Firebase (Gemini Flash o Gemini Pro).

Diagrama de flujo de decisiones para casos de uso de IA generativa. Los criterios incluyen la modalidad (texto, imagen frente a audio, video, generación de imágenes), la complejidad (resumir, reescribir frente a conocimiento del dominio) y la ventana de contexto (entrada/salida breve frente a documentos o contenido multimedia extensos), lo que lleva a la IA generativa en el dispositivo (Gemini Nano) o a la lógica de IA de Firebase (Gemini Flash y Pro).
Figura 1: Esta ilustración representa una guía de soluciones de alto nivel para ayudarte a encontrar la solución de IA/AA adecuada para tu app para Android. Para obtener un desglose más detallado de tus opciones de IA y AA, consulta la guía de soluciones que se encuentra más adelante en este documento.

Aprovecha el poder de la inferencia integrada en el dispositivo

Cuando agregas funciones de IA y AA a tu app para Android, puedes elegir diferentes formas de entregarlas, ya sea en el dispositivo o con la nube.

Las soluciones integradas en el dispositivo, como Gemini Nano, ofrecen resultados sin costo adicional, brindan mayor privacidad del usuario y proporcionan una funcionalidad sin conexión confiable porque los datos de entrada se procesan de forma local. Estos beneficios pueden ser fundamentales para ciertos casos de uso, como el resumen de mensajes, lo que hace que la prioridad sea integrado en el dispositivo cuando se eligen las soluciones adecuadas.

Gemini Nano te permite ejecutar la inferencia directamente en un dispositivo con tecnología Android. Si trabajas con texto, imágenes o audio, comienza con las APIs de IA generativa de ML Kit para obtener soluciones listas para usar. Las APIs de IA generativa de ML Kit funcionan con Gemini Nano, aprovechan AICore como el servicio de sistema subyacente y se ajustan para tareas específicas integradas en el dispositivo. Las APIs de IA generativa de ML Kit son una ruta ideal para la producción de tus apps debido a su interfaz y escalabilidad de nivel superior. Estas APIs te permiten enviar solicitudes de lenguaje natural con entradas de texto y de imagen, lo que habilita una variedad de casos de uso, como la comprensión de imágenes, las traducciones cortas, los resúmenes guiados y mucho más.

Para las tareas tradicionales de aprendizaje automático, tienes la flexibilidad de implementar tus propios modelos personalizados. Proporcionamos herramientas sólidas como ML Kit, MediaPipe, LiteRT y funciones de entrega de Google Play para optimizar tu proceso de desarrollo.

Para las aplicaciones que requieren soluciones muy especializadas, puedes usar tu propio modelo personalizado, como Gemma o cualquier otro modelo que se adapte a tu caso de uso específico. Ejecuta tu modelo directamente en el dispositivo del usuario con LiteRT, que proporciona arquitecturas de modelos prediseñadas para un rendimiento optimizado.

También puedes considerar la posibilidad de crear una solución híbrida aprovechando los modelos integrados en el dispositivo y en la nube.

Las apps para dispositivos móviles suelen utilizar modelos locales para datos de texto pequeños, como conversaciones de chat o artículos de blog. Sin embargo, para fuentes de datos más grandes (como archivos PDF) o cuando se requieren conocimientos adicionales, puede ser necesaria una solución basada en la nube con modelos de Gemini más potentes.

Integra modelos avanzados de Gemini

Los desarrolladores de Android pueden integrar las capacidades avanzadas de IA generativa de Google, incluidos los potentes modelos Gemini Pro y Gemini Flash, en sus aplicaciones con el SDK de Firebase AI Logic. Este SDK está diseñado para necesidades de datos más grandes y proporciona capacidades y adaptabilidad ampliadas, ya que permite el acceso a estos modelos de IA multimodales y de alto rendimiento.

Con el SDK de Firebase AI Logic, los desarrolladores pueden realizar llamadas del cliente a los modelos de IA de Google con un esfuerzo mínimo. Estos modelos, como Gemini Pro y Gemini Flash, ejecutan la inferencia en la nube y permiten que las apps para Android procesen una variedad de entradas, incluidas imágenes, audio, video y texto. Gemini Pro se destaca en el razonamiento sobre problemas complejos y el análisis de datos extensos, mientras que la serie Gemini Flash ofrece una velocidad superior y una ventana de contexto lo suficientemente grande para la mayoría de las tareas.

Cuándo usar el aprendizaje automático tradicional

Si bien la IA generativa es útil para crear y editar contenido como texto, imágenes y código, muchos problemas del mundo real se resuelven mejor con las técnicas tradicionales de aprendizaje automático (AA). Estos métodos establecidos se destacan en tareas que implican predicción, clasificación, detección y comprensión de patrones dentro de los datos existentes, a menudo con mayor eficiencia, menor costo de procesamiento y una implementación más simple que los modelos generativos.

Los frameworks tradicionales de AA ofrecen soluciones sólidas, optimizadas y, a menudo, más prácticas para las aplicaciones enfocadas en analizar la entrada, identificar atributos o hacer predicciones basadas en patrones aprendidos, en lugar de generar resultados completamente nuevos. Las herramientas como ML Kit, LiteRT y MediaPipe de Google proporcionan potentes capacidades adaptadas para estos casos de uso no generativos, en especial en entornos de procesamiento perimetral y para dispositivos móviles.

Comienza tu integración de aprendizaje automático con ML Kit

ML Kit ofrece soluciones listas para producción y optimizadas para dispositivos móviles para tareas comunes de aprendizaje automático, sin necesidad de experiencia previa en AA. Este SDK para dispositivos móviles fácil de usar lleva la experiencia de Google en AA directamente a tus apps para iOS y Android, lo que te permite enfocarte en el desarrollo de funciones en lugar del entrenamiento y la optimización de modelos. ML Kit proporciona APIs precompiladas y modelos listos para usar para funciones como el escaneo de códigos de barras, el reconocimiento de texto (OCR), la detección de rostros, el etiquetado de imágenes, la detección y el seguimiento de objetos, la identificación de idiomas y la respuesta inteligente.

Por lo general, estos modelos están optimizados para la ejecución integrada en el dispositivo, lo que garantiza una latencia baja, funcionalidad sin conexión y mayor privacidad del usuario, ya que los datos suelen permanecer en el dispositivo. Elige ML Kit para agregar rápidamente funciones de AA establecidas a tu app para dispositivos móviles sin necesidad de entrenar modelos ni requerir resultados generativos. Es ideal para mejorar de manera eficiente las apps con capacidades "inteligentes" usando los modelos optimizados de Google o implementando modelos personalizados de TensorFlow Lite.

Comienza con nuestras guías y documentación completas en el sitio para desarrolladores de ML Kit.

Implementación de AA personalizada con LiteRT

Para obtener un mayor control o implementar tus propios modelos de AA, usa una pila de AA personalizada basada en LiteRT y los Servicios de Google Play. Esta pila proporciona los elementos esenciales para implementar funciones de AA de alto rendimiento. LiteRT es un kit de herramientas optimizado para ejecutar modelos de TensorFlow de manera eficiente en dispositivos perimetrales, incorporados y móviles con recursos limitados, lo que te permite ejecutar modelos mucho más pequeños y rápidos que consumen menos memoria, energía y almacenamiento. El entorno de ejecución de LiteRT está altamente optimizado para varios aceleradores de hardware (GPUs, DSPs, NPUs) en dispositivos perimetrales, lo que permite la inferencia de baja latencia.

Elige LiteRT cuando necesites implementar de manera eficiente modelos de AA entrenados (por lo general, para clasificación, regresión o detección) en dispositivos con potencia de procesamiento o duración de batería limitadas, como smartphones, dispositivos IoT o microcontroladores. Es la solución preferida para implementar modelos predictivos personalizados o estándar en el perímetro, donde la velocidad y la conservación de recursos son fundamentales.

Obtén más información sobre la implementación de AA con LiteRT.

Crea percepción en tiempo real en tus apps con MediaPipe

MediaPipe proporciona soluciones de aprendizaje automático de código abierto, multiplataforma y personalizables diseñadas para contenido multimedia en vivo y en transmisión. Benefíciate de las herramientas optimizadas y precompiladas para tareas complejas, como el monitoreo de manos, la estimación de poses, la detección de mallas faciales y la detección de objetos, que permiten una interacción de alto rendimiento y en tiempo real, incluso en dispositivos móviles.

Las canalizaciones basadas en gráficos de MediaPipe son altamente personalizables, lo que te permite adaptar soluciones para aplicaciones de Android, iOS, web, escritorio y backend. Elige MediaPipe cuando tu aplicación necesite comprender y reaccionar de inmediato a los datos de sensores en vivo, en especial, las transmisiones de video, para casos de uso como el reconocimiento de gestos, los efectos de RA, el seguimiento de actividad física o el control de avatares, todo enfocado en analizar e interpretar la entrada.

Explora las soluciones y comienza a compilar con MediaPipe.

Integra tu app con el asistente del dispositivo

Si bien la integración tradicional de IA se enfoca en "incorporar la IA a tu app", también puedes "incorporar tu app a la IA". Si contribuyes con la funcionalidad de tu app a las funciones de IA del sistema, permites que los asistentes a nivel del sistema (como Gemini) descubran e invoquen las capacidades de tu app de forma agentiva. AppFunctions es la forma principal de lograr esta integración, lo que permite que tu app se convierta en participante del ecosistema de IA de Android más amplio.

Cómo elegir un enfoque

Cuando incorporas IA para mejorar tu app para Android, debes considerar tres enfoques principales: realizar el procesamiento integrado en el dispositivo, aprovechar los modelos basados en la nube o agregar la funcionalidad de tu app a la IA a nivel del sistema. Las herramientas como ML Kit, Gemini Nano y LiteRT habilitan las capacidades integradas en el dispositivo, mientras que las APIs de Gemini Cloud con Firebase AI Logic proporcionan un potente procesamiento basado en la nube. AppFunctions representa una tercera ruta, que te permite "incorporar tu app a la IA" haciendo que sus funciones estén disponibles de forma agentiva para el sistema.

Ten en cuenta estos factores cuando elijas tu enfoque:

Factor Soluciones integradas en el dispositivo Soluciones de Cloud
Conectividad y funcionalidad sin conexión Ideal para el uso sin conexión; funciona sin conexión de red. Requiere una conexión de red para comunicarse con servidores remotos.
Privacidad de los datos Procesa y almacena datos sensibles de forma local en el dispositivo. Los datos se transmiten a la nube, lo que requiere confianza en la seguridad del proveedor.
Visibilidad y alcance La integración directa del SO (AppFunctions) permite que los asistentes descubran funciones. Por lo general, el descubrimiento se limita a la IU interna de la app o a integraciones de API específicas.
Capacidades de los modelos Optimizadas para una latencia baja y tareas específicas menos intensivas. Modelos potentes capaces de manejar alta complejidad y entradas grandes.
Consideraciones de costo No hay cargos directos por uso; utiliza el hardware existente del dispositivo. Por lo general, implica precios basados en el uso o costos de suscripción continuos.
Recursos del dispositivo Utiliza el almacenamiento local, la RAM y la duración de la batería. Impacto local mínimo; el trabajo pesado se descarga en el servidor.
Ajuste Flexibilidad limitada; restringida por las capacidades de hardware locales. Mayor flexibilidad para la personalización extensa y el ajuste a gran escala.
Coherencia multiplataforma La disponibilidad puede variar según el SO y la compatibilidad con el hardware support. Experiencia coherente en cualquier plataforma con acceso a Internet

Si consideras cuidadosamente los requisitos de tu caso de uso y las opciones disponibles, puedes encontrar la solución de IA/AA perfecta para mejorar tu app para Android y brindar experiencias inteligentes y personalizadas a tus usuarios.


Guía de soluciones de IA/AA

Esta guía de soluciones puede ayudarte a identificar las herramientas para desarrolladores adecuadas para integrar tecnologías de IA/AA en tus proyectos de Android.

¿Cuál es el objetivo principal de la función de IA?

  • A) ¿Generar contenido nuevo (texto, descripciones de imágenes) o realizar un procesamiento de texto simple (resumir, corregir o reescribir texto)? → Ve a IA generativa
  • B) ¿Analizar datos o entradas existentes para la predicción, la clasificación, la detección, la comprensión de patrones o el procesamiento de transmisiones en tiempo real (como video o audio)? → Ve a AA tradicional y percepción
  • C) ¿Mejorar la funcionalidad de tu app para integrarla con las funciones de IA del sistema (incorporar tu app a la IA)? → Ve a Incorporar tu app a la IA

AA tradicional y percepción

Necesitas analizar la entrada, identificar atributos o hacer predicciones basadas en patrones aprendidos, en lugar de generar resultados completamente nuevos.

¿Qué tarea específica realizas?

  • A) ¿Necesitas una integración rápida de funciones de AA comunes y precompiladas para dispositivos móviles? (p.ej., escaneo de códigos de barras, reconocimiento de texto (OCR), detección de rostros, etiquetado de imágenes, detección y seguimiento de objetos, ID de idioma, respuesta inteligente básica)
    • → Usa: ML Kit (APIs tradicionales)
    • Por qué: Es la integración más sencilla para las tareas de AA establecidas para dispositivos móviles, a menudo optimizadas para el uso integrado en el dispositivo (baja latencia, sin conexión, privacidad).
  • B) ¿Necesitas procesar datos de transmisión en tiempo real (como video o audio) para tareas de percepción? (p.ej., monitoreo de manos, estimación de poses, malla facial, detección y segmentación de objetos en tiempo real en video)
    • → Usa: MediaPipe
    • Por qué: Es un framework especializado para canalizaciones de percepción en tiempo real y de alto rendimiento en varias plataformas.
  • C) ¿Necesitas ejecutar de manera eficiente tu propio modelo de AA entrenado de forma personalizada (p.ej., para clasificación, regresión, detección) en el dispositivo, priorizando el rendimiento y el uso bajo de recursos?
    • → Usa: LiteRT (entorno de ejecución de TensorFlow Lite)
    • Por qué: Es un entorno de ejecución optimizado para implementar modelos personalizados de manera eficiente en dispositivos perimetrales y móviles (tamaño pequeño, inferencia rápida, aceleración de hardware).
  • D) ¿Necesitas entrenar tu propio modelo de AA personalizado para una tarea específica?
    • → Usa: LiteRT (entorno de ejecución de TensorFlow Lite) + entrenamiento de modelos personalizados
    • Por qué: Proporciona las herramientas para entrenar e implementar modelos personalizados, optimizados para dispositivos perimetrales y móviles.
  • E) ¿Necesitas clasificación de contenido avanzada, análisis de sentimiento o traducción de muchos idiomas con un alto nivel de matices?
    • Considera si los modelos tradicionales de AA (que se pueden implementar con LiteRT o la nube) se ajustan o si la CLN avanzada requiere modelos generativos (vuelve a Inicio y elige A). Para la clasificación, el análisis de opiniones o la traducción basados en la nube:
    • → Usa: Soluciones basadas en la nube (p.ej., API de Natural Language de Google Cloud, API de Translation de Google Cloud, a las que se puede acceder con un backend personalizado o la plataforma de agentes de Gemini Enterprise). (Menor prioridad que las opciones integradas en el dispositivo si la privacidad o la funcionalidad sin conexión son clave).
    • _Por qué_: Las soluciones en la nube ofrecen modelos potentes y una amplia compatibilidad con idiomas, pero requieren conectividad y pueden generar costos.

IA generativa

Necesitas crear contenido nuevo, resumir, reescribir o realizar tareas complejas de comprensión o interacción.

¿Necesitas que la IA funcione sin conexión, necesitas la máxima privacidad de los datos (mantener los datos del usuario en el dispositivo) o quieres evitar los costos de inferencia en la nube?

  • A) Sí, la funcionalidad sin conexión, la máxima privacidad o la ausencia de costos en la nube son fundamentales.
  • B) No, la conectividad está disponible y es aceptable, las capacidades y la escalabilidad de la nube son más importantes o las funciones específicas requieren la nube.

IA generativa integrada en el dispositivo (con Gemini Nano)

Advertencias: Requiere dispositivos Android compatibles, compatibilidad limitada con iOS y modelos menos potentes que sus contrapartes en la nube.

Con la API de Prompt de ML Kit, puedes enviar solicitudes de lenguaje natural con entradas de solo texto o de texto e imagen para una variedad de casos de uso, como la comprensión de imágenes, las traducciones cortas y los resúmenes guiados. Si tus casos de uso pueden satisfacerse con estos límites de tokens, las APIs de IA generativa de ML Kit son la mejor opción para la IA generativa integrada en el dispositivo. ML Kit también ofrece APIs optimizadas para tareas comunes, como el resumen y la respuesta inteligente.


IA generativa en la nube

Usa modelos más potentes, requiere conectividad, suele implicar costos de inferencia, ofrece un alcance más amplio del dispositivo y una coherencia multiplataforma (Android y iOS) más sencilla.

¿Cuál es tu prioridad: la facilidad de integración en Firebase o la máxima flexibilidad y control?

  • A) ¿Prefieres una integración más sencilla, una experiencia de API administrada y es probable que ya uses Firebase?
  • B) ¿Necesitas la máxima flexibilidad, acceso a la gama más amplia de modelos (incluidos los de terceros o personalizados), ajuste avanzado y estás dispuesto a administrar tu propia integración de backend (más compleja)?
    • → Usa: API de Gemini con un backend personalizado en la nube (con Google Cloud)
    • _Por qué_: Ofrece el mayor control, el acceso más amplio a los modelos y las opciones de entrenamiento personalizadas, pero requiere un esfuerzo significativo de desarrollo de backend. Adecuado para necesidades complejas, a gran escala o altamente personalizadas.

(Elegiste el SDK de Firebase AI Logic). ¿Qué tipo de tarea generativa y perfil de rendimiento necesitas?

  • A) ¿Necesitas un equilibrio entre rendimiento y costo, adecuado para la generación de texto general, el resumen o las aplicaciones de chat en las que la velocidad es importante?
  • B) ¿Necesitas mayor calidad y capacidad para la generación de texto compleja, el razonamiento, la CLN avanzada o el seguimiento de instrucciones?

AppFunctions

Necesitas mejorar la funcionalidad de tu app para integrarla con las funciones de IA del sistema (incorporar tu app a la IA).

  • → Usa: AppFunctions
  • Por qué: Permite que las funciones de IA del sistema, como Asistente, descubran e invoquen las capacidades de tu app.