Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Les API d'IA générative de ML Kit exploitent la puissance de Gemini Nano pour aider vos applications à effectuer des tâches. Ces API offrent une qualité prête à l'emploi pour les cas d'utilisation courants grâce à une interface de haut niveau. Les API d'IA générative de ML Kit sont basées sur AICore, un service système Android qui permet l'exécution sur l'appareil de modèles de fondation d'IA générative pour faciliter des fonctionnalités telles que l'amélioration des fonctionnalités des applications et la protection de la confidentialité des utilisateurs en traitant les données localement.
Les API ML Kit GenAI sont compatibles avec les fonctionnalités suivantes :
Résumé : résumer des articles ou des conversations sous forme de liste à puces.
Relecture : peaufinez les contenus courts en améliorant la grammaire et en corrigeant les fautes d'orthographe.
Réécriture : réécrivez des messages courts dans différents tons ou styles.
Comme les autres fonctionnalités ML Kit existantes, les API GenAI s'exécutent entièrement sur l'appareil et offrent donc les avantages suivants :
Les données d'entrée, d'inférence et de sortie sont traitées en local.
Les fonctionnalités restent les mêmes sans connexion Internet fiable
Aucun coût de serveur supplémentaire n'est facturé pour chaque appel d'API.
De plus, comme les API d'IA générative sont basées sur AICore et optimisées par Gemini Nano, chaque application peut utiliser le modèle Gemini Nano partagé qui se trouve sur l'appareil. Cela évite d'avoir à attendre le téléchargement d'un modèle s'il existe déjà sur un appareil, ce qui permet d'économiser de l'espace de stockage. En savoir plus sur la façon dont AICore isole les requêtes pour protéger la confidentialité
Streaming ou non-streaming
Les API d'IA générative de ML Kit proposent des options de streaming et sans streaming pour recevoir les résultats. L'API de streaming fournit des réponses de manière incrémentielle à mesure qu'elles sont générées, ce qui permet d'obtenir un flux de données continu. En revanche, l'API non streaming attend que la réponse entière soit complète avant de la renvoyer sous forme de bloc unique.
Choisissez l'API de streaming pour les réponses longues, car elle permet d'obtenir un premier retour plus rapidement. L'API sans flux continu est plus adaptée aux réponses courtes ou au traitement des résultats par lots.
Vérifier si l'appareil est compatible
Les API GenAI de ML Kit sont disponibles sur les appareils suivants. Nous prévoyons d'étendre la compatibilité à d'autres appareils :
Google : Pixel 10, Pixel 10 Pro, Pixel 10 Pro XL, Pixel 10 Pro Fold, Pixel 9, Pixel 9 Pro, Pixel 9 Pro XL, Pixel 9 Pro Fold
vivo : vivo X200, vivo X200 Pro, vivo X Fold3 Pro, vivo X Fold5
Xiaomi : Xiaomi 15 Ultra, Xiaomi 15
La disponibilité de la prise en charge de certaines langues peut varier en fonction de la configuration de l'appareil et des modèles qui y ont été téléchargés.
Quota par application
AICore applique un quota d'inférence par application. Cela signifie que si vous effectuez trop de requêtes API GenAI sur une courte période, vous recevrez une réponse ErrorCode.BUSY. Lorsque vous recevez une telle erreur, envisagez d'utiliser un intervalle exponentiel entre les tentatives pour relancer la requête.
Utilisation en arrière-plan
L'inférence de l'API GenAI n'est autorisée que lorsque l'application est l'application de premier plan. L'utilisation de l'API lorsque l'application n'est pas au premier plan, y compris l'utilisation d'un service de premier plan, entraînera une réponse ErrorCode.BUSY en raison du manque actuel de quota d'utilisation en arrière-plan.
Exemple de code
Pour obtenir ce code, consultez les exemples suivants :
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/09/04 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Il n'y a pas l'information dont j'ai besoin","missingTheInformationINeed","thumb-down"],["Trop compliqué/Trop d'étapes","tooComplicatedTooManySteps","thumb-down"],["Obsolète","outOfDate","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Mauvais exemple/Erreur de code","samplesCodeIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 2025/09/04 (UTC)."],[],[],null,["| This API is offered in beta, and is not subject to any SLA or deprecation policy. Changes may be made to this API that break backward compatibility.\n\nML Kit's GenAI APIs harness the power of [Gemini Nano](https://developer.android.com/ai/gemini-nano/) to help your apps\nperform tasks. These APIs provide out-of-the-box quality for popular use cases\nthrough a high-level interface. The ML Kit GenAI APIs are built on top of\n[AICore](https://android-developers.googleblog.com/2023/12/a-new-foundation-for-ai-on-android.html), an Android system service that enables on-device execution of GenAI\nfoundation models to facilitate features such as enhanced app functionality and\nimproved user privacy by processing data locally.\n\nThe ML Kit GenAI APIs support the following features:\n\n- [**Summarization**](/ml-kit/genai/summarization/android): Summarize articles or chat conversations as a bulleted list.\n- [**Proofreading**](/ml-kit/genai/proofreading/android): Polish short content by refining grammar and fixing spelling errors.\n- [**Rewriting**](/ml-kit/genai/rewriting/android): Rewrite short messages in different tones or styles.\n- [**Image description**](/ml-kit/genai/image-description/android): Generate a short description of a given image.\n\nBenefits of GenAI APIs\n\nSimilar to other existing ML Kit features, GenAI APIs run entirely on-device and\nthus provide the following benefits:\n\n- Input, inference, and output data is processed locally\n- Functionality remains the same without reliable internet connection\n- No additional server cost incurred for each API call\n\nIn addition, since GenAI APIs are built on top of AICore and powered by Gemini\nNano, every app is able to use the shared Gemini Nano model that is on the\ndevice. This avoids the need to have to wait for a model to be downloaded if it\nalready exists on a device, and in turn conserves storage space. Learn [more\nabout how AICore isolates requests to protect privacy](https://android-developers.googleblog.com/2024/10/introduction-to-privacy-and-safety-gemini-nano.html).\n\nStreaming versus non-streaming\n\nML Kit GenAI APIs offer both streaming and non-streaming options for receiving\nresults. The streaming API delivers responses incrementally as they are\ngenerated, providing a continuous flow of data. In contrast, the non-streaming\nAPI waits until the entire response is complete before returning it as a single\nblock.\n\nChoose the streaming API for lengthy responses, as it allows for quicker initial\nfeedback. The non-streaming API is more suitable for short responses or when\nprocessing results in batches.\n\nDevice support\n\nThe ML Kit GenAI APIs are available on the following devices, with\nplans to expand support to additional devices:\n\n- Google: Pixel 10, Pixel 10 Pro, Pixel 10 Pro XL, Pixel 10 Pro Fold, Pixel 9, Pixel 9 Pro, Pixel 9 Pro XL, Pixel 9 Pro Fold\n- Honor: Honor 400 Pro, Magic 6 Pro, Magic 6 RSR, Magic 7, Magic 7 Pro, Magic V3\n- iQOO: iQOO 13\n- Motorola: Razr 60 Ultra\n- OnePlus: OnePlus 13, OnePlus 13s\n- OPPO: Find N5, Find X8, Find X8 Pro\n- POCO: POCO F7 Ultra\n- realme: realme GT 7 Pro\n- Samsung: Galaxy S25, Galaxy S25+, Galaxy S25 Ultra\n- vivo: vivo X200, vivo X200 Pro, vivo X Fold3 Pro, vivo X Fold5\n- Xiaomi: Xiaomi 15 Ultra, Xiaomi 15\n\nAvailability of specific language support may vary depending on the particular\ndevice's configuration and the models that have been downloaded to the device.\n\nQuota per application\n\nAICore enforces an inference quota per app. This means that making too many\nGenAI API requests in a short period will result in an `ErrorCode.BUSY`\nresponse. When receiving such an error, consider using exponential backoff to\nretry the request.\n\nBackground usage\n\nGenAI API inference is permitted only when the app is the top foreground\napplication. Using the API when the app is not in the foreground, including\nusing a foreground service, will result in an `ErrorCode.BUSY` response due to\nthe current lack of background usage quota.\n\nSample code\n\nTo get this code, check out the following samples:\n\n- [ML Kit GenAI Samples](https://github.com/googlesamples/mlkit/tree/master/android/genai)\n- [Android AI Catalog Sample](https://github.com/android/ai-samples/tree/main/ai-catalog)"]]