Mulai Cepat: Analisis sentimen dan Penambangan Pendapat
Dokumentasi | referensi Paket sampel | lainnya (NuGet) | Kode sumber pustaka
Gunakan mulai cepat ini untuk membuat aplikasi analisis sentimen dengan pustaka klien untuk .NET. Dalam contoh berikut, Anda membuat aplikasi C# yang dapat mengidentifikasi sentimen yang dinyatakan dalam sampel teks, dan melakukan analisis sentimen berbasis aspek.
Prasyarat
- Langganan Azure - Buat langganan secara gratis
- IDE Visual Studio
Menyiapkan
Membuat grup sumber daya Azure
Untuk menggunakan sampel kode di bawah ini, Anda harus menyebarkan sumber daya Azure. Sumber daya ini akan berisi kunci dan titik akhir yang akan Anda gunakan untuk mengautentikasi panggilan API yang Anda kirim ke layanan Bahasa.
Gunakan tautan berikut untuk membuat sumber daya bahasa menggunakan portal Azure. Anda harus masuk menggunakan langganan Azure Anda.
Pada layar Pilih fitur tambahan yang muncul, pilih Lanjutkan untuk membuat sumber daya Anda.
Di layar Buat bahasa, berikan informasi berikut ini:
Detail Deskripsi Langganan Akun langganan yang akan dikaitkan dengan sumber daya Anda. Pilih langganan Azure Anda dari menu drop-down. Grup sumber daya Grup sumber daya adalah kontainer yang menyimpan sumber daya yang Anda buat. Pilih Buat baru untuk membuat grup sumber daya baru. Wilayah Lokasi sumber daya Bahasa Anda. Wilayah yang berbeda dapat memperkenalkan latensi tergantung pada lokasi fisik Anda, tetapi tidak berdampak pada ketersediaan runtime sumber daya Anda. Untuk mulai cepat ini, pilih wilayah yang tersedia di dekat Anda, atau pilih US Timur. Nama Nama untuk sumber daya Bahasa Anda. Nama ini juga akan digunakan untuk membuat URL titik akhir yang akan digunakan aplikasi Anda untuk mengirim permintaan API. Tingkatan harga Tingkat harga untuk sumber daya Bahasa Anda. Anda dapat menggunakan tingkat F0 Gratis untuk mencoba layanan dan meningkatkannya nanti ke tingkat berbayar untuk produksi. Pastikan kotak centang Pemberitahuan AI Bertanggung Jawab dicentang.
Pilih Tinjau + Buat di bagian bawah halaman.
Di layar yang muncul, pastikan validasi telah berlalu, dan Anda memasukkan informasi dengan benar. Lalu pilih Buat.
Dapatkan kunci dan titik akhir Anda
Selanjutnya Anda akan memerlukan kunci dan titik akhir dari sumber daya untuk menghubungkan aplikasi Anda ke API. Anda akan menempelkan kunci dan titik akhir Anda ke dalam kode di mulai cepat nanti.
Setelah sumber daya Bahasa berhasil disebarkan, klik tombol Buka Sumber Daya di bawah Langkah Berikutnya.
Pada layar untuk sumber daya Anda, pilih Kunci dan titik akhir di menu navigasi kiri. Anda akan menggunakan salah satu kunci dan titik akhir Anda dalam langkah-langkah di bawah ini.
Membuat variabel lingkungan
Aplikasi Anda harus diautentikasi untuk mengirim permintaan API. Untuk produksi, gunakan cara yang aman dalam menyimpan dan mengakses info masuk Anda. Dalam contoh ini, Anda akan menulis kredensial Anda ke variabel lingkungan pada komputer lokal yang menjalankan aplikasi.
Tip
Jangan sertakan kunci langsung dalam kode Anda, dan jangan pernah mempostingnya secara publik. Lihat artikel keamanan layanan Azure AI untuk opsi autentikasi lainnya seperti Azure Key Vault.
Untuk mengatur variabel lingkungan untuk kunci sumber daya Bahasa Anda, buka jendela konsol, dan ikuti instruksi untuk sistem operasi dan lingkungan pengembangan Anda.
- Untuk mengatur
LANGUAGE_KEY
variabel lingkungan, gantiyour-key
dengan salah satu kunci untuk sumber daya Anda. - Untuk mengatur
LANGUAGE_ENDPOINT
variabel lingkungan, gantiyour-endpoint
dengan titik akhir untuk sumber daya Anda.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Catatan
Jika Anda hanya perlu mengakses variabel lingkungan di konsol yang sedang berjalan saat ini, Anda dapat mengatur variabel lingkungan dengan set
alih-alih setx
.
Setelah menambahkan variabel lingkungan, Anda mungkin perlu memulai ulang program yang sedang berjalan yang perlu membaca variabel lingkungan, termasuk jendela konsol. Misalnya, jika Anda menggunakan Visual Studio sebagai editor, hidupkan ulang Visual Studio sebelum menjalankan contoh.
Buat aplikasi .NET Core baru
Menggunakan Ide Visual Studio, buat aplikasi konsol .NET Core baru. Ini membuat proyek "Halo Dunia" dengan satu file sumber C#: program.cs.
Pasang pustaka klien dengan mengeklik kanan solusi proyek di Penjelajah Solusi, lalu pilih Kelola Paket NuGet. Di manajer paket yang terbuka pilih Telusuri dan cari Azure.AI.TextAnalytics
. Pilih versi 5.2.0
, lalu Pasang. Anda juga dapat menggunakan Package Manager Console.
Contoh kode
Salin kode berikut ke file program.cs Anda dan jalankan kode.
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();
}
}
}
Output
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
Membersihkan sumber daya
Jika Anda ingin membersihkan dan menghapus langganan layanan Azure AI, Anda dapat menghapus sumber daya atau grup sumber daya. Menghapus grup sumber daya juga menghapus sumber daya apa pun yang terkait dengannya.
Gunakan perintah berikut untuk menghapus variabel lingkungan yang Anda buat untuk mulai cepat ini.
reg delete "HKCU\Environment" /v LANGUAGE_KEY /f
reg delete "HKCU\Environment" /v LANGUAGE_ENDPOINT /f
Langkah berikutnya
Dokumentasi referensi | Sampel tambahan | Paket (Maven) | Kode sumber pustaka
Gunakan mulai cepat ini untuk membuat aplikasi analisis sentimen dengan pustaka klien untuk Java. Dalam contoh berikut, Anda akan membuat aplikasi Java yang dapat mengidentifikasi sentimen yang dinyatakan dalam sampel teks, serta melakukan analisis sentimen berbasis aspek.
Prasyarat
- Langganan Azure - Buat langganan secara gratis
- Java Development Kit (JDK) versi 8 atau lebih tinggi
Menyiapkan
Membuat grup sumber daya Azure
Untuk menggunakan sampel kode di bawah ini, Anda harus menyebarkan sumber daya Azure. Sumber daya ini akan berisi kunci dan titik akhir yang akan Anda gunakan untuk mengautentikasi panggilan API yang Anda kirim ke layanan Bahasa.
Gunakan tautan berikut untuk membuat sumber daya bahasa menggunakan portal Azure. Anda harus masuk menggunakan langganan Azure Anda.
Pada layar Pilih fitur tambahan yang muncul, pilih Lanjutkan untuk membuat sumber daya Anda.
Di layar Buat bahasa, berikan informasi berikut ini:
Detail Deskripsi Langganan Akun langganan yang akan dikaitkan dengan sumber daya Anda. Pilih langganan Azure Anda dari menu drop-down. Grup sumber daya Grup sumber daya adalah kontainer yang menyimpan sumber daya yang Anda buat. Pilih Buat baru untuk membuat grup sumber daya baru. Wilayah Lokasi sumber daya Bahasa Anda. Wilayah yang berbeda dapat memperkenalkan latensi tergantung pada lokasi fisik Anda, tetapi tidak berdampak pada ketersediaan runtime sumber daya Anda. Untuk mulai cepat ini, pilih wilayah yang tersedia di dekat Anda, atau pilih US Timur. Nama Nama untuk sumber daya Bahasa Anda. Nama ini juga akan digunakan untuk membuat URL titik akhir yang akan digunakan aplikasi Anda untuk mengirim permintaan API. Tingkatan harga Tingkat harga untuk sumber daya Bahasa Anda. Anda dapat menggunakan tingkat F0 Gratis untuk mencoba layanan dan meningkatkannya nanti ke tingkat berbayar untuk produksi. Pastikan kotak centang Pemberitahuan AI Bertanggung Jawab dicentang.
Pilih Tinjau + Buat di bagian bawah halaman.
Di layar yang muncul, pastikan validasi telah berlalu, dan Anda memasukkan informasi dengan benar. Lalu pilih Buat.
Dapatkan kunci dan titik akhir Anda
Selanjutnya Anda akan memerlukan kunci dan titik akhir dari sumber daya untuk menghubungkan aplikasi Anda ke API. Anda akan menempelkan kunci dan titik akhir Anda ke dalam kode di mulai cepat nanti.
Setelah sumber daya Bahasa berhasil disebarkan, klik tombol Buka Sumber Daya di bawah Langkah Berikutnya.
Pada layar untuk sumber daya Anda, pilih Kunci dan titik akhir di menu navigasi kiri. Anda akan menggunakan salah satu kunci dan titik akhir Anda dalam langkah-langkah di bawah ini.
Membuat variabel lingkungan
Aplikasi Anda harus diautentikasi untuk mengirim permintaan API. Untuk produksi, gunakan cara yang aman dalam menyimpan dan mengakses info masuk Anda. Dalam contoh ini, Anda akan menulis kredensial Anda ke variabel lingkungan pada komputer lokal yang menjalankan aplikasi.
Tip
Jangan sertakan kunci langsung dalam kode Anda, dan jangan pernah mempostingnya secara publik. Lihat artikel keamanan layanan Azure AI untuk opsi autentikasi lainnya seperti Azure Key Vault.
Untuk mengatur variabel lingkungan untuk kunci sumber daya Bahasa Anda, buka jendela konsol, dan ikuti instruksi untuk sistem operasi dan lingkungan pengembangan Anda.
- Untuk mengatur
LANGUAGE_KEY
variabel lingkungan, gantiyour-key
dengan salah satu kunci untuk sumber daya Anda. - Untuk mengatur
LANGUAGE_ENDPOINT
variabel lingkungan, gantiyour-endpoint
dengan titik akhir untuk sumber daya Anda.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Catatan
Jika Anda hanya perlu mengakses variabel lingkungan di konsol yang sedang berjalan saat ini, Anda dapat mengatur variabel lingkungan dengan set
alih-alih setx
.
Setelah menambahkan variabel lingkungan, Anda mungkin perlu memulai ulang program yang sedang berjalan yang perlu membaca variabel lingkungan, termasuk jendela konsol. Misalnya, jika Anda menggunakan Visual Studio sebagai editor, hidupkan ulang Visual Studio sebelum menjalankan contoh.
Tambahkan pustaka klien
Buat proyek Maven di IDE atau lingkungan pengembangan pilihan Anda. Kemudian, tambahkan dependensi berikut ke file pom.xml proyek Anda. Anda dapat menemukan sintaks implementasi untuk alat build online lainnya.
<dependencies>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-ai-textanalytics</artifactId>
<version>5.2.0</version>
</dependency>
</dependencies>
Contoh kode
Buat file Java bernama Example.java
. Buka file dan salin kode di bawah ini. Kemudian jalankan kode.
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());
}
});
});
}
}
Output
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.
Membersihkan sumber daya
Jika Anda ingin membersihkan dan menghapus langganan layanan Azure AI, Anda dapat menghapus sumber daya atau grup sumber daya. Menghapus grup sumber daya juga menghapus sumber daya apa pun yang terkait dengannya.
Gunakan perintah berikut untuk menghapus variabel lingkungan yang Anda buat untuk mulai cepat ini.
reg delete "HKCU\Environment" /v LANGUAGE_KEY /f
reg delete "HKCU\Environment" /v LANGUAGE_ENDPOINT /f
Langkah berikutnya
Dokumentasi referensi | Sampel tambahan | Paket (npm) | Kode sumber pustaka
Gunakan mulai cepat ini untuk membuat aplikasi analisis sentimen dengan pustaka klien untuk Node.js. Dalam contoh berikut, Anda akan membuat aplikasi JavaScript yang dapat mengidentifikasi sentimen yang dinyatakan dalam sampel teks, serta melakukan analisis sentimen berbasis aspek.
Prasyarat
- Langganan Azure - Buat langganan secara gratis
- Node.js v14 LTS atau yang lebih baru
Menyiapkan
Membuat grup sumber daya Azure
Untuk menggunakan sampel kode di bawah ini, Anda harus menyebarkan sumber daya Azure. Sumber daya ini akan berisi kunci dan titik akhir yang akan Anda gunakan untuk mengautentikasi panggilan API yang Anda kirim ke layanan Bahasa.
Gunakan tautan berikut untuk membuat sumber daya bahasa menggunakan portal Azure. Anda harus masuk menggunakan langganan Azure Anda.
Pada layar Pilih fitur tambahan yang muncul, pilih Lanjutkan untuk membuat sumber daya Anda.
Di layar Buat bahasa, berikan informasi berikut ini:
Detail Deskripsi Langganan Akun langganan yang akan dikaitkan dengan sumber daya Anda. Pilih langganan Azure Anda dari menu drop-down. Grup sumber daya Grup sumber daya adalah kontainer yang menyimpan sumber daya yang Anda buat. Pilih Buat baru untuk membuat grup sumber daya baru. Wilayah Lokasi sumber daya Bahasa Anda. Wilayah yang berbeda dapat memperkenalkan latensi tergantung pada lokasi fisik Anda, tetapi tidak berdampak pada ketersediaan runtime sumber daya Anda. Untuk mulai cepat ini, pilih wilayah yang tersedia di dekat Anda, atau pilih US Timur. Nama Nama untuk sumber daya Bahasa Anda. Nama ini juga akan digunakan untuk membuat URL titik akhir yang akan digunakan aplikasi Anda untuk mengirim permintaan API. Tingkatan harga Tingkat harga untuk sumber daya Bahasa Anda. Anda dapat menggunakan tingkat F0 Gratis untuk mencoba layanan dan meningkatkannya nanti ke tingkat berbayar untuk produksi. Pastikan kotak centang Pemberitahuan AI Bertanggung Jawab dicentang.
Pilih Tinjau + Buat di bagian bawah halaman.
Di layar yang muncul, pastikan validasi telah berlalu, dan Anda memasukkan informasi dengan benar. Lalu pilih Buat.
Dapatkan kunci dan titik akhir Anda
Selanjutnya Anda akan memerlukan kunci dan titik akhir dari sumber daya untuk menghubungkan aplikasi Anda ke API. Anda akan menempelkan kunci dan titik akhir Anda ke dalam kode di mulai cepat nanti.
Setelah sumber daya Bahasa berhasil disebarkan, klik tombol Buka Sumber Daya di bawah Langkah Berikutnya.
Pada layar untuk sumber daya Anda, pilih Kunci dan titik akhir di menu navigasi kiri. Anda akan menggunakan salah satu kunci dan titik akhir Anda dalam langkah-langkah di bawah ini.
Membuat variabel lingkungan
Aplikasi Anda harus diautentikasi untuk mengirim permintaan API. Untuk produksi, gunakan cara yang aman dalam menyimpan dan mengakses info masuk Anda. Dalam contoh ini, Anda akan menulis kredensial Anda ke variabel lingkungan pada komputer lokal yang menjalankan aplikasi.
Tip
Jangan sertakan kunci langsung dalam kode Anda, dan jangan pernah mempostingnya secara publik. Lihat artikel keamanan layanan Azure AI untuk opsi autentikasi lainnya seperti Azure Key Vault.
Untuk mengatur variabel lingkungan untuk kunci sumber daya Bahasa Anda, buka jendela konsol, dan ikuti instruksi untuk sistem operasi dan lingkungan pengembangan Anda.
- Untuk mengatur
LANGUAGE_KEY
variabel lingkungan, gantiyour-key
dengan salah satu kunci untuk sumber daya Anda. - Untuk mengatur
LANGUAGE_ENDPOINT
variabel lingkungan, gantiyour-endpoint
dengan titik akhir untuk sumber daya Anda.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Catatan
Jika Anda hanya perlu mengakses variabel lingkungan di konsol yang sedang berjalan saat ini, Anda dapat mengatur variabel lingkungan dengan set
alih-alih setx
.
Setelah menambahkan variabel lingkungan, Anda mungkin perlu memulai ulang program yang sedang berjalan yang perlu membaca variabel lingkungan, termasuk jendela konsol. Misalnya, jika Anda menggunakan Visual Studio sebagai editor, hidupkan ulang Visual Studio sebelum menjalankan contoh.
Membuat aplikasi Node.js baru
Di jendela konsol (seperti cmd, PowerShell, atau Bash), buat direktori baru untuk aplikasi Anda, dan buka direktori tersebut.
mkdir myapp
cd myapp
Jalankan perintah npm init
untuk membuat aplikasi node dengan file package.json
.
npm init
Memasang pustaka klien
Instal paket npm:
npm install @azure/ai-language-text
Contoh kode
Buka file dan salin kode di bawah ini. Kemudian jalankan kode.
"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);
});
Output
=== 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
Membersihkan sumber daya
Jika Anda ingin membersihkan dan menghapus langganan layanan Azure AI, Anda dapat menghapus sumber daya atau grup sumber daya. Menghapus grup sumber daya juga menghapus sumber daya apa pun yang terkait dengannya.
Gunakan perintah berikut untuk menghapus variabel lingkungan yang Anda buat untuk mulai cepat ini.
reg delete "HKCU\Environment" /v LANGUAGE_KEY /f
reg delete "HKCU\Environment" /v LANGUAGE_ENDPOINT /f
Langkah berikutnya
Dokumentasi referensi | Sampel tambahan | Paket (PyPi) | Kode sumber pustaka
Gunakan mulai cepat ini untuk membuat aplikasi analisis sentimen dengan pustaka klien untuk Python. Dalam contoh berikut, Anda akan membuat aplikasi Python yang dapat mengidentifikasi sentimen yang dinyatakan dalam sampel teks, serta melakukan analisis sentimen berbasis aspek.
Prasyarat
- Langganan Azure - Buat langganan secara gratis
- Python 3.7 atau yang lebih baru
Menyiapkan
Membuat grup sumber daya Azure
Untuk menggunakan sampel kode di bawah ini, Anda harus menyebarkan sumber daya Azure. Sumber daya ini akan berisi kunci dan titik akhir yang akan Anda gunakan untuk mengautentikasi panggilan API yang Anda kirim ke layanan Bahasa.
Gunakan tautan berikut untuk membuat sumber daya bahasa menggunakan portal Azure. Anda harus masuk menggunakan langganan Azure Anda.
Pada layar Pilih fitur tambahan yang muncul, pilih Lanjutkan untuk membuat sumber daya Anda.
Di layar Buat bahasa, berikan informasi berikut ini:
Detail Deskripsi Langganan Akun langganan yang akan dikaitkan dengan sumber daya Anda. Pilih langganan Azure Anda dari menu drop-down. Grup sumber daya Grup sumber daya adalah kontainer yang menyimpan sumber daya yang Anda buat. Pilih Buat baru untuk membuat grup sumber daya baru. Wilayah Lokasi sumber daya Bahasa Anda. Wilayah yang berbeda dapat memperkenalkan latensi tergantung pada lokasi fisik Anda, tetapi tidak berdampak pada ketersediaan runtime sumber daya Anda. Untuk mulai cepat ini, pilih wilayah yang tersedia di dekat Anda, atau pilih US Timur. Nama Nama untuk sumber daya Bahasa Anda. Nama ini juga akan digunakan untuk membuat URL titik akhir yang akan digunakan aplikasi Anda untuk mengirim permintaan API. Tingkatan harga Tingkat harga untuk sumber daya Bahasa Anda. Anda dapat menggunakan tingkat F0 Gratis untuk mencoba layanan dan meningkatkannya nanti ke tingkat berbayar untuk produksi. Pastikan kotak centang Pemberitahuan AI Bertanggung Jawab dicentang.
Pilih Tinjau + Buat di bagian bawah halaman.
Di layar yang muncul, pastikan validasi telah berlalu, dan Anda memasukkan informasi dengan benar. Lalu pilih Buat.
Dapatkan kunci dan titik akhir Anda
Selanjutnya Anda akan memerlukan kunci dan titik akhir dari sumber daya untuk menghubungkan aplikasi Anda ke API. Anda akan menempelkan kunci dan titik akhir Anda ke dalam kode di mulai cepat nanti.
Setelah sumber daya Bahasa berhasil disebarkan, klik tombol Buka Sumber Daya di bawah Langkah Berikutnya.
Pada layar untuk sumber daya Anda, pilih Kunci dan titik akhir di menu navigasi kiri. Anda akan menggunakan salah satu kunci dan titik akhir Anda dalam langkah-langkah di bawah ini.
Membuat variabel lingkungan
Aplikasi Anda harus diautentikasi untuk mengirim permintaan API. Untuk produksi, gunakan cara yang aman dalam menyimpan dan mengakses info masuk Anda. Dalam contoh ini, Anda akan menulis kredensial Anda ke variabel lingkungan pada komputer lokal yang menjalankan aplikasi.
Tip
Jangan sertakan kunci langsung dalam kode Anda, dan jangan pernah mempostingnya secara publik. Lihat artikel keamanan layanan Azure AI untuk opsi autentikasi lainnya seperti Azure Key Vault.
Untuk mengatur variabel lingkungan untuk kunci sumber daya Bahasa Anda, buka jendela konsol, dan ikuti instruksi untuk sistem operasi dan lingkungan pengembangan Anda.
- Untuk mengatur
LANGUAGE_KEY
variabel lingkungan, gantiyour-key
dengan salah satu kunci untuk sumber daya Anda. - Untuk mengatur
LANGUAGE_ENDPOINT
variabel lingkungan, gantiyour-endpoint
dengan titik akhir untuk sumber daya Anda.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Catatan
Jika Anda hanya perlu mengakses variabel lingkungan di konsol yang sedang berjalan saat ini, Anda dapat mengatur variabel lingkungan dengan set
alih-alih setx
.
Setelah menambahkan variabel lingkungan, Anda mungkin perlu memulai ulang program yang sedang berjalan yang perlu membaca variabel lingkungan, termasuk jendela konsol. Misalnya, jika Anda menggunakan Visual Studio sebagai editor, hidupkan ulang Visual Studio sebelum menjalankan contoh.
Memasang pustaka klien
Setelah memasang Python, Anda dapat memasang pustaka klien dengan:
pip install azure-ai-textanalytics==5.2.0
Contoh kode
Buat file Python baru dan salin kode di bawah ini. Kemudian jalankan kode
# 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)
Output
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
Membersihkan sumber daya
Jika Anda ingin membersihkan dan menghapus langganan layanan Azure AI, Anda dapat menghapus sumber daya atau grup sumber daya. Menghapus grup sumber daya juga menghapus sumber daya apa pun yang terkait dengannya.
Gunakan perintah berikut untuk menghapus variabel lingkungan yang Anda buat untuk mulai cepat ini.
reg delete "HKCU\Environment" /v LANGUAGE_KEY /f
reg delete "HKCU\Environment" /v LANGUAGE_ENDPOINT /f
Langkah berikutnya
Gunakan mulai cepat ini untuk mengirim permintaan analisis sentimen menggunakan REST API. Dalam contoh berikut, Anda akan menggunakan cURL untuk mengidentifikasi sentimen yang dinyatakan dalam sampel teks, dan melakukan analisis sentimen berbasis aspek.
Prasyarat
- Langganan Azure - Buat langganan secara gratis
Menyiapkan
Membuat grup sumber daya Azure
Untuk menggunakan sampel kode di bawah ini, Anda harus menyebarkan sumber daya Azure. Sumber daya ini akan berisi kunci dan titik akhir yang akan Anda gunakan untuk mengautentikasi panggilan API yang Anda kirim ke layanan Bahasa.
Gunakan tautan berikut untuk membuat sumber daya bahasa menggunakan portal Azure. Anda harus masuk menggunakan langganan Azure Anda.
Pada layar Pilih fitur tambahan yang muncul, pilih Lanjutkan untuk membuat sumber daya Anda.
Di layar Buat bahasa, berikan informasi berikut ini:
Detail Deskripsi Langganan Akun langganan yang akan dikaitkan dengan sumber daya Anda. Pilih langganan Azure Anda dari menu drop-down. Grup sumber daya Grup sumber daya adalah kontainer yang menyimpan sumber daya yang Anda buat. Pilih Buat baru untuk membuat grup sumber daya baru. Wilayah Lokasi sumber daya Bahasa Anda. Wilayah yang berbeda dapat memperkenalkan latensi tergantung pada lokasi fisik Anda, tetapi tidak berdampak pada ketersediaan runtime sumber daya Anda. Untuk mulai cepat ini, pilih wilayah yang tersedia di dekat Anda, atau pilih US Timur. Nama Nama untuk sumber daya Bahasa Anda. Nama ini juga akan digunakan untuk membuat URL titik akhir yang akan digunakan aplikasi Anda untuk mengirim permintaan API. Tingkatan harga Tingkat harga untuk sumber daya Bahasa Anda. Anda dapat menggunakan tingkat F0 Gratis untuk mencoba layanan dan meningkatkannya nanti ke tingkat berbayar untuk produksi. Pastikan kotak centang Pemberitahuan AI Bertanggung Jawab dicentang.
Pilih Tinjau + Buat di bagian bawah halaman.
Di layar yang muncul, pastikan validasi telah berlalu, dan Anda memasukkan informasi dengan benar. Lalu pilih Buat.
Dapatkan kunci dan titik akhir Anda
Selanjutnya Anda akan memerlukan kunci dan titik akhir dari sumber daya untuk menghubungkan aplikasi Anda ke API. Anda akan menempelkan kunci dan titik akhir Anda ke dalam kode di mulai cepat nanti.
Setelah sumber daya Bahasa berhasil disebarkan, klik tombol Buka Sumber Daya di bawah Langkah Berikutnya.
Pada layar untuk sumber daya Anda, pilih Kunci dan titik akhir di menu navigasi kiri. Anda akan menggunakan salah satu kunci dan titik akhir Anda dalam langkah-langkah di bawah ini.
Membuat variabel lingkungan
Aplikasi Anda harus diautentikasi untuk mengirim permintaan API. Untuk produksi, gunakan cara yang aman dalam menyimpan dan mengakses info masuk Anda. Dalam contoh ini, Anda akan menulis kredensial Anda ke variabel lingkungan pada komputer lokal yang menjalankan aplikasi.
Tip
Jangan sertakan kunci langsung dalam kode Anda, dan jangan pernah mempostingnya secara publik. Lihat artikel keamanan layanan Azure AI untuk opsi autentikasi lainnya seperti Azure Key Vault.
Untuk mengatur variabel lingkungan untuk kunci sumber daya Bahasa Anda, buka jendela konsol, dan ikuti instruksi untuk sistem operasi dan lingkungan pengembangan Anda.
- Untuk mengatur
LANGUAGE_KEY
variabel lingkungan, gantiyour-key
dengan salah satu kunci untuk sumber daya Anda. - Untuk mengatur
LANGUAGE_ENDPOINT
variabel lingkungan, gantiyour-endpoint
dengan titik akhir untuk sumber daya Anda.
setx LANGUAGE_KEY your-key
setx LANGUAGE_ENDPOINT your-endpoint
Catatan
Jika Anda hanya perlu mengakses variabel lingkungan di konsol yang sedang berjalan saat ini, Anda dapat mengatur variabel lingkungan dengan set
alih-alih setx
.
Setelah menambahkan variabel lingkungan, Anda mungkin perlu memulai ulang program yang sedang berjalan yang perlu membaca variabel lingkungan, termasuk jendela konsol. Misalnya, jika Anda menggunakan Visual Studio sebagai editor, hidupkan ulang Visual Studio sebelum menjalankan contoh.
Membuat file JSON dengan contoh isi permintaan
Di editor kode, buat file baru bernama test_sentiment_payload.json
dan salin contoh JSON berikut. Contoh permintaan ini akan dikirim ke API pada langkah berikutnya.
{
"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."
}
]
}
}
Simpan test_sentiment_payload.json
di suatu tempat di komputer Anda. Misalnya, desktop Anda.
Mengirim analisis sentimen dan permintaan API penggalian opini
Catatan
Contoh di bawah ini mencakup permintaan untuk fitur penambangan opini analisis sentimen, yang menyediakan informasi terperinci tentang penilaian (kata sifat) yang terkait dengan target (kata benda) dalam teks.
Gunakan perintah berikut untuk mengirim permintaan API menggunakan program yang Anda gunakan. Salin perintah ke terminal Anda, dan jalankan.
parameter | Deskripsi |
---|---|
-X POST <endpoint> |
Menentukan titik akhir Anda untuk mengakses API. |
-H Content-Type: application/json |
Jenis konten untuk mengirim data JSON. |
-H "Ocp-Apim-Subscription-Key:<key> |
Menentukan kunci untuk mengakses API. |
-d <documents> |
File JSON yang berisi dokumen yang ingin Anda kirim. |
Ganti C:\Users\<myaccount>\Desktop\test_sentiment_payload.json
dengan lokasi contoh file permintaan JSON yang Anda buat di langkah sebelumnya.
Perintah
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"
Respons JSON
{
"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"
}
}
Membersihkan sumber daya
Jika Anda ingin membersihkan dan menghapus langganan layanan Azure AI, Anda dapat menghapus sumber daya atau grup sumber daya. Menghapus grup sumber daya juga menghapus sumber daya apa pun yang terkait dengannya.
Gunakan perintah berikut untuk menghapus variabel lingkungan yang Anda buat untuk mulai cepat ini.
reg delete "HKCU\Environment" /v LANGUAGE_KEY /f
reg delete "HKCU\Environment" /v LANGUAGE_ENDPOINT /f