Quickstart: Sentimentanalyse en meninganalyse
Referentiedocumentatie Meer voorbeeldenpakket | (NuGet) | -bibliotheekbroncode |
Gebruik deze quickstart om een sentimentanalysetoepassing te maken met de clientbibliotheek voor .NET. In het volgende voorbeeld maakt u een C#-toepassing waarmee de sentimenten kunnen worden geïdentificeerd die zijn uitgedrukt in een tekstvoorbeeld en op aspect gebaseerde sentimentanalyses uitvoeren.
Vereisten
- Azure-abonnement: Krijg een gratis abonnement
- De Visual Studio IDE
Instellen
Een Azure-resource maken
Als u het onderstaande codevoorbeeld wilt gebruiken, moet u een Azure-resource implementeren. Deze resource bevat een sleutel en eindpunt dat u gebruikt voor het verifiëren van de API-aanroepen die u naar de Taalservice verzendt.
Gebruik de volgende koppeling om een taalresource te maken met behulp van Azure Portal. U moet zich aanmelden met uw Azure-abonnement.
Selecteer doorgaan om uw resource te maken in het scherm Aanvullende functies selecteren dat wordt weergegeven.
Geef in het scherm Taal maken de volgende informatie op:
Details Beschrijving Abonnement Het abonnementsaccount waaraan uw resource wordt gekoppeld. Selecteer uw Azure-abonnement in de vervolgkeuzelijst. Resourcegroep Een resourcegroep is een container waarin de resources die u maakt, worden opgeslagen. Selecteer Nieuwe maken om een nieuwe resourcegroep te maken. Regio De locatie van uw taalresource. Verschillende regio's kunnen latentie veroorzaken, afhankelijk van uw fysieke locatie, maar hebben geen invloed op de runtime-beschikbaarheid van uw resource. Voor deze quickstart selecteert u een beschikbare regio bij u in de buurt of kiest u VS - oost. Naam De naam voor uw taalresource. Deze naam wordt ook gebruikt om een eindpunt-URL te maken die uw toepassingen gebruiken om API-aanvragen te verzenden. Prijscategorie De prijscategorie voor uw taalresource. U kunt de gratis F0-laag gebruiken om de service uit te proberen en later een upgrade uit te voeren naar een betaalde laag voor productie. Zorg ervoor dat het selectievakje Verantwoordelijke AI-kennisgeving is ingeschakeld.
Selecteer Controleren en maken onderaan de pagina.
Controleer in het scherm dat wordt weergegeven of de validatie is geslaagd en of u de gegevens correct hebt ingevoerd. Selecteer vervolgens Maken.
Uw sleutel en eindpunt ophalen
Vervolgens hebt u de sleutel en het eindpunt van de resource nodig om uw toepassing te verbinden met de API. Verderop in de quickstart plakt u uw sleutel en eindpunt in de code.
Nadat de taalresource is geïmplementeerd, klikt u onder Volgende stappen op de knop Naar de resource gaan.
Selecteer sleutels en eindpunt in het linkernavigatiemenu op het scherm voor uw resource. U gebruikt een van uw sleutels en uw eindpunt in de onderstaande stappen.
Omgevingsvariabelen maken
Uw toepassing moet worden geverifieerd om API-aanvragen te verzenden. Gebruik voor productie een veilige manier om uw referenties op te slaan en te openen. In dit voorbeeld schrijft u uw referenties naar omgevingsvariabelen op de lokale computer waarop de toepassing wordt uitgevoerd.
Als u de omgevingsvariabele voor uw taalresourcesleutel wilt instellen, opent u een consolevenster en volgt u de instructies voor uw besturingssysteem en ontwikkelomgeving.
- Als u de
LANGUAGE_KEY
omgevingsvariabele wilt instellen, vervangt u deze dooryour-key
een van de sleutels voor uw resource. - Als u de
LANGUAGE_ENDPOINT
omgevingsvariabele wilt instellen, vervangtyour-endpoint
u het eindpunt voor uw resource.
Belangrijk
Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.
Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Notitie
Als u alleen toegang nodig hebt tot de omgevingsvariabelen in de huidige actieve console, kunt u de omgevingsvariabele instellen in set
plaats van setx
.
Nadat u de omgevingsvariabelen hebt toegevoegd, moet u mogelijk alle actieve programma's opnieuw opstarten die de omgevingsvariabelen moeten lezen, inclusief het consolevenster. Als u bijvoorbeeld Visual Studio als editor gebruikt, start u Visual Studio opnieuw voordat u het voorbeeld uitvoert.
Een nieuwe .NET Core-app maken
Maak een nieuwe console-app in .NET Core met behulp van de Visual Studio IDE. Hiermee maakt u een project 'Hallo wereld' met één C#-bronbestand: program.cs.
Installeer de clientbibliotheek door met de rechtermuisknop op de oplossing te klikken in Solution Explorer en NuGet-pakketten beheren te selecteren. Selecteer in Package Manager dat wordt geopend de optie Bladeren en zoek naar Azure.AI.TextAnalytics
. Selecteer versie 5.2.0
en vervolgens Installeren. U kunt ook de Package Manager-console gebruiken.
Voorbeeld van code
Kopieer de volgende code naar uw program.cs-bestand en voer de code uit.
using Azure;
using System;
using Azure.AI.TextAnalytics;
using System.Collections.Generic;
namespace Example
{
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 detecting opinions text.
static void SentimentAnalysisWithOpinionMiningExample(TextAnalyticsClient client)
{
var documents = new List<string>
{
"The food and service were unacceptable. The concierge was nice, however."
};
AnalyzeSentimentResultCollection reviews = client.AnalyzeSentimentBatch(documents, options: new AnalyzeSentimentOptions()
{
IncludeOpinionMining = true
});
foreach (AnalyzeSentimentResult review in reviews)
{
Console.WriteLine($"Document sentiment: {review.DocumentSentiment.Sentiment}\n");
Console.WriteLine($"\tPositive score: {review.DocumentSentiment.ConfidenceScores.Positive:0.00}");
Console.WriteLine($"\tNegative score: {review.DocumentSentiment.ConfidenceScores.Negative:0.00}");
Console.WriteLine($"\tNeutral score: {review.DocumentSentiment.ConfidenceScores.Neutral:0.00}\n");
foreach (SentenceSentiment sentence in review.DocumentSentiment.Sentences)
{
Console.WriteLine($"\tText: \"{sentence.Text}\"");
Console.WriteLine($"\tSentence sentiment: {sentence.Sentiment}");
Console.WriteLine($"\tSentence positive score: {sentence.ConfidenceScores.Positive:0.00}");
Console.WriteLine($"\tSentence negative score: {sentence.ConfidenceScores.Negative:0.00}");
Console.WriteLine($"\tSentence neutral score: {sentence.ConfidenceScores.Neutral:0.00}\n");
foreach (SentenceOpinion sentenceOpinion in sentence.Opinions)
{
Console.WriteLine($"\tTarget: {sentenceOpinion.Target.Text}, Value: {sentenceOpinion.Target.Sentiment}");
Console.WriteLine($"\tTarget positive score: {sentenceOpinion.Target.ConfidenceScores.Positive:0.00}");
Console.WriteLine($"\tTarget negative score: {sentenceOpinion.Target.ConfidenceScores.Negative:0.00}");
foreach (AssessmentSentiment assessment in sentenceOpinion.Assessments)
{
Console.WriteLine($"\t\tRelated Assessment: {assessment.Text}, Value: {assessment.Sentiment}");
Console.WriteLine($"\t\tRelated Assessment positive score: {assessment.ConfidenceScores.Positive:0.00}");
Console.WriteLine($"\t\tRelated Assessment negative score: {assessment.ConfidenceScores.Negative:0.00}");
}
}
}
Console.WriteLine($"\n");
}
}
static void Main(string[] args)
{
var client = new TextAnalyticsClient(endpoint, credentials);
SentimentAnalysisWithOpinionMiningExample(client);
Console.Write("Press any key to exit.");
Console.ReadKey();
}
}
}
Uitvoer
Document sentiment: Mixed
Positive score: 0.47
Negative score: 0.52
Neutral score: 0.00
Text: "The food and service were unacceptable. "
Sentence sentiment: Negative
Sentence positive score: 0.00
Sentence negative score: 0.99
Sentence neutral score: 0.00
Target: food, Value: Negative
Target positive score: 0.00
Target negative score: 1.00
Related Assessment: unacceptable, Value: Negative
Related Assessment positive score: 0.00
Related Assessment negative score: 1.00
Target: service, Value: Negative
Target positive score: 0.00
Target negative score: 1.00
Related Assessment: unacceptable, Value: Negative
Related Assessment positive score: 0.00
Related Assessment negative score: 1.00
Text: "The concierge was nice, however."
Sentence sentiment: Positive
Sentence positive score: 0.94
Sentence negative score: 0.05
Sentence neutral score: 0.01
Target: concierge, Value: Positive
Target positive score: 1.00
Target negative score: 0.00
Related Assessment: nice, Value: Positive
Related Assessment positive score: 1.00
Related Assessment negative score: 0.00
Resources opschonen
Als u een Azure AI-servicesabonnement wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.
Gebruik de volgende opdrachten om de omgevingsvariabelen te verwijderen die u voor deze quickstart hebt gemaakt.
reg delete "HKCU\Environment" /v LANGUAGE_KEY /f
reg delete "HKCU\Environment" /v LANGUAGE_ENDPOINT /f
Volgende stappen
Referentiedocumentatie Aanvullende voorbeeldenpakket | (Maven) | Library-broncode |
Gebruik deze quickstart om een sentimentanalysetoepassing te maken met de clientbibliotheek voor Java. In het volgende voorbeeld maakt u een Java-toepassing waarmee de sentimenten kunnen worden geïdentificeerd die worden uitgedrukt in een tekstvoorbeeld en op aspect gebaseerde sentimentanalyses uitvoeren.
Vereisten
- Azure-abonnement: Krijg een gratis abonnement
- Java Development Kit (JDK) met versie 8 of hoger
Instellen
Een Azure-resource maken
Als u het onderstaande codevoorbeeld wilt gebruiken, moet u een Azure-resource implementeren. Deze resource bevat een sleutel en eindpunt dat u gebruikt voor het verifiëren van de API-aanroepen die u naar de Taalservice verzendt.
Gebruik de volgende koppeling om een taalresource te maken met behulp van Azure Portal. U moet zich aanmelden met uw Azure-abonnement.
Selecteer doorgaan om uw resource te maken in het scherm Aanvullende functies selecteren dat wordt weergegeven.
Geef in het scherm Taal maken de volgende informatie op:
Details Beschrijving Abonnement Het abonnementsaccount waaraan uw resource wordt gekoppeld. Selecteer uw Azure-abonnement in de vervolgkeuzelijst. Resourcegroep Een resourcegroep is een container waarin de resources die u maakt, worden opgeslagen. Selecteer Nieuwe maken om een nieuwe resourcegroep te maken. Regio De locatie van uw taalresource. Verschillende regio's kunnen latentie veroorzaken, afhankelijk van uw fysieke locatie, maar hebben geen invloed op de runtime-beschikbaarheid van uw resource. Voor deze quickstart selecteert u een beschikbare regio bij u in de buurt of kiest u VS - oost. Naam De naam voor uw taalresource. Deze naam wordt ook gebruikt om een eindpunt-URL te maken die uw toepassingen gebruiken om API-aanvragen te verzenden. Prijscategorie De prijscategorie voor uw taalresource. U kunt de gratis F0-laag gebruiken om de service uit te proberen en later een upgrade uit te voeren naar een betaalde laag voor productie. Zorg ervoor dat het selectievakje Verantwoordelijke AI-kennisgeving is ingeschakeld.
Selecteer Controleren en maken onderaan de pagina.
Controleer in het scherm dat wordt weergegeven of de validatie is geslaagd en of u de gegevens correct hebt ingevoerd. Selecteer vervolgens Maken.
Uw sleutel en eindpunt ophalen
Vervolgens hebt u de sleutel en het eindpunt van de resource nodig om uw toepassing te verbinden met de API. Verderop in de quickstart plakt u uw sleutel en eindpunt in de code.
Nadat de taalresource is geïmplementeerd, klikt u onder Volgende stappen op de knop Naar de resource gaan.
Selecteer sleutels en eindpunt in het linkernavigatiemenu op het scherm voor uw resource. U gebruikt een van uw sleutels en uw eindpunt in de onderstaande stappen.
Omgevingsvariabelen maken
Uw toepassing moet worden geverifieerd om API-aanvragen te verzenden. Gebruik voor productie een veilige manier om uw referenties op te slaan en te openen. In dit voorbeeld schrijft u uw referenties naar omgevingsvariabelen op de lokale computer waarop de toepassing wordt uitgevoerd.
Als u de omgevingsvariabele voor uw taalresourcesleutel wilt instellen, opent u een consolevenster en volgt u de instructies voor uw besturingssysteem en ontwikkelomgeving.
- Als u de
LANGUAGE_KEY
omgevingsvariabele wilt instellen, vervangt u deze dooryour-key
een van de sleutels voor uw resource. - Als u de
LANGUAGE_ENDPOINT
omgevingsvariabele wilt instellen, vervangtyour-endpoint
u het eindpunt voor uw resource.
Belangrijk
Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.
Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Notitie
Als u alleen toegang nodig hebt tot de omgevingsvariabelen in de huidige actieve console, kunt u de omgevingsvariabele instellen in set
plaats van setx
.
Nadat u de omgevingsvariabelen hebt toegevoegd, moet u mogelijk alle actieve programma's opnieuw opstarten die de omgevingsvariabelen moeten lezen, inclusief het consolevenster. Als u bijvoorbeeld Visual Studio als editor gebruikt, start u Visual Studio opnieuw voordat u het voorbeeld uitvoert.
De clientbibliotheek toevoegen
Maak een Maven-project in uw favoriete IDE of ontwikkelomgeving. Voeg vervolgens de volgende afhankelijkheid toe aan het pom.xml-bestand van uw project. U kunt de implementatiesyntaxis voor andere compilatieprogramma's online vinden.
<dependencies>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-ai-textanalytics</artifactId>
<version>5.2.0</version>
</dependency>
</dependencies>
Voorbeeld van code
Maak een Java-bestand met de naam Example.java
. Open het bestand en kopieer de onderstaande code. Voer de code vervolgens uit.
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);
sentimentAnalysisWithOpinionMiningExample(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 detecting sentiment and opinions in text.
static void sentimentAnalysisWithOpinionMiningExample(TextAnalyticsClient client)
{
// The document that needs be analyzed.
String document = "The food and service were unacceptable. The concierge was nice, however.";
System.out.printf("Document = %s%n", document);
AnalyzeSentimentOptions options = new AnalyzeSentimentOptions().setIncludeOpinionMining(true);
final DocumentSentiment documentSentiment = client.analyzeSentiment(document, "en", options);
SentimentConfidenceScores scores = documentSentiment.getConfidenceScores();
System.out.printf(
"Recognized document sentiment: %s, positive score: %f, neutral score: %f, negative score: %f.%n",
documentSentiment.getSentiment(), scores.getPositive(), scores.getNeutral(), scores.getNegative());
documentSentiment.getSentences().forEach(sentenceSentiment -> {
SentimentConfidenceScores sentenceScores = sentenceSentiment.getConfidenceScores();
System.out.printf("\tSentence sentiment: %s, positive score: %f, neutral score: %f, negative score: %f.%n",
sentenceSentiment.getSentiment(), sentenceScores.getPositive(), sentenceScores.getNeutral(), sentenceScores.getNegative());
sentenceSentiment.getOpinions().forEach(opinion -> {
TargetSentiment targetSentiment = opinion.getTarget();
System.out.printf("\t\tTarget sentiment: %s, target text: %s%n", targetSentiment.getSentiment(),
targetSentiment.getText());
for (AssessmentSentiment assessmentSentiment : opinion.getAssessments()) {
System.out.printf("\t\t\t'%s' assessment sentiment because of \"%s\". Is the assessment negated: %s.%n",
assessmentSentiment.getSentiment(), assessmentSentiment.getText(), assessmentSentiment.isNegated());
}
});
});
}
}
Uitvoer
Document = The food and service were unacceptable. The concierge was nice, however.
Recognized document sentiment: mixed, positive score: 0.470000, neutral score: 0.000000, negative score: 0.520000.
Sentence sentiment: negative, positive score: 0.000000, neutral score: 0.000000, negative score: 0.990000.
Target sentiment: negative, target text: food
'negative' assessment sentiment because of "unacceptable". Is the assessment negated: false.
Target sentiment: negative, target text: service
'negative' assessment sentiment because of "unacceptable". Is the assessment negated: false.
Sentence sentiment: positive, positive score: 0.940000, neutral score: 0.010000, negative score: 0.050000.
Target sentiment: positive, target text: concierge
'positive' assessment sentiment because of "nice". Is the assessment negated: false.
Resources opschonen
Als u een Azure AI-servicesabonnement wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.
Gebruik de volgende opdrachten om de omgevingsvariabelen te verwijderen die u voor deze quickstart hebt gemaakt.
reg delete "HKCU\Environment" /v LANGUAGE_KEY /f
reg delete "HKCU\Environment" /v LANGUAGE_ENDPOINT /f
Volgende stappen
Referentiedocumentatie Aanvullende voorbeeldenpakket | (npm) | Bibliotheekbroncode |
Gebruik deze quickstart om een toepassing voor sentimentanalyse te maken met de clientbibliotheek voor Node.js. In het volgende voorbeeld maakt u een JavaScript-toepassing waarmee de sentimenten kunnen worden geïdentificeerd die zijn uitgedrukt in een tekstvoorbeeld en op aspect gebaseerde sentimentanalyses uitvoeren.
Vereisten
- Azure-abonnement: Krijg een gratis abonnement
- Node.js v14 LTS of hoger
Instellen
Een Azure-resource maken
Als u het onderstaande codevoorbeeld wilt gebruiken, moet u een Azure-resource implementeren. Deze resource bevat een sleutel en eindpunt dat u gebruikt voor het verifiëren van de API-aanroepen die u naar de Taalservice verzendt.
Gebruik de volgende koppeling om een taalresource te maken met behulp van Azure Portal. U moet zich aanmelden met uw Azure-abonnement.
Selecteer doorgaan om uw resource te maken in het scherm Aanvullende functies selecteren dat wordt weergegeven.
Geef in het scherm Taal maken de volgende informatie op:
Details Beschrijving Abonnement Het abonnementsaccount waaraan uw resource wordt gekoppeld. Selecteer uw Azure-abonnement in de vervolgkeuzelijst. Resourcegroep Een resourcegroep is een container waarin de resources die u maakt, worden opgeslagen. Selecteer Nieuwe maken om een nieuwe resourcegroep te maken. Regio De locatie van uw taalresource. Verschillende regio's kunnen latentie veroorzaken, afhankelijk van uw fysieke locatie, maar hebben geen invloed op de runtime-beschikbaarheid van uw resource. Voor deze quickstart selecteert u een beschikbare regio bij u in de buurt of kiest u VS - oost. Naam De naam voor uw taalresource. Deze naam wordt ook gebruikt om een eindpunt-URL te maken die uw toepassingen gebruiken om API-aanvragen te verzenden. Prijscategorie De prijscategorie voor uw taalresource. U kunt de gratis F0-laag gebruiken om de service uit te proberen en later een upgrade uit te voeren naar een betaalde laag voor productie. Zorg ervoor dat het selectievakje Verantwoordelijke AI-kennisgeving is ingeschakeld.
Selecteer Controleren en maken onderaan de pagina.
Controleer in het scherm dat wordt weergegeven of de validatie is geslaagd en of u de gegevens correct hebt ingevoerd. Selecteer vervolgens Maken.
Uw sleutel en eindpunt ophalen
Vervolgens hebt u de sleutel en het eindpunt van de resource nodig om uw toepassing te verbinden met de API. Verderop in de quickstart plakt u uw sleutel en eindpunt in de code.
Nadat de taalresource is geïmplementeerd, klikt u onder Volgende stappen op de knop Naar de resource gaan.
Selecteer sleutels en eindpunt in het linkernavigatiemenu op het scherm voor uw resource. U gebruikt een van uw sleutels en uw eindpunt in de onderstaande stappen.
Omgevingsvariabelen maken
Uw toepassing moet worden geverifieerd om API-aanvragen te verzenden. Gebruik voor productie een veilige manier om uw referenties op te slaan en te openen. In dit voorbeeld schrijft u uw referenties naar omgevingsvariabelen op de lokale computer waarop de toepassing wordt uitgevoerd.
Als u de omgevingsvariabele voor uw taalresourcesleutel wilt instellen, opent u een consolevenster en volgt u de instructies voor uw besturingssysteem en ontwikkelomgeving.
- Als u de
LANGUAGE_KEY
omgevingsvariabele wilt instellen, vervangt u deze dooryour-key
een van de sleutels voor uw resource. - Als u de
LANGUAGE_ENDPOINT
omgevingsvariabele wilt instellen, vervangtyour-endpoint
u het eindpunt voor uw resource.
Belangrijk
Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.
Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Notitie
Als u alleen toegang nodig hebt tot de omgevingsvariabelen in de huidige actieve console, kunt u de omgevingsvariabele instellen in set
plaats van setx
.
Nadat u de omgevingsvariabelen hebt toegevoegd, moet u mogelijk alle actieve programma's opnieuw opstarten die de omgevingsvariabelen moeten lezen, inclusief het consolevenster. Als u bijvoorbeeld Visual Studio als editor gebruikt, start u Visual Studio opnieuw voordat u het voorbeeld uitvoert.
Een nieuwe Node.js-toepassing maken
Maak in een consolevenster (zoals cmd, PowerShell of Bash) een nieuwe map voor de app, en navigeer naar deze map.
mkdir myapp
cd myapp
Voer de opdracht npm init
uit om een knooppunttoepassing te maken met een package.json
-bestand.
npm init
De clientbibliotheek installeren
Installeer de npm-pakketten:
npm install @azure/ai-language-text
Voorbeeld van code
Open het bestand en kopieer de onderstaande code. Voer de code vervolgens uit.
"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;
//an example document for sentiment analysis and opinion mining
const documents = [{
text: "The food and service were unacceptable. The concierge was nice, however.",
id: "0",
language: "en"
}];
async function main() {
console.log("=== Sentiment analysis and opinion mining sample ===");
const client = new TextAnalysisClient(endpoint, new AzureKeyCredential(key));
const results = await client.analyze("SentimentAnalysis", documents, {
includeOpinionMining: true,
});
for (let i = 0; i < results.length; i++) {
const result = results[i];
console.log(`- Document ${result.id}`);
if (!result.error) {
console.log(`\tDocument text: ${documents[i].text}`);
console.log(`\tOverall Sentiment: ${result.sentiment}`);
console.log("\tSentiment confidence scores:", result.confidenceScores);
console.log("\tSentences");
for (const { sentiment, confidenceScores, opinions } of result.sentences) {
console.log(`\t- Sentence sentiment: ${sentiment}`);
console.log("\t Confidence scores:", confidenceScores);
console.log("\t Mined opinions");
for (const { target, assessments } of opinions) {
console.log(`\t\t- Target text: ${target.text}`);
console.log(`\t\t Target sentiment: ${target.sentiment}`);
console.log("\t\t Target confidence scores:", target.confidenceScores);
console.log("\t\t Target assessments");
for (const { text, sentiment } of assessments) {
console.log(`\t\t\t- Text: ${text}`);
console.log(`\t\t\t Sentiment: ${sentiment}`);
}
}
}
} else {
console.error(`\tError: ${result.error}`);
}
}
}
main().catch((err) => {
console.error("The sample encountered an error:", err);
});
Uitvoer
=== Sentiment analysis and opinion mining sample ===
- Document 0
Document text: The food and service were unacceptable. The concierge was nice, however.
Overall Sentiment: mixed
Sentiment confidence scores: { positive: 0.49, neutral: 0, negative: 0.5 }
Sentences
- Sentence sentiment: negative
Confidence scores: { positive: 0, neutral: 0, negative: 1 }
Mined opinions
- Target text: food
Target sentiment: negative
Target confidence scores: { positive: 0.01, negative: 0.99 }
Target assessments
- Text: unacceptable
Sentiment: negative
- Target text: service
Target sentiment: negative
Target confidence scores: { positive: 0.01, negative: 0.99 }
Target assessments
- Text: unacceptable
Sentiment: negative
- Sentence sentiment: positive
Confidence scores: { positive: 0.98, neutral: 0.01, negative: 0.01 }
Mined opinions
- Target text: concierge
Target sentiment: positive
Target confidence scores: { positive: 1, negative: 0 }
Target assessments
- Text: nice
Sentiment: positive
Resources opschonen
Als u een Azure AI-servicesabonnement wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.
Gebruik de volgende opdrachten om de omgevingsvariabelen te verwijderen die u voor deze quickstart hebt gemaakt.
reg delete "HKCU\Environment" /v LANGUAGE_KEY /f
reg delete "HKCU\Environment" /v LANGUAGE_ENDPOINT /f
Volgende stappen
Referentiedocumentatie Aanvullende voorbeeldenpakket | (PyPi) | Library-broncode |
Gebruik deze quickstart om een sentimentanalysetoepassing te maken met de clientbibliotheek voor Python. In het volgende voorbeeld maakt u een Python-toepassing waarmee u de sentimenten kunt identificeren die zijn uitgedrukt in een tekstvoorbeeld en op aspect gebaseerde sentimentanalyses uitvoeren.
Vereisten
- Azure-abonnement: Krijg een gratis abonnement
- Python 3.7 of hoger
Instellen
Een Azure-resource maken
Als u het onderstaande codevoorbeeld wilt gebruiken, moet u een Azure-resource implementeren. Deze resource bevat een sleutel en eindpunt dat u gebruikt voor het verifiëren van de API-aanroepen die u naar de Taalservice verzendt.
Gebruik de volgende koppeling om een taalresource te maken met behulp van Azure Portal. U moet zich aanmelden met uw Azure-abonnement.
Selecteer doorgaan om uw resource te maken in het scherm Aanvullende functies selecteren dat wordt weergegeven.
Geef in het scherm Taal maken de volgende informatie op:
Details Beschrijving Abonnement Het abonnementsaccount waaraan uw resource wordt gekoppeld. Selecteer uw Azure-abonnement in de vervolgkeuzelijst. Resourcegroep Een resourcegroep is een container waarin de resources die u maakt, worden opgeslagen. Selecteer Nieuwe maken om een nieuwe resourcegroep te maken. Regio De locatie van uw taalresource. Verschillende regio's kunnen latentie veroorzaken, afhankelijk van uw fysieke locatie, maar hebben geen invloed op de runtime-beschikbaarheid van uw resource. Voor deze quickstart selecteert u een beschikbare regio bij u in de buurt of kiest u VS - oost. Naam De naam voor uw taalresource. Deze naam wordt ook gebruikt om een eindpunt-URL te maken die uw toepassingen gebruiken om API-aanvragen te verzenden. Prijscategorie De prijscategorie voor uw taalresource. U kunt de gratis F0-laag gebruiken om de service uit te proberen en later een upgrade uit te voeren naar een betaalde laag voor productie. Zorg ervoor dat het selectievakje Verantwoordelijke AI-kennisgeving is ingeschakeld.
Selecteer Controleren en maken onderaan de pagina.
Controleer in het scherm dat wordt weergegeven of de validatie is geslaagd en of u de gegevens correct hebt ingevoerd. Selecteer vervolgens Maken.
Uw sleutel en eindpunt ophalen
Vervolgens hebt u de sleutel en het eindpunt van de resource nodig om uw toepassing te verbinden met de API. Verderop in de quickstart plakt u uw sleutel en eindpunt in de code.
Nadat de taalresource is geïmplementeerd, klikt u onder Volgende stappen op de knop Naar de resource gaan.
Selecteer sleutels en eindpunt in het linkernavigatiemenu op het scherm voor uw resource. U gebruikt een van uw sleutels en uw eindpunt in de onderstaande stappen.
Omgevingsvariabelen maken
Uw toepassing moet worden geverifieerd om API-aanvragen te verzenden. Gebruik voor productie een veilige manier om uw referenties op te slaan en te openen. In dit voorbeeld schrijft u uw referenties naar omgevingsvariabelen op de lokale computer waarop de toepassing wordt uitgevoerd.
Als u de omgevingsvariabele voor uw taalresourcesleutel wilt instellen, opent u een consolevenster en volgt u de instructies voor uw besturingssysteem en ontwikkelomgeving.
- Als u de
LANGUAGE_KEY
omgevingsvariabele wilt instellen, vervangt u deze dooryour-key
een van de sleutels voor uw resource. - Als u de
LANGUAGE_ENDPOINT
omgevingsvariabele wilt instellen, vervangtyour-endpoint
u het eindpunt voor uw resource.
Belangrijk
Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.
Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Notitie
Als u alleen toegang nodig hebt tot de omgevingsvariabelen in de huidige actieve console, kunt u de omgevingsvariabele instellen in set
plaats van setx
.
Nadat u de omgevingsvariabelen hebt toegevoegd, moet u mogelijk alle actieve programma's opnieuw opstarten die de omgevingsvariabelen moeten lezen, inclusief het consolevenster. Als u bijvoorbeeld Visual Studio als editor gebruikt, start u Visual Studio opnieuw voordat u het voorbeeld uitvoert.
De clientbibliotheek installeren
Na de installatie van Python kunt u de clientbibliotheek installeren met:
pip install azure-ai-textanalytics==5.2.0
Voorbeeld van code
Maak een nieuw Python-bestand en kopieer de onderstaande code. Voer vervolgens de code uit
# 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 method for detecting sentiment and opinions in text
def sentiment_analysis_with_opinion_mining_example(client):
documents = [
"The food and service were unacceptable. The concierge was nice, however."
]
result = client.analyze_sentiment(documents, show_opinion_mining=True)
doc_result = [doc for doc in result if not doc.is_error]
positive_reviews = [doc for doc in doc_result if doc.sentiment == "positive"]
negative_reviews = [doc for doc in doc_result if doc.sentiment == "negative"]
positive_mined_opinions = []
mixed_mined_opinions = []
negative_mined_opinions = []
for document in doc_result:
print("Document Sentiment: {}".format(document.sentiment))
print("Overall scores: positive={0:.2f}; neutral={1:.2f}; negative={2:.2f} \n".format(
document.confidence_scores.positive,
document.confidence_scores.neutral,
document.confidence_scores.negative,
))
for sentence in document.sentences:
print("Sentence: {}".format(sentence.text))
print("Sentence sentiment: {}".format(sentence.sentiment))
print("Sentence score:\nPositive={0:.2f}\nNeutral={1:.2f}\nNegative={2:.2f}\n".format(
sentence.confidence_scores.positive,
sentence.confidence_scores.neutral,
sentence.confidence_scores.negative,
))
for mined_opinion in sentence.mined_opinions:
target = mined_opinion.target
print("......'{}' target '{}'".format(target.sentiment, target.text))
print("......Target score:\n......Positive={0:.2f}\n......Negative={1:.2f}\n".format(
target.confidence_scores.positive,
target.confidence_scores.negative,
))
for assessment in mined_opinion.assessments:
print("......'{}' assessment '{}'".format(assessment.sentiment, assessment.text))
print("......Assessment score:\n......Positive={0:.2f}\n......Negative={1:.2f}\n".format(
assessment.confidence_scores.positive,
assessment.confidence_scores.negative,
))
print("\n")
print("\n")
sentiment_analysis_with_opinion_mining_example(client)
Uitvoer
Document Sentiment: mixed
Overall scores: positive=0.47; neutral=0.00; negative=0.52
Sentence: The food and service were unacceptable.
Sentence sentiment: negative
Sentence score:
Positive=0.00
Neutral=0.00
Negative=0.99
......'negative' target 'food'
......Target score:
......Positive=0.00
......Negative=1.00
......'negative' assessment 'unacceptable'
......Assessment score:
......Positive=0.00
......Negative=1.00
......'negative' target 'service'
......Target score:
......Positive=0.00
......Negative=1.00
......'negative' assessment 'unacceptable'
......Assessment score:
......Positive=0.00
......Negative=1.00
Sentence: The concierge was nice, however.
Sentence sentiment: positive
Sentence score:
Positive=0.94
Neutral=0.01
Negative=0.05
......'positive' target 'concierge'
......Target score:
......Positive=1.00
......Negative=0.00
......'positive' assessment 'nice'
......Assessment score:
......Positive=1.00
......Negative=0.00
Resources opschonen
Als u een Azure AI-servicesabonnement wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.
Gebruik de volgende opdrachten om de omgevingsvariabelen te verwijderen die u voor deze quickstart hebt gemaakt.
reg delete "HKCU\Environment" /v LANGUAGE_KEY /f
reg delete "HKCU\Environment" /v LANGUAGE_ENDPOINT /f
Volgende stappen
Gebruik deze quickstart om sentimentanalyseaanvragen te verzenden met behulp van de REST API. In het volgende voorbeeld gebruikt u cURL om de sentimenten te identificeren die zijn uitgedrukt in een tekstvoorbeeld en om sentimentanalyse op basis van een aspect uit te voeren.
Vereisten
- Azure-abonnement: Krijg een gratis abonnement
Instellen
Een Azure-resource maken
Als u het onderstaande codevoorbeeld wilt gebruiken, moet u een Azure-resource implementeren. Deze resource bevat een sleutel en eindpunt dat u gebruikt voor het verifiëren van de API-aanroepen die u naar de Taalservice verzendt.
Gebruik de volgende koppeling om een taalresource te maken met behulp van Azure Portal. U moet zich aanmelden met uw Azure-abonnement.
Selecteer doorgaan om uw resource te maken in het scherm Aanvullende functies selecteren dat wordt weergegeven.
Geef in het scherm Taal maken de volgende informatie op:
Details Beschrijving Abonnement Het abonnementsaccount waaraan uw resource wordt gekoppeld. Selecteer uw Azure-abonnement in de vervolgkeuzelijst. Resourcegroep Een resourcegroep is een container waarin de resources die u maakt, worden opgeslagen. Selecteer Nieuwe maken om een nieuwe resourcegroep te maken. Regio De locatie van uw taalresource. Verschillende regio's kunnen latentie veroorzaken, afhankelijk van uw fysieke locatie, maar hebben geen invloed op de runtime-beschikbaarheid van uw resource. Voor deze quickstart selecteert u een beschikbare regio bij u in de buurt of kiest u VS - oost. Naam De naam voor uw taalresource. Deze naam wordt ook gebruikt om een eindpunt-URL te maken die uw toepassingen gebruiken om API-aanvragen te verzenden. Prijscategorie De prijscategorie voor uw taalresource. U kunt de gratis F0-laag gebruiken om de service uit te proberen en later een upgrade uit te voeren naar een betaalde laag voor productie. Zorg ervoor dat het selectievakje Verantwoordelijke AI-kennisgeving is ingeschakeld.
Selecteer Controleren en maken onderaan de pagina.
Controleer in het scherm dat wordt weergegeven of de validatie is geslaagd en of u de gegevens correct hebt ingevoerd. Selecteer vervolgens Maken.
Uw sleutel en eindpunt ophalen
Vervolgens hebt u de sleutel en het eindpunt van de resource nodig om uw toepassing te verbinden met de API. Verderop in de quickstart plakt u uw sleutel en eindpunt in de code.
Nadat de taalresource is geïmplementeerd, klikt u onder Volgende stappen op de knop Naar de resource gaan.
Selecteer sleutels en eindpunt in het linkernavigatiemenu op het scherm voor uw resource. U gebruikt een van uw sleutels en uw eindpunt in de onderstaande stappen.
Omgevingsvariabelen maken
Uw toepassing moet worden geverifieerd om API-aanvragen te verzenden. Gebruik voor productie een veilige manier om uw referenties op te slaan en te openen. In dit voorbeeld schrijft u uw referenties naar omgevingsvariabelen op de lokale computer waarop de toepassing wordt uitgevoerd.
Als u de omgevingsvariabele voor uw taalresourcesleutel wilt instellen, opent u een consolevenster en volgt u de instructies voor uw besturingssysteem en ontwikkelomgeving.
- Als u de
LANGUAGE_KEY
omgevingsvariabele wilt instellen, vervangt u deze dooryour-key
een van de sleutels voor uw resource. - Als u de
LANGUAGE_ENDPOINT
omgevingsvariabele wilt instellen, vervangtyour-endpoint
u het eindpunt voor uw resource.
Belangrijk
Als u een API-sleutel gebruikt, slaat u deze veilig op ergens anders op, zoals in Azure Key Vault. Neem de API-sleutel niet rechtstreeks in uw code op en plaats deze nooit openbaar.
Zie Aanvragen verifiëren bij Azure AI-services voor meer informatie over beveiliging van AI-services.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Notitie
Als u alleen toegang nodig hebt tot de omgevingsvariabelen in de huidige actieve console, kunt u de omgevingsvariabele instellen in set
plaats van setx
.
Nadat u de omgevingsvariabelen hebt toegevoegd, moet u mogelijk alle actieve programma's opnieuw opstarten die de omgevingsvariabelen moeten lezen, inclusief het consolevenster. Als u bijvoorbeeld Visual Studio als editor gebruikt, start u Visual Studio opnieuw voordat u het voorbeeld uitvoert.
Een JSON-bestand maken met de voorbeeldtekst van de aanvraag
Maak in een code-editor een nieuw bestand met de naam test_sentiment_payload.json
en kopieer het volgende JSON-voorbeeld. Deze voorbeeldaanvraag wordt in de volgende stap naar de API verzonden.
{
"kind": "SentimentAnalysis",
"parameters": {
"modelVersion": "latest",
"opinionMining": "True"
},
"analysisInput":{
"documents":[
{
"id":"1",
"language":"en",
"text": "The food and service were unacceptable. The concierge was nice, however."
}
]
}
}
Sla test_sentiment_payload.json
ergens op uw computer op. Bijvoorbeeld uw bureaublad.
Een api-aanvraag voor sentimentanalyse en meninganalyse verzenden
Notitie
De onderstaande voorbeelden bevatten een aanvraag voor de meninganalysefunctie van sentimentanalyse, die gedetailleerde informatie biedt over evaluaties (bijvoeglijke naamwoorden) met betrekking tot doelen (zelfstandige naamwoorden) in de tekst.
Gebruik de volgende opdrachten om de API-aanvraag te verzenden met behulp van het programma dat u gebruikt. Kopieer de opdracht naar uw terminal en voer deze uit.
parameter | Description |
---|---|
-X POST <endpoint> |
Hiermee geeft u het eindpunt voor toegang tot de API op. |
-H Content-Type: application/json |
Het inhoudstype voor het verzenden van JSON-gegevens. |
-H "Ocp-Apim-Subscription-Key:<key> |
Hiermee geeft u de sleutel voor toegang tot de API op. |
-d <documents> |
Het JSON-bestand met de documenten die u wilt verzenden. |
Vervang C:\Users\<myaccount>\Desktop\test_sentiment_payload.json
door de locatie van het voorbeeld-JSON-aanvraagbestand dat u in de vorige stap hebt gemaakt.
Opdrachtprompt
curl -X POST "%LANGUAGE_ENDPOINT%/language/:analyze-text?api-version=2023-04-15-preview" ^
-H "Content-Type: application/json" ^
-H "Ocp-Apim-Subscription-Key: %LANGUAGE_KEY%" ^
-d "@C:\Users\<myaccount>\Desktop\test_sentiment_payload.json"
Powershell
curl.exe -X POST $env:LANGUAGE_ENDPOINT/language/:analyze-text?api-version=2023-04-15-preview `
-H "Content-Type: application/json" `
-H "Ocp-Apim-Subscription-Key: $env:LANGUAGE_KEY" `
-d "@C:\Users\<myaccount>\Desktop\test_sentiment_payload.json"
JSON-antwoord
{
"kind": "SentimentAnalysisResults",
"results": {
"documents": [{
"id": "1",
"sentiment": "mixed",
"confidenceScores": {
"positive": 0.47,
"neutral": 0.0,
"negative": 0.52
},
"sentences": [{
"sentiment": "negative",
"confidenceScores": {
"positive": 0.0,
"neutral": 0.0,
"negative": 0.99
},
"offset": 0,
"length": 40,
"text": "The food and service were unacceptable. ",
"targets": [{
"sentiment": "negative",
"confidenceScores": {
"positive": 0.0,
"negative": 1.0
},
"offset": 4,
"length": 4,
"text": "food",
"relations": [{
"relationType": "assessment",
"ref": "#/documents/0/sentences/0/assessments/0"
}]
}, {
"sentiment": "negative",
"confidenceScores": {
"positive": 0.0,
"negative": 1.0
},
"offset": 13,
"length": 7,
"text": "service",
"relations": [{
"relationType": "assessment",
"ref": "#/documents/0/sentences/0/assessments/0"
}]
}],
"assessments": [{
"sentiment": "negative",
"confidenceScores": {
"positive": 0.0,
"negative": 1.0
},
"offset": 26,
"length": 12,
"text": "unacceptable",
"isNegated": false
}]
}, {
"sentiment": "positive",
"confidenceScores": {
"positive": 0.94,
"neutral": 0.01,
"negative": 0.05
},
"offset": 40,
"length": 32,
"text": "The concierge was nice, however.",
"targets": [{
"sentiment": "positive",
"confidenceScores": {
"positive": 1.0,
"negative": 0.0
},
"offset": 44,
"length": 9,
"text": "concierge",
"relations": [{
"relationType": "assessment",
"ref": "#/documents/0/sentences/1/assessments/0"
}]
}],
"assessments": [{
"sentiment": "positive",
"confidenceScores": {
"positive": 1.0,
"negative": 0.0
},
"offset": 58,
"length": 4,
"text": "nice",
"isNegated": false
}]
}],
"warnings": []
}],
"errors": [],
"modelVersion": "2022-06-01"
}
}
Resources opschonen
Als u een Azure AI-servicesabonnement wilt opschonen en verwijderen, kunt u de resource of resourcegroep verwijderen. Als u de resourcegroep verwijdert, worden ook alle bijbehorende resources verwijderd.
Gebruik de volgende opdrachten om de omgevingsvariabelen te verwijderen die u voor deze quickstart hebt gemaakt.
reg delete "HKCU\Environment" /v LANGUAGE_KEY /f
reg delete "HKCU\Environment" /v LANGUAGE_ENDPOINT /f