Szybki start: łączenie jednostek przy użyciu biblioteki klienta i interfejsu API REST
Dokumentacja referencyjna Więcej przykładów | Package (NuGet) | Library source code |
Użyj tego przewodnika Szybki start, aby utworzyć aplikację łączącą jednostkę z biblioteką klienta dla platformy .NET. W poniższym przykładzie utworzysz aplikację języka C#, która może identyfikować i uściślać jednostki znajdujące się w tekście.
Napiwek
Możesz użyć programu Language Studio , aby wypróbować funkcje usługi językowej bez konieczności pisania kodu.
Wymagania wstępne
- Subskrypcja platformy Azure — utwórz bezpłatnie
- Środowisko IDE programu Visual Studio
Konfigurowanie
Tworzenie zasobu platformy Azure
Aby użyć poniższego przykładu kodu, musisz wdrożyć zasób platformy Azure. Ten zasób będzie zawierać klucz i punkt końcowy używany do uwierzytelniania wywołań interfejsu API wysyłanych do usługi językowej.
Użyj poniższego linku, aby utworzyć zasób językowy przy użyciu witryny Azure Portal. Musisz zalogować się przy użyciu subskrypcji platformy Azure.
Na wyświetlonym ekranie Wybierz dodatkowe funkcje wybierz pozycję Kontynuuj, aby utworzyć zasób.
Na ekranie Tworzenie języka podaj następujące informacje:
Szczegół opis Subskrypcja Konto subskrypcji, z którymi zostanie skojarzony zasób. Wybierz subskrypcję platformy Azure z menu rozwijanego. Grupa zasobów Grupa zasobów to kontener, który przechowuje tworzone zasoby. Wybierz pozycję Utwórz nową , aby utworzyć nową grupę zasobów. Region (Region) Lokalizacja zasobu Language. Różne regiony mogą wprowadzać opóźnienia w zależności od lokalizacji fizycznej, ale nie mają wpływu na dostępność zasobu w czasie wykonywania. W tym przewodniku Szybki start wybierz dostępny region w pobliżu, lub wybierz pozycję Wschodnie stany USA. Nazwisko Nazwa zasobu Language. Ta nazwa będzie również używana do tworzenia adresu URL punktu końcowego używanego przez aplikacje do wysyłania żądań interfejsu API. Warstwa cenowa Warstwa cenowa zasobu Language. Możesz użyć warstwy Bezpłatna F0 , aby wypróbować usługę i uaktualnić ją później do warstwy płatnej dla środowiska produkcyjnego. Upewnij się, że pole wyboru Odpowiedzialne powiadomienie o sztucznej inteligencji jest zaznaczone.
Wybierz pozycję Przejrzyj i utwórz w dolnej części strony.
Na wyświetlonym ekranie upewnij się, że walidacja została pomyślnie przekazana i czy informacje zostały wprowadzone poprawnie. Następnie wybierz Utwórz.
Uzyskiwanie klucza i punktu końcowego
Następnie będziesz potrzebować klucza i punktu końcowego z zasobu, aby połączyć aplikację z interfejsem API. W dalszej części przewodnika Szybki start wklejesz klucz i punkt końcowy do kodu.
Po pomyślnym wdrożeniu zasobu Language kliknij przycisk Przejdź do zasobu w obszarze Następne kroki.
Na ekranie zasobu wybierz pozycję Klucze i punkt końcowy w menu nawigacji po lewej stronie. Użyjesz jednego z kluczy i punktu końcowego w poniższych krokach.
Tworzenie zmiennych środowiskowych
Aby wysyłać żądania interfejsu API, aplikacja musi być uwierzytelniona. W środowisku produkcyjnym należy użyć bezpiecznego sposobu przechowywania poświadczeń i uzyskiwania do nich dostępu. W tym przykładzie zostaną zapisane poświadczenia do zmiennych środowiskowych na komputerze lokalnym z uruchomioną aplikacją.
Aby ustawić zmienną środowiskową dla klucza zasobu Language, otwórz okno konsoli i postępuj zgodnie z instrukcjami dotyczącymi systemu operacyjnego i środowiska programistycznego.
- Aby ustawić zmienną
LANGUAGE_KEY
środowiskową, zastąpyour-key
element jednym z kluczy zasobu. - Aby ustawić zmienną
LANGUAGE_ENDPOINT
środowiskową, zastąpyour-endpoint
element punktem końcowym zasobu.
Ważne
Jeśli używasz klucza interfejsu API, zapisz go bezpiecznie w innym miejscu, na przykład w usłudze Azure Key Vault. Nie dołączaj klucza interfejsu API bezpośrednio do kodu i nigdy nie publikuj go publicznie.
Aby uzyskać więcej informacji na temat zabezpieczeń usług sztucznej inteligencji, zobacz Uwierzytelnianie żądań w usługach Azure AI.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Uwaga
Jeśli musisz uzyskać dostęp tylko do zmiennych środowiskowych w bieżącej uruchomionej konsoli, możesz ustawić zmienną środowiskową z wartością set
zamiast setx
.
Po dodaniu zmiennych środowiskowych może być konieczne ponowne uruchomienie wszystkich uruchomionych programów, które będą musiały odczytać zmienne środowiskowe, w tym okno konsoli. Jeśli na przykład używasz programu Visual Studio jako edytora, uruchom ponownie program Visual Studio przed uruchomieniem przykładu.
Tworzenie nowej aplikacji .NET Core
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 C#: program.cs.
Zainstaluj bibliotekę klienta, klikając prawym przyciskiem myszy rozwiązanie w Eksploratorze 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 ciąg Azure.AI.TextAnalytics
. Wybierz wersję 5.2.0
, a następnie pozycję Zainstaluj. Możesz również użyć konsoli menedżera pakietów.
Przykład kodu
Skopiuj następujący kod do pliku program.cs i uruchom kod.
using Azure;
using System;
using System.Globalization;
using Azure.AI.TextAnalytics;
namespace EntityLinkingExample
{
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");
private static readonly AzureKeyCredential credentials = new AzureKeyCredential(languageKey);
private static readonly Uri endpoint = new Uri(languageEndpoint);
// Example method for recognizing entities and providing a link to an online data source.
static void EntityLinkingExample(TextAnalyticsClient client)
{
var response = client.RecognizeLinkedEntities(
"Microsoft was founded by Bill Gates and Paul Allen on April 4, 1975, " +
"to develop and sell BASIC interpreters for the Altair 8800. " +
"During his career at Microsoft, Gates held the positions of chairman, " +
"chief executive officer, president and chief software architect, " +
"while also being the largest individual shareholder until May 2014.");
Console.WriteLine("Linked Entities:");
foreach (var entity in response.Value)
{
Console.WriteLine($"\tName: {entity.Name},\tID: {entity.DataSourceEntityId},\tURL: {entity.Url}\tData Source: {entity.DataSource}");
Console.WriteLine("\tMatches:");
foreach (var match in entity.Matches)
{
Console.WriteLine($"\t\tText: {match.Text}");
Console.WriteLine($"\t\tScore: {match.ConfidenceScore:F2}\n");
}
}
}
static void Main(string[] args)
{
var client = new TextAnalyticsClient(endpoint, credentials);
EntityLinkingExample(client);
Console.Write("Press any key to exit.");
Console.ReadKey();
}
}
}
Wyjście
Linked Entities:
Name: Microsoft, ID: Microsoft, URL: https://en.wikipedia.org/wiki/Microsoft Data Source: Wikipedia
Matches:
Text: Microsoft
Score: 0.55
Text: Microsoft
Score: 0.55
Name: Bill Gates, ID: Bill Gates, URL: https://en.wikipedia.org/wiki/Bill_Gates Data Source: Wikipedia
Matches:
Text: Bill Gates
Score: 0.63
Text: Gates
Score: 0.63
Name: Paul Allen, ID: Paul Allen, URL: https://en.wikipedia.org/wiki/Paul_Allen Data Source: Wikipedia
Matches:
Text: Paul Allen
Score: 0.60
Name: April 4, ID: April 4, URL: https://en.wikipedia.org/wiki/April_4 Data Source: Wikipedia
Matches:
Text: April 4
Score: 0.32
Name: BASIC, ID: BASIC, URL: https://en.wikipedia.org/wiki/BASIC Data Source: Wikipedia
Matches:
Text: BASIC
Score: 0.33
Name: Altair 8800, ID: Altair 8800, URL: https://en.wikipedia.org/wiki/Altair_8800 Data Source: Wikipedia
Matches:
Text: Altair 8800
Score: 0.88
Czyszczenie zasobów
Jeśli chcesz wyczyścić i usunąć subskrypcję usług Azure AI, możesz usunąć zasób lub grupę zasobów. Usunięcie grupy zasobów powoduje również usunięcie wszelkich innych skojarzonych z nią zasobów.
Następne kroki
Dokumentacja referencyjna Więcej przykładów | Package (Maven) | Library source code |
Użyj tego przewodnika Szybki start, aby utworzyć aplikację łączącą jednostkę z biblioteką klienta dla języka Java. W poniższym przykładzie utworzysz aplikację Java, która może identyfikować i uściślać jednostki znajdujące się w tekście.
Wymagania wstępne
- Subskrypcja platformy Azure — utwórz bezpłatnie
- Zestaw Java Development Kit (JDK) w wersji 8 lub nowszej
Konfigurowanie
Tworzenie zasobu platformy Azure
Aby użyć poniższego przykładu kodu, musisz wdrożyć zasób platformy Azure. Ten zasób będzie zawierać klucz i punkt końcowy używany do uwierzytelniania wywołań interfejsu API wysyłanych do usługi językowej.
Użyj poniższego linku, aby utworzyć zasób językowy przy użyciu witryny Azure Portal. Musisz zalogować się przy użyciu subskrypcji platformy Azure.
Na wyświetlonym ekranie Wybierz dodatkowe funkcje wybierz pozycję Kontynuuj, aby utworzyć zasób.
Na ekranie Tworzenie języka podaj następujące informacje:
Szczegół opis Subskrypcja Konto subskrypcji, z którymi zostanie skojarzony zasób. Wybierz subskrypcję platformy Azure z menu rozwijanego. Grupa zasobów Grupa zasobów to kontener, który przechowuje tworzone zasoby. Wybierz pozycję Utwórz nową , aby utworzyć nową grupę zasobów. Region (Region) Lokalizacja zasobu Language. Różne regiony mogą wprowadzać opóźnienia w zależności od lokalizacji fizycznej, ale nie mają wpływu na dostępność zasobu w czasie wykonywania. W tym przewodniku Szybki start wybierz dostępny region w pobliżu, lub wybierz pozycję Wschodnie stany USA. Nazwisko Nazwa zasobu Language. Ta nazwa będzie również używana do tworzenia adresu URL punktu końcowego używanego przez aplikacje do wysyłania żądań interfejsu API. Warstwa cenowa Warstwa cenowa zasobu Language. Możesz użyć warstwy Bezpłatna F0 , aby wypróbować usługę i uaktualnić ją później do warstwy płatnej dla środowiska produkcyjnego. Upewnij się, że pole wyboru Odpowiedzialne powiadomienie o sztucznej inteligencji jest zaznaczone.
Wybierz pozycję Przejrzyj i utwórz w dolnej części strony.
Na wyświetlonym ekranie upewnij się, że walidacja została pomyślnie przekazana i czy informacje zostały wprowadzone poprawnie. Następnie wybierz Utwórz.
Uzyskiwanie klucza i punktu końcowego
Następnie będziesz potrzebować klucza i punktu końcowego z zasobu, aby połączyć aplikację z interfejsem API. W dalszej części przewodnika Szybki start wklejesz klucz i punkt końcowy do kodu.
Po pomyślnym wdrożeniu zasobu Language kliknij przycisk Przejdź do zasobu w obszarze Następne kroki.
Na ekranie zasobu wybierz pozycję Klucze i punkt końcowy w menu nawigacji po lewej stronie. Użyjesz jednego z kluczy i punktu końcowego w poniższych krokach.
Tworzenie zmiennych środowiskowych
Aby wysyłać żądania interfejsu API, aplikacja musi być uwierzytelniona. W środowisku produkcyjnym należy użyć bezpiecznego sposobu przechowywania poświadczeń i uzyskiwania do nich dostępu. W tym przykładzie zostaną zapisane poświadczenia do zmiennych środowiskowych na komputerze lokalnym z uruchomioną aplikacją.
Aby ustawić zmienną środowiskową dla klucza zasobu Language, otwórz okno konsoli i postępuj zgodnie z instrukcjami dotyczącymi systemu operacyjnego i środowiska programistycznego.
- Aby ustawić zmienną
LANGUAGE_KEY
środowiskową, zastąpyour-key
element jednym z kluczy zasobu. - Aby ustawić zmienną
LANGUAGE_ENDPOINT
środowiskową, zastąpyour-endpoint
element punktem końcowym zasobu.
Ważne
Jeśli używasz klucza interfejsu API, zapisz go bezpiecznie w innym miejscu, na przykład w usłudze Azure Key Vault. Nie dołączaj klucza interfejsu API bezpośrednio do kodu i nigdy nie publikuj go publicznie.
Aby uzyskać więcej informacji na temat zabezpieczeń usług sztucznej inteligencji, zobacz Uwierzytelnianie żądań w usługach Azure AI.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Uwaga
Jeśli musisz uzyskać dostęp tylko do zmiennych środowiskowych w bieżącej uruchomionej konsoli, możesz ustawić zmienną środowiskową z wartością set
zamiast setx
.
Po dodaniu zmiennych środowiskowych może być konieczne ponowne uruchomienie wszystkich uruchomionych programów, które będą musiały odczytać zmienne środowiskowe, w tym okno konsoli. Jeśli na przykład używasz programu Visual Studio jako edytora, uruchom ponownie program Visual Studio przed uruchomieniem przykładu.
Dodawanie biblioteki klienta
Utwórz projekt Maven w preferowanym środowisku IDE lub w środowisku deweloperskim. Następnie dodaj następującą zależność do pliku pom.xml projektu. Składnię implementacji dla innych narzędzi kompilacji można znaleźć w Internecie.
<dependencies>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-ai-textanalytics</artifactId>
<version>5.2.0</version>
</dependency>
</dependencies>
Przykład kodu
Utwórz plik Java o nazwie Example.java
. Otwórz plik i skopiuj poniższy kod. Następnie uruchom kod.
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);
recognizeLinkedEntitiesExample(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 recognizing entities and providing a link to an online data source
static void recognizeLinkedEntitiesExample(TextAnalyticsClient client)
{
// The text that need be analyzed.
String text = "Microsoft was founded by Bill Gates and Paul Allen on April 4, 1975, " +
"to develop and sell BASIC interpreters for the Altair 8800. " +
"During his career at Microsoft, Gates held the positions of chairman, " +
"chief executive officer, president and chief software architect, " +
"while also being the largest individual shareholder until May 2014.";
System.out.printf("Linked Entities:%n");
for (LinkedEntity linkedEntity : client.recognizeLinkedEntities(text)) {
System.out.printf("Name: %s, ID: %s, URL: %s, Data Source: %s.%n",
linkedEntity.getName(),
linkedEntity.getDataSourceEntityId(),
linkedEntity.getUrl(),
linkedEntity.getDataSource());
System.out.printf("Matches:%n");
for (LinkedEntityMatch linkedEntityMatch : linkedEntity.getMatches()) {
System.out.printf("Text: %s, Score: %.2f, Offset: %s, Length: %s%n",
linkedEntityMatch.getText(),
linkedEntityMatch.getConfidenceScore(),
linkedEntityMatch.getOffset(),
linkedEntityMatch.getLength());
}
}
}
}
Wyjście
Linked Entities:
Name: Microsoft, ID: Microsoft, URL: https://en.wikipedia.org/wiki/Microsoft, Data Source: Wikipedia.
Matches:
Text: Microsoft, Score: 0.55, Offset: 0, Length: 9
Text: Microsoft, Score: 0.55, Offset: 150, Length: 9
Name: Bill Gates, ID: Bill Gates, URL: https://en.wikipedia.org/wiki/Bill_Gates, Data Source: Wikipedia.
Matches:
Text: Bill Gates, Score: 0.63, Offset: 25, Length: 10
Text: Gates, Score: 0.63, Offset: 161, Length: 5
Name: Paul Allen, ID: Paul Allen, URL: https://en.wikipedia.org/wiki/Paul_Allen, Data Source: Wikipedia.
Matches:
Text: Paul Allen, Score: 0.60, Offset: 40, Length: 10
Name: April 4, ID: April 4, URL: https://en.wikipedia.org/wiki/April_4, Data Source: Wikipedia.
Matches:
Text: April 4, Score: 0.32, Offset: 54, Length: 7
Name: BASIC, ID: BASIC, URL: https://en.wikipedia.org/wiki/BASIC, Data Source: Wikipedia.
Matches:
Text: BASIC, Score: 0.33, Offset: 89, Length: 5
Name: Altair 8800, ID: Altair 8800, URL: https://en.wikipedia.org/wiki/Altair_8800, Data Source: Wikipedia.
Matches:
Text: Altair 8800, Score: 0.88, Offset: 116, Length: 11
Czyszczenie zasobów
Jeśli chcesz wyczyścić i usunąć subskrypcję usług Azure AI, możesz usunąć zasób lub grupę zasobów. Usunięcie grupy zasobów powoduje również usunięcie wszelkich innych skojarzonych z nią zasobów.
Następne kroki
Dokumentacja referencyjna Więcej przykładów | Package (npm) | Kod źródłowy biblioteki |
Użyj tego przewodnika Szybki start, aby utworzyć aplikację łączącą jednostkę z biblioteką klienta dla Node.js. W poniższym przykładzie utworzysz aplikację JavaScript, która może identyfikować i uściślać jednostki znajdujące się w tekście.
Wymagania wstępne
- Subskrypcja platformy Azure — utwórz bezpłatnie
- Node.js wersji 14 LTS lub nowszej
Konfigurowanie
Tworzenie zasobu platformy Azure
Aby użyć poniższego przykładu kodu, musisz wdrożyć zasób platformy Azure. Ten zasób będzie zawierać klucz i punkt końcowy używany do uwierzytelniania wywołań interfejsu API wysyłanych do usługi językowej.
Użyj poniższego linku, aby utworzyć zasób językowy przy użyciu witryny Azure Portal. Musisz zalogować się przy użyciu subskrypcji platformy Azure.
Na wyświetlonym ekranie Wybierz dodatkowe funkcje wybierz pozycję Kontynuuj, aby utworzyć zasób.
Na ekranie Tworzenie języka podaj następujące informacje:
Szczegół opis Subskrypcja Konto subskrypcji, z którymi zostanie skojarzony zasób. Wybierz subskrypcję platformy Azure z menu rozwijanego. Grupa zasobów Grupa zasobów to kontener, który przechowuje tworzone zasoby. Wybierz pozycję Utwórz nową , aby utworzyć nową grupę zasobów. Region (Region) Lokalizacja zasobu Language. Różne regiony mogą wprowadzać opóźnienia w zależności od lokalizacji fizycznej, ale nie mają wpływu na dostępność zasobu w czasie wykonywania. W tym przewodniku Szybki start wybierz dostępny region w pobliżu, lub wybierz pozycję Wschodnie stany USA. Nazwisko Nazwa zasobu Language. Ta nazwa będzie również używana do tworzenia adresu URL punktu końcowego używanego przez aplikacje do wysyłania żądań interfejsu API. Warstwa cenowa Warstwa cenowa zasobu Language. Możesz użyć warstwy Bezpłatna F0 , aby wypróbować usługę i uaktualnić ją później do warstwy płatnej dla środowiska produkcyjnego. Upewnij się, że pole wyboru Odpowiedzialne powiadomienie o sztucznej inteligencji jest zaznaczone.
Wybierz pozycję Przejrzyj i utwórz w dolnej części strony.
Na wyświetlonym ekranie upewnij się, że walidacja została pomyślnie przekazana i czy informacje zostały wprowadzone poprawnie. Następnie wybierz Utwórz.
Uzyskiwanie klucza i punktu końcowego
Następnie będziesz potrzebować klucza i punktu końcowego z zasobu, aby połączyć aplikację z interfejsem API. W dalszej części przewodnika Szybki start wklejesz klucz i punkt końcowy do kodu.
Po pomyślnym wdrożeniu zasobu Language kliknij przycisk Przejdź do zasobu w obszarze Następne kroki.
Na ekranie zasobu wybierz pozycję Klucze i punkt końcowy w menu nawigacji po lewej stronie. Użyjesz jednego z kluczy i punktu końcowego w poniższych krokach.
Tworzenie zmiennych środowiskowych
Aby wysyłać żądania interfejsu API, aplikacja musi być uwierzytelniona. W środowisku produkcyjnym należy użyć bezpiecznego sposobu przechowywania poświadczeń i uzyskiwania do nich dostępu. W tym przykładzie zostaną zapisane poświadczenia do zmiennych środowiskowych na komputerze lokalnym z uruchomioną aplikacją.
Aby ustawić zmienną środowiskową dla klucza zasobu Language, otwórz okno konsoli i postępuj zgodnie z instrukcjami dotyczącymi systemu operacyjnego i środowiska programistycznego.
- Aby ustawić zmienną
LANGUAGE_KEY
środowiskową, zastąpyour-key
element jednym z kluczy zasobu. - Aby ustawić zmienną
LANGUAGE_ENDPOINT
środowiskową, zastąpyour-endpoint
element punktem końcowym zasobu.
Ważne
Jeśli używasz klucza interfejsu API, zapisz go bezpiecznie w innym miejscu, na przykład w usłudze Azure Key Vault. Nie dołączaj klucza interfejsu API bezpośrednio do kodu i nigdy nie publikuj go publicznie.
Aby uzyskać więcej informacji na temat zabezpieczeń usług sztucznej inteligencji, zobacz Uwierzytelnianie żądań w usługach Azure AI.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Uwaga
Jeśli musisz uzyskać dostęp tylko do zmiennych środowiskowych w bieżącej uruchomionej konsoli, możesz ustawić zmienną środowiskową z wartością set
zamiast setx
.
Po dodaniu zmiennych środowiskowych może być konieczne ponowne uruchomienie wszystkich uruchomionych programów, które będą musiały odczytać zmienne środowiskowe, w tym okno konsoli. Jeśli na przykład używasz programu Visual Studio jako edytora, uruchom ponownie program Visual Studio przed uruchomieniem przykładu.
Tworzenie nowej aplikacji Node.js
W oknie konsoli (na przykład cmd, PowerShell lub Bash) utwórz nowy katalog dla aplikacji i przejdź do niego.
mkdir myapp
cd myapp
Uruchom polecenie npm init
, aby utworzyć aplikację Node przy użyciu pliku package.json
.
npm init
Instalowanie biblioteki klienta
Zainstaluj pakiet npm:
npm install @azure/ai-language-text
Przykład kodu
Otwórz plik i skopiuj poniższy kod. Następnie uruchom kod.
"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 sentence for recognizing entities
const documents = ["Microsoft was founded by Bill Gates and Paul Allen on April 4, 1975."];
//example of how to use the client to perform entity linking on a document
async function main() {
console.log("== Entity linking sample ==");
const client = new TextAnalysisClient(endpoint, new AzureKeyCredential(key));
const results = await client.analyze("EntityLinking", documents);
for (const result of results) {
console.log(`- Document ${result.id}`);
if (!result.error) {
console.log("\tEntities:");
for (const entity of result.entities) {
console.log(
`\t- Entity ${entity.name}; link ${entity.url}; datasource: ${entity.dataSource}`
);
console.log("\t\tMatches:");
for (const match of entity.matches) {
console.log(
`\t\t- Entity appears as "${match.text}" (confidence: ${match.confidenceScore}`
);
}
}
} else {
console.error(" Error:", result.error);
}
}
}
//call the main function
main().catch((err) => {
console.error("The sample encountered an error:", err);
});
Wyjście
== Entity linking sample ==
- Document 0
Entities:
- Entity Microsoft; link https://en.wikipedia.org/wiki/Microsoft; datasource: Wikipedia
Matches:
- Entity appears as "Microsoft" (confidence: 0.48
- Entity Bill Gates; link https://en.wikipedia.org/wiki/Bill_Gates; datasource: Wikipedia
Matches:
- Entity appears as "Bill Gates" (confidence: 0.52
- Entity Paul Allen; link https://en.wikipedia.org/wiki/Paul_Allen; datasource: Wikipedia
Matches:
- Entity appears as "Paul Allen" (confidence: 0.54
- Entity April 4; link https://en.wikipedia.org/wiki/April_4; datasource: Wikipedia
Matches:
- Entity appears as "April 4" (confidence: 0.38
Czyszczenie zasobów
Jeśli chcesz wyczyścić i usunąć subskrypcję usług Azure AI, możesz usunąć zasób lub grupę zasobów. Usunięcie grupy zasobów powoduje również usunięcie wszelkich innych skojarzonych z nią zasobów.
Następne kroki
Dokumentacja referencyjna Więcej przykładów | Package (PyPi) | Library source code |
Użyj tego przewodnika Szybki start, aby utworzyć aplikację łączącą jednostkę z biblioteką klienta dla języka Python. W poniższym przykładzie utworzysz aplikację języka Python, która może identyfikować i uściślać jednostki znajdujące się w tekście.
Wymagania wstępne
- Subskrypcja platformy Azure — utwórz bezpłatnie
- Środowisko Python w wersji 3.7 lub nowszej
Konfigurowanie
Tworzenie zasobu platformy Azure
Aby użyć poniższego przykładu kodu, musisz wdrożyć zasób platformy Azure. Ten zasób będzie zawierać klucz i punkt końcowy używany do uwierzytelniania wywołań interfejsu API wysyłanych do usługi językowej.
Użyj poniższego linku, aby utworzyć zasób językowy przy użyciu witryny Azure Portal. Musisz zalogować się przy użyciu subskrypcji platformy Azure.
Na wyświetlonym ekranie Wybierz dodatkowe funkcje wybierz pozycję Kontynuuj, aby utworzyć zasób.
Na ekranie Tworzenie języka podaj następujące informacje:
Szczegół opis Subskrypcja Konto subskrypcji, z którymi zostanie skojarzony zasób. Wybierz subskrypcję platformy Azure z menu rozwijanego. Grupa zasobów Grupa zasobów to kontener, który przechowuje tworzone zasoby. Wybierz pozycję Utwórz nową , aby utworzyć nową grupę zasobów. Region (Region) Lokalizacja zasobu Language. Różne regiony mogą wprowadzać opóźnienia w zależności od lokalizacji fizycznej, ale nie mają wpływu na dostępność zasobu w czasie wykonywania. W tym przewodniku Szybki start wybierz dostępny region w pobliżu, lub wybierz pozycję Wschodnie stany USA. Nazwisko Nazwa zasobu Language. Ta nazwa będzie również używana do tworzenia adresu URL punktu końcowego używanego przez aplikacje do wysyłania żądań interfejsu API. Warstwa cenowa Warstwa cenowa zasobu Language. Możesz użyć warstwy Bezpłatna F0 , aby wypróbować usługę i uaktualnić ją później do warstwy płatnej dla środowiska produkcyjnego. Upewnij się, że pole wyboru Odpowiedzialne powiadomienie o sztucznej inteligencji jest zaznaczone.
Wybierz pozycję Przejrzyj i utwórz w dolnej części strony.
Na wyświetlonym ekranie upewnij się, że walidacja została pomyślnie przekazana i czy informacje zostały wprowadzone poprawnie. Następnie wybierz Utwórz.
Uzyskiwanie klucza i punktu końcowego
Następnie będziesz potrzebować klucza i punktu końcowego z zasobu, aby połączyć aplikację z interfejsem API. W dalszej części przewodnika Szybki start wklejesz klucz i punkt końcowy do kodu.
Po pomyślnym wdrożeniu zasobu Language kliknij przycisk Przejdź do zasobu w obszarze Następne kroki.
Na ekranie zasobu wybierz pozycję Klucze i punkt końcowy w menu nawigacji po lewej stronie. Użyjesz jednego z kluczy i punktu końcowego w poniższych krokach.
Tworzenie zmiennych środowiskowych
Aby wysyłać żądania interfejsu API, aplikacja musi być uwierzytelniona. W środowisku produkcyjnym należy użyć bezpiecznego sposobu przechowywania poświadczeń i uzyskiwania do nich dostępu. W tym przykładzie zostaną zapisane poświadczenia do zmiennych środowiskowych na komputerze lokalnym z uruchomioną aplikacją.
Aby ustawić zmienną środowiskową dla klucza zasobu Language, otwórz okno konsoli i postępuj zgodnie z instrukcjami dotyczącymi systemu operacyjnego i środowiska programistycznego.
- Aby ustawić zmienną
LANGUAGE_KEY
środowiskową, zastąpyour-key
element jednym z kluczy zasobu. - Aby ustawić zmienną
LANGUAGE_ENDPOINT
środowiskową, zastąpyour-endpoint
element punktem końcowym zasobu.
Ważne
Jeśli używasz klucza interfejsu API, zapisz go bezpiecznie w innym miejscu, na przykład w usłudze Azure Key Vault. Nie dołączaj klucza interfejsu API bezpośrednio do kodu i nigdy nie publikuj go publicznie.
Aby uzyskać więcej informacji na temat zabezpieczeń usług sztucznej inteligencji, zobacz Uwierzytelnianie żądań w usługach Azure AI.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Uwaga
Jeśli musisz uzyskać dostęp tylko do zmiennych środowiskowych w bieżącej uruchomionej konsoli, możesz ustawić zmienną środowiskową z wartością set
zamiast setx
.
Po dodaniu zmiennych środowiskowych może być konieczne ponowne uruchomienie wszystkich uruchomionych programów, które będą musiały odczytać zmienne środowiskowe, w tym okno konsoli. Jeśli na przykład używasz programu Visual Studio jako edytora, uruchom ponownie program Visual Studio przed uruchomieniem przykładu.
Instalowanie biblioteki klienta
Po zainstalowaniu środowiska Python możesz zainstalować bibliotekę klienta przy użyciu następującego polecenia:
pip install azure-ai-textanalytics==5.2.0
Przykład kodu
Utwórz nowy plik języka Python i skopiuj poniższy kod. Następnie uruchom kod.
# 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 function for recognizing entities and providing a link to an online data source.
def entity_linking_example(client):
try:
documents = ["""Microsoft was founded by Bill Gates and Paul Allen on April 4, 1975,
to develop and sell BASIC interpreters for the Altair 8800.
During his career at Microsoft, Gates held the positions of chairman,
chief executive officer, president and chief software architect,
while also being the largest individual shareholder until May 2014."""]
result = client.recognize_linked_entities(documents = documents)[0]
print("Linked Entities:\n")
for entity in result.entities:
print("\tName: ", entity.name, "\tId: ", entity.data_source_entity_id, "\tUrl: ", entity.url,
"\n\tData Source: ", entity.data_source)
print("\tMatches:")
for match in entity.matches:
print("\t\tText:", match.text)
print("\t\tConfidence Score: {0:.2f}".format(match.confidence_score))
print("\t\tOffset: {}".format(match.offset))
print("\t\tLength: {}".format(match.length))
except Exception as err:
print("Encountered exception. {}".format(err))
entity_linking_example(client)
Wyjście
Linked Entities:
Name: Microsoft Id: Microsoft Url: https://en.wikipedia.org/wiki/Microsoft
Data Source: Wikipedia
Matches:
Text: Microsoft
Confidence Score: 0.55
Offset: 0
Length: 9
Text: Microsoft
Confidence Score: 0.55
Offset: 168
Length: 9
Name: Bill Gates Id: Bill Gates Url: https://en.wikipedia.org/wiki/Bill_Gates
Data Source: Wikipedia
Matches:
Text: Bill Gates
Confidence Score: 0.63
Offset: 25
Length: 10
Text: Gates
Confidence Score: 0.63
Offset: 179
Length: 5
Name: Paul Allen Id: Paul Allen Url: https://en.wikipedia.org/wiki/Paul_Allen
Data Source: Wikipedia
Matches:
Text: Paul Allen
Confidence Score: 0.60
Offset: 40
Length: 10
Name: April 4 Id: April 4 Url: https://en.wikipedia.org/wiki/April_4
Data Source: Wikipedia
Matches:
Text: BASIC
Confidence Score: 0.33
Offset: 98
Length: 5
Name: Altair 8800 Id: Altair 8800 Url: https://en.wikipedia.org/wiki/Altair_8800
Data Source: Wikipedia
Matches:
Text: Altair 8800
Confidence Score: 0.88
Offset: 125
Length: 11
Czyszczenie zasobów
Jeśli chcesz wyczyścić i usunąć subskrypcję usług Azure AI, możesz usunąć zasób lub grupę zasobów. Usunięcie grupy zasobów powoduje również usunięcie wszelkich innych skojarzonych z nią zasobów.
Następne kroki
Skorzystaj z tego przewodnika Szybki start, aby wysyłać żądania łączenia jednostek przy użyciu interfejsu API REST. W poniższym przykładzie użyjesz biblioteki cURL do identyfikowania i uściślania jednostek znalezionych w tekście.
Wymagania wstępne
- Subskrypcja platformy Azure — utwórz bezpłatnie
Konfigurowanie
Tworzenie zasobu platformy Azure
Aby użyć poniższego przykładu kodu, musisz wdrożyć zasób platformy Azure. Ten zasób będzie zawierać klucz i punkt końcowy używany do uwierzytelniania wywołań interfejsu API wysyłanych do usługi językowej.
Użyj poniższego linku, aby utworzyć zasób językowy przy użyciu witryny Azure Portal. Musisz zalogować się przy użyciu subskrypcji platformy Azure.
Na wyświetlonym ekranie Wybierz dodatkowe funkcje wybierz pozycję Kontynuuj, aby utworzyć zasób.
Na ekranie Tworzenie języka podaj następujące informacje:
Szczegół opis Subskrypcja Konto subskrypcji, z którymi zostanie skojarzony zasób. Wybierz subskrypcję platformy Azure z menu rozwijanego. Grupa zasobów Grupa zasobów to kontener, który przechowuje tworzone zasoby. Wybierz pozycję Utwórz nową , aby utworzyć nową grupę zasobów. Region (Region) Lokalizacja zasobu Language. Różne regiony mogą wprowadzać opóźnienia w zależności od lokalizacji fizycznej, ale nie mają wpływu na dostępność zasobu w czasie wykonywania. W tym przewodniku Szybki start wybierz dostępny region w pobliżu, lub wybierz pozycję Wschodnie stany USA. Nazwisko Nazwa zasobu Language. Ta nazwa będzie również używana do tworzenia adresu URL punktu końcowego używanego przez aplikacje do wysyłania żądań interfejsu API. Warstwa cenowa Warstwa cenowa zasobu Language. Możesz użyć warstwy Bezpłatna F0 , aby wypróbować usługę i uaktualnić ją później do warstwy płatnej dla środowiska produkcyjnego. Upewnij się, że pole wyboru Odpowiedzialne powiadomienie o sztucznej inteligencji jest zaznaczone.
Wybierz pozycję Przejrzyj i utwórz w dolnej części strony.
Na wyświetlonym ekranie upewnij się, że walidacja została pomyślnie przekazana i czy informacje zostały wprowadzone poprawnie. Następnie wybierz Utwórz.
Uzyskiwanie klucza i punktu końcowego
Następnie będziesz potrzebować klucza i punktu końcowego z zasobu, aby połączyć aplikację z interfejsem API. W dalszej części przewodnika Szybki start wklejesz klucz i punkt końcowy do kodu.
Po pomyślnym wdrożeniu zasobu Language kliknij przycisk Przejdź do zasobu w obszarze Następne kroki.
Na ekranie zasobu wybierz pozycję Klucze i punkt końcowy w menu nawigacji po lewej stronie. Użyjesz jednego z kluczy i punktu końcowego w poniższych krokach.
Tworzenie zmiennych środowiskowych
Aby wysyłać żądania interfejsu API, aplikacja musi być uwierzytelniona. W środowisku produkcyjnym należy użyć bezpiecznego sposobu przechowywania poświadczeń i uzyskiwania do nich dostępu. W tym przykładzie zostaną zapisane poświadczenia do zmiennych środowiskowych na komputerze lokalnym z uruchomioną aplikacją.
Aby ustawić zmienną środowiskową dla klucza zasobu Language, otwórz okno konsoli i postępuj zgodnie z instrukcjami dotyczącymi systemu operacyjnego i środowiska programistycznego.
- Aby ustawić zmienną
LANGUAGE_KEY
środowiskową, zastąpyour-key
element jednym z kluczy zasobu. - Aby ustawić zmienną
LANGUAGE_ENDPOINT
środowiskową, zastąpyour-endpoint
element punktem końcowym zasobu.
Ważne
Jeśli używasz klucza interfejsu API, zapisz go bezpiecznie w innym miejscu, na przykład w usłudze Azure Key Vault. Nie dołączaj klucza interfejsu API bezpośrednio do kodu i nigdy nie publikuj go publicznie.
Aby uzyskać więcej informacji na temat zabezpieczeń usług sztucznej inteligencji, zobacz Uwierzytelnianie żądań w usługach Azure AI.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Uwaga
Jeśli musisz uzyskać dostęp tylko do zmiennych środowiskowych w bieżącej uruchomionej konsoli, możesz ustawić zmienną środowiskową z wartością set
zamiast setx
.
Po dodaniu zmiennych środowiskowych może być konieczne ponowne uruchomienie wszystkich uruchomionych programów, które będą musiały odczytać zmienne środowiskowe, w tym okno konsoli. Jeśli na przykład używasz programu Visual Studio jako edytora, uruchom ponownie program Visual Studio przed uruchomieniem przykładu.
Tworzenie pliku JSON z przykładową treścią żądania
W edytorze kodu utwórz nowy plik o nazwie test_entitylinking_payload.json
i skopiuj poniższy przykład JSON. To przykładowe żądanie zostanie wysłane do interfejsu API w następnym kroku.
{
"kind": "EntityLinking",
"parameters": {
"modelVersion": "latest"
},
"analysisInput":{
"documents":[
{
"id":"1",
"language":"en",
"text": "Microsoft was founded by Bill Gates and Paul Allen on April 4, 1975."
}
]
}
}
Zapisz test_entitylinking_payload.json
gdzieś na komputerze. Na przykład pulpit.
Wysyłanie żądania interfejsu API łączenia jednostek
Użyj następujących poleceń, aby wysłać żądanie interfejsu API przy użyciu używanego programu. Skopiuj polecenie do terminalu i uruchom je.
parametr | Opis |
---|---|
-X POST <endpoint> |
Określa punkt końcowy na potrzeby uzyskiwania dostępu do interfejsu API. |
-H Content-Type: application/json |
Typ zawartości do wysyłania danych JSON. |
-H "Ocp-Apim-Subscription-Key:<key> |
Określa klucz dostępu do interfejsu API. |
-d <documents> |
Kod JSON zawierający dokumenty, które chcesz wysłać. |
Zastąp C:\Users\<myaccount>\Desktop\test_entitylinking_payload.json
element lokalizacją przykładowego pliku żądania JSON utworzonego w poprzednim kroku.
Wiersz polecenia
curl -X POST "%LANGUAGE_ENDPOINT%/language/:analyze-text?api-version=2022-05-01" ^
-H "Content-Type: application/json" ^
-H "Ocp-Apim-Subscription-Key: %LANGUAGE_KEY%" ^
-d "@C:\Users\<myaccount>\Desktop\test_entitylinking_payload.json"
PowerShell
curl.exe -X POST $env:LANGUAGE_ENDPOINT/language/:analyze-text?api-version=2022-05-01 `
-H "Content-Type: application/json" `
-H "Ocp-Apim-Subscription-Key: $env:LANGUAGE_KEY" `
-d "@C:\Users\<myaccount>\Desktop\test_entitylinking_payload.json"
Odpowiedź w formacie JSON
{
"kind": "EntityLinkingResults",
"results": {
"documents": [{
"id": "1",
"entities": [{
"bingId": "a093e9b9-90f5-a3d5-c4b8-5855e1b01f85",
"name": "Microsoft",
"matches": [{
"text": "Microsoft",
"offset": 0,
"length": 9,
"confidenceScore": 0.48
}],
"language": "en",
"id": "Microsoft",
"url": "https://en.wikipedia.org/wiki/Microsoft",
"dataSource": "Wikipedia"
}, {
"bingId": "0d47c987-0042-5576-15e8-97af601614fa",
"name": "Bill Gates",
"matches": [{
"text": "Bill Gates",
"offset": 25,
"length": 10,
"confidenceScore": 0.52
}],
"language": "en",
"id": "Bill Gates",
"url": "https://en.wikipedia.org/wiki/Bill_Gates",
"dataSource": "Wikipedia"
}, {
"bingId": "df2c4376-9923-6a54-893f-2ee5a5badbc7",
"name": "Paul Allen",
"matches": [{
"text": "Paul Allen",
"offset": 40,
"length": 10,
"confidenceScore": 0.54
}],
"language": "en",
"id": "Paul Allen",
"url": "https://en.wikipedia.org/wiki/Paul_Allen",
"dataSource": "Wikipedia"
}, {
"bingId": "52535f87-235e-b513-54fe-c03e4233ac6e",
"name": "April 4",
"matches": [{
"text": "April 4",
"offset": 54,
"length": 7,
"confidenceScore": 0.38
}],
"language": "en",
"id": "April 4",
"url": "https://en.wikipedia.org/wiki/April_4",
"dataSource": "Wikipedia"
}],
"warnings": []
}],
"errors": [],
"modelVersion": "2021-06-01"
}
}
Czyszczenie zasobów
Jeśli chcesz wyczyścić i usunąć subskrypcję usług Azure AI, możesz usunąć zasób lub grupę zasobów. Usunięcie grupy zasobów powoduje również usunięcie wszelkich innych skojarzonych z nią zasobów.