Démarrage rapide : Vérifier l’orthographe avec l’API REST Vérification orthographique Bing et Python
Avertissement
Le 30 octobre 2020, les API de recherche Bing sont passées des services Azure AI aux services de recherche Bing. Cette documentation est fournie à des fins de référence uniquement. Pour accéder à la documentation mise à jour, consultez la documentation de l’API Recherche Bing. Pour obtenir des instructions sur la création de nouvelles ressources Azure pour Recherche Bing, consultez Créer une ressource Recherche Bing à l’aide de Place de marché Azure.
Utilisez ce guide de démarrage rapide pour effectuer votre premier appel à l’API REST Vérification orthographique Bing. Cette simple application Python envoie une demande à l’API et retourne une liste de suggestions de corrections.
Bien que cette application soit écrite en Python, l’API est un service web RESTful compatible avec la plupart des langages de programmation. Le code source de cette application est disponible sur GitHub
Prérequis
- Python 3.x
Créer une ressource Azure
Commencez à utiliser l’API Vérification orthographique Bing en créant une des ressources Azure ci-dessous :
Ressource Vérification orthographique Bing
- Disponible via le portail Azure jusqu’à ce que vous supprimiez la ressource.
- Utilisez le niveau tarifaire Gratuit pour tester le service, puis effectuez par la suite une mise à niveau vers un niveau payant pour la production.
- L’API Vérification orthographique Bing est aussi proposée à certains niveaux de la ressource Recherche Bing v7.
- Disponible via le portail Azure jusqu’à ce que vous supprimiez la ressource.
- Utilisez la même clé et le même point de terminaison pour vos applications, sur plusieurs services Azure AI.
Initialiser l’application
Créez un fichier Python dans votre éditeur ou IDE favori, puis ajoutez les instructions d’importation suivantes :
import requests import json
Créez des variables pour le texte dont vous souhaitez vérifier l’orthographe, votre clé d’abonnement et votre point de terminaison Vérification orthographique Bing. Vous pouvez utiliser le point de terminaison global dans le code suivant, ou le point de terminaison de sous-domaine personnalisé affiché dans le portail Azure pour votre ressource.
api_key = "<ENTER-KEY-HERE>" example_text = "Hollo, wrld" # the text to be spell-checked endpoint = "https://api.cognitive.microsoft.com/bing/v7.0/SpellCheck"
Créer les paramètres de la demande
Créez un dictionnaire avec
text
comme clé et votre texte comme valeur.data = {'text': example_text}
Ajoutez les paramètres de votre demande :
Attribuez le code de votre marché au paramètre
mkt
à l’aide de l’opérateur=
. Le code du marché correspond au code du pays ou de la région depuis lesquels vous effectuez la demande.Ajoutez le paramètre
mode
avec l’opérateur&
, puis attribuez le mode de vérification orthographique. Le mode peut être soitproof
(détecte la plupart des erreurs d’orthographe et de grammaire) ouspell
(détecte la plupart des erreurs d’orthographe mais pas autant d’erreurs de grammaire).
params = { 'mkt':'en-us', 'mode':'proof' }
Ajoutez un en-tête
Content-Type
et votre clé d’abonnement à l’en-têteOcp-Apim-Subscription-Key
.headers = { 'Content-Type': 'application/x-www-form-urlencoded', 'Ocp-Apim-Subscription-Key': api_key, }
Envoyer la demande et lire la réponse
Envoyez la demande POST à l’aide de la bibliothèque requests.
response = requests.post(endpoint, headers=headers, params=params, data=data)
Obtenez la réponse JSON et affichez-la.
json_response = response.json() print(json.dumps(json_response, indent=4))
Exécution de l'application
Si vous utilisez la ligne de commande, utilisez la commande suivante pour exécuter l’application :
python <FILE_NAME>.py
Exemple de réponse JSON
Une réponse correcte est retournée au format JSON, comme dans l’exemple suivant :
{
"_type": "SpellCheck",
"flaggedTokens": [
{
"offset": 0,
"token": "Hollo",
"type": "UnknownToken",
"suggestions": [
{
"suggestion": "Hello",
"score": 0.9115257530801
},
{
"suggestion": "Hollow",
"score": 0.858039839213461
},
{
"suggestion": "Hallo",
"score": 0.597385084464481
}
]
},
{
"offset": 7,
"token": "wrld",
"type": "UnknownToken",
"suggestions": [
{
"suggestion": "world",
"score": 0.9115257530801
}
]
}
]
}