Identifiera entiteter
Namngiven entitetsigenkänning är en funktion som erbjuds av Azure Language. Den identifierar och kategoriserar entiteter i ostrukturerad text. Den stöder flera kategorier av entiteter, inklusive personer, platser, händelser, produkter, organisationer osv.
Det finns flera sätt att anropa det namngivna API:et för entitetsigenkänning. Här använder azure_ai du tillägget för att identifiera entiteter från texten i SQL-frågor.
Förutsättningar
Du behöver en flexibel Azure Database for PostgreSQL-server med azure_ai tillägget aktiverat och konfigurerat. Du måste också auktorisera den med Azure Cognitive Services genom att ange en språkresurss nyckel och slutpunkt.
Scenarier
Entitetsigenkänning är användbart i flera domäner, till exempel:
- Sökning och indexering: Skapa automatiskt kunskapsdiagram och taggkataloger med identifierade entiteter.
- Processautomatisering: Identifierar automatiskt produkter och platser i ostrukturerad text och dirigerar dem till kundsupportförfrågningar.
- Marknadsanalys: Mäter de vanligaste entiteterna och entitetskluster från sociala medier, kundrecensioner, supportärenden osv. för att fastställa relevanta ämnen och förutse trender.
Använda namngiven entitetsigenkänning i SQL med Azure Cognitive Services
Azure Database for PostgreSQL–tillägget för flexibel server azure_ai tillhandahåller användardefinierade funktioner (UDF:er) för att komma åt AI-funktioner direkt från SQL. Det namngivna API:et för entitetsigenkänning används med funktionen azure_cognitive.recognize_entities som tillhandahålls av azure_ai:
azure_cognitive.recognize_entities(
text text,
language text,
timeout_ms integer DEFAULT 3600000,
throw_on_error boolean DEFAULT true,
disable_service_logs boolean DEFAULT false
)
De obligatoriska parametrarna är text, indata och language, språket där text är skrivet. Till exempel en-us är amerikansk engelska och fr är franska. Se språkstöd för den fullständiga listan över tillgängliga språk.
Som standard stoppas entitetsigenkänning om den inte slutförs på 3 600 000 ms = 1 timme. Du kan anpassa den här fördröjningen genom att ändra timeout_ms.
Om ett fel inträffar är standardbeteendet att utlösa ett undantag, vilket resulterar i en transaktionsåterställning. Du kan inaktivera det här beteendet genom att ställa in throw_on_error till falskt.
I dokumentationen för Azure Cognitive Services-tillägget finns fullständig parameterdokumentation.
Du kan till exempel anropa den här frågan:
SELECT azure_cognitive.recognize_entities('For more information, see Cognitive Services Compliance and Privacy notes.', 'en-us');
Ger det här resultatet:
{"(\"Cognitive Services\",Skill,\"\",0.94)"}
Genom att ange att entitetens namn är "Cognitive Services" identifieras det som en tjänst med en konfidenspoäng på 0,94.
Du kan använda tabellkolumner för indatatexten:
SELECT description, azure_cognitive.recognize_entities(description, 'en-us')
FROM listings LIMIT 1;
Som returnerar:
{"(house,Location,\"\",0.77)","(2013.,DateTime,DateRange,1)","(\"rooftop deck\",Location,\"\",0.88)","(\"lounge area\",Location,Structural,0.97)","(tub,Product,\"\",0.52)","
(5,Quantity,Number,0.8)","(bedrooms,Location,\"\",0.92)","(\"gourmet kitchen\",Location,\"\",0.87)","(2-3,Quantity,NumberRange,0.87)","(downtown,Location,Structural,0.8)","(\
"Queen Anne neighborhood\",Location,\"\",0.74)","(house,Location,\"\",0.96)","(barnwood,Product,\"\",0.61)","(steel,Product,\"\",0.73)","(concrete,Product,\"\",0.7)","(living
,Location,Structural,0.53)","(\"gourmet kitchen\",Location,\"\",0.7)","(kitchen,Location,\"\",0.77)","(reading,Skill,\"\",0.54)","(half,Quantity,Number,0.8)","(\"tv room\",Lo
cation,\"\",0.89)","(kitchen,Location,\"\",0.64)","(Fireplace,Product,\"\",0.91)","(sofa,Product,\"\",0.98)","(\"sitting area\",Location,\"\",0.93)","(\"Basement room\",Locat
ion,\"\",0.98)","(kids,PersonType,\"\",0.73)","(room,Location,Structural,0.78)","(patio,Location,Structural,0.75)","(basketball,Product,\"\",0.57)","(bedroom,Location,\"\",0.
8)","(basement,Location,\"\",0.94)","(\"concrete heated floors\",Product,\"\",0.95)","(\"queen sleeper sofa\",Product,\"\",0.86)","(tv,Location,\"\",0.54)","(basement,Locatio
n,\"\",0.92)","(room,Location,Structural,0.9)","(\"a second\",DateTime,Duration,0.85)","(family,PersonType,\"\",0.71)","(kids,PersonType,\"\",0.65)","(\"2nd floor\",Location,
Structural,0.56)","(4,Quantity,Number,0.8)","(bedrooms,Location,\"\",0.66)","(one,Quantity,Number,0.8)","(one,Quantity,Number,0.8)","(bedroom,Location,\"\",0.54)","(\"twin bu
nk beds\",Product,\"\",0.67)"}
Sammanfattning
Namngiven entitetsigenkänning identifierar och kategoriserar entiteter i indatatext. Azure Cognitive Services-språkmodellen utför den tunga bearbetningen av naturligt språk. Tillägget azure_ai för Azure Database for PostgreSQL tillhandahåller API:et för åtkomst till namngiven azure_cognitive.recognize_entities entitetsigenkänning direkt i SQL-frågor.