次の方法で共有


クイック スタート: Bing Spell Check REST API と Python を使用してスペル チェックを行う

警告

2020 年 10 月 30 日、Bing Search API は Azure AI サービスから Bing Search Services に移行されました。 このドキュメントは参考用に提供されています。 更新されたドキュメントについては、Bing search API のドキュメントを参照してください。 Bing検索用の新しい Azure リソースを作成する手順については、「Azure Marketplace を使用して Bing Search リソースを作成するを参照してください。

このクイック スタートを使用して、Bing Spell Check REST API を初めて呼び出します。 この単純な Python アプリケーションは、API に要求を送信し、推奨される修正の一覧を返します。

このアプリケーションは Python で記述されていますが、API はほとんどのプログラミング言語と互換性のある RESTful Web サービスです。 このアプリケーションのソース コードは、GitHub で入手できます。

前提条件

Azure リソースを作成する

次のいずれかの Azure リソースを作成して、Bing Spell Check API の使用を開始します。

Bing Spell Check リソース

  • リソースを削除するまで、Azure portal から使用できます。
  • Free 価格レベルを使用してサービスを試し、後で運用環境用の有料レベルにアップグレードします。
  • Bing Spell Check API は、Bing Search v7 リソースの一部のレベルでも提供されます。

マルチサービス リソース

  • リソースを削除するまで、Azure portal から使用できます。
  • 複数の Azure AI サービスで、アプリケーションに同じキーとエンドポイントを使用します。

アプリケーションを初期化する

  1. お気に入りの IDE またはエディターで新しい Python ファイルを作成し、次の import ステートメントを追加します。

    import requests
    import json
    
  2. スペル チェックするテキスト、サブスクリプション キー、および Bing Spell Check エンドポイントの変数を作成します。 次のコードでグローバル エンドポイントを使用することも、リソースの Azure portal に表示される カスタム サブドメイン エンドポイントを使用することもできます。

    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"
    

要求のパラメーターを作成する

  1. text をキーとして、テキストを値として使用して新しいディクショナリを作成します。

    data = {'text': example_text}
    
  2. 要求のパラメーターを追加します。

    1. mkt 演算子を使用して、市場コードを = パラメーターに割り当てます。 市場コードは、要求を行う国/地域のコードです。

    2. mode 演算子を使用して & パラメーターを追加し、スペル チェック モードを割り当てます。 モードは、proof (ほとんどのスペル ミスや文章校正エラーをキャッチ) または spell (ほとんどのスペル ミスをキャッチしますが、文法エラーの数はキャッチしません) のいずれかです。

    params = {
        'mkt':'en-us',
        'mode':'proof'
        }
    
  3. Content-Type ヘッダーとサブスクリプション キーを Ocp-Apim-Subscription-Key ヘッダーに追加します。

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

要求を送信して応答を読み取る

  1. 要求ライブラリを使用して POST 要求を送信します。

    response = requests.post(endpoint, headers=headers, params=params, data=data)
    
  2. JSON 応答を取得して出力します。

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

アプリケーションを実行する

コマンド ラインを使用している場合は、次のコマンドを使用してアプリケーションを実行します。

python <FILE_NAME>.py

JSON 応答の例

次の例に示すように、成功した応答が JSON で返されます。

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

次のステップ