Tworzenie aplikacji usług sztucznej inteligencji platformy Azure za pomocą usługi Key Vault

Dowiedz się, jak bezpiecznie tworzyć aplikacje usług Azure AI przy użyciu usługi Azure Key Vault.

Usługa Key Vault zmniejsza ryzyko przypadkowego wycieku wpisów tajnych, ponieważ nie można przechowywać informacji zabezpieczających w aplikacji.

Wymagania wstępne

Uwaga

Zapoznaj się z dokumentacją i artykułami szybki start dotyczącymi usługi Azure AI, której używasz, aby uzyskać informacje na temat:

  • Poświadczenia i inne informacje potrzebne do wysyłania wywołań interfejsu API.
  • Pakiety i kod należy uruchomić aplikację.

Pobieranie poświadczeń z zasobu usług Azure AI

Przed dodaniem informacji o poświadczeniach do magazynu kluczy platformy Azure należy pobrać je z zasobu usług Azure AI. Jeśli na przykład usługa potrzebuje klucza i punktu końcowego, należy je znaleźć, wykonując następujące kroki:

  1. Przejdź do zasobu platformy Azure w witrynie Azure Portal.

  2. Z zwijanego menu po lewej stronie wybierz pozycję Klucze i punkt końcowy.

    A screenshot showing the key and endpoint page in the Azure portal.

Niektóre usługi sztucznej inteligencji platformy Azure wymagają różnych informacji w celu uwierzytelniania wywołań interfejsu API, takich jak klucz i region. Pamiętaj, aby pobrać te informacje przed kontynuowaniem.

Dodawanie poświadczeń do magazynu kluczy

Aby aplikacja pobierała poświadczenia i używała ich do uwierzytelniania wywołań interfejsu API, należy dodać je do wpisów tajnych magazynu kluczy.

Powtórz te kroki, aby wygenerować wpis tajny dla każdego wymaganego poświadczenia zasobu. Na przykład klucz i punkt końcowy. Te nazwy wpisów tajnych będą używane później do uwierzytelniania aplikacji.

  1. Otwórz nową kartę lub okno przeglądarki. Przejdź do magazynu kluczy w witrynie Azure Portal.

  2. Z zwijanego menu po lewej stronie wybierz pozycję Wpisy tajne obiektów>.

  3. Wybierz Generuj/Import.

    A screenshot showing the key vault key page in the Azure portal.

  4. Na ekranie Tworzenie wpisu tajnego wprowadź następujące wartości:

    Nazwa/nazwisko Wartość
    Opcje przekazywania Ręcznie
    Nazwisko Nazwa wpisu tajnego dla klucza lub punktu końcowego. Na przykład: "CognitiveServicesKey" lub "CognitiveServicesEndpoint"
    Wartość Klucz zasobu usługi Azure AI lub punkt końcowy.

    Później aplikacja będzie używać wpisu tajnego "Name", aby bezpiecznie uzyskać dostęp do wartości.

  5. Pozostaw wartości domyślne pozostałych wartości. Wybierz pozycję Utwórz.

    Napiwek

    Pamiętaj o nazwach ustawionych dla wpisów tajnych, ponieważ będą one używane w dalszej części aplikacji.

Powinny być teraz nazwane wpisy tajne dla informacji o zasobie.

Tworzenie zmiennej środowiskowej dla nazwy magazynu kluczy

Zalecamy utworzenie zmiennej środowiskowej dla nazwy usługi Azure Key Vault. Aplikacja odczytuje tę zmienną środowiskową w czasie wykonywania, aby pobrać informacje o kluczu i punkcie końcowym.

Aby ustawić zmienne środowiskowe, użyj jednego z następujących poleceń. KEY_VAULT_NAME z nazwą zmiennej środowiskowej i zastąp Your-Key-Vault-Name ciąg nazwą magazynu kluczy, który będzie przechowywany w zmiennej środowiskowej.

Utwórz i przypisz utrwałą zmienną środowiskową, biorąc pod uwagę wartość.

setx KEY_VAULT_NAME "Your-Key-Vault-Name"

W nowym wystąpieniu wiersza polecenia odczytaj zmienną środowiskową.

echo %KEY_VAULT_NAME%

Uwierzytelnianie na platformie Azure przy użyciu programu Visual Studio

Deweloperzy korzystający z programu Visual Studio 2017 lub nowszego mogą uwierzytelniać konto Microsoft Entra za pomocą programu Visual Studio. Umożliwia to dostęp do wpisów tajnych w magazynie kluczy przez zalogowanie się do subskrypcji platformy Azure z poziomu środowiska IDE.

Aby przeprowadzić uwierzytelnianie w programie Visual Studio, wybierz pozycję Narzędzia z górnego menu nawigacji i wybierz pozycję Opcje. Przejdź do opcji Uwierzytelnianie usługi platformy Azure, aby zalogować się przy użyciu nazwy użytkownika i hasła.

Uwierzytelnianie przy użyciu wiersza polecenia

Przed udzieleniem dostępu do magazynu kluczy należy uwierzytelnić się przy użyciu nazwy użytkownika i hasła firmy Microsoft Entra.

Aby uwierzytelnić się za pomocą interfejsu wiersza polecenia platformy az login Azure, uruchom polecenie .

az login

W systemach z domyślną przeglądarką internetową interfejs wiersza polecenia platformy Azure uruchomi przeglądarkę w celu uwierzytelnienia. W przypadku systemów bez domyślnej przeglądarki az login internetowej polecenie użyje przepływu uwierzytelniania kodu urządzenia. Możesz również wymusić użycie przepływu kodu urządzenia przez interfejs wiersza polecenia platformy Azure zamiast uruchamiania --use-device-code przeglądarki, określając argument.

Jeśli masz wiele subskrypcji, upewnij się , że wybrano subskrypcję platformy Azure zawierającą magazyn kluczy.

Udzielanie dostępu do magazynu kluczy

Utwórz zasady dostępu dla magazynu kluczy, które udzielają uprawnień wpisów tajnych do konta użytkownika.

Aby ustawić zasady dostępu, uruchom polecenie az keyvault set-policy . Zastąp Your-Key-Vault-Name ciąg nazwą magazynu kluczy. Zastąp user@domain.com ciąg nazwą użytkownika entra firmy Microsoft.

az keyvault set-policy --name Your-Key-Vault-Name --upn user@domain.com --secret-permissions delete get list set purge

Tworzenie nowej aplikacji w języku C#

Za pomocą środowiska IDE programu Visual Studio utwórz nową aplikację konsolową platformy .NET Core. Spowoduje to utworzenie projektu "Hello World" z pojedynczym plikiem źródłowym języka C#: program.cs.

Zainstaluj następujące biblioteki klienckie, klikając rozwiązanie prawym przyciskiem myszy w Eksplorator rozwiązań i wybierając polecenie Zarządzaj pakietami NuGet. W menedżerze pakietów, który zostanie otwarty, wybierz pozycję Przeglądaj i wyszukaj następujące biblioteki, a następnie wybierz pozycję Zainstaluj dla każdego z nich:

  • Azure.Security.KeyVault.Secrets
  • Azure.Identity

Importowanie przykładowego kodu

Skopiuj następujący przykładowy kod do pliku program.cs . Zastąp Your-Key-Secret-Name wartości i Your-Endpoint-Secret-Name nazwami wpisów tajnych ustawionymi w magazynie kluczy.

using System;
using System.Threading.Tasks;
using Azure;
using Azure.Identity;
using Azure.Security.KeyVault.Secrets;
using System.Net;

namespace key_vault_console_app
{
    class Program
    {
        static async Task Main(string[] args)
        {
            //Name of your key vault
            var keyVaultName = Environment.GetEnvironmentVariable("KEY_VAULT_NAME");

            //variables for retrieving the key and endpoint from your key vault.
            //Set these variables to the names you created for your secrets
            const string keySecretName = "Your-Key-Secret-Name";
            const string endpointSecretName = "Your-Endpoint-Secret-Name";

            //Endpoint for accessing your key vault
            var kvUri = $"https://{keyVaultName}.vault.azure.net";

            var keyVaultClient = new SecretClient(new Uri(kvUri), new DefaultAzureCredential());

            Console.WriteLine($"Retrieving your secrets from {keyVaultName}.");

            //Key and endpoint secrets retrieved from your key vault
            var keySecret = await keyVaultClient.GetSecretAsync(keySecretName);
            var endpointSecret = await keyVaultClient.GetSecretAsync(endpointSecretName);
            Console.WriteLine($"Your key secret value is: {keySecret.Value.Value}");
            Console.WriteLine($"Your endpoint secret value is: {endpointSecret.Value.Value}");
            Console.WriteLine("Secrets retrieved successfully");

        }
    }
}

Uruchamianie aplikacji

Uruchom aplikację, wybierając przycisk Debuguj w górnej części programu Visual Studio. Klucze tajne i wpisy tajne punktu końcowego zostaną pobrane z magazynu kluczy.

Wysyłanie testowego wywołania usługi językowej (opcjonalnie)

Jeśli używasz zasobu z wieloma usługami lub zasobu językowego, możesz zaktualizować aplikację , wykonując następujące kroki, aby wysłać przykładowe wywołanie rozpoznawania jednostek nazwanych przez pobranie klucza i punktu końcowego z magazynu kluczy.

  1. Zainstaluj bibliotekęAzure.AI.TextAnalytics, klikając prawym przyciskiem myszy rozwiązanie w Eksplorator rozwiązań i wybierając polecenie Zarządzaj pakietami NuGet. W menedżerze pakietów, który zostanie otwarty, wybierz pozycję Przeglądaj i wyszukaj następujące biblioteki, a następnie wybierz pozycję Zainstaluj dla każdego z nich:

  2. Dodaj następującą dyrektywę na początku program.cs pliku.

    using Azure.AI.TextAnalytics;
    
  3. Dodaj następujący przykładowy kod do aplikacji.

    // Example method for extracting named entities from text 
    private static void EntityRecognitionExample(string keySecret, string endpointSecret)
    {
        //String to be sent for Named Entity Recognition
        var exampleString = "I had a wonderful trip to Seattle last week.";
    
        AzureKeyCredential azureKeyCredential = new AzureKeyCredential(keySecret);
        Uri endpoint = new Uri(endpointSecret);
        var languageServiceClient = new TextAnalyticsClient(endpoint, azureKeyCredential);
    
        Console.WriteLine($"Sending a Named Entity Recognition (NER) request");
        var response = languageServiceClient.RecognizeEntities(exampleString);
        Console.WriteLine("Named Entities:");
        foreach (var entity in response.Value)
        {
            Console.WriteLine($"\tText: {entity.Text},\tCategory: {entity.Category},\tSub-Category: {entity.SubCategory}");
            Console.WriteLine($"\t\tScore: {entity.ConfidenceScore:F2},\tLength: {entity.Length},\tOffset: {entity.Offset}\n");
        }
    }
    
  4. Dodaj następujący kod, aby wywołać EntityRecognitionExample() metodę main przy użyciu klucza i wartości punktu końcowego.

    EntityRecognitionExample(keySecret.Value.Value, endpointSecret.Value.Value);
    
  5. Uruchom aplikację.

Uwierzytelnianie aplikacji

Przed udzieleniem dostępu do magazynu kluczy należy uwierzytelnić się przy użyciu nazwy użytkownika i hasła firmy Microsoft Entra.

Aby uwierzytelnić się za pomocą interfejsu wiersza polecenia platformy az login Azure, uruchom polecenie .

az login

W systemach z domyślną przeglądarką internetową interfejs wiersza polecenia platformy Azure uruchomi przeglądarkę w celu uwierzytelnienia. W przypadku systemów bez domyślnej przeglądarki az login internetowej polecenie użyje przepływu uwierzytelniania kodu urządzenia. Możesz również wymusić użycie przepływu kodu urządzenia przez interfejs wiersza polecenia platformy Azure zamiast uruchamiania --use-device-code przeglądarki, określając argument.

Jeśli masz wiele subskrypcji, upewnij się , że wybrano subskrypcję platformy Azure zawierającą magazyn kluczy.

Udzielanie dostępu do magazynu kluczy

Utwórz zasady dostępu dla magazynu kluczy, które udzielają uprawnień wpisów tajnych do konta użytkownika.

Aby ustawić zasady dostępu, uruchom polecenie az keyvault set-policy . Zastąp Your-Key-Vault-Name ciąg nazwą magazynu kluczy. Zastąp user@domain.com ciąg nazwą użytkownika entra firmy Microsoft.

az keyvault set-policy --name Your-Key-Vault-Name --upn user@domain.com --secret-permissions delete get list set purge

Tworzenie aplikacji w języku Python

Utwórz nowy folder o nazwie keyVaultExample. Następnie użyj preferowanego edytora kodu, aby utworzyć plik o nazwie program.py wewnątrz nowo utworzonego folderu.

Instalowanie pakietów usługi Key Vault i usług językowych

  1. W terminalu lub wierszu polecenia przejdź do folderu projektu i zainstaluj bibliotekę tożsamości Firmy Microsoft Entra:

    pip install azure-identity
    
  2. Zainstaluj bibliotekę wpisów tajnych usługi Key Vault:

    pip install azure-keyvault-secrets
    

Importowanie przykładowego kodu

Dodaj następujący przykładowy kod do pliku o nazwie program.py. Zastąp Your-Key-Secret-Name wartości i Your-Endpoint-Secret-Name nazwami wpisów tajnych ustawionymi w magazynie kluczy.

import os
from azure.keyvault.secrets import SecretClient
from azure.identity import DefaultAzureCredential
from azure.core.credentials import AzureKeyCredential

keyVaultName = os.environ["KEY_VAULT_NAME"]

# Set these variables to the names you created for your secrets
keySecretName = "Your-Key-Secret-Name"
endpointSecretName = "Your-Endpoint-Secret-Name"

# URI for accessing key vault
KVUri = f"https://{keyVaultName}.vault.azure.net"

# Instantiate the client and retrieve secrets
credential = DefaultAzureCredential()
kv_client = SecretClient(vault_url=KVUri, credential=credential)

print(f"Retrieving your secrets from {keyVaultName}.")

retrieved_key = kv_client.get_secret(keySecretName).value
retrieved_endpoint = kv_client.get_secret(endpointSecretName).value

print(f"Your secret key value is {retrieved_key}.");
print(f"Your secret endpoint value is {retrieved_endpoint}.");

Uruchamianie aplikacji

Użyj następującego polecenia, aby uruchomić aplikację. Klucze tajne i wpisy tajne punktu końcowego zostaną pobrane z magazynu kluczy.

python ./program.py

Wysyłanie testowego wywołania usługi językowej (opcjonalnie)

Jeśli używasz zasobu z wieloma usługami lub zasobu językowego, możesz zaktualizować aplikację , wykonując następujące kroki, aby wysłać przykładowe wywołanie rozpoznawania jednostek nazwanych przez pobranie klucza i punktu końcowego z magazynu kluczy.

  1. Zainstaluj bibliotekę usługi językowej:

    pip install azure-ai-textanalytics==5.1.0
    
  2. Dodaj następujący kod do aplikacji

    from azure.ai.textanalytics import TextAnalyticsClient
    # Authenticate the key vault secrets client using your key and endpoint 
    azure_key_credential = AzureKeyCredential(retrieved_key)
    # Now you can use key vault credentials with the Language service
    language_service_client = TextAnalyticsClient(
        endpoint=retrieved_endpoint, 
        credential=azure_key_credential)
    
    # Example of recognizing entities from text
    
    print("Sending NER request")
    
    try:
        documents = ["I had a wonderful trip to Seattle last week."]
        result = language_service_client.recognize_entities(documents = documents)[0]
        print("Named Entities:\n")
        for entity in result.entities:
            print("\tText: \t", entity.text, "\tCategory: \t", entity.category, "\tSubCategory: \t", entity.subcategory,
                    "\n\tConfidence Score: \t", round(entity.confidence_score, 2), "\tLength: \t", entity.length, "\tOffset: \t", entity.offset, "\n")
    
    except Exception as err:
        print("Encountered exception. {}".format(err))
    
  3. Uruchom aplikację.

Uwierzytelnianie aplikacji

Przed udzieleniem dostępu do magazynu kluczy należy uwierzytelnić się przy użyciu nazwy użytkownika i hasła firmy Microsoft Entra.

Aby uwierzytelnić się za pomocą interfejsu wiersza polecenia platformy az login Azure, uruchom polecenie .

az login

W systemach z domyślną przeglądarką internetową interfejs wiersza polecenia platformy Azure uruchomi przeglądarkę w celu uwierzytelnienia. W przypadku systemów bez domyślnej przeglądarki az login internetowej polecenie użyje przepływu uwierzytelniania kodu urządzenia. Możesz również wymusić użycie przepływu kodu urządzenia przez interfejs wiersza polecenia platformy Azure zamiast uruchamiania --use-device-code przeglądarki, określając argument.

Jeśli masz wiele subskrypcji, upewnij się , że wybrano subskrypcję platformy Azure zawierającą magazyn kluczy.

Udzielanie dostępu do magazynu kluczy

Utwórz zasady dostępu dla magazynu kluczy, które udzielają uprawnień wpisów tajnych do konta użytkownika.

Aby ustawić zasady dostępu, uruchom polecenie az keyvault set-policy . Zastąp Your-Key-Vault-Name ciąg nazwą magazynu kluczy. Zastąp user@domain.com ciąg nazwą użytkownika entra firmy Microsoft.

az keyvault set-policy --name Your-Key-Vault-Name --upn user@domain.com --secret-permissions delete get list set purge

Tworzenie aplikacji java

W preferowanym środowisku IDE utwórz nowy projekt aplikacji konsolowej Java i utwórz klasę o nazwie Example.

Dodawanie zależności

W projekcie dodaj następujące zależności do pom.xml pliku.

<dependencies>

        <dependency>
            <groupId>com.azure</groupId>
            <artifactId>azure-security-keyvault-secrets</artifactId>
            <version>4.2.3</version>
        </dependency>
        <dependency>
            <groupId>com.azure</groupId>
            <artifactId>azure-identity</artifactId>
            <version>1.2.0</version>
        </dependency>
    </dependencies>

Importowanie przykładowego kodu

Skopiuj następujący kod do pliku o nazwie Example.java. Zastąp Your-Key-Secret-Name wartości i Your-Endpoint-Secret-Name nazwami wpisów tajnych ustawionymi w magazynie kluczy.

import com.azure.identity.DefaultAzureCredentialBuilder;
import com.azure.security.keyvault.secrets.SecretClient;
import com.azure.security.keyvault.secrets.SecretClientBuilder;
import com.azure.core.credential.AzureKeyCredential;

public class Example {

    public static void main(String[] args) {

        String keyVaultName = System.getenv("KEY_VAULT_NAME");
        String keyVaultUri = "https://" + keyVaultName + ".vault.azure.net";

        //variables for retrieving the key and endpoint from your key vault.
        //Set these variables to the names you created for your secrets
        String keySecretName = "Your-Key-Secret-Name";
        String endpointSecretName = "Your-Endpoint-Secret-Name";

        //Create key vault secrets client
        SecretClient secretClient = new SecretClientBuilder()
                .vaultUrl(keyVaultUri)
                .credential(new DefaultAzureCredentialBuilder().build())
                .buildClient();

        //retrieve key and endpoint from key vault
        String keyValue = secretClient.getSecret(keySecretName).getValue();
        String endpointValue = secretClient.getSecret(endpointSecretName).getValue();
        System.out.printf("Your secret key value is: %s", keyValue)
        System.out.printf("Your secret endpoint value is: %s", endpointValue)
    }
}

Wysyłanie testowego wywołania usługi językowej (opcjonalnie)

Jeśli używasz zasobu z wieloma usługami lub zasobu językowego, możesz zaktualizować aplikację , wykonując następujące kroki, aby wysłać przykładowe wywołanie rozpoznawania jednostek nazwanych przez pobranie klucza i punktu końcowego z magazynu kluczy.

  1. W aplikacji dodaj następującą zależność:

    <dependency>
        <groupId>com.azure</groupId>
        <artifactId>azure-ai-textanalytics</artifactId>
        <version>5.1.12</version>
    </dependency>
    
  2. dodaj następujące instrukcje importowania do pliku.

    import com.azure.ai.textanalytics.models.*;
    import com.azure.ai.textanalytics.TextAnalyticsClientBuilder;
    import com.azure.ai.textanalytics.TextAnalyticsClient;
    
  3. Dodaj następujący kod do main() metody w aplikacji:

    
    TextAnalyticsClient languageClient = new TextAnalyticsClientBuilder()
            .credential(new AzureKeyCredential(keyValue))
            .endpoint(endpointValue)
            .buildClient();
    
    // Example for recognizing entities in text
    String text = "I had a wonderful trip to Seattle last week.";
    
    for (CategorizedEntity entity : languageClient.recognizeEntities(text)) {
        System.out.printf(
                "Recognized entity: %s, entity category: %s, entity sub-category: %s, score: %s, offset: %s, length: %s.%n",
                entity.getText(),
                entity.getCategory(),
                entity.getSubcategory(),
                entity.getConfidenceScore(),
                entity.getOffset(),
                entity.getLength());
    }
    
  4. Uruchamianie aplikacji

Uwierzytelnianie aplikacji

Przed udzieleniem dostępu do magazynu kluczy należy uwierzytelnić się przy użyciu nazwy użytkownika i hasła firmy Microsoft Entra.

Aby uwierzytelnić się za pomocą interfejsu wiersza polecenia platformy az login Azure, uruchom polecenie .

az login

W systemach z domyślną przeglądarką internetową interfejs wiersza polecenia platformy Azure uruchomi przeglądarkę w celu uwierzytelnienia. W przypadku systemów bez domyślnej przeglądarki az login internetowej polecenie użyje przepływu uwierzytelniania kodu urządzenia. Możesz również wymusić użycie przepływu kodu urządzenia przez interfejs wiersza polecenia platformy Azure zamiast uruchamiania --use-device-code przeglądarki, określając argument.

Jeśli masz wiele subskrypcji, upewnij się , że wybrano subskrypcję platformy Azure zawierającą magazyn kluczy.

Udzielanie dostępu do magazynu kluczy

Utwórz zasady dostępu dla magazynu kluczy, które udzielają uprawnień wpisów tajnych do konta użytkownika.

Aby ustawić zasady dostępu, uruchom polecenie az keyvault set-policy . Zastąp Your-Key-Vault-Name ciąg nazwą magazynu kluczy. Zastąp user@domain.com ciąg nazwą użytkownika entra firmy Microsoft.

az keyvault set-policy --name Your-Key-Vault-Name --upn user@domain.com --secret-permissions delete get list set purge

Tworzenie nowej aplikacji Node.js

Utwórz aplikację Node.js korzystającą z magazynu kluczy.

W terminalu utwórz folder o nazwie key-vault-js-example i przejdź do tego folderu:

mkdir key-vault-js-example && cd key-vault-js-example

Zainicjuj projekt Node.js:

npm init -y

Instalowanie pakietów usługi Key Vault i usług językowych

  1. Korzystając z terminalu, zainstaluj bibliotekę wpisów tajnych usługi Azure Key Vault, @azure/keyvault-secrets dla Node.js.

    npm install @azure/keyvault-secrets
    
  2. Zainstaluj bibliotekę tożsamości platformy Azure, @azure/pakiet tożsamości w celu uwierzytelnienia w usłudze Key Vault.

    npm install @azure/identity
    

Importowanie przykładu kodu

Dodaj następujący przykładowy kod do pliku o nazwie index.js. Zastąp Your-Key-Secret-Name wartości i Your-Endpoint-Secret-Name nazwami wpisów tajnych ustawionymi w magazynie kluczy.

const { SecretClient } = require("@azure/keyvault-secrets");
const { DefaultAzureCredential } = require("@azure/identity");
// Load the .env file if it exists
const dotenv = require("dotenv");
dotenv.config();

async function main() {
    const credential = new DefaultAzureCredential();

    const keyVaultName = process.env["KEY_VAULT_NAME"];
    const url = "https://" + keyVaultName + ".vault.azure.net";

    const kvClient = new SecretClient(url, credential);

    // Set these variables to the names you created for your secrets
    const keySecretName = "Your-Key-Secret-Name";
    const endpointSecretName = "Your-Endpoint-Secret-Name";

    console.log("Retrieving secrets from ", keyVaultName);
    const retrievedKey = await (await kvClient.getSecret(keySecretName)).value;
    const retrievedEndpoint = await (await kvClient.getSecret(endpointSecretName)).value;
    console.log("Your secret key value is: ", retrievedKey);
    console.log("Your secret endpoint value is: ", retrievedEndpoint);
}

main().catch((error) => {
  console.error("An error occurred:", error);
  process.exit(1);
});

Uruchamianie przykładowej aplikacji

Użyj następującego polecenia, aby uruchomić aplikację. Klucze tajne i wpisy tajne punktu końcowego zostaną pobrane z magazynu kluczy.

node index.js

Wysyłanie testowego wywołania usługi językowej (opcjonalnie)

Jeśli używasz zasobu z wieloma usługami lub zasobu językowego, możesz zaktualizować aplikację , wykonując następujące kroki, aby wysłać przykładowe wywołanie rozpoznawania jednostek nazwanych przez pobranie klucza i punktu końcowego z magazynu kluczy.

  1. Zainstaluj usługę Azure AI dla biblioteki językowej, @azure/ai-text-analytics w celu wysyłania żądań interfejsu API do usługi językowej.

    npm install @azure/ai-text-analytics@5.1.0
    
  2. Dodaj następujący kod do aplikacji:

    const { TextAnalyticsClient, AzureKeyCredential } = require("@azure/ai-text-analytics");
    // Authenticate the language client with your key and endpoint
    const languageClient = new TextAnalyticsClient(retrievedEndpoint,  new AzureKeyCredential(retrievedKey));
    
    // Example for recognizing entities in text
    console.log("Sending NER request")
    const entityInputs = [
        "I had a wonderful trip to Seattle last week."
    ];
    const entityResults = await languageClient.recognizeEntities(entityInputs);
    entityResults.forEach(document => {
        console.log(`Document ID: ${document.id}`);
        document.entities.forEach(entity => {
            console.log(`\tName: ${entity.text} \tCategory: ${entity.category} \tSubcategory: ${entity.subCategory ? entity.subCategory : "N/A"}`);
            console.log(`\tScore: ${entity.confidenceScore}`);
        });
    });
    
  3. Uruchom aplikację.

Następne kroki