Szybki start: sprawdzanie pisowni przy użyciu interfejsu API REST sprawdzania pisowni Bing i języka Python

Ostrzeżenie

30 października 2020 r. interfejsy API Wyszukiwanie Bing zostały przeniesione z usług Azure AI do usług Wyszukiwanie Bing Services. Ta dokumentacja jest udostępniana tylko do celów referencyjnych. Aby uzyskać zaktualizowaną dokumentację, zobacz dokumentację interfejsu API wyszukiwania Bing. Aby uzyskać instrukcje dotyczące tworzenia nowych zasobów platformy Azure na potrzeby wyszukiwania Bing, zobacz Tworzenie zasobu Wyszukiwanie Bing za pośrednictwem Azure Marketplace.

Użyj tego przewodnika Szybki start, aby wykonać pierwsze wywołanie interfejsu API REST sprawdzania pisowni Bing. Ta prosta aplikacja w języku Python wysyła żądanie do interfejsu API i zwraca listę sugerowanych poprawek.

Mimo że ta aplikacja jest napisana w języku Python, interfejs API jest usługą internetową zgodną ze standardem RESTful z większością języków programowania. Kod źródłowy tej aplikacji jest dostępny w usłudze GitHub

Wymagania wstępne

Tworzenie zasobu platformy Azure

Zacznij korzystać z interfejsu API sprawdzania pisowni Bing, tworząc jeden z następujących zasobów platformy Azure:

Zasób sprawdzania pisowni Bing

  • Dostępne za pośrednictwem Azure Portal do momentu usunięcia zasobu.
  • Użyj warstwy cenowej Bezpłatna, aby wypróbować usługę, a następnie uaktualnij ją do warstwy płatnej dla środowiska produkcyjnego.
  • Interfejs API sprawdzania pisowni Bing jest również oferowany w niektórych warstwach zasobu Wyszukiwanie Bing w wersji 7.

Zasób z wieloma usługami

  • Dostępne za pośrednictwem Azure Portal do momentu usunięcia zasobu.
  • Użyj tego samego klucza i punktu końcowego dla aplikacji w wielu usługach azure AI.

Inicjowanie aplikacji

  1. Utwórz nowy plik języka Python w ulubionym środowisku IDE lub edytorze i dodaj następujące instrukcje importowania:

    import requests
    import json
    
  2. Utwórz zmienne dla tekstu, w którym ma być sprawdzana pisownia, klucza subskrypcji oraz punktu końcowego sprawdzania pisowni Bing. Możesz użyć globalnego punktu końcowego w poniższym kodzie lub użyć niestandardowego punktu końcowego poddomeny wyświetlanego w Azure Portal dla zasobu.

    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"
    

Tworzenie parametrów dla żądania

  1. Utwórz nowy słownik, w którym element text jest kluczem, a tekst — wartością.

    data = {'text': example_text}
    
  2. Dodaj parametry żądania:

    1. Przypisz kod rynku do parametru mkt za = pomocą operatora . Kod rynku to kod kraju/regionu, z którego wysyłasz żądanie.

    2. mode Dodaj parametr z operatorem & , a następnie przypisz tryb sprawdzania pisowni. Tryb może być proof (przechwytuje większość błędów pisowni/gramatyki) lub spell (przechwytuje większość błędów pisowni, ale nie tyle błędów gramatycznych).

    params = {
        'mkt':'en-us',
        'mode':'proof'
        }
    
  3. Content-Type Dodaj nagłówek i klucz subskrypcji do nagłówkaOcp-Apim-Subscription-Key.

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

Wysyłanie żądania i odczytywanie odpowiedzi

  1. Wyślij żądanie POST przy użyciu biblioteki żądań.

    response = requests.post(endpoint, headers=headers, params=params, data=data)
    
  2. Pobierz odpowiedź JSON i wyświetl ją.

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

Uruchamianie aplikacji

Jeśli używasz wiersza polecenia, użyj następującego polecenia, aby uruchomić aplikację:

python <FILE_NAME>.py

Przykładowa odpowiedź JSON

Po pomyślnym przetworzeniu żądania zostanie zwrócona odpowiedź w formacie JSON, jak pokazano w następującym przykładzie:

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

Następne kroki