Premiers pas avec l'IA intégrée

Alexandra Klepper
Alexandra Klepper

Publié le 12 décembre 2024, dernière mise à jour le 20 mai 2025

Grâce aux API d'IA intégrées, votre application Web peut effectuer des tâches basées sur l'IA sans avoir à déployer ni à gérer ses propres modèles d'IA. Nous nous efforçons de normaliser ces API sur tous les navigateurs.

Conditions requises

Pour utiliser l'IA intégrée, vous devez respecter certaines exigences concernant les modèles et le matériel.

Modèles

Les API Translator et Language Detector utilisent des modèles experts. Toutes les autres API utilisent un modèle de langage conçu pour s'exécuter localement sur les ordinateurs de bureau et portables.

Les API Summarizer, Writer, Rewriter et Proofreader ne sont compatibles qu'avec la modalité texte-texte. L'API Prompt possède des fonctionnalités multimodales.

Gemini Nano dans Chrome

Chrome utilise les modèles de langage Gemini Nano. Gemini Nano n'est pas disponible sur les appareils mobiles.

À partir de Chrome 140, Gemini Nano est compatible avec l'anglais, l'espagnol et le japonais pour le texte d'entrée et de sortie.

Avant d'utiliser les API d'IA intégrées, acceptez le Règlement de Google sur les utilisations interdites de l'IA générative.

Matériel

Les exigences suivantes s'appliquent aux développeurs et aux utilisateurs qui utilisent des fonctionnalités à l'aide de ces API dans Chrome. Il est possible que les exigences de fonctionnement soient différentes dans les autres navigateurs.

Les API Language Detector et Translator fonctionnent dans Chrome sur ordinateur. Ces API ne fonctionnent pas sur les appareils mobiles.

Les API Prompt, Summarizer, Writer, Rewriter et Proofreader fonctionnent dans Chrome lorsque les conditions suivantes sont remplies :

  • Système d'exploitation : Windows 10 ou 11 ; macOS 13 ou version ultérieure (Ventura et versions ultérieures) ; Linux ; ou ChromeOS (à partir de la plate-forme 16389.0.0 et versions ultérieures) sur les appareils Chromebook Plus. Chrome pour Android, iOS et ChromeOS sur les appareils non Chromebook Plus n'est pas encore compatible avec les API qui utilisent Gemini Nano.
  • Stockage : au moins 22 Go d'espace libre sur le volume contenant votre profil Chrome.
  • GPU ou CPU : les modèles intégrés peuvent s'exécuter avec un GPU ou un CPU.
    • GPU : strictement plus de 4 Go de VRAM.
    • CPU : 16 Go de RAM ou plus et 4 cœurs de processeur ou plus.
    • Remarque : L'API Prompt avec entrée audio nécessite un GPU.
  • Réseau : données illimitées ou connexion non limitée.

La taille exacte de Gemini Nano peut varier à mesure que le navigateur met à jour le modèle. Pour déterminer la taille actuelle, accédez à chrome://on-device-internals.

Démarrer la création

Plusieurs API d'IA intégrées sont disponibles à différentes étapes du développement. Certaines sont disponibles dans la version stable de Chrome, d'autres pour les participants aux tests d'origine et d'autres encore uniquement pour les participants au programme d'aperçu anticipé .

Chaque API dispose de son propre ensemble d'instructions pour commencer et télécharger le modèle, à la fois pour le prototypage local et dans les environnements de production avec les tests d'origine.

Toutes ces API peuvent être utilisées lors de la création d'extensions Chrome.

Téléchargement de modèles

Les API sont intégrées à Chrome, tout comme les modèles. La première fois qu'un utilisateur interagit avec ces API, le modèle doit être téléchargé dans le navigateur.

Pour déterminer si une API est utilisable et prête, appelez la fonction asynchrone availability(), qui renvoie une promesse avec l'une des valeurs suivantes :

  • "unavailable" : l'appareil de l'utilisateur ou les options de session demandées ne sont pas compatibles. L'appareil peut avoir une puissance ou un espace disque insuffisants.
  • "downloadable" : des téléchargements supplémentaires sont nécessaires pour créer une session, qui peut inclure un modèle expert, un modèle de langage ou un réglage précis. L'activation de l'utilisateur peut être requise pour appeler create().
  • "downloading" : les téléchargements sont en cours et doivent être terminés avant que vous puissiez utiliser une session.
  • "available" : vous pouvez créer une session immédiatement.

Certaines API nécessitent des options supplémentaires lors de l'appel de la disponibilité. Par exemple, l'API Prompt nécessite de déclarer la compatibilité linguistique :

// Makes sure the model is available for English and Japanese.
await LanguageModel.availability({ languages: ["en", "ja"] });

Activation de l'utilisateur

Si l'appareil est compatible avec les API d'IA intégrées, mais que le modèle n'est pas encore téléchargé, l'utilisateur doit interagir de manière significative avec votre page pour que votre application démarre une session avec create().

Utilisez la UserActivation.isActive propriété pour confirmer qu'un utilisateur a interagi directement avec la page depuis la fin du chargement de la page. Cela peut inclure un appui, un clic, une pression sur une touche, mousedown, ou d'autres événements d'activation persistants.

// Check for user activation.
if (navigator.userActivation.isActive) {
  // Create an instance of a built-in API
}

Par exemple, avec l'API Summarizer, vous pouvez demander aux utilisateurs d'interagir avec un bouton "Résumer" pour activer Summarizer.create(), ou vous pouvez créer le résumé une fois qu'un utilisateur a commencé à saisir du texte, un événement keydown.

Utiliser des API sur localhost

Toutes les API sont disponibles sur localhost dans Chrome.

  1. Accédez à chrome://flags/#optimization-guide-on-device-model.
  2. Sélectionnez Activé.
  3. Cliquez sur Relancer ou redémarrez Chrome.

Pour les API qui utilisent Gemini Nano, vous devez également définir chrome://flags/#prompt-api-for-gemini-nano sur Activé ou Multilingue activé. Vous pouvez vérifier que le modèle a été téléchargé et fonctionne comme prévu dans la console DevTools. Exécutez await LanguageModel.availability(); dans la console.

Résoudre les problèmes liés à localhost

Si les indicateurs n'apparaissent pas dans chrome://flags, assurez-vous d'avoir téléchargé la dernière version de Chrome.

Si le modèle ne fonctionne pas comme prévu, procédez comme suit :

  1. Relancez Chrome.
  2. Accédez à chrome://on-device-internals.
  3. Sélectionnez l'onglet État du modèle et assurez-vous qu'il n'y a pas d'erreurs.
  4. Ouvrez DevTools et saisissez LanguageModel.availability(); dans la console. La valeur available doit être renvoyée.

Si nécessaire, attendez un peu, puis répétez ces étapes.

Processus de normalisation

Nous nous efforçons de normaliser ces API, afin qu'elles fonctionnent sur tous les navigateurs. Cela signifie que nous avons proposé les API à la communauté des plates-formes Web et que nous les avons transférées au W3C Web Incubator Community Group pour une discussion plus approfondie.

Nous demandons des commentaires au W3C, à Mozilla et à WebKit pour chaque API.

Participer et envoyer des commentaires

Si vous essayez l'IA intégrée et que vous avez des commentaires, n'hésitez pas à nous en faire part.