快速入門:使用語言偵測客戶端連結庫和 REST API

參考文件 | 更多樣本 | 套件 (NuGet) | 程式庫原始程式碼

使用此快速入門,使用適用於 .NET 的用戶端連結庫建立語言偵測應用程式。 在下列範例中,您會建立 C# 應用程式,以識別撰寫文字範例的語言。

提示

您可以使用 Language Studio 來嘗試語言服務功能,而不需要撰寫程式代碼。

必要條件

  • Azure 訂用帳戶 - 建立免費帳戶
  • Visual Studio IDE
  • 擁有 Azure 訂用帳戶之後,請在 Azure 入口網站 中建立語言資源,以取得您的密鑰和端點。 在其部署後,選取 [前往資源]
    • 您需要來自所建立資源的金鑰與端點以將應用程式連線至該 API。 您稍後會在快速入門中將金鑰和端點貼到程式碼中。
    • 您可以使用免費定價層 (Free F0) 來試用服務,之後可升級至付費層以用於實際執行環境。
  • 若要使用分析功能,您需要具有標準 (S) 定價層的語言資源。

設定

建立新的 .NET Core 應用程式

使用 Visual Studio IDE,建立新的 .NET Core 主控台應用程式。 這會建立 "Hello World" 專案,內含單一 C# 來源檔案:program.cs。

以滑鼠右鍵按兩下 方案總管 中的解決方案,然後選取 [管理 NuGet 套件],以安裝客戶端連結庫。 開啟的套件管理員中,選取 [ 瀏覽 ] 並搜尋 Azure.AI.TextAnalytics。 選取 [版本 5.2.0],然後 選取 [安裝]。 您也可以使用 封裝管理員 主控台

程式碼範例

將下列程式代碼複製到您的 program.cs 檔案。 請記得將變數取代 key 為您的資源索引鍵,並將變數取代 endpoint 為您資源的端點。 然後執行程式碼。

重要

前往 Azure 入口網站。 如果您在成功部署必要條件一節中建立的語言資源,請按兩下 [後續步驟] 底下的 [移至資源] 按鈕。 您可以在 [資源管理] 底下瀏覽至資源的 [金鑰和端點] 頁面,以尋找您的金鑰和端點

重要

完成時,請記得從程式碼中移除金鑰,且不要公開張貼金鑰。 在生產環境中,請使用安全的方式來儲存和存取您的認證,例如 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 訂用帳戶 - 建立免費帳戶
  • 具有 8 版或更新版本的 Java 開發工具套件 (JDK)
  • 擁有 Azure 訂用帳戶之後,請在 Azure 入口網站 中建立語言資源,以取得您的密鑰和端點。 在其部署後,選取 [前往資源]
    • 您需要來自所建立資源的金鑰與端點以將應用程式連線至該 API。 您稍後會在快速入門中將金鑰和端點貼到下列程式碼中。
    • 您可以使用免費定價層 (Free F0) 來試用服務,之後可升級至付費層以用於實際執行環境。
  • 若要使用分析功能,您需要具有標準 (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 入口網站。 如果您在成功部署必要條件一節中建立的語言資源,請按兩下 [後續步驟] 底下的 [移至資源] 按鈕。 您可以在 [資源管理] 底下瀏覽至資源的 [金鑰和端點] 頁面,以尋找您的金鑰和端點

重要

完成時,請記得從程式碼中移除金鑰,且不要公開張貼金鑰。 在生產環境中,請使用安全的方式來儲存和存取您的認證,例如 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 入口網站 中建立語言資源,以取得您的密鑰和端點。 在其部署後,選取 [前往資源]
    • 您需要來自所建立資源的金鑰與端點以將應用程式連線至該 API。 您稍後會在快速入門中將金鑰和端點貼到下列程式碼中。
    • 您可以使用免費定價層 (Free F0) 來試用服務,之後可升級至付費層以用於實際執行環境。
  • 若要使用分析功能,您需要具有標準 (S) 定價層的語言資源。

設定

建立新的 Node.js 應用程式

在主控台視窗 (例如 cmd、PowerShell 或 Bash) 中,為您的應用程式建立新的目錄,並瀏覽至該目錄。

mkdir myapp 

cd myapp

執行命令 npm init,以使用 package.json 檔案建立節點應用程式。

npm init

安裝用戶端程式庫

安裝 npm 套件:

npm install @azure/ai-language-text

程式碼範例

開啟檔案並複製下列程序代碼。 請記得將變數取代 key 為您的資源索引鍵,並將變數取代 endpoint 為您資源的端點。 然後執行程式碼。

重要

前往 Azure 入口網站。 如果您在成功部署必要條件一節中建立的語言資源,請按兩下 [後續步驟] 底下的 [移至資源] 按鈕。 您可以在 [資源管理] 底下瀏覽至資源的 [金鑰和端點] 頁面,以尋找您的金鑰和端點

重要

完成時,請記得從程式碼中移除金鑰,且不要公開張貼金鑰。 在生產環境中,請使用安全的方式來儲存和存取您的認證,例如 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 入口網站 中建立語言資源,以取得您的密鑰和端點。 在其部署後,選取 [前往資源]
    • 您需要來自所建立資源的金鑰與端點以將應用程式連線至該 API。 您稍後會在快速入門中將金鑰和端點貼到下列程式碼中。
    • 您可以使用免費定價層 (Free F0) 來試用服務,之後可升級至付費層以用於實際執行環境。
  • 若要使用分析功能,您需要具有標準 (S) 定價層的語言資源。

設定

安裝用戶端程式庫

安裝 Python 之後,您可以使用下列項目來安裝用戶端連結庫:

pip install azure-ai-textanalytics==5.2.0

程式碼範例

建立新的 Python 檔案,並複製下列程式代碼。 請記得將變數取代 key 為您的資源索引鍵,並將變數取代 endpoint 為您資源的端點。 然後執行程式碼。

重要

前往 Azure 入口網站。 如果您在成功部署必要條件一節中建立的語言資源,請按兩下 [後續步驟] 底下的 [移至資源] 按鈕。 您可以在 [資源管理] 底下瀏覽至資源的 [金鑰和端點] 頁面,以尋找您的金鑰和端點

重要

完成時,請記得從程式碼中移除金鑰,且不要公開張貼金鑰。 在生產環境中,請使用安全的方式來儲存和存取您的認證,例如 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 入口網站 建立語言資源。 您必須使用 Azure 訂用帳戶登入。

  2. 在出現的 [ 選取其他功能] 畫面上,選取 [ 繼續] 以建立您的資源

    顯示 Azure 入口網站 中其他功能選項的螢幕快照。

  3. 在 [ 建立語言] 畫面中,提供下列資訊:

    詳細資料 描述
    訂用帳戶 您的資源將相關聯的訂用帳戶帳戶。 從下拉功能表中選取您的 Azure 訂用帳戶。
    資源群組 資源群組是儲存您所建立資源的容器。 選取 [ 新建 ] 以建立新的資源群組。
    區域 語言資源的位置。 不同的區域可能會根據您的實體位置引入延遲,但不會影響資源的運行時間可用性。 在本快速入門中,請選取您附近的可用區域,或選擇 [ 美國東部]。
    名稱 語言資源的名稱。 此名稱也會用來建立端點 URL,您的應用程式將用來傳送 API 要求。
    定價層 語言資源的定價層。 您可以使用 免費 F0 層來試用服務,稍後升級至生產環境的付費層。

    顯示 Azure 入口網站 中資源建立詳細數據的螢幕快照。

  4. 確定已核取 [ 負責任 AI 通知 ] 複選框。

  5. 選取頁面底部的 [檢閱 + 建立]

  6. 在出現的畫面中,確定驗證已通過,而且您已正確輸入資訊。 然後選取建立

取得您的金鑰和端點

接下來,您需要資源的密鑰和端點,才能將應用程式連線到 API。 您稍後會在快速入門中將金鑰和端點貼到程式碼中。

  1. 成功部署語言資源之後,按兩下 [後續步驟] 底下的 [移至資源] 按鈕。

    螢幕快照,顯示部署資源之後的後續步驟。

  2. 在資源的畫面上,選取 左側導覽功能表上的 [金鑰和端點 ]。 您會在下列步驟中使用其中一個金鑰和端點。

    顯示資源金鑰和端點區段的螢幕快照。

建立環境變數

您的應用程式必須經過驗證,才能傳送 API 要求。 針對生產環境,請使用安全的方式來儲存和存取您的認證。 在此範例中,您會將認證寫入執行應用程式的本機計算機上環境變數。

提示

請勿將金鑰直接包含在您的程式代碼中,且絕不會公開發佈。 如需更多驗證選項 (例如 Azure Key Vault),請參閱 Azure AI 服務安全性文章。

若要設定語言資源密鑰的環境變數,請開啟控制台視窗,並遵循作業系統和開發環境的指示。

  1. 若要設定 LANGUAGE_KEY 環境變數,請將 取代 your-key 為您資源的其中一個密鑰。
  2. 若要設定 LANGUAGE_ENDPOINT 環境變數,請將 取代 your-endpoint 為您資源的端點。
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint

注意

如果您只需要存取目前執行控制台中的環境變數,您可以使用 來設定環境變數 set ,而不是 setx

新增環境變數之後,您可能需要重新啟動任何需要讀取環境變數的執行中程式,包括主控台視窗。 例如,如果您使用 Visual Studio 作為編輯器,請在執行範例之前重新啟動 Visual Studio。

使用範例要求本文建立 JSON 檔案

在程式代碼編輯器中,建立名為 test_detection_payload.json 的新檔案,並複製下列 JSON 範例。 下一個步驟中,這個範例要求將會傳送至 API。

注意

  • 您可以在 GitHub找到語言特定範例。
{
    "kind": "LanguageDetection",
    "parameters": {
        "modelVersion": "latest"
    },
    "analysisInput":{
        "documents":[
            {
                "id":"1",
                "text": "This is a document written in English."
            }
        ]
    }
}

在您的 test_detection_payload.json 電腦上儲存某處。 例如,您的桌面。

傳送語言偵測要求

使用下列命令,使用您使用的程式來傳送 API 要求。 將命令複製到終端機,然後執行它。

parameter 描述
-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 服務訂用帳戶,則可以刪除資源或資源群組。 刪除資源群組也會刪除與其相關聯的任何其他資源。

下一步