クイックスタート: キー フレーズ抽出クライアント ライブラリと REST API の使用

リファレンス                 ドキュメント | その他の             サンプル | パッケージ (NuGet) | ライブラリのソース コード

このクイック スタートを使用して、.NET 用のクライアント ライブラリを使用してキー フレーズ抽出アプリケーションを作成します。 次の例では、テキスト メッセージで見つかったキーワードとフレーズを識別できる C# アプリケーションを作成します。

ヒント

Language Studio を使用すると、コードを記述することなく言語サービス機能を試すことができます。

前提条件

  • Azure サブスクリプション - 無料アカウントを作成します
  • Visual Studio IDE
  • Azure サブスクリプションを用意したら、Azure portal で言語リソースを作成して、キーとエンドポイントを取得します。 デプロイされたら、 [リソースに移動] をクリックします。
    • 対象のアプリケーションを API に接続するには、作成したリソースのキーとエンドポイントが必要です。 このクイックスタートで後に示すコードに、自分のキーとエンドポイントを貼り付けます。
    • Free 価格レベル (Free F0) を使用してサービスを試用し、後から運用環境用の有料レベルにアップグレードすることができます。
  • 分析機能を使うには、Standard (S) 価格レベルの言語リソースが必要です。

設定

新しい .NET Core アプリを作成する

Visual Studio IDE を使用して新しい .NET Core コンソール アプリを作成します。 1 つの C# ソース ファイル (program.cs) を含んだ "Hello World" プロジェクトが作成されます。

ソリューション エクスプローラーでソリューションを右クリックし、 [NuGet パッケージの管理] を選択して、クライアント ライブラリをインストールします。 パッケージ マネージャーが開いたら、 [参照] を選択して Azure.AI.TextAnalytics を検索します。 バージョン 5.2.0 を選択し、 [インストール] を選択します。 パッケージ マネージャー コンソールを使用してもかまいません。

コードの例

次のコードを program.cs ファイルにコピーします。 忘れずに、key 変数をリソースのキーに置き換え、endpoint 変数をリソースのエンドポイントに置き換えてください。 次にコードを実行します。

重要

Azure Portal にアクセスします。 「前提条件」セクションで作成した Language リソースが正常にデプロイされた場合、 [次の手順] の下にある [リソースに移動] ボタンをクリックします。 キーとエンドポイントは、リソースの [キーとエンドポイント] ページの [リソース管理] に移動することで確認できます。

重要

終わったらコードからキーを削除し、公開しないよう注意してください。 運用環境では、Azure Key Vault などの資格情報を格納してアクセスする安全な方法を使用します。 詳細については、Cognitive Services のセキュリティに関するページを参照してください。

using Azure;
using System;
using Azure.AI.TextAnalytics;

namespace KeyPhraseExtractionExample
{
    class Program
    {
        private static readonly AzureKeyCredential credentials = new AzureKeyCredential("replace-with-your-key-here");
        private static readonly Uri endpoint = new Uri("replace-with-your-endpoint-here");

        // Example method for extracting key phrases from text
        static void KeyPhraseExtractionExample(TextAnalyticsClient client)
        {
            var response = client.ExtractKeyPhrases(@"Dr. Smith has a very modern medical office, and she has great staff.");

            // Printing key phrases
            Console.WriteLine("Key phrases:");

            foreach (string keyphrase in response.Value)
            {
                Console.WriteLine($"\t{keyphrase}");
            }
        }

        static void Main(string[] args)
        {
            var client = new TextAnalyticsClient(endpoint, credentials);
            KeyPhraseExtractionExample(client);

            Console.Write("Press any key to exit.");
            Console.ReadKey();
        }

    }
}

出力

Key phrases:
    modern medical office
    Dr. Smith
    great staff

リソースをクリーンアップする

Cognitive Services サブスクリプションをクリーンアップして削除したい場合は、リソースまたはリソース グループを削除することができます。 リソース グループを削除すると、それに関連付けられている他のリソースも削除されます。

リファレンス                 ドキュメント | その他の             サンプル | パッケージ (Maven) | ライブラリのソース コード

このクイック スタートを使用して、Java 用クライアント ライブラリを使用してキー フレーズ抽出アプリケーションを作成します。 次の例では、テキスト メッセージで見つかったキーワードとフレーズを識別できる Java アプリケーションを作成します。

ヒント

Language Studio を使用すると、コードを記述することなく言語サービス機能を試すことができます。

前提条件

  • Azure サブスクリプション - 無料アカウントを作成します
  • Java Development Kit (JDK) バージョン 8 以降
  • Azure サブスクリプションを用意したら、Azure portal で言語リソースを作成して、キーとエンドポイントを取得します。 デプロイされたら、 [リソースに移動] をクリックします。
    • 対象のアプリケーションを API に接続するには、作成したリソースのキーとエンドポイントが必要です。 このクイックスタートで後に示すコードに、自分のキーとエンドポイントを貼り付けます。
    • Free 価格レベル (Free F0) を使用してサービスを試用し、後から運用環境用の有料レベルにアップグレードすることができます。
  • 分析機能を使うには、Standard (S) 価格レベルの言語リソースが必要です。

設定

クライアント ライブラリを追加する

好みの IDE または開発環境で Maven プロジェクトを作成します。 次に、自分のプロジェクトの pom.xml ファイルに次の依存関係を追加します。 その他のビルド ツールの実装構文はオンラインで確認できます。

<dependencies>
     <dependency>
        <groupId>com.azure</groupId>
        <artifactId>azure-ai-textanalytics</artifactId>
        <version>5.2.0</version>
    </dependency>
</dependencies>

コードの例

Example.java という名前で Java ファイルを作成します。 ファイルを開き、下のコードをコピーします。 忘れずに、key 変数をリソースのキーに置き換え、endpoint 変数をリソースのエンドポイントに置き換えてください。 次にコードを実行します。

重要

Azure Portal にアクセスします。 「前提条件」セクションで作成した Language リソースが正常にデプロイされた場合、 [次の手順] の下にある [リソースに移動] ボタンをクリックします。 キーとエンドポイントは、リソースの [キーとエンドポイント] ページの [リソース管理] に移動することで確認できます。

重要

終わったらコードからキーを削除し、公開しないよう注意してください。 運用環境では、Azure Key Vault などの資格情報を格納してアクセスする安全な方法を使用します。 詳細については、Cognitive Services のセキュリティに関するページを参照してください。

import com.azure.core.credential.AzureKeyCredential;
import com.azure.ai.textanalytics.TextAnalyticsClientBuilder;
import com.azure.ai.textanalytics.TextAnalyticsClient;


public class Example {

    private static String KEY = "replace-with-your-key-here";
    private static String ENDPOINT = "replace-with-your-endpoint-here";

    public static void main(String[] args) {
        TextAnalyticsClient client = authenticateClient(KEY, ENDPOINT);
        extractKeyPhrasesExample(client);
    }
    // Method to authenticate the client object with your key and endpoint
    static TextAnalyticsClient authenticateClient(String key, String endpoint) {
        return new TextAnalyticsClientBuilder()
                .credential(new AzureKeyCredential(key))
                .endpoint(endpoint)
                .buildClient();
    }
    // Example method for extracting key phrases from text
    static void extractKeyPhrasesExample(TextAnalyticsClient client)
    {
        // The text to be analyzed
        String text = "Dr. Smith has a very modern medical office, and she has great staff.";

        System.out.printf("Recognized phrases: %n");
        for (String keyPhrase : client.extractKeyPhrases(text)) {
            System.out.printf("%s%n", keyPhrase);
        }
    }
}

出力

Recognized phrases: 

modern medical office
Dr. Smith
great staff

リソースをクリーンアップする

Cognitive Services サブスクリプションをクリーンアップして削除したい場合は、リソースまたはリソース グループを削除することができます。 リソース グループを削除すると、それに関連付けられている他のリソースも削除されます。

リファレンス                 ドキュメント | その他の             サンプル | パッケージ (npm) | ライブラリのソース コード

このクイック スタートを使用して、Node.js用のクライアント ライブラリを使用してキー フレーズ抽出アプリケーションを作成します。 次の例では、テキスト メッセージで見つかったキーワードとフレーズを識別できる JavaScript アプリケーションを作成します。

ヒント

Language Studio を使用すると、コードを記述することなく言語サービス機能を試すことができます。

前提条件

  • Azure サブスクリプション - 無料アカウントを作成します
  • Node.js v14 LTS 以降
  • Azure サブスクリプションを用意したら、Azure portal で言語リソースを作成して、キーとエンドポイントを取得します。 デプロイされたら、 [リソースに移動] をクリックします。
    • 対象のアプリケーションを API に接続するには、作成したリソースのキーとエンドポイントが必要です。 このクイックスタートで後に示すコードに、自分のキーとエンドポイントを貼り付けます。
    • Free 価格レベル (Free F0) を使用してサービスを試用し、後から運用環境用の有料レベルにアップグレードすることができます。
  • 分析機能を使うには、Standard (S) 価格レベルの言語リソースが必要です。

設定

新しい Node.js アプリケーションを作成する

コンソール ウィンドウ (cmd、PowerShell、Bash など) で、ご利用のアプリ用に新しいディレクトリを作成し、そこに移動します。

mkdir myapp 

cd myapp

npm init コマンドを実行し、package.json ファイルを使用して node アプリケーションを作成します。

npm init

クライアント ライブラリをインストールする

npm パッケージをインストールします:

npm install --save @azure/ai-text-analytics@5.1.0

コードの例

ファイルを開き、下のコードをコピーします。 忘れずに、key 変数をリソースのキーに置き換え、endpoint 変数をリソースのエンドポイントに置き換えてください。 次にコードを実行します。

重要

Azure Portal にアクセスします。 「前提条件」セクションで作成した Language リソースが正常にデプロイされた場合、 [次の手順] の下にある [リソースに移動] ボタンをクリックします。 キーとエンドポイントは、リソースの [キーとエンドポイント] ページの [リソース管理] に移動することで確認できます。

重要

終わったらコードからキーを削除し、公開しないよう注意してください。 運用環境では、Azure Key Vault などの資格情報を格納してアクセスする安全な方法を使用します。 詳細については、Cognitive Services のセキュリティに関するページを参照してください。

"use strict";

const { TextAnalyticsClient, AzureKeyCredential } = require("@azure/ai-text-analytics");
const key = '<paste-your-key-here>';
const endpoint = '<paste-your-endpoint-here>';
// Authenticate the client with your key and endpoint
const textAnalyticsClient = new TextAnalyticsClient(endpoint, new AzureKeyCredential(key));

// Example method for extracting key phrases from text
async function keyPhraseExtraction(client){

    const keyPhrasesInput = [
        "Dr. Smith has a very modern medical office, and she has great staff.",
    ];
    const keyPhraseResult = await client.extractKeyPhrases(keyPhrasesInput);
    
    keyPhraseResult.forEach(document => {
        console.log(`ID: ${document.id}`);
        console.log(`\tDocument Key Phrases: ${document.keyPhrases}`);
    });
}
keyPhraseExtraction(textAnalyticsClient);

出力

ID: 0
    Document Key Phrases: modern medical office,Dr. Smith,great staff

リソースをクリーンアップする

Cognitive Services サブスクリプションをクリーンアップして削除したい場合は、リソースまたはリソース グループを削除することができます。 リソース グループを削除すると、それに関連付けられている他のリソースも削除されます。

リファレンス ドキュメント | その他のサンプル | パッケージ (PyPi) | ライブラリのソース コード

このクイック スタートを使用して、Python 用クライアント ライブラリを使用してキー フレーズ抽出アプリケーションを作成します。 次の例では、テキスト メッセージで見つかったキーワードとフレーズを識別できる Pythonアプリケーションを作成します。

ヒント

Language Studio を使用すると、コードを記述することなく言語サービス機能を試すことができます。

前提条件

  • Azure サブスクリプション - 無料アカウントを作成します
  • Python 3.7 以降
  • Azure サブスクリプションを用意したら、Azure portal で言語リソースを作成して、キーとエンドポイントを取得します。 デプロイされたら、 [リソースに移動] をクリックします。
    • 対象のアプリケーションを API に接続するには、作成したリソースのキーとエンドポイントが必要です。 このクイックスタートで後に示すコードに、自分のキーとエンドポイントを貼り付けます。
    • Free 価格レベル (Free F0) を使用してサービスを試用し、後から運用環境用の有料レベルにアップグレードすることができます。
  • 分析機能を使うには、Standard (S) 価格レベルの言語リソースが必要です。

設定

クライアント ライブラリをインストールする

Python をインストールしたら、次を使用してクライアント ライブラリをインストールすることができます。

pip install azure-ai-textanalytics==5.2.0

コードの例

新しい Python ファイルを作成し、下のコードをコピーします。 忘れずに、key 変数をリソースのキーに置き換え、endpoint 変数をリソースのエンドポイントに置き換えてください。 次にコードを実行します。

重要

Azure Portal にアクセスします。 「前提条件」セクションで作成した Language リソースが正常にデプロイされた場合、 [次の手順] の下にある [リソースに移動] ボタンをクリックします。 キーとエンドポイントは、リソースの [キーとエンドポイント] ページの [リソース管理] に移動することで確認できます。

重要

終わったらコードからキーを削除し、公開しないよう注意してください。 運用環境では、Azure Key Vault などの資格情報を格納してアクセスする安全な方法を使用します。 詳細については、Cognitive Services のセキュリティに関するページを参照してください。

key = "paste-your-key-here"
endpoint = "paste-your-endpoint-here"

from azure.ai.textanalytics import TextAnalyticsClient
from azure.core.credentials import AzureKeyCredential

# Authenticate the client using your key and endpoint 
def authenticate_client():
    ta_credential = AzureKeyCredential(key)
    text_analytics_client = TextAnalyticsClient(
            endpoint=endpoint, 
            credential=ta_credential)
    return text_analytics_client

client = authenticate_client()

def key_phrase_extraction_example(client):

    try:
        documents = ["Dr. Smith has a very modern medical office, and she has great staff."]

        response = client.extract_key_phrases(documents = documents)[0]

        if not response.is_error:
            print("\tKey Phrases:")
            for phrase in response.key_phrases:
                print("\t\t", phrase)
        else:
            print(response.id, response.error)

    except Exception as err:
        print("Encountered exception. {}".format(err))
        
key_phrase_extraction_example(client)

出力

Key Phrases:
    modern medical office
    Dr. Smith
    great staff

リソースをクリーンアップする

Cognitive Services サブスクリプションをクリーンアップして削除したい場合は、リソースまたはリソース グループを削除することができます。 リソース グループを削除すると、それに関連付けられている他のリソースも削除されます。

リファレンス ドキュメント

REST API を使用してキー フレーズ抽出要求を送信するには、このクイック スタートを使用します。 次の例では、cURL を使用して、テキスト メッセージ内のキーワードとフレーズを識別します。

ヒント

Language Studio を使用すると、コードを記述することなく言語サービス機能を試すことができます。

前提条件

  • Azure サブスクリプション - 無料アカウントを作成します
  • 最新バージョンの cURL
  • Azure サブスクリプションを用意したら、Azure portal で言語リソースを作成して、キーとエンドポイントを取得します。 デプロイされたら、 [リソースに移動] をクリックします。
    • 対象のアプリケーションを API に接続するには、作成したリソースのキーとエンドポイントが必要です。 このクイックスタートで後に示すコードに、自分のキーとエンドポイントを貼り付けます。
    • Free 価格レベル (Free F0) を使用してサービスを試用し、後から運用環境用の有料レベルにアップグレードすることができます。

注意

  • 以降に掲載した BASH の例では、行連結文字として \ を使用しています。 ご利用のコンソールまたはターミナルで異なる行連結文字が使用されている場合は、その文字を使用してください。
  • 言語固有のサンプルについては GitHub を参照してください。
  • Azure portal に移動し、前提条件で作成した言語リソースのキーとエンドポイントを探します。 それらは、リソースの [key and endpoint](キーとエンドポイント) ページの [リソース管理] にあります。 次に、以下のコード内の文字列を実際のキーとエンドポイントに置き換えます。 API を呼び出すには、次の情報が必要です。
パラメーター Description
-X POST <endpoint> API にアクセスするためのエンドポイントを指定します。
-H Content-Type: application/json JSON データを送信するためのコンテンツ タイプ。
-H "Ocp-Apim-Subscription-Key:<key> API にアクセスするためのキーを指定します。
-d <documents> 送信するドキュメントを含む JSON。

次の cURL コマンドは、BASH シェルから実行されます。 これらのコマンドは、実際のリソース名、リソース キー、JSON の値に合わせて編集してください。

キー フレーズの抽出

  1. テキスト エディターにコマンドをコピーします。
  2. 必要に応じて、コマンドに次の変更を加えます。
    1. <your-language-resource-key> 値をキーに置き換えます。
    2. 要求 URL (<your-language-resource-endpoint>) の最初の部分を独自のエンドポイント URL に置き換えます。
  3. コマンド プロンプト ウィンドウを開きます。
  4. テキスト エディターからコマンド プロンプト ウィンドウにコマンドを貼り付けて、コマンドを実行します。
curl -i -X POST https://<your-language-resource-endpoint>/language/:analyze-text?api-version=2022-05-01 \
-H "Content-Type: application/json" \
-H "Ocp-Apim-Subscription-Key: <your-language-resource-key>" \
-d \
'
{
    "kind": "KeyPhraseExtraction",
    "parameters": {
        "modelVersion": "latest"
    },
    "analysisInput":{
        "documents":[
            {
                "id":"1",
                "language":"en",
                "text": "Dr. Smith has a very modern medical office, and she has great staff."
            }
        ]
    }
}
'

JSON 応答

{
	"kind": "KeyPhraseExtractionResults",
	"results": {
		"documents": [{
			"id": "1",
			"keyPhrases": ["modern medical office", "Dr. Smith", "great staff"],
			"warnings": []
		}],
		"errors": [],
		"modelVersion": "2021-06-01"
	}
}

次のステップ