Condividi tramite


Guida introduttiva: Controllare l'ortografia con l'API REST Controllo ortografico Bing e Python

Avviso

Il 30 ottobre 2020 le API di Ricerca Bing spostate dai servizi di intelligenza artificiale di Azure ai servizi Ricerca Bing. Questa documentazione viene fornita solo per informazioni di riferimento. Per la documentazione aggiornata, vedere la documentazione dell'API di ricerca Bing. Per istruzioni sulla creazione di nuove risorse di Azure per la ricerca Bing, vedere Creare una risorsa Ricerca Bing tramite la Azure Marketplace.

Usare questa guida introduttiva per effettuare la prima chiamata all'API REST Controllo ortografico Bing. Questa semplice applicazione Python invia una richiesta all'API e restituisce un elenco di correzioni suggerite.

Anche se l'applicazione è scritta in Python, l'API è un servizio Web RESTful compatibile con la maggior parte dei linguaggi di programmazione. Il codice sorgente di questa applicazione è disponibile in GitHub

Prerequisiti

Creare una risorsa di Azure

Per iniziare a usare l'API Controllo ortografico Bing, creare una delle seguenti risorse di Azure:

Risorsa Controllo ortografico Bing

  • disponibile tramite il portale di Azure fino a quando la risorsa non viene eliminata.
  • Usare il piano tariffario gratuito per provare il servizio ed eseguire in un secondo momento l'aggiornamento a un livello a pagamento per la produzione.
  • L'API Controllo ortografico Bing è disponibile anche in alcuni livelli della risorsa Ricerca Bing v7.

Risorsa multi-servizio

  • disponibile tramite il portale di Azure fino a quando la risorsa non viene eliminata.
  • Usare la stessa chiave e l'endpoint per le applicazioni in più servizi di intelligenza artificiale di Azure.

Inizializzare l'applicazione

  1. Creare un nuovo file Python nell'IDE o nell'editor preferito e aggiungere le istruzioni di importazione seguenti:

    import requests
    import json
    
  2. Creare variabili per il testo di cui si vuole eseguire il controllo ortografico, la chiave di sottoscrizione e l'endpoint di Controllo ortografico Bing. È possibile usare l'endpoint globale nel codice seguente o l'endpoint del sottodominio personalizzato visualizzato nel portale di Azure per la risorsa.

    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"
    

Creare i parametri per la richiesta

  1. Creare un nuovo dizionario con text come chiave e il testo come valore.

    data = {'text': example_text}
    
  2. Aggiungere i parametri della richiesta:

    1. Assegnare il codice di mercato al parametro mkt con l'operatore =. Il codice di mercato è il codice del paese o dell'area geografica da cui si effettua la richiesta.

    2. Aggiungere il parametro mode con l'operatore & e quindi assegnare la modalità di controllo ortografico. La modalità può essere proof (individua la maggior parte degli errori di ortografia/grammatica) o spell (individua la maggior parte degli errori di ortografia, ma meno errori di grammatica).

    params = {
        'mkt':'en-us',
        'mode':'proof'
        }
    
  3. Aggiungere un'intestazione Content-Type e la chiave di sottoscrizione all'intestazione Ocp-Apim-Subscription-Key.

    headers = {
        'Content-Type': 'application/x-www-form-urlencoded',
        'Ocp-Apim-Subscription-Key': api_key,
        }
    

Inviare la richiesta e leggere la risposta

  1. Inviare la richiesta POST usando la libreria delle richieste.

    response = requests.post(endpoint, headers=headers, params=params, data=data)
    
  2. Ottenere la risposta JSON e visualizzarla.

    json_response = response.json()
    print(json.dumps(json_response, indent=4))
    

Eseguire l'applicazione

Se si usa la riga di comando, usare il comando seguente per eseguire l'applicazione:

python <FILE_NAME>.py

Risposta JSON di esempio

Viene restituita una risposta con esito positivo in formato JSON, come illustrato nell'esempio seguente:

{
   "_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
            }
         ]
      }
   ]
}

Passaggi successivi