Partager via


Corriger la grammaire et l’orthographe avec l’API Proofreader

L’API Proofreader est une API web expérimentale qui vous permet de corriger les erreurs de grammaire, d’orthographe et de ponctuation dans le texte à l’aide d’un modèle SLM (Small Language Model) intégré à Microsoft Edge, à partir du code JavaScript de votre site web ou de l’extension de navigateur.

Pour plus d’informations sur l’API Proofreader, consultez Explication de l’API Proofreader.

Contenu détaillé :

Disponibilité de l’API Proofreader

L’API Proofreader est disponible en préversion pour les développeurs dans les canaux Microsoft Edge Canary ou Dev, à compter de la version 142.

L’API Proofreader est optimisée pour corriger les erreurs de grammaire, d’orthographe et de ponctuation dans le contenu du texte. Pour en savoir plus sur une alternative pour les scénarios d’ingénierie d’invite plus personnalisés qui peuvent ne pas être pris en charge par ces API, consultez Demander un modèle de langage intégré avec l’API Prompt.

Déterminer l’API à utiliser

Pour tirer parti des fonctionnalités d’IA dans les sites web et les extensions de navigateur, vous pouvez également utiliser les méthodes suivantes :

L’API Proofreader utilise un modèle SLM (Small Language Model) qui s’exécute sur le même appareil que celui où les entrées et sorties du modèle sont utilisées (c’est-à-dire, localement). Cela présente les avantages suivants par rapport aux solutions basées sur le cloud :

  • Coût réduit : Il n’y a aucun coût associé à l’utilisation d’un service IA cloud.

  • Indépendance du réseau : Au-delà du téléchargement initial du modèle, il n’y a aucune latence réseau lors de l’invite du modèle, et le modèle peut également être utilisé lorsque l’appareil est hors connexion.

  • Confidentialité améliorée : Les données entrées dans le modèle ne quittent jamais l’appareil et ne sont pas collectées (par exemple, pour entraîner des modèles IA).

L’API Proofreader utilise un modèle fourni par Microsoft Edge et intégré au navigateur, qui offre des avantages supplémentaires par rapport aux solutions locales personnalisées telles que celles basées sur WebGPU, WebNN ou WebAssembly :

  • Coût unique partagé : Le modèle fourni par le navigateur est téléchargé lorsque l’API est appelée pour la première fois, puis le modèle est partagé entre tous les sites web qui s’exécutent dans le navigateur, ce qui réduit les coûts réseau pour l’utilisateur et le développeur.

  • Utilisation simplifiée pour les développeurs web : Le modèle intégré peut être exécuté à l’aide d’API web simples et ne nécessite pas d’expertise EN IA/ML ou en utilisant des infrastructures tierces.

Le modèle Phi-4-mini

L’API Proofreader utilise le modèle Phi-4-mini intégré à Microsoft Edge. Phi-4-mini est un modèle de petit langage puissant qui excelle dans les tâches textuelles. Pour en savoir plus sur Phi-4-mini et ses fonctionnalités, consultez le modèle carte sur microsoft/Phi-4-mini-instruct.

Clause d’exclusion de responsabilité

Comme d’autres modèles de langage, la famille de modèles Phi peut potentiellement se comporter de manière injuste, non fiable ou offensante. Pour en savoir plus, consultez Considérations relatives à l’IA responsable.

Configuration matérielle requise

La préversion du développeur de l’API Proofreader est destinée à fonctionner sur les appareils dotés de fonctionnalités matérielles qui produisent des sorties SLM (Small Language Model) avec une qualité et une latence prévisibles.

L’API Proofreader a les exigences suivantes :

  • Système d’exploitation : Windows 10 ou 11 et macOS 13.3 ou version ultérieure.

  • Stockage: Au moins 20 Go disponibles sur le volume qui contient votre profil Edge. Si le stockage disponible tombe en dessous de 10 Go, le modèle est supprimé pour s’assurer que les autres fonctionnalités du navigateur disposent de suffisamment d’espace pour fonctionner.

  • GPU : 5,5 Go de VRAM ou plus.

  • Réseau: Forfait de données illimité ou connexion non limitée. Le modèle n’est pas téléchargé si vous utilisez une connexion limitée.

Pour case activée si votre appareil prend en charge la préversion de l’API Proofreader pour les développeurs, consultez Activer l’API Proofreader ci-dessous et case activée la classe de performances de votre appareil.

En raison de la nature expérimentale de l’API Proofreader, vous pouvez observer des problèmes sur des configurations matérielles spécifiques. Si vous rencontrez des problèmes sur des configurations matérielles spécifiques, envoyez vos commentaires en ouvrant un nouveau problème dans le référentiel MSEdgeExplainers.

Disponibilité du modèle

Un téléchargement initial du modèle est nécessaire la première fois qu’un site web appelle une API IA intégrée. Vous pouvez surveiller le téléchargement du modèle à l’aide de l’option monitor lors de la création d’une session d’API Proofreader. Consultez Surveiller la progression du téléchargement du modèle ci-dessous.

Activer l’API Proofreader

Pour utiliser l’API Proofreader dans Microsoft Edge :

  1. Vérifiez que vous utilisez la dernière version de Microsoft Edge Canary ou Dev (version 142 ou ultérieure). Consultez Devenir un Insider Microsoft Edge.

  2. Dans Microsoft Edge Canary ou Dev, ouvrez un nouvel onglet ou une nouvelle fenêtre et accédez à edge://flags.

  3. Dans la zone de recherche, en haut de la page, entrez API Proofreader pour Phi mini.

    La page est filtrée pour afficher l’indicateur correspondant.

  4. Sélectionnez Activé en regard du mini-indicateur API Proofreader pour Phi :

    Page Indicateurs du navigateur

  5. Si vous le souhaitez, pour journaliser localement des informations qui peuvent être utiles pour le débogage des problèmes, activez également l’indicateur Activer sur le modèle IA de débogage de l’appareil .

  6. Redémarrez Microsoft Edge Canary ou Dev.

  7. Pour case activée si votre appareil répond à la configuration matérielle requise pour la préversion du développeur de l’API Proofreader, ouvrez un nouvel onglet, accédez à edge://on-device-internalset case activée la valeur de la classe de performances de l’appareil.

    Si la classe de performances de votre appareil est Élevée ou supérieure, l’API Proofreader est censée être prise en charge sur votre appareil. Si vous continuez à remarquer des problèmes, veuillez en déposer un nouveau.

Voir un exemple de travail

Pour voir l’API Proofreader en action et examiner le code existant qui utilise ces API :

  1. Activez l’API Proofreader, comme décrit ci-dessus.

  2. Dans le navigateur Microsoft Edge Canary ou Dev, ouvrez un onglet ou une fenêtre et accédez au terrain de jeu de l’API Proofreader.

  3. Dans la bannière d’informations en haut, case activée le status. Le status lit initialement le téléchargement de l’API et du modèle sur l’appareil :

    Indicateur d’état montrant la progression du téléchargement du modèle

    Une fois le modèle téléchargé, la bannière d’informations indique API sur l’appareil et modèle disponible, indiquant que l’API et le modèle peuvent être utilisés :

    Bannière d’informations montrant le message : API sur l’appareil et modèle prêt.

    Si le modèle ne démarre pas le téléchargement, redémarrez Microsoft Edge et réessayez.

    L’API Proofreader est prise en charge uniquement sur les appareils qui répondent à certaines exigences matérielles. Pour plus d’informations, consultez Configuration matérielle requise ci-dessus.

  4. Si vous le souhaitez, modifiez le contenu et les paramètres de la page. Par exemple, modifiez le texte pour qu’il soit relu ou la langue d’entrée attendue.

  5. Cliquez sur le bouton Vérification , en bas de la page.

    La sortie est générée dans la section réponse de la page :

    Page de démonstration proofreader, contenant les paramètres et un bouton Proofread

Voir aussi :

  • /built-in-ai/ - Fichier lisez-moi et code source pour la démonstration des terrains de jeu d’IA intégrés.

Utiliser l’API Proofreader

Vérifier si l’API est activée

Avant d’utiliser l’API Proofreader dans le code de votre site web, case activée que l’API est activée, en testant la présence de l’objet Proofreader :

if (!Proofreader) {
  // The Proofreader API is not available.
}

Vérifier si le modèle peut être utilisé

L’API Proofreader ne peut être utilisée que si l’appareil prend en charge l’exécution du modèle et après que le modèle de langage et le runtime du modèle ont été téléchargés par Microsoft Edge.

Pour case activée si l’API peut être utilisée, utilisez la availability() méthode :

const availability = await Proofreader.availability();

if (availability == "unavailable") {
  // The model is not available.
}

if (availability == "downloadable" || availability == "downloading") {
  // The model can be used, but it needs to be downloaded first.
}

if (availability == "available") {
  // The model is available and can be used.
}

Créer une session

La création d’une session indique au navigateur de charger le modèle de langage en mémoire, afin qu’il puisse être utilisé. Avant de pouvoir utiliser l’API Proofreader pour corriger le texte, créez une session à l’aide de la create() méthode :

// Create a Proofreader session.
const session = await Proofreader.create();

Pour personnaliser la session de modèle, vous pouvez passer des options à la create() méthode :

// Create a Proofreader session with options.
const session = await Proofreader.create(options);

Les options disponibles sont répertoriées ci-dessous :

Option Description
monitor Fonction utilisée pour surveiller la progression du téléchargement du modèle. Consultez Surveiller la progression du téléchargement du modèle ci-dessous.
expectedInputLanguages Tableau de chaînes de caractères. Chaque chaîne est une langue que le texte d’entrée est censé contenir. Par exemple : ["en", "es"].
Surveiller la progression du téléchargement du modèle

Vous pouvez suivre la progression du téléchargement du modèle à l’aide de l’option monitor . Cela est utile lorsque le modèle n’a pas encore été entièrement téléchargé sur l’appareil où il sera utilisé, pour informer les utilisateurs d’attendre.

// Create a Proofreader session with the monitor option to monitor the model
// download.
const session = await Proofreader.create({
  monitor: m => {
    // Use the monitor object argument to add an listener for the 
    // downloadprogress event.
    m.addEventListener("downloadprogress", event => {
      // The event is an object with the loaded and total properties.
      if (event.loaded == event.total) {
        // The model is fully downloaded.
      } else {
        // The model is still downloading.
        const percentageComplete = (event.loaded / event.total) * 100;
      }
    });
  }
});

Exécuter l’API Proofreader

Pour générer du texte révisé à l’aide de l’API Proofreader, une fois que vous avez créé la session de modèle correspondante, utilisez la session.proofread() méthode . Cette méthode retourne une promesse qui se résout une fois que l’API Proofreader a fini de générer du texte corrigé.

// Create a Proofreader session.
const session = await Proofreader.create();

// Correct the text and wait for the result.
const result = await session.proofread(textToBeCorrected);

// Use the result.
console.log(result);

Utiliser le résultat de l’API Proofreader

La session.proofread() méthode retourne une promesse qui se résout en un objet qui a les propriétés suivantes :

Propriété Description
correctedInput Texte corrigé, sous forme de chaîne.
corrections Tableau d’objets de correction.

Un objet de correction a les propriétés suivantes :

Propriété Description
startIndex Index du premier caractère, dans le texte d’entrée, qui a été corrigé.
endIndex Index du dernier caractère, dans le texte d’entrée, qui a été corrigé.
correction Chaîne qui remplace le texte incorrect.

L’exemple suivant montre comment utiliser le résultat de la session.proofread() méthode :

// Create a Proofreader session.
const session = await Proofreader.create();

// Correct the text and wait for the result.
const result = await session.proofread(textToBeCorrected);

// Log the corrected text.
console.log("Corrected text:", result.correctedInput);

// Log each correction.
result.corrections.forEach(({ startIndex, endIndex, correction }) => {
  const initialText = textToBeCorrected.slice(startIndex, endIndex);
  console.log(`Replaced text "${initialText}" (index ${startIndex} to ${endIndex}) with "${correction}"`);
});

Détruire une session

Détruisez la session pour informer le navigateur que vous n’avez plus besoin du modèle de langage, afin que le modèle puisse être déchargé de la mémoire.

Vous pouvez détruire une session de deux manières différentes :

  • À l’aide de la destroy() méthode .
  • À l’aide d’un AbortController.
Détruire une session à l’aide de la méthode destroy()

Vous pouvez utiliser la session.destroy() méthode pour détruire une session Proofreader :

const session = await Proofreader.create();

// Later, destroy the session by using the destroy method.
session.destroy();
Détruire une session à l’aide d’un AbortController

Vous pouvez également créer un AbortController objet, créer une Proofreader session, puis appeler abort():

// Create an AbortController object.
const controller = new AbortController();

// Create a Proofreader session and pass the 
// AbortController signal object by using the signal option.
const session = await Proofreader.create({ signal: controller.signal });

// Later, such as when the user interacts with the UI, destroy the session by
// calling the abort() function of the AbortController object.
controller.abort();

Envoyer des commentaires

Nous sommes très intéressés par la gamme de scénarios pour lesquels vous envisagez d’utiliser l’API Proofreader, tout problème avec l’API ou le modèle de langage, et si de nouvelles API spécifiques à la tâche seraient utiles.

Pour envoyer des commentaires sur vos scénarios et les tâches que vous souhaitez accomplir, ajoutez un commentaire au problème de commentaires de l’API Proofreader.

Si vous remarquez des problèmes lors de l’utilisation de l’API à la place, signalez-le sur le dépôt.

Vous pouvez également contribuer à la discussion sur la conception de l’API Proofreader dans le référentiel W3C Web Machine Learning Working Group.

Voir aussi