Rychlý start: Entity Linking s využitím klientské knihovny a rozhraní REST API

Referenční dokumentace | Další ukázkové balíčky | (NuGet) | Zdrojový kód knihovny

V tomto rychlém startu můžete vytvořit aplikaci propojování entit s klientskou knihovnou pro .NET. V následujícím příkladu vytvoříte aplikaci jazyka C#, která dokáže identifikovat a rozpoznat entity nalezené v textu.

Tip

Pomocí sady Language Studio můžete vyzkoušet funkce služby Language, aniž byste museli psát kód.

Požadavky

Nastavení

Vytvoření prostředku Azure

Pokud chcete použít níže uvedený vzorový kód, budete muset nasadit prostředek Azure. Tento prostředek bude obsahovat klíč a koncový bod, které použijete k ověření volání rozhraní API, která odesíláte do služby Language.

  1. Pomocí následujícího odkazu vytvořte prostředek jazyka pomocí webu Azure Portal. Budete se muset přihlásit pomocí svého předplatného Azure.

  2. Na obrazovce Vybrat další funkce, která se zobrazí, vyberte Pokračovat a vytvořte prostředek.

    Snímek obrazovky s dalšími možnostmi funkcí na webu Azure Portal

  3. Na obrazovce Vytvořit jazyk zadejte následující informace:

    Detail Popis
    Předplatné Účet předplatného, ke kterému bude váš prostředek přidružený. V rozevírací nabídce vyberte své předplatné Azure.
    Skupina prostředků Skupina prostředků je kontejner, který ukládá prostředky, které vytvoříte. Vyberte Vytvořit novou a vytvořte novou skupinu prostředků.
    Oblast Umístění vašeho prostředku Jazyk. Různé oblasti můžou v závislosti na fyzickém umístění zavádět latenci, ale nemají žádný vliv na dostupnost modulu runtime vašeho prostředku. Pro účely tohoto rychlého startu vyberte dostupnou oblast blízko vás nebo zvolte USA – východ.
    Název Název vašeho prostředku jazyka Tento název se také použije k vytvoření adresy URL koncového bodu, kterou budou vaše aplikace používat k odesílání požadavků rozhraní API.
    Cenová úroveň Cenová úroveň vašeho prostředku Jazyk. Pomocí úrovně Free F0 můžete službu vyzkoušet a upgradovat na placenou úroveň pro produkční prostředí.

    Snímek obrazovky znázorňující podrobnosti o vytvoření prostředku na webu Azure Portal

  4. Ujistěte se, že je zaškrtnuté políčko Zodpovědné oznámení O umělé inteligenci.

  5. V dolní části stránky vyberte Zkontrolovat a vytvořit .

  6. Na obrazovce, která se zobrazí, se ujistěte, že ověření proběhlo a že jste správně zadali informace. Pak vyberte Vytvořit.

Získání klíče a koncového bodu

Dále budete potřebovat klíč a koncový bod z prostředku pro připojení aplikace k rozhraní API. Klíč a koncový bod vložíte do kódu později v rychlém startu.

  1. Po úspěšném nasazení prostředku jazyka klikněte v části Další kroky na tlačítko Přejít k prostředku.

    Snímek obrazovky znázorňující další kroky po nasazení prostředku

  2. Na obrazovce vašeho prostředku vyberte klíče a koncový bod v levé navigační nabídce. V následujících krocích použijete jeden ze svých klíčů a koncový bod.

    Snímek obrazovky znázorňující oddíl klíčů a koncového bodu prostředku

Vytvoření proměnných prostředí

Aby vaše aplikace odesílala požadavky rozhraní API, musí být ověřená. V produkčním prostředí použijte bezpečný způsob ukládání a přístupu k vašim přihlašovacím údajům. V tomto příkladu zapíšete přihlašovací údaje do proměnných prostředí na místním počítači, na kterém běží aplikace.

Tip

Nezahrňte klíč přímo do kódu a nikdy ho nesdělujte veřejně. Další možnosti ověřování, jako je Azure Key Vault, najdete v článku zabezpečení služeb Azure AI.

Pokud chcete nastavit proměnnou prostředí pro klíč prostředku jazyka, otevřete okno konzoly a postupujte podle pokynů pro operační systém a vývojové prostředí.

  1. Pokud chcete nastavit proměnnou LANGUAGE_KEY prostředí, nahraďte your-key jedním z klíčů pro váš prostředek.
  2. Pokud chcete nastavit proměnnou LANGUAGE_ENDPOINT prostředí, nahraďte your-endpoint koncovým bodem vašeho prostředku.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint

Poznámka:

Pokud potřebujete přístup pouze k proměnným prostředí v aktuální spuštěné konzole, můžete nastavit proměnnou set prostředí namísto setx.

Po přidání proměnných prostředí možná budete muset restartovat všechny spuštěné programy, které budou muset číst proměnné prostředí, včetně okna konzoly. Pokud například jako editor používáte Sadu Visual Studio, restartujte sadu Visual Studio před spuštěním příkladu.

Vytvoření nové aplikace .NET Core

Pomocí integrovaného vývojového prostředí (IDE) sady Visual Studio vytvořte novou aplikaci konzoly .NET Core. Vytvoří se projekt Hello World s jedním zdrojovým souborem jazyka C#: program.cs.

Klikněte pravým tlačítkem na řešení v Průzkumníku řešení, vyberte Spravovat balíčky NuGet a nainstalujte klientskou knihovnu. Ve správci balíčků, který se otevře, vyberte Procházet a vyhledejte Azure.AI.TextAnalytics. Vyberte verzi 5.2.0 a pak vyberte Nainstalovat. Můžete použít také konzolu správce balíčků.

Příklad kódu

Zkopírujte následující kód do souboru program.cs a spusťte kód.

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();
        }

    }
}

Výstup

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

Vyčištění prostředků

Pokud chcete vyčistit a odebrat předplatné služeb Azure AI, můžete odstranit prostředek nebo skupinu prostředků. Odstraněním skupiny prostředků se odstraní také všechny ostatní prostředky, které jsou k ní přidružené.

Další kroky

Referenční dokumentace | Další ukázkové balíčky | (Maven) | Zdrojový kód knihovny

V tomto rychlém startu můžete vytvořit aplikaci propojující entitu s klientskou knihovnou pro Javu. V následujícím příkladu vytvoříte aplikaci v Javě, která dokáže identifikovat a zrušit nejednoznačnost entit nalezených v textu.

Požadavky

Nastavení

Vytvoření prostředku Azure

Pokud chcete použít níže uvedený vzorový kód, budete muset nasadit prostředek Azure. Tento prostředek bude obsahovat klíč a koncový bod, které použijete k ověření volání rozhraní API, která odesíláte do služby Language.

  1. Pomocí následujícího odkazu vytvořte prostředek jazyka pomocí webu Azure Portal. Budete se muset přihlásit pomocí svého předplatného Azure.

  2. Na obrazovce Vybrat další funkce, která se zobrazí, vyberte Pokračovat a vytvořte prostředek.

    Snímek obrazovky s dalšími možnostmi funkcí na webu Azure Portal

  3. Na obrazovce Vytvořit jazyk zadejte následující informace:

    Detail Popis
    Předplatné Účet předplatného, ke kterému bude váš prostředek přidružený. V rozevírací nabídce vyberte své předplatné Azure.
    Skupina prostředků Skupina prostředků je kontejner, který ukládá prostředky, které vytvoříte. Vyberte Vytvořit novou a vytvořte novou skupinu prostředků.
    Oblast Umístění vašeho prostředku Jazyk. Různé oblasti můžou v závislosti na fyzickém umístění zavádět latenci, ale nemají žádný vliv na dostupnost modulu runtime vašeho prostředku. Pro účely tohoto rychlého startu vyberte dostupnou oblast blízko vás nebo zvolte USA – východ.
    Název Název vašeho prostředku jazyka Tento název se také použije k vytvoření adresy URL koncového bodu, kterou budou vaše aplikace používat k odesílání požadavků rozhraní API.
    Cenová úroveň Cenová úroveň vašeho prostředku Jazyk. Pomocí úrovně Free F0 můžete službu vyzkoušet a upgradovat na placenou úroveň pro produkční prostředí.

    Snímek obrazovky znázorňující podrobnosti o vytvoření prostředku na webu Azure Portal

  4. Ujistěte se, že je zaškrtnuté políčko Zodpovědné oznámení O umělé inteligenci.

  5. V dolní části stránky vyberte Zkontrolovat a vytvořit .

  6. Na obrazovce, která se zobrazí, se ujistěte, že ověření proběhlo a že jste správně zadali informace. Pak vyberte Vytvořit.

Získání klíče a koncového bodu

Dále budete potřebovat klíč a koncový bod z prostředku pro připojení aplikace k rozhraní API. Klíč a koncový bod vložíte do kódu později v rychlém startu.

  1. Po úspěšném nasazení prostředku jazyka klikněte v části Další kroky na tlačítko Přejít k prostředku.

    Snímek obrazovky znázorňující další kroky po nasazení prostředku

  2. Na obrazovce vašeho prostředku vyberte klíče a koncový bod v levé navigační nabídce. V následujících krocích použijete jeden ze svých klíčů a koncový bod.

    Snímek obrazovky znázorňující oddíl klíčů a koncového bodu prostředku

Vytvoření proměnných prostředí

Aby vaše aplikace odesílala požadavky rozhraní API, musí být ověřená. V produkčním prostředí použijte bezpečný způsob ukládání a přístupu k vašim přihlašovacím údajům. V tomto příkladu zapíšete přihlašovací údaje do proměnných prostředí na místním počítači, na kterém běží aplikace.

Tip

Nezahrňte klíč přímo do kódu a nikdy ho nesdělujte veřejně. Další možnosti ověřování, jako je Azure Key Vault, najdete v článku zabezpečení služeb Azure AI.

Pokud chcete nastavit proměnnou prostředí pro klíč prostředku jazyka, otevřete okno konzoly a postupujte podle pokynů pro operační systém a vývojové prostředí.

  1. Pokud chcete nastavit proměnnou LANGUAGE_KEY prostředí, nahraďte your-key jedním z klíčů pro váš prostředek.
  2. Pokud chcete nastavit proměnnou LANGUAGE_ENDPOINT prostředí, nahraďte your-endpoint koncovým bodem vašeho prostředku.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint

Poznámka:

Pokud potřebujete přístup pouze k proměnným prostředí v aktuální spuštěné konzole, můžete nastavit proměnnou set prostředí namísto setx.

Po přidání proměnných prostředí možná budete muset restartovat všechny spuštěné programy, které budou muset číst proměnné prostředí, včetně okna konzoly. Pokud například jako editor používáte Sadu Visual Studio, restartujte sadu Visual Studio před spuštěním příkladu.

Přidání klientské knihovny

V oblíbeném vývojovém prostředí nebo integrovaném vývojovém prostředí (IDE) vytvořte projekt Maven. Pak do souboru pom.xml projektu přidejte následující závislost. Syntaxi pro implementaci pro další nástroje pro sestavování najdete online.

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

Příklad kódu

Vytvořte soubor Java s názvem Example.java. Otevřete soubor a zkopírujte následující kód. Potom kód spusťte.

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());
            }
        }
    }
}

Výstup

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

Vyčištění prostředků

Pokud chcete vyčistit a odebrat předplatné služeb Azure AI, můžete odstranit prostředek nebo skupinu prostředků. Odstraněním skupiny prostředků se odstraní také všechny ostatní prostředky, které jsou k ní přidružené.

Další kroky

Referenční dokumentace | Další ukázkové balíčky | (npm) | Zdrojový kód knihovny

V tomto rychlém startu můžete vytvořit aplikaci propojující entitu s klientskou knihovnou pro Node.js. V následujícím příkladu vytvoříte javascriptovou aplikaci, která dokáže identifikovat a rozpoznat nejednoznačné entity nalezené v textu.

Požadavky

  • Předplatné Azure: Můžete si ho vytvořit zdarma.
  • Node.js verze 14 LTS nebo novější

Nastavení

Vytvoření prostředku Azure

Pokud chcete použít níže uvedený vzorový kód, budete muset nasadit prostředek Azure. Tento prostředek bude obsahovat klíč a koncový bod, které použijete k ověření volání rozhraní API, která odesíláte do služby Language.

  1. Pomocí následujícího odkazu vytvořte prostředek jazyka pomocí webu Azure Portal. Budete se muset přihlásit pomocí svého předplatného Azure.

  2. Na obrazovce Vybrat další funkce, která se zobrazí, vyberte Pokračovat a vytvořte prostředek.

    Snímek obrazovky s dalšími možnostmi funkcí na webu Azure Portal

  3. Na obrazovce Vytvořit jazyk zadejte následující informace:

    Detail Popis
    Předplatné Účet předplatného, ke kterému bude váš prostředek přidružený. V rozevírací nabídce vyberte své předplatné Azure.
    Skupina prostředků Skupina prostředků je kontejner, který ukládá prostředky, které vytvoříte. Vyberte Vytvořit novou a vytvořte novou skupinu prostředků.
    Oblast Umístění vašeho prostředku Jazyk. Různé oblasti můžou v závislosti na fyzickém umístění zavádět latenci, ale nemají žádný vliv na dostupnost modulu runtime vašeho prostředku. Pro účely tohoto rychlého startu vyberte dostupnou oblast blízko vás nebo zvolte USA – východ.
    Název Název vašeho prostředku jazyka Tento název se také použije k vytvoření adresy URL koncového bodu, kterou budou vaše aplikace používat k odesílání požadavků rozhraní API.
    Cenová úroveň Cenová úroveň vašeho prostředku Jazyk. Pomocí úrovně Free F0 můžete službu vyzkoušet a upgradovat na placenou úroveň pro produkční prostředí.

    Snímek obrazovky znázorňující podrobnosti o vytvoření prostředku na webu Azure Portal

  4. Ujistěte se, že je zaškrtnuté políčko Zodpovědné oznámení O umělé inteligenci.

  5. V dolní části stránky vyberte Zkontrolovat a vytvořit .

  6. Na obrazovce, která se zobrazí, se ujistěte, že ověření proběhlo a že jste správně zadali informace. Pak vyberte Vytvořit.

Získání klíče a koncového bodu

Dále budete potřebovat klíč a koncový bod z prostředku pro připojení aplikace k rozhraní API. Klíč a koncový bod vložíte do kódu později v rychlém startu.

  1. Po úspěšném nasazení prostředku jazyka klikněte v části Další kroky na tlačítko Přejít k prostředku.

    Snímek obrazovky znázorňující další kroky po nasazení prostředku

  2. Na obrazovce vašeho prostředku vyberte klíče a koncový bod v levé navigační nabídce. V následujících krocích použijete jeden ze svých klíčů a koncový bod.

    Snímek obrazovky znázorňující oddíl klíčů a koncového bodu prostředku

Vytvoření proměnných prostředí

Aby vaše aplikace odesílala požadavky rozhraní API, musí být ověřená. V produkčním prostředí použijte bezpečný způsob ukládání a přístupu k vašim přihlašovacím údajům. V tomto příkladu zapíšete přihlašovací údaje do proměnných prostředí na místním počítači, na kterém běží aplikace.

Tip

Nezahrňte klíč přímo do kódu a nikdy ho nesdělujte veřejně. Další možnosti ověřování, jako je Azure Key Vault, najdete v článku zabezpečení služeb Azure AI.

Pokud chcete nastavit proměnnou prostředí pro klíč prostředku jazyka, otevřete okno konzoly a postupujte podle pokynů pro operační systém a vývojové prostředí.

  1. Pokud chcete nastavit proměnnou LANGUAGE_KEY prostředí, nahraďte your-key jedním z klíčů pro váš prostředek.
  2. Pokud chcete nastavit proměnnou LANGUAGE_ENDPOINT prostředí, nahraďte your-endpoint koncovým bodem vašeho prostředku.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint

Poznámka:

Pokud potřebujete přístup pouze k proměnným prostředí v aktuální spuštěné konzole, můžete nastavit proměnnou set prostředí namísto setx.

Po přidání proměnných prostředí možná budete muset restartovat všechny spuštěné programy, které budou muset číst proměnné prostředí, včetně okna konzoly. Pokud například jako editor používáte Sadu Visual Studio, restartujte sadu Visual Studio před spuštěním příkladu.

Vytvoření nové aplikace Node.js

V okně konzoly (například cmd, PowerShell nebo Bash) vytvořte pro vaši aplikaci nový adresář a přejděte do něj.

mkdir myapp 

cd myapp

Spuštěním příkazu npm init vytvoříte aplikaci uzlu se souborem package.json.

npm init

Instalace klientské knihovny

Nainstalujte balíček npm:

npm install @azure/ai-language-text

Příklad kódu

Otevřete soubor a zkopírujte následující kód. Potom kód spusťte.

"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);
});

Výstup

== 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

Vyčištění prostředků

Pokud chcete vyčistit a odebrat předplatné služeb Azure AI, můžete odstranit prostředek nebo skupinu prostředků. Odstraněním skupiny prostředků se odstraní také všechny ostatní prostředky, které jsou k ní přidružené.

Další kroky

Referenční dokumentace | Další ukázkové balíčky | (PyPi) | Zdrojový kód knihovny

V tomto rychlém startu můžete vytvořit aplikaci propojující entitu s klientskou knihovnou pro Python. V následujícím příkladu vytvoříte aplikaci Pythonu, která dokáže identifikovat a nejednoznačit entity nalezené v textu.

Požadavky

Nastavení

Vytvoření prostředku Azure

Pokud chcete použít níže uvedený vzorový kód, budete muset nasadit prostředek Azure. Tento prostředek bude obsahovat klíč a koncový bod, které použijete k ověření volání rozhraní API, která odesíláte do služby Language.

  1. Pomocí následujícího odkazu vytvořte prostředek jazyka pomocí webu Azure Portal. Budete se muset přihlásit pomocí svého předplatného Azure.

  2. Na obrazovce Vybrat další funkce, která se zobrazí, vyberte Pokračovat a vytvořte prostředek.

    Snímek obrazovky s dalšími možnostmi funkcí na webu Azure Portal

  3. Na obrazovce Vytvořit jazyk zadejte následující informace:

    Detail Popis
    Předplatné Účet předplatného, ke kterému bude váš prostředek přidružený. V rozevírací nabídce vyberte své předplatné Azure.
    Skupina prostředků Skupina prostředků je kontejner, který ukládá prostředky, které vytvoříte. Vyberte Vytvořit novou a vytvořte novou skupinu prostředků.
    Oblast Umístění vašeho prostředku Jazyk. Různé oblasti můžou v závislosti na fyzickém umístění zavádět latenci, ale nemají žádný vliv na dostupnost modulu runtime vašeho prostředku. Pro účely tohoto rychlého startu vyberte dostupnou oblast blízko vás nebo zvolte USA – východ.
    Název Název vašeho prostředku jazyka Tento název se také použije k vytvoření adresy URL koncového bodu, kterou budou vaše aplikace používat k odesílání požadavků rozhraní API.
    Cenová úroveň Cenová úroveň vašeho prostředku Jazyk. Pomocí úrovně Free F0 můžete službu vyzkoušet a upgradovat na placenou úroveň pro produkční prostředí.

    Snímek obrazovky znázorňující podrobnosti o vytvoření prostředku na webu Azure Portal

  4. Ujistěte se, že je zaškrtnuté políčko Zodpovědné oznámení O umělé inteligenci.

  5. V dolní části stránky vyberte Zkontrolovat a vytvořit .

  6. Na obrazovce, která se zobrazí, se ujistěte, že ověření proběhlo a že jste správně zadali informace. Pak vyberte Vytvořit.

Získání klíče a koncového bodu

Dále budete potřebovat klíč a koncový bod z prostředku pro připojení aplikace k rozhraní API. Klíč a koncový bod vložíte do kódu později v rychlém startu.

  1. Po úspěšném nasazení prostředku jazyka klikněte v části Další kroky na tlačítko Přejít k prostředku.

    Snímek obrazovky znázorňující další kroky po nasazení prostředku

  2. Na obrazovce vašeho prostředku vyberte klíče a koncový bod v levé navigační nabídce. V následujících krocích použijete jeden ze svých klíčů a koncový bod.

    Snímek obrazovky znázorňující oddíl klíčů a koncového bodu prostředku

Vytvoření proměnných prostředí

Aby vaše aplikace odesílala požadavky rozhraní API, musí být ověřená. V produkčním prostředí použijte bezpečný způsob ukládání a přístupu k vašim přihlašovacím údajům. V tomto příkladu zapíšete přihlašovací údaje do proměnných prostředí na místním počítači, na kterém běží aplikace.

Tip

Nezahrňte klíč přímo do kódu a nikdy ho nesdělujte veřejně. Další možnosti ověřování, jako je Azure Key Vault, najdete v článku zabezpečení služeb Azure AI.

Pokud chcete nastavit proměnnou prostředí pro klíč prostředku jazyka, otevřete okno konzoly a postupujte podle pokynů pro operační systém a vývojové prostředí.

  1. Pokud chcete nastavit proměnnou LANGUAGE_KEY prostředí, nahraďte your-key jedním z klíčů pro váš prostředek.
  2. Pokud chcete nastavit proměnnou LANGUAGE_ENDPOINT prostředí, nahraďte your-endpoint koncovým bodem vašeho prostředku.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint

Poznámka:

Pokud potřebujete přístup pouze k proměnným prostředí v aktuální spuštěné konzole, můžete nastavit proměnnou set prostředí namísto setx.

Po přidání proměnných prostředí možná budete muset restartovat všechny spuštěné programy, které budou muset číst proměnné prostředí, včetně okna konzoly. Pokud například jako editor používáte Sadu Visual Studio, restartujte sadu Visual Studio před spuštěním příkladu.

Instalace klientské knihovny

Po instalaci Pythonu můžete nainstalovat klientskou knihovnu pomocí:

pip install azure-ai-textanalytics==5.2.0

Příklad kódu

Vytvořte nový soubor Pythonu a zkopírujte následující kód. Potom kód spusťte.

# 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)

Výstup

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

Vyčištění prostředků

Pokud chcete vyčistit a odebrat předplatné služeb Azure AI, můžete odstranit prostředek nebo skupinu prostředků. Odstraněním skupiny prostředků se odstraní také všechny ostatní prostředky, které jsou k ní přidružené.

Další kroky

Referenční dokumentace

Pomocí tohoto rychlého startu můžete odesílat žádosti o propojení entit pomocí rozhraní REST API. V následujícím příkladu použijete cURL k identifikaci a nejednoznačnosti entit nalezených v textu.

Požadavky

Nastavení

Vytvoření prostředku Azure

Pokud chcete použít níže uvedený vzorový kód, budete muset nasadit prostředek Azure. Tento prostředek bude obsahovat klíč a koncový bod, které použijete k ověření volání rozhraní API, která odesíláte do služby Language.

  1. Pomocí následujícího odkazu vytvořte prostředek jazyka pomocí webu Azure Portal. Budete se muset přihlásit pomocí svého předplatného Azure.

  2. Na obrazovce Vybrat další funkce, která se zobrazí, vyberte Pokračovat a vytvořte prostředek.

    Snímek obrazovky s dalšími možnostmi funkcí na webu Azure Portal

  3. Na obrazovce Vytvořit jazyk zadejte následující informace:

    Detail Popis
    Předplatné Účet předplatného, ke kterému bude váš prostředek přidružený. V rozevírací nabídce vyberte své předplatné Azure.
    Skupina prostředků Skupina prostředků je kontejner, který ukládá prostředky, které vytvoříte. Vyberte Vytvořit novou a vytvořte novou skupinu prostředků.
    Oblast Umístění vašeho prostředku Jazyk. Různé oblasti můžou v závislosti na fyzickém umístění zavádět latenci, ale nemají žádný vliv na dostupnost modulu runtime vašeho prostředku. Pro účely tohoto rychlého startu vyberte dostupnou oblast blízko vás nebo zvolte USA – východ.
    Název Název vašeho prostředku jazyka Tento název se také použije k vytvoření adresy URL koncového bodu, kterou budou vaše aplikace používat k odesílání požadavků rozhraní API.
    Cenová úroveň Cenová úroveň vašeho prostředku Jazyk. Pomocí úrovně Free F0 můžete službu vyzkoušet a upgradovat na placenou úroveň pro produkční prostředí.

    Snímek obrazovky znázorňující podrobnosti o vytvoření prostředku na webu Azure Portal

  4. Ujistěte se, že je zaškrtnuté políčko Zodpovědné oznámení O umělé inteligenci.

  5. V dolní části stránky vyberte Zkontrolovat a vytvořit .

  6. Na obrazovce, která se zobrazí, se ujistěte, že ověření proběhlo a že jste správně zadali informace. Pak vyberte Vytvořit.

Získání klíče a koncového bodu

Dále budete potřebovat klíč a koncový bod z prostředku pro připojení aplikace k rozhraní API. Klíč a koncový bod vložíte do kódu později v rychlém startu.

  1. Po úspěšném nasazení prostředku jazyka klikněte v části Další kroky na tlačítko Přejít k prostředku.

    Snímek obrazovky znázorňující další kroky po nasazení prostředku

  2. Na obrazovce vašeho prostředku vyberte klíče a koncový bod v levé navigační nabídce. V následujících krocích použijete jeden ze svých klíčů a koncový bod.

    Snímek obrazovky znázorňující oddíl klíčů a koncového bodu prostředku

Vytvoření proměnných prostředí

Aby vaše aplikace odesílala požadavky rozhraní API, musí být ověřená. V produkčním prostředí použijte bezpečný způsob ukládání a přístupu k vašim přihlašovacím údajům. V tomto příkladu zapíšete přihlašovací údaje do proměnných prostředí na místním počítači, na kterém běží aplikace.

Tip

Nezahrňte klíč přímo do kódu a nikdy ho nesdělujte veřejně. Další možnosti ověřování, jako je Azure Key Vault, najdete v článku zabezpečení služeb Azure AI.

Pokud chcete nastavit proměnnou prostředí pro klíč prostředku jazyka, otevřete okno konzoly a postupujte podle pokynů pro operační systém a vývojové prostředí.

  1. Pokud chcete nastavit proměnnou LANGUAGE_KEY prostředí, nahraďte your-key jedním z klíčů pro váš prostředek.
  2. Pokud chcete nastavit proměnnou LANGUAGE_ENDPOINT prostředí, nahraďte your-endpoint koncovým bodem vašeho prostředku.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint

Poznámka:

Pokud potřebujete přístup pouze k proměnným prostředí v aktuální spuštěné konzole, můžete nastavit proměnnou set prostředí namísto setx.

Po přidání proměnných prostředí možná budete muset restartovat všechny spuštěné programy, které budou muset číst proměnné prostředí, včetně okna konzoly. Pokud například jako editor používáte Sadu Visual Studio, restartujte sadu Visual Studio před spuštěním příkladu.

Vytvoření souboru JSON s ukázkovým textem požadavku

V editoru kódu vytvořte nový soubor s názvem test_entitylinking_payload.json a zkopírujte následující příklad JSON. Tento ukázkový požadavek se odešle do rozhraní API v dalším 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."
            }
        ]
    }
}

Uložte test_entitylinking_payload.json si někam do počítače. Například vaše plocha.

Odeslání požadavku rozhraní API pro propojení entit

Pomocí následujících příkazů odešlete požadavek rozhraní API pomocí programu, který používáte. Zkopírujte příkaz do terminálu a spusťte ho.

parametr Popis
-X POST <endpoint> Určuje koncový bod pro přístup k rozhraní API.
-H Content-Type: application/json Typ obsahu pro odesílání dat JSON.
-H "Ocp-Apim-Subscription-Key:<key> Určuje klíč pro přístup k rozhraní API.
-d <documents> JSON obsahující dokumenty, které chcete odeslat.

Nahraďte C:\Users\<myaccount>\Desktop\test_entitylinking_payload.json umístěním ukázkového souboru požadavku JSON, který jste vytvořili v předchozím kroku.

Příkazový řádek

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"

Odpověď 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"
	}
}

Vyčištění prostředků

Pokud chcete vyčistit a odebrat předplatné služeb Azure AI, můžete odstranit prostředek nebo skupinu prostředků. Odstraněním skupiny prostředků se odstraní také všechny ostatní prostředky, které jsou k ní přidružené.

Další kroky