Envoyer des requêtes personnalisées avec l'accès direct au modèle Gemini Nano

Grâce à l'accès direct au modèle de ML Kit (com.google.mlkit:genai-prompt), vous pouvez envoyer des requêtes personnalisées en langage naturel sur l'appareil au modèle de fondation Gemini Nano via la classe GenerativeModel. L'accès direct au modèle accepte les entrées textuelles ou multimodales (image et texte), prend en charge les conversations multitours gérées par le client (List<Content> avec les rôles USER et MODEL et sessionId) et émet une sortie textuelle ou une sortie structurée typée.

Vous pouvez utiliser l'accès direct au modèle pour différents cas d'utilisation, y compris les suivants :

Cas d'utilisation

Exemple

Compréhension des images

Analyser des photos pour les classer, par exemple "animaux de compagnie", "nourriture" ou "voyage".

Traductions courtes

Traduire des messages courts entre un livreur et un client.

Résumé guidé

Résumer les avis sur un restaurant en fonction d'un centre d'intérêt spécifique de l'utilisateur.

Extraction d'entités

Extraire les détails importants d'un événement à venir à partir d'un fil de discussion par e-mail.

Inspiration pour la génération de contenu

Suggérer des requêtes pour une entrée de journal.

Numérisation intelligente de documents

Extraire et catégoriser des éléments à partir d'une image de reçu.

Classification de texte

Classer les avis clients dans une catégorie positive, neutre ou négative.

Accès direct au modèle ou API spécifiques à une tâche

En plus de l'accès direct au modèle de fondation Gemini Nano pour les prompts personnalisés, ML Kit fournit des API préconfigurées pour les tâches dédiées à la reconnaissance vocale, aux images et au texte : Reconnaissance vocale, Description d'image, Synthèse, Relecture, Reformulation, etc. Les API Tasks de texte et d'image utilisent des types de caractéristiques spécifiques aux tâches et des adaptateurs LoRA affinés en plus du modèle de base partagé. Le tableau suivant présente les avantages de chaque approche :

Décision d'achat

Accès direct au modèle (GenerativeModel)

API de tâches de texte et d'image

Effort d'intégration

Élevée.

Nécessite plus d'efforts pour l'implémentation, en raison du prompt engineering et de l'assurance qualité.

faible.

Nécessite moins d'efforts, car ces API utilisent des types de caractéristiques spécifiques à la tâche et des adaptateurs LoRA affinés en plus du modèle de base. Pas besoin de travailler directement avec le LLM.

Flexibilité

Plus de flexibilité, car vous pouvez personnaliser les prompts, gérer le contexte multitour, appliquer des schémas structurés typés ou créer des workflows agentiques de niveau supérieur (AgentRunner) en plus de GenerativeModel.

Moins de flexibilité. Chaque API spécifique à une tâche dispose d'un réglage LoRA fixe et d'un prompt intégré présentant les caractéristiques suivantes :

  • La description de l'image est générique et courte.
  • Les résumés ne peuvent comporter qu'un à trois points.
  • La réécriture n'est compatible qu'avec les styles prédéfinis.

En règle générale, utilisez l'accès direct au modèle lorsque vous avez besoin de plus de personnalisation et de flexibilité, et utilisez les API spécifiques aux tâches pour les tâches standards qui ne nécessitent pas de logique personnalisée.

Exemple de code