Краткое руководство. Использование REST API и клиентской библиотеки распознавания языка

Справочная документация | по дополнительным примерам | пакета (NuGet) | Исходный код библиотеки

В этом кратком руководстве описано, как создать приложение для определения языка с использованием клиентской библиотеки для .NET. В следующем примере вы создадите приложение C#, которое может определить язык, на который был написан пример текста.

Совет

С помощью Language Studio можно опробовать функции языковой службы без написания кода.

Необходимые компоненты

  • Подписка Azure — создайте бесплатную учетную запись.
  • Интегрированная среда разработки Visual Studio.
  • После получения подписки Azure создайте ресурс языка в портал Azure, чтобы получить ключ и конечную точку. После развертывания ресурса выберите элемент Перейти к ресурсу.
    • Вам нужен ключ и конечная точка из ресурса, создаваемого для подключения приложения к API. Вставьте ключ и конечную точку в код далее в кратком руководстве.
    • Используйте бесплатную ценовую категорию (Free F0), чтобы опробовать службу, а затем выполните обновление до платного уровня для рабочей среды.
  • Чтобы использовать функцию анализа, требуется ресурс языка со стандартной ценовой категорией (S).

Установка

Создание приложения .NET Core

С помощью интегрированной среды разработки Visual Studio создайте консольное приложение .NET Core. При этом создается проект Hello World с одним исходным файлом C#: program.cs.

Установите клиентскую библиотеку, щелкнув правой кнопкой мыши решение в обозревателе решений и выбрав Управление пакетами NuGet. В открывшемся диспетчере пакетов выберите Просмотр и выполните поиск по запросу Azure.AI.TextAnalytics. Выберите версию 5.2.0, а затем Установить. Вы также можете использовать консоль диспетчера пакетов.

Пример кода

Скопируйте следующий код в файл program.cs. Не забудьте заменить переменную key ключом для вашего ресурса, а переменную endpoint — конечной точкой для вашего ресурса. Теперь выполните код.

Внимание

Переход на портал Azure. Если языковой ресурс, созданный в соответствии с указаниями в разделе Предварительные требования, успешно развернут, нажмите кнопку Перейти к ресурсу в разделе Дальнейшие действия. Ключ и конечная точка доступны на странице Ключи и конечная точка ресурса в разделе Управление ресурсами.

Внимание

Обязательно удалите ключ из кода, когда завершите работу, и ни в коем случае не публикуйте его в открытом доступе. Для рабочей среды используйте безопасный способ хранения и доступа к учетным данным, например Azure Key Vault. Дополнительные сведения см. в статье по безопасности служб ИИ Azure.

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) | Library source code

В этом кратком руководстве описано, как создать приложение для определения языка с использованием клиентской библиотеки для Java. В следующем примере вы создадите приложение Java, которое может определить язык, на который был написан пример текста.

Совет

С помощью Language Studio можно опробовать функции языковой службы без написания кода.

Необходимые компоненты

  • Подписка Azure — создайте бесплатную учетную запись.
  • Пакет разработчиков Java (JDK) версии 8 или более поздней.
  • После получения подписки Azure создайте ресурс языка в портал Azure, чтобы получить ключ и конечную точку. После развертывания ресурса выберите элемент Перейти к ресурсу.
    • Вам нужен ключ и конечная точка из ресурса, создаваемого для подключения приложения к API. Вставьте ключ и конечную точку в приведенный ниже код далее в кратком руководстве.
    • Используйте бесплатную ценовую категорию (Free F0), чтобы опробовать службу, а затем выполните обновление до платного уровня для рабочей среды.
  • Чтобы использовать функцию анализа, требуется ресурс языка со стандартной ценовой категорией (S).

Установка

Добавление клиентской библиотеки

Создайте проект Maven в предпочтительной среде разработки или IDE. Потом добавьте следующую зависимость в файл pom.xml проекта. Синтаксис реализации для других средств сборки можно найти в Интернете.

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

Пример кода

Создайте файл Java с именем Example.java. Откройте файл и скопируйте приведенный ниже код. Не забудьте заменить переменную key ключом для вашего ресурса, а переменную endpoint — конечной точкой для вашего ресурса. Теперь выполните код.

Внимание

Переход на портал Azure. Если языковой ресурс, созданный в соответствии с указаниями в разделе Предварительные требования, успешно развернут, нажмите кнопку Перейти к ресурсу в разделе Дальнейшие действия. Ключ и конечная точка доступны на странице Ключи и конечная точка ресурса в разделе Управление ресурсами.

Внимание

Обязательно удалите ключ из кода, когда завершите работу, и ни в коем случае не публикуйте его в открытом доступе. Для рабочей среды используйте безопасный способ хранения и доступа к учетным данным, например Azure Key Vault. Дополнительные сведения см. в статье по безопасности служб ИИ Azure.

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 версии 14 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.

"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)Library |

В этом кратком руководстве описано, как создать приложение для определения языка с использованием клиентской библиотеки для 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.


# 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. На экране "Создание языка" укажите следующие сведения:

    Подробности Description
    Подписка Учетная запись подписки, с которым будет связан ваш ресурс. Выберите подписку Azure в раскрывающемся меню.
    Группа ресурсов Группа ресурсов — это контейнер, в который хранятся создаваемые ресурсы. Выберите Создать, чтобы создать группу ресурсов.
    Область/регион Расположение ресурса службы "Язык". Различные регионы могут привести к задержке в зависимости от физического расположения, но не влияют на доступность ресурса во время выполнения. В этом кратком руководстве выберите доступный регион рядом с вами или выберите восточную часть США.
    Имя. Имя ресурса языка. Это имя также будет использоваться для создания URL-адреса конечной точки, который приложения будут использовать для отправки запросов API.
    Ценовая категория Ценовая категория ресурса Языка. Вы можете использовать уровень "Бесплатный F0 ", чтобы попробовать службу и обновить ее позже до платного уровня для рабочей среды.

    Снимок экрана: сведения о создании ресурсов в портал Azure.

  4. Убедитесь, что проверка поле проверка box в уведомлении об ответственном ИИ.

  5. В нижней части страницы выберите Просмотреть и создать.

  6. На появившемся экране убедитесь, что проверка прошла, и правильно ввели данные. Затем выберите Создать.

Получение ключа и конечной точки

Затем вам потребуется ключ и конечная точка из ресурса для подключения приложения к API. Ключ и конечную точку вы вставите в код позднее при работе с кратким руководством.

  1. После успешного развертывания ресурса языка нажмите кнопку "Перейти к ресурсу " в разделе "Дальнейшие действия".

    Снимок экрана: следующие шаги после развертывания ресурса.

  2. На экране ресурса выберите ключи и конечную точку в меню навигации слева. Вы будете использовать один из ключей и конечной точки в следующих шагах.

    Снимок экрана: раздел

Создание переменной среды

Приложение должно пройти проверку подлинности для отправки запросов API. Для рабочей среды используйте безопасный способ хранения и доступа к учетным данным,. В этом примере учетные данные записываются в переменные среды на локальном компьютере, на котором запущено приложение.

Совет

Не включайте ключ непосредственно в код и никогда не публикуйте его. Дополнительные варианты проверки подлинности, такие как Azure Key Vault, см. в статье по безопасности служб ИИ Azure.

Чтобы задать переменную среды для ключа ресурса языка, откройте окно консоли и следуйте инструкциям в вашей операционной системе и среде разработки.

  1. Чтобы задать LANGUAGE_KEY переменную среды, замените your-key одним из ключей ресурса.
  2. Чтобы задать переменную среды, замените your-endpoint конечной LANGUAGE_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 с помощью используемой программы. Скопируйте команду в терминал и запустите ее.

параметр Описание
-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, можно удалить ресурс или группу ресурсов. При удалении группы ресурсов также удаляются все связанные с ней ресурсы.

Следующие шаги