Snabbstart: Entitetslänkning med hjälp av klientbiblioteket och REST API
Referensdokumentation Fler exempelpaket | (NuGet) | Källkod för bibliotek |
Använd den här snabbstarten för att skapa ett entitetslänkningsprogram med klientbiblioteket för .NET. I följande exempel skapar du ett C#-program som kan identifiera och skilja entiteter som finns i text.
Dricks
Du kan använda Language Studio för att prova språktjänstfunktioner utan att behöva skriva kod.
Förutsättningar
- Azure-prenumeration – Skapa en kostnadsfritt
- Visual Studio IDE
Konfigurera
Skapa en Azure-resurs
Om du vill använda kodexemplet nedan måste du distribuera en Azure-resurs. Den här resursen innehåller en nyckel och slutpunkt som du använder för att autentisera DE API-anrop som du skickar till språktjänsten.
Använd följande länk för att skapa en språkresurs med hjälp av Azure-portalen. Du måste logga in med din Azure-prenumeration.
På skärmen Välj ytterligare funktioner som visas väljer du Fortsätt för att skapa resursen.
På skärmen Skapa språk anger du följande information:
Kontrollera att kryssrutan Ansvarig AI-meddelande är markerad.
Välj Granska + Skapa längst ned på sidan.
På skärmen som visas kontrollerar du att valideringen har passerat och att du har angett informationen korrekt. Välj sedan Skapa.
Hämta din nyckel och slutpunkt
Därefter behöver du nyckeln och slutpunkten från resursen för att ansluta ditt program till API:et. Du klistrar in nyckeln och slutpunkten i koden senare i snabbstarten.
När språkresursen har distribuerats klickar du på knappen Gå till resurs under Nästa steg.
På skärmen för resursen väljer du Nycklar och slutpunkt på den vänstra navigeringsmenyn. Du använder en av dina nycklar och slutpunkten i stegen nedan.
Skapa miljövariabler
Ditt program måste autentiseras för att skicka API-begäranden. För produktion använder du ett säkert sätt att lagra och komma åt dina autentiseringsuppgifter. I det här exemplet skriver du dina autentiseringsuppgifter till miljövariabler på den lokala dator som kör programmet.
Om du vill ange miljövariabeln för din språkresursnyckel öppnar du ett konsolfönster och följer anvisningarna för operativsystemet och utvecklingsmiljön.
- Om du vill ange
LANGUAGE_KEY
miljövariabeln ersätter duyour-key
med en av nycklarna för resursen. - Om du vill ange
LANGUAGE_ENDPOINT
miljövariabeln ersätter duyour-endpoint
med slutpunkten för resursen.
Viktigt!
Om du använder en API-nyckel lagrar du den på ett säkert sätt någon annanstans, till exempel i Azure Key Vault. Inkludera inte API-nyckeln direkt i koden och publicera den aldrig offentligt.
Mer information om säkerhet för AI-tjänster finns i Autentisera begäranden till Azure AI-tjänster.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Kommentar
Om du bara behöver komma åt miljövariablerna i den aktuella konsolen som körs kan du ange miljövariabeln med set
i stället för setx
.
När du har lagt till miljövariablerna kan du behöva starta om alla program som körs och som behöver läsa miljövariablerna, inklusive konsolfönstret. Om du till exempel använder Visual Studio som redigerare startar du om Visual Studio innan du kör exemplet.
Skapa en ny .NET Core-app
Skapa en ny .NET Core-konsolapp med Visual Studio IDE. Det här skapar ett ”Hello World”-projekt med en enda C#-källfil: program.cs.
Installera klientbiblioteket genom att högerklicka på lösningen i Solution Explorer och välja Hantera NuGet-paket. I pakethanteraren som öppnas väljer du Bläddra och söker efter Azure.AI.TextAnalytics
. Välj version 5.2.0
och sedan Installera. Du kan också använda Package Manager-konsolen.
Kodexempel
Kopiera följande kod till din program.cs-fil och kör koden.
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();
}
}
}
Output
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
Rensa resurser
Om du vill rensa och ta bort en Azure AI-tjänstprenumeration kan du ta bort resursen eller resursgruppen. Om du tar bort resursgruppen tas även alla andra resurser som är associerade med den bort.
Nästa steg
Referensdokumentation Fler exempelpaket | (Maven) | Källkod för bibliotek |
Använd den här snabbstarten för att skapa en entitetslänkningsprogram med klientbiblioteket för Java. I följande exempel skapar du ett Java-program som kan identifiera och skilja entiteter som finns i text.
Förutsättningar
- Azure-prenumeration – Skapa en kostnadsfritt
- Java Development Kit (JDK) med version 8 eller senare
Konfigurera
Skapa en Azure-resurs
Om du vill använda kodexemplet nedan måste du distribuera en Azure-resurs. Den här resursen innehåller en nyckel och slutpunkt som du använder för att autentisera DE API-anrop som du skickar till språktjänsten.
Använd följande länk för att skapa en språkresurs med hjälp av Azure-portalen. Du måste logga in med din Azure-prenumeration.
På skärmen Välj ytterligare funktioner som visas väljer du Fortsätt för att skapa resursen.
På skärmen Skapa språk anger du följande information:
Kontrollera att kryssrutan Ansvarig AI-meddelande är markerad.
Välj Granska + Skapa längst ned på sidan.
På skärmen som visas kontrollerar du att valideringen har passerat och att du har angett informationen korrekt. Välj sedan Skapa.
Hämta din nyckel och slutpunkt
Därefter behöver du nyckeln och slutpunkten från resursen för att ansluta ditt program till API:et. Du klistrar in nyckeln och slutpunkten i koden senare i snabbstarten.
När språkresursen har distribuerats klickar du på knappen Gå till resurs under Nästa steg.
På skärmen för resursen väljer du Nycklar och slutpunkt på den vänstra navigeringsmenyn. Du använder en av dina nycklar och slutpunkten i stegen nedan.
Skapa miljövariabler
Ditt program måste autentiseras för att skicka API-begäranden. För produktion använder du ett säkert sätt att lagra och komma åt dina autentiseringsuppgifter. I det här exemplet skriver du dina autentiseringsuppgifter till miljövariabler på den lokala dator som kör programmet.
Om du vill ange miljövariabeln för din språkresursnyckel öppnar du ett konsolfönster och följer anvisningarna för operativsystemet och utvecklingsmiljön.
- Om du vill ange
LANGUAGE_KEY
miljövariabeln ersätter duyour-key
med en av nycklarna för resursen. - Om du vill ange
LANGUAGE_ENDPOINT
miljövariabeln ersätter duyour-endpoint
med slutpunkten för resursen.
Viktigt!
Om du använder en API-nyckel lagrar du den på ett säkert sätt någon annanstans, till exempel i Azure Key Vault. Inkludera inte API-nyckeln direkt i koden och publicera den aldrig offentligt.
Mer information om säkerhet för AI-tjänster finns i Autentisera begäranden till Azure AI-tjänster.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Kommentar
Om du bara behöver komma åt miljövariablerna i den aktuella konsolen som körs kan du ange miljövariabeln med set
i stället för setx
.
När du har lagt till miljövariablerna kan du behöva starta om alla program som körs och som behöver läsa miljövariablerna, inklusive konsolfönstret. Om du till exempel använder Visual Studio som redigerare startar du om Visual Studio innan du kör exemplet.
Lägga till klientbiblioteket
Skapa ett Maven-projekt i önskad IDE eller utvecklingsmiljö. Lägg sedan till följande beroende i projektets pom.xml-fil. Implementeringssyntaxen för andra byggverktyg finns online.
<dependencies>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-ai-textanalytics</artifactId>
<version>5.2.0</version>
</dependency>
</dependencies>
Kodexempel
Skapa en Java-fil som heter Example.java
. Öppna filen och kopiera koden nedan. Kör sedan koden.
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());
}
}
}
}
Output
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
Rensa resurser
Om du vill rensa och ta bort en Azure AI-tjänstprenumeration kan du ta bort resursen eller resursgruppen. Om du tar bort resursgruppen tas även alla andra resurser som är associerade med den bort.
Nästa steg
Referensdokumentation Fler exempelpaket | (npm) | Källkod för bibliotek |
Använd den här snabbstarten för att skapa en entitetslänkningsprogram med klientbiblioteket för Node.js. I följande exempel skapar du ett JavaScript-program som kan identifiera och skilja entiteter som finns i text.
Förutsättningar
- Azure-prenumeration – Skapa en kostnadsfritt
- Node.js v14 LTS eller senare
Konfigurera
Skapa en Azure-resurs
Om du vill använda kodexemplet nedan måste du distribuera en Azure-resurs. Den här resursen innehåller en nyckel och slutpunkt som du använder för att autentisera DE API-anrop som du skickar till språktjänsten.
Använd följande länk för att skapa en språkresurs med hjälp av Azure-portalen. Du måste logga in med din Azure-prenumeration.
På skärmen Välj ytterligare funktioner som visas väljer du Fortsätt för att skapa resursen.
På skärmen Skapa språk anger du följande information:
Kontrollera att kryssrutan Ansvarig AI-meddelande är markerad.
Välj Granska + Skapa längst ned på sidan.
På skärmen som visas kontrollerar du att valideringen har passerat och att du har angett informationen korrekt. Välj sedan Skapa.
Hämta din nyckel och slutpunkt
Därefter behöver du nyckeln och slutpunkten från resursen för att ansluta ditt program till API:et. Du klistrar in nyckeln och slutpunkten i koden senare i snabbstarten.
När språkresursen har distribuerats klickar du på knappen Gå till resurs under Nästa steg.
På skärmen för resursen väljer du Nycklar och slutpunkt på den vänstra navigeringsmenyn. Du använder en av dina nycklar och slutpunkten i stegen nedan.
Skapa miljövariabler
Ditt program måste autentiseras för att skicka API-begäranden. För produktion använder du ett säkert sätt att lagra och komma åt dina autentiseringsuppgifter. I det här exemplet skriver du dina autentiseringsuppgifter till miljövariabler på den lokala dator som kör programmet.
Om du vill ange miljövariabeln för din språkresursnyckel öppnar du ett konsolfönster och följer anvisningarna för operativsystemet och utvecklingsmiljön.
- Om du vill ange
LANGUAGE_KEY
miljövariabeln ersätter duyour-key
med en av nycklarna för resursen. - Om du vill ange
LANGUAGE_ENDPOINT
miljövariabeln ersätter duyour-endpoint
med slutpunkten för resursen.
Viktigt!
Om du använder en API-nyckel lagrar du den på ett säkert sätt någon annanstans, till exempel i Azure Key Vault. Inkludera inte API-nyckeln direkt i koden och publicera den aldrig offentligt.
Mer information om säkerhet för AI-tjänster finns i Autentisera begäranden till Azure AI-tjänster.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Kommentar
Om du bara behöver komma åt miljövariablerna i den aktuella konsolen som körs kan du ange miljövariabeln med set
i stället för setx
.
När du har lagt till miljövariablerna kan du behöva starta om alla program som körs och som behöver läsa miljövariablerna, inklusive konsolfönstret. Om du till exempel använder Visual Studio som redigerare startar du om Visual Studio innan du kör exemplet.
Skapa ett nytt Node.js-program
Skapa en ny katalog för din app i ett konsolfönster (till exempel cmd, PowerShell eller bash) och navigera till den.
mkdir myapp
cd myapp
Kör kommandot npm init
för att skapa ett nodprogram med en package.json
-fil.
npm init
Installera klientbiblioteket
Installera npm-paketet:
npm install @azure/ai-language-text
Kodexempel
Öppna filen och kopiera koden nedan. Kör sedan koden.
"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);
});
Output
== 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
Rensa resurser
Om du vill rensa och ta bort en Azure AI-tjänstprenumeration kan du ta bort resursen eller resursgruppen. Om du tar bort resursgruppen tas även alla andra resurser som är associerade med den bort.
Nästa steg
Referensdokumentation Fler exempelpaket | (PyPi) | Källkod för bibliotek |
Använd den här snabbstarten för att skapa ett entitetslänkningsprogram med klientbiblioteket för Python. I följande exempel skapar du ett Python-program som kan identifiera och skilja entiteter som finns i text.
Förutsättningar
- Azure-prenumeration – Skapa en kostnadsfritt
- Python 3.7 eller senare
Konfigurera
Skapa en Azure-resurs
Om du vill använda kodexemplet nedan måste du distribuera en Azure-resurs. Den här resursen innehåller en nyckel och slutpunkt som du använder för att autentisera DE API-anrop som du skickar till språktjänsten.
Använd följande länk för att skapa en språkresurs med hjälp av Azure-portalen. Du måste logga in med din Azure-prenumeration.
På skärmen Välj ytterligare funktioner som visas väljer du Fortsätt för att skapa resursen.
På skärmen Skapa språk anger du följande information:
Kontrollera att kryssrutan Ansvarig AI-meddelande är markerad.
Välj Granska + Skapa längst ned på sidan.
På skärmen som visas kontrollerar du att valideringen har passerat och att du har angett informationen korrekt. Välj sedan Skapa.
Hämta din nyckel och slutpunkt
Därefter behöver du nyckeln och slutpunkten från resursen för att ansluta ditt program till API:et. Du klistrar in nyckeln och slutpunkten i koden senare i snabbstarten.
När språkresursen har distribuerats klickar du på knappen Gå till resurs under Nästa steg.
På skärmen för resursen väljer du Nycklar och slutpunkt på den vänstra navigeringsmenyn. Du använder en av dina nycklar och slutpunkten i stegen nedan.
Skapa miljövariabler
Ditt program måste autentiseras för att skicka API-begäranden. För produktion använder du ett säkert sätt att lagra och komma åt dina autentiseringsuppgifter. I det här exemplet skriver du dina autentiseringsuppgifter till miljövariabler på den lokala dator som kör programmet.
Om du vill ange miljövariabeln för din språkresursnyckel öppnar du ett konsolfönster och följer anvisningarna för operativsystemet och utvecklingsmiljön.
- Om du vill ange
LANGUAGE_KEY
miljövariabeln ersätter duyour-key
med en av nycklarna för resursen. - Om du vill ange
LANGUAGE_ENDPOINT
miljövariabeln ersätter duyour-endpoint
med slutpunkten för resursen.
Viktigt!
Om du använder en API-nyckel lagrar du den på ett säkert sätt någon annanstans, till exempel i Azure Key Vault. Inkludera inte API-nyckeln direkt i koden och publicera den aldrig offentligt.
Mer information om säkerhet för AI-tjänster finns i Autentisera begäranden till Azure AI-tjänster.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Kommentar
Om du bara behöver komma åt miljövariablerna i den aktuella konsolen som körs kan du ange miljövariabeln med set
i stället för setx
.
När du har lagt till miljövariablerna kan du behöva starta om alla program som körs och som behöver läsa miljövariablerna, inklusive konsolfönstret. Om du till exempel använder Visual Studio som redigerare startar du om Visual Studio innan du kör exemplet.
Installera klientbiblioteket
När du har installerat Python kan du installera klientbiblioteket med:
pip install azure-ai-textanalytics==5.2.0
Kodexempel
Skapa en ny Python-fil och kopiera koden nedan. Kör sedan koden.
# 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)
Output
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
Rensa resurser
Om du vill rensa och ta bort en Azure AI-tjänstprenumeration kan du ta bort resursen eller resursgruppen. Om du tar bort resursgruppen tas även alla andra resurser som är associerade med den bort.
Nästa steg
Använd den här snabbstarten för att skicka entitetslänkningsbegäranden med hjälp av REST-API:et. I följande exempel använder du cURL för att identifiera och skilja entiteter som finns i text.
Förutsättningar
- Azure-prenumeration – Skapa en kostnadsfritt
Konfigurera
Skapa en Azure-resurs
Om du vill använda kodexemplet nedan måste du distribuera en Azure-resurs. Den här resursen innehåller en nyckel och slutpunkt som du använder för att autentisera DE API-anrop som du skickar till språktjänsten.
Använd följande länk för att skapa en språkresurs med hjälp av Azure-portalen. Du måste logga in med din Azure-prenumeration.
På skärmen Välj ytterligare funktioner som visas väljer du Fortsätt för att skapa resursen.
På skärmen Skapa språk anger du följande information:
Kontrollera att kryssrutan Ansvarig AI-meddelande är markerad.
Välj Granska + Skapa längst ned på sidan.
På skärmen som visas kontrollerar du att valideringen har passerat och att du har angett informationen korrekt. Välj sedan Skapa.
Hämta din nyckel och slutpunkt
Därefter behöver du nyckeln och slutpunkten från resursen för att ansluta ditt program till API:et. Du klistrar in nyckeln och slutpunkten i koden senare i snabbstarten.
När språkresursen har distribuerats klickar du på knappen Gå till resurs under Nästa steg.
På skärmen för resursen väljer du Nycklar och slutpunkt på den vänstra navigeringsmenyn. Du använder en av dina nycklar och slutpunkten i stegen nedan.
Skapa miljövariabler
Ditt program måste autentiseras för att skicka API-begäranden. För produktion använder du ett säkert sätt att lagra och komma åt dina autentiseringsuppgifter. I det här exemplet skriver du dina autentiseringsuppgifter till miljövariabler på den lokala dator som kör programmet.
Om du vill ange miljövariabeln för din språkresursnyckel öppnar du ett konsolfönster och följer anvisningarna för operativsystemet och utvecklingsmiljön.
- Om du vill ange
LANGUAGE_KEY
miljövariabeln ersätter duyour-key
med en av nycklarna för resursen. - Om du vill ange
LANGUAGE_ENDPOINT
miljövariabeln ersätter duyour-endpoint
med slutpunkten för resursen.
Viktigt!
Om du använder en API-nyckel lagrar du den på ett säkert sätt någon annanstans, till exempel i Azure Key Vault. Inkludera inte API-nyckeln direkt i koden och publicera den aldrig offentligt.
Mer information om säkerhet för AI-tjänster finns i Autentisera begäranden till Azure AI-tjänster.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Kommentar
Om du bara behöver komma åt miljövariablerna i den aktuella konsolen som körs kan du ange miljövariabeln med set
i stället för setx
.
När du har lagt till miljövariablerna kan du behöva starta om alla program som körs och som behöver läsa miljövariablerna, inklusive konsolfönstret. Om du till exempel använder Visual Studio som redigerare startar du om Visual Studio innan du kör exemplet.
Skapa en JSON-fil med exempelbegärandetexten
I en kodredigerare skapar du en ny fil med namnet test_entitylinking_payload.json
och kopierar följande JSON-exempel. Den här exempelbegäran skickas till API:et i nästa steg.
{
"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."
}
]
}
}
Spara test_entitylinking_payload.json
någonstans på datorn. Till exempel skrivbordet.
Skicka en api-begäran för entitetslänkning
Använd följande kommandon för att skicka API-begäran med det program du använder. Kopiera kommandot till terminalen och kör det.
parameter | Description |
---|---|
-X POST <endpoint> |
Anger slutpunkten för åtkomst till API:et. |
-H Content-Type: application/json |
Innehållstypen för att skicka JSON-data. |
-H "Ocp-Apim-Subscription-Key:<key> |
Anger nyckeln för åtkomst till API:et. |
-d <documents> |
JSON som innehåller de dokument som du vill skicka. |
Ersätt C:\Users\<myaccount>\Desktop\test_entitylinking_payload.json
med platsen för JSON-exempelbegärandefilen som du skapade i föregående steg.
Kommandotolk
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"
JSON-svar
{
"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"
}
}
Rensa resurser
Om du vill rensa och ta bort en Azure AI-tjänstprenumeration kan du ta bort resursen eller resursgruppen. Om du tar bort resursgruppen tas även alla andra resurser som är associerade med den bort.