クイックスタート: 言語検出クライアント ライブラリと REST API の使用

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

このクイック スタートを使用して、.NET 用のクライアント ライブラリを使用して言語検出アプリケーションを作成します。 次の例では、テキスト サンプルが記述された言語を識別できる C# アプリケーションを作成します。

ヒント

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

前提条件

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

設定

新しい .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 などの資格情報を格納してアクセスする安全な方法を使用します。 詳細については、Azure AI サービスのセキュリティに関する記事を参照してください。

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

namespace LanguageDetectionExample
{
    class Program
    {

        // This example requires environment variables named "LANGUAGE_KEY" and "LANGUAGE_ENDPOINT"
        static string languageKey = Environment.GetEnvironmentVariable("LANGUAGE_KEY");
        static string languageEndpoint = Environment.GetEnvironmentVariable("LANGUAGE_ENDPOINT");

        // Example method for detecting the language of text
        static void LanguageDetectionExample(TextAnalyticsClient client)
        {
            DetectedLanguage detectedLanguage = client.DetectLanguage("Ce document est rédigé en Français.");
            Console.WriteLine("Language:");
            Console.WriteLine($"\t{detectedLanguage.Name},\tISO-6391: {detectedLanguage.Iso6391Name}\n");
        }

        static void Main(string[] args)
        {
            var client = new TextAnalyticsClient(languageEndpoint, languageKey);
            LanguageDetectionExample(client);

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

    }
}

出力

Language:
    French, ISO-6391: fr

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

このクイック スタートを使用して、Java 用クライアント ライブラリを使用して言語検出アプリケーションを作成します。 次の例では、テキスト サンプルが記述された言語を識別できる Java アプリケーションを作成します。

ヒント

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

前提条件

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

設定

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

好みの 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 などの資格情報を格納してアクセスする安全な方法を使用します。 詳細については、Azure AI サービスのセキュリティに関する記事を参照してください。

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

public class Example {

    // This example requires environment variables named "LANGUAGE_KEY" and "LANGUAGE_ENDPOINT"
    private static String languageKey = System.getenv("LANGUAGE_KEY");
    private static String languageEndpoint = System.getenv("LANGUAGE_ENDPOINT");

    public static void main(String[] args) {
        TextAnalyticsClient client = authenticateClient(languageKey, languageEndpoint);
        detectLanguageExample(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 detecting the language of text
    static void detectLanguageExample(TextAnalyticsClient client)
    {
        // The text to be analyzed.
        String text = "Ce document est rédigé en Français.";

        DetectedLanguage detectedLanguage = client.detectLanguage(text);
        System.out.printf("Detected primary language: %s, ISO 6391 name: %s, score: %.2f.%n",
                detectedLanguage.getName(),
                detectedLanguage.getIso6391Name(),
                detectedLanguage.getConfidenceScore());
    }
}

出力

Detected primary language: French, ISO 6391 name: fr, score: 1.00.

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

このクイック スタートを使用して、Node.js 用のクライアント ライブラリを使用して言語検出アプリケーションを作成します。 次の例では、テキスト サンプルが記述された言語を識別できる JavaScript アプリケーションを作成します。

ヒント

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

前提条件

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

設定

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

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

mkdir myapp 

cd myapp

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

npm init

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

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

npm install @azure/ai-language-text

コードの例

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

重要

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

重要

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

"use strict";

const { TextAnalyticsClient, AzureKeyCredential } = require("@azure/ai-text-analytics");

// This example requires environment variables named "LANGUAGE_KEY" and "LANGUAGE_ENDPOINT"
const key = process.env.LANGUAGE_KEY;
const endpoint = process.env.LANGUAGE_ENDPOINT;

//Example sentences in different languages to be analyzed
const documents = [
    "This document is written in English.",
    "这是一个用中文写的文件",
];

//Example of how to use the client library to detect language
async function main() {
    console.log("== Language detection sample ==");
  
    const client = new TextAnalysisClient(endpoint, new AzureKeyCredential(key));
  
    const result = await client.analyze("LanguageDetection", documents);
  
    for (const doc of result) {
      if (!doc.error) {
        console.log(
          `ID ${doc.id} - Primary language: ${doc.primaryLanguage.name} (iso6391 name: ${doc.primaryLanguage.iso6391Name})`
        );
      }
    }
}

main().catch((err) => {
    console.error("The sample encountered an error:", err);
});

出力

== Language detection sample ==
ID 0 - Primary language: English (iso6391 name: en)
ID 1 - Primary language: Chinese_Simplified (iso6391 name: zh_chs)

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

このクイック スタートを使用して、Python 用クライアント ライブラリを使用して言語検出アプリケーションを作成します。 次の例では、テキスト サンプルが記述された言語を識別できる Python アプリケーションを作成します。

ヒント

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

前提条件

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

設定

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

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

pip install azure-ai-textanalytics==5.2.0

コードの例

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

重要

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

重要

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


# This example requires environment variables named "LANGUAGE_KEY" and "LANGUAGE_ENDPOINT"
language_key = os.environ.get('LANGUAGE_KEY')
language_endpoint = os.environ.get('LANGUAGE_ENDPOINT')

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(language_key)
    text_analytics_client = TextAnalyticsClient(
            endpoint=language_endpoint, 
            credential=ta_credential)
    return text_analytics_client

client = authenticate_client()

# Example method for detecting the language of text
def language_detection_example(client):
    try:
        documents = ["Ce document est rédigé en Français."]
        response = client.detect_language(documents = documents, country_hint = 'us')[0]
        print("Language: ", response.primary_language.name)

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

出力

Language:  French

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

REST API を使用して言語検出要求を送信するには、このクイック スタートを使用します。 次の例では、cURL を使用して、テキスト サンプルが記述されている言語を特定します。

前提条件

設定

Azure リソースを作成する

以下のコード サンプルを使用するには、Azure リソースをデプロイする必要があります。 このリソースには、言語サービスに送信する API 呼び出しを認証するために使用するキーとエンドポイントが含まれます。

  1. Azure portal を使用して言語リソースを作成するには、次のリンクを使用します。 Azure サブスクリプションを使用してサインインする必要があります。

  2. 表示される [追加機能を選択する] スクリーンで、[続行] を選択 してリソースを作成します

    Azure portal の追加機能オプションを示すスクリーンショット。

  3. [言語の作成] スクリーンで、次の情報を入力します。

    詳細 説明
    サブスクリプション リソースが関連付けられるサブスクリプション アカウント。 ドロップダウン メニューから Azure サブスクリプションを選択します。
    リソース グループ リソース グループは、作成したリソースを保存するコンテナーです。 [新規作成] を選んで、新しいリソース グループを作成します。
    リージョン 言語リソースの場所。 別のリージョンを選択すると、物理的な場所によっては待機時間が生じる可能性がありますが、リソースのランタイムの可用性には影響しません。 このクイック スタートでは、近くの利用可能なリージョンを選択するか、米国東部を選択します。
    名前 言語リソースの名前。 この名前は、アプリケーションが API 要求の送信に使用するエンドポイント URL の作成にも使用されます。
    価格レベル 言語リソースの価格レベルFree F0 レベルを使用してサービスを試用し、後から運用環境用の有料レベルにアップグレードすることができます。

    Azure portal でのリソースの作成の詳細を示すスクリーンショット。

  4. [責任ある AI の通知] チェックボックスがオンになっていることを確認します。

  5. ページの下部にある [確認および作成] を選択します。

  6. 表示されるスクリーンで、検証に合格し、情報を正しく入力したことを確認します。 [作成] を選択します。

キーとエンドポイントを取得する

次に、アプリケーションを API に接続するには、リソースのキーとエンドポイントが必要です。 このクイックスタートで後に示すコードに、自分のキーとエンドポイントを貼り付けます。

  1. 言語リソースが正常にデプロイされたら、[次の手順][リソースに移動] ボタンをクリックします。

    リソースがデプロイされた後の次の手順を示すスクリーンショット。

  2. リソースのスクリーンで、左側のナビゲーション メニューの [キーとエンドポイント] を選択します。 以下の手順では、キーの 1 つとエンドポイントを使用します。

    リソースのキーとエンドポイント セクションを示すスクリーンショット。

環境変数を作成する

API 要求を送信するには、アプリケーションを認証する必要があります。 運用環境では、資格情報を安全に保存してアクセスできる方法を使用してください。 この例では、アプリケーションを実行しているローカル コンピューター上の環境変数に資格情報を書き込みます。

ヒント

キーは、コードに直接含めないようにし、公開しないでください。 Azure Key Vault などのその他の認証オプションについては、Azure AI サービスのセキュリティに関する記事を参照してください。

言語リソース キーの環境変数を設定するには、コンソール ウィンドウを開き、オペレーティング システムと開発環境の指示に従います。

  1. LANGUAGE_KEY 環境変数を設定するには、your-key をリソースのキーの 1 つに置き換えます。
  2. LANGUAGE_ENDPOINT 環境変数を設定するには、your-endpoint をリソースのエンドポイントに置き換えます。
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint

Note

現在実行中のコンソールで環境変数のみにアクセスする必要がある場合は、環境変数を setx の代わりに set に設定できます。

実行中のプログラムのうち、環境変数の読み取りを必要とするプログラム (コンソール ウィンドウを含む) については、環境変数を追加した後で再起動が必要となる場合があります。 たとえば、Visual Studio をエディターとして使用している場合、サンプルを実行する前に Visual Studio を再起動します。

要求本文の例を使用して JSON ファイルを作成する

コード エディターで、test_detection_payload.json という名前の新しいファイルを作成し、次の JSON の例をコピーします。 この例の要求は、次の手順で API に送信されます。

Note

  • 言語固有のサンプルについては GitHub を参照してください。
{
    "kind": "LanguageDetection",
    "parameters": {
        "modelVersion": "latest"
    },
    "analysisInput":{
        "documents":[
            {
                "id":"1",
                "text": "This is a document written in English."
            }
        ]
    }
}

test_detection_payload.json をコンピューターの任意の場所に保存します。 たとえば、デスクトップなどです。

言語検出要求を送信する

現在使用しているプログラムを使用して API 要求を送信するには、次のコマンドを使用します。 コマンドをターミナルにコピーして実行します。

パラメーター Description
-X POST <endpoint> API にアクセスするためのエンドポイントを指定します。
-H Content-Type: application/json JSON データを送信するためのコンテンツ タイプ。
-H "Ocp-Apim-Subscription-Key:<key> API にアクセスするためのキーを指定します。
-d <documents> 送信するドキュメントを含む JSON。

C:\Users\<myaccount>\Desktop\test_detection_payload.json は、前のステップで作成した JSON 要求ファイルの例の場所に置き換えます。

コマンド プロンプト

curl -X POST "%LANGUAGE_ENDPOINT%/language/:analyze-text?api-version=2023-11-15-preview" ^
-H "Content-Type: application/json" ^
-H "Ocp-Apim-Subscription-Key: %LANGUAGE_KEY%" ^
-d "@C:\Users\<myaccount>\Desktop\test_detection_payload.json"

PowerShell

curl.exe -X POST $env:LANGUAGE_ENDPOINT/language/:analyze-text?api-version=2023-11-15-preview `
-H "Content-Type: application/json" `
-H "Ocp-Apim-Subscription-Key: $env:LANGUAGE_KEY" `
-d "@C:\Users\<myaccount>\Desktop\test_detection_payload.json"

JSON 応答

{
    "kind": "LanguageDetectionResults",
    "results": {
        "documents": [
            {
                "id": "1",
                "detectedLanguage": {
                    "name": "English",
                    "iso6391Name": "en",
                    "confidenceScore": 1.0,
                    "script": "Latin",
                    "scriptCode": "Latn"
                },
                "warnings": []
            }
        ],
        "errors": [],
        "modelVersion": "2023-12-01"
    }
}

次のコマンドを使用して、このクイックスタート用に作成した環境変数を削除します。

reg delete "HKCU\Environment" /v LANGUAGE_KEY /f
reg delete "HKCU\Environment" /v LANGUAGE_ENDPOINT /f

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

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

次のステップ