Dengan Cloud Natural Language API, Anda dapat mengekstrak entity dari teks, melakukan analisis sentimen dan sintaksis, dan mengklasifikasikan teks ke dalam beberapa kategori.
Di lab ini, Anda akan mempelajari cara menggunakan Natural Language API untuk menganalisis entity, sentimen, dan sintaksis.
Tujuan
Di lab ini, Anda akan mempelajari cara:
Membuat permintaan Natural Language API dan memanggil API menggunakan curl
Mengekstrak entity dan menjalankan analisis sentimen pada teks menggunakan Natural Language API
Melakukan analisis linguistik pada teks menggunakan Natural Language API
Membuat permintaan Natural Language API dalam bahasa lain
Penyiapan dan persyaratan
Sebelum mengklik tombol Start Lab
Baca petunjuk ini. Lab memiliki timer dan Anda tidak dapat menjedanya. Timer yang dimulai saat Anda mengklik Start Lab akan menampilkan durasi ketersediaan resource Google Cloud untuk Anda.
Lab interaktif ini dapat Anda gunakan untuk melakukan aktivitas lab di lingkungan cloud sungguhan, bukan di lingkungan demo atau simulasi. Untuk mengakses lab ini, Anda akan diberi kredensial baru yang bersifat sementara dan dapat digunakan untuk login serta mengakses Google Cloud selama durasi lab.
Untuk menyelesaikan lab ini, Anda memerlukan:
Akses ke browser internet standar (disarankan browser Chrome).
Catatan: Gunakan jendela Samaran (direkomendasikan) atau browser pribadi untuk menjalankan lab ini. Hal ini akan mencegah konflik antara akun pribadi Anda dan akun siswa yang dapat menyebabkan tagihan ekstra pada akun pribadi Anda.
Waktu untuk menyelesaikan lab. Ingat, setelah dimulai, lab tidak dapat dijeda.
Catatan: Hanya gunakan akun siswa untuk lab ini. Jika Anda menggunakan akun Google Cloud yang berbeda, Anda mungkin akan dikenai tagihan ke akun tersebut.
Cara memulai lab dan login ke Google Cloud Console
Klik tombol Start Lab. Jika Anda perlu membayar lab, dialog akan terbuka untuk memilih metode pembayaran.
Di sebelah kiri ada panel Lab Details yang berisi hal-hal berikut:
Tombol Open Google Cloud console
Waktu tersisa
Kredensial sementara yang harus Anda gunakan untuk lab ini
Informasi lain, jika diperlukan, untuk menyelesaikan lab ini
Klik Open Google Cloud console (atau klik kanan dan pilih Open Link in Incognito Window jika Anda menjalankan browser Chrome).
Lab akan menjalankan resource, lalu membuka tab lain yang menampilkan halaman Sign in.
Tips: Atur tab di jendela terpisah secara berdampingan.
Catatan: Jika Anda melihat dialog Choose an account, klik Use Another Account.
Jika perlu, salin Username di bawah dan tempel ke dialog Sign in.
{{{user_0.username | "Username"}}}
Anda juga dapat menemukan Username di panel Lab Details.
Klik Next.
Salin Password di bawah dan tempel ke dialog Welcome.
{{{user_0.password | "Password"}}}
Anda juga dapat menemukan Password di panel Lab Details.
Klik Next.
Penting: Anda harus menggunakan kredensial yang diberikan lab. Jangan menggunakan kredensial akun Google Cloud Anda.
Catatan: Menggunakan akun Google Cloud sendiri untuk lab ini dapat dikenai biaya tambahan.
Klik halaman berikutnya:
Setujui persyaratan dan ketentuan.
Jangan tambahkan opsi pemulihan atau autentikasi 2 langkah (karena ini akun sementara).
Jangan mendaftar uji coba gratis.
Setelah beberapa saat, Konsol Google Cloud akan terbuka di tab ini.
Catatan: Untuk mengakses produk dan layanan Google Cloud, klik Navigation menu atau ketik nama layanan atau produk di kolom Search.
Tugas 1. Membuat kunci API
Karena Anda menggunakan curl untuk mengirim permintaan ke Natural Language API, Anda harus membuat Kunci API untuk meneruskan URL permintaan.
Untuk membuat Kunci API, di Konsol Cloud, pilih Navigation menu > APIs & Services > Credentials.
Klik Create credentials lalu pilih API key.
Salin kunci API yang dibuat, lalu klik Close.
Klik Periksa progres saya untuk memverifikasi tujuan.
Membuat Kunci API
Agar dapat melakukan langkah-langkah selanjutnya, harap hubungkan ke instance yang disediakan untuk Anda melalui SSH.
Klik Navigation menu > Compute Engine. Anda akan melihat instance linux yang disediakan, linux-instance, dalam daftar instance VM
Klik tombol SSH. Anda akan diarahkan ke shell interaktif.
Pada command line, masukkan baris berikut ini, dengan mengganti <YOUR_API_KEY> dengan kunci yang baru saja Anda salin:
export API_KEY=<YOUR_API_KEY>
Tugas 2. Membuat permintaan analisis entity
Metode Natural Language API pertama yang akan digunakan adalah analyzeEntities. Dengan metode ini, API dapat mengekstrak entity (seperti orang, tempat, dan peristiwa) dari teks. Untuk mencoba analisis entity API, gunakanlah kalimat ini:
Joanne Rowling, yang berkarya menggunakan nama pena J. K. Rowling dan Robert Galbraith, adalah seorang novelis dan penulis skenario asal Inggris yang menulis seri fantasi Harry Potter.
Anda akan membuat permintaan Natural Language API dalam file request.json.
Gunakan nano (editor kode) untuk membuat file request.json:
nano request.json
Ketik atau tempel kode berikut ini ke request.json:
{
"document":{
"type":"PLAIN_TEXT",
"content":"Joanne Rowling, yang berkarya menggunakan nama pena J. K. Rowling and Robert Galbraith, adalah seorang novelis dan penulis skenario asal Inggris yang menulis seri fantasi Harry Potter."
},
"encodingType":"UTF8"
}
Tekan CTRL+X untuk keluar dari nano, lalu Y untuk menyimpan file, kemudian ENTER untuk mengonfirmasi.
Dalam permintaan tersebut, Anda memberi tahu Natural Language API tentang teks yang dikirim. Nilai jenis yang didukung yaitu PLAIN_TEXT atau HTML. Dalam konten, Anda meneruskan teks untuk dikirim ke Natural Language API agar dapat dianalisis.
Natural Language API juga mendukung pengiriman file yang disimpan di Cloud Storage untuk pemrosesan teks. Jika Anda ingin mengirim file dari Cloud Storage, Anda perlu mengganti content dengan gcsContentUri dan memberinya nilai uri file teks di Cloud Storage.
encodingType akan memberi tahu API jenis encoding teks mana yang akan digunakan saat pemrosesan teks dilakukan. API akan menggunakannya untuk memperhitungkan letak munculnya entity tertentu di teks kita.
Klik Periksa progres saya untuk memverifikasi tujuan.
Membuat Permintaan Analisis Entity
Tugas 3. Memanggil Natural Language API
Kini, Anda dapat meneruskan isi permintaan, termasuk variabel lingkungan kunci API yang sebelumnya sudah disimpan, ke Natural Language API dengan perintah curl berikut (semua dalam satu command line tunggal):
Untuk tiap entity dalam respons, Anda akan mendapatkan type entity, URL Wikipedia terkait (jika ada), salience, dan indeks tempat entity ini muncul di dalam teks. Salience adalah angka dalam rentang [0,1] yang merujuk pada sentralitas entity terhadap teks secara keseluruhan.
Natural Language API juga mampu mengenali entity yang sama yang disebutkan dalam berbagai cara. Perhatikan daftar mentions yang ada di respons: API mampu mengenali bahwa "Joanne Rowling", "Rowling", "novelis", dan "Robert Galbraith" merujuk ke hal yang sama.
Klik Periksa progres saya untuk memverifikasi tujuan.
Memeriksa respons Analisis Entity
Tugas 4. Analisis sentimen menggunakan Natural Language API
Di samping mengekstrak entity, Anda juga dapat melakukan analisis sentimen pada sebuah blok teks menggunakan Natural Language API. Permintaan JSON ini akan berisi parameter yang sama seperti permintaan di atas. Namun kali ini, ubah teksnya untuk menambahkan hal-hal dengan sentimen yang lebih kuat.
Gunakan nano untuk mengganti kode di request.json dengan teks berikut, dan jangan sungkan untuk mengganti content di bawah ini dengan teks Anda sendiri:
{
"document":{
"type":"PLAIN_TEXT",
"content":"Harry Potter adalah buku terbaik. Semua orang harus membacanya."
},
"encodingType": "UTF8"
}
Tekan CTRL+X untuk keluar dari nano, lalu Y untuk menyimpan file, kemudian ENTER untuk mengonfirmasi.
Selanjutnya, kirim permintaan ke endpoint analyzeSentiment API:
{
"documentSentiment": {
"magnitude": 1.9,
"score": 0.9
},
"language": "en",
"sentences": [
{
"text": {
"content": "Harry Potter adalah buku terbaik.",
"beginOffset": 0
},
"sentiment": {
"magnitude": 0.9,
"score": 0.9
}
},
{
"text": {
"content": "Semua orang harus membacanya.",
"beginOffset": 31
},
"sentiment": {
"magnitude": 0.9,
"score": 0.9
}
}
]
}
Catatan: Jangan kaget jika skor Anda sedikit berbeda dari output contoh.
Perhatikan bahwa Anda mendapatkan dua macam nilai sentimen: sentimen untuk dokumen secara keseluruhan, dan sentimen yang dipecah per kalimat. Metode sentimen ini menampilkan dua nilai:
score - merujuk pada angka dari -1.0 sampai 1.0 yang menunjukkan seberapa positif atau negatifnya suatu pernyataan.
magnitude - merujuk pada angka mulai dari 0 sampai tak terhingga yang mewakili bobot sentimen yang dinyatakan dalam pernyataan, terlepas dari apakah sentimen itu positif atau negatif.
Blok teks yang lebih panjang dengan penyataan yang lebih berbobot memiliki nilai magnitude yang lebih tinggi. Kalimat pertama mendapatkan skor positif (0.7), sedangkan kalimat kedua mendapatkan skor netral (0.1).
Tugas 5. Menganalisis sentimen entity
Selain memberikan detail sentimen pada keseluruhan dokumen teks, Natural Language API juga dapat memecah sentimen berdasarkan entity-nya di teks. Gunakan kalimat ini sebagai contoh:
Saya suka sushinya, tetapi pelayanannya sangat buruk.
Dalam kasus ini, mendapatkan skor sentimen untuk keseluruhan kalimat seperti yang sudah didapat di atas mungkin tidak terlalu berguna. Jika kalimat tersebut merupakan ulasan sebuah restoran dan ternyata sudah ada ratusan ulasan untuk restoran yang sama, sebaiknya Anda cari tahu item apa saja yang disukai dan tidak disukai oleh pengunjung dalam ulasannya. Untungnya, Natural Language API memiliki sebuah metode yang membuat Anda bisa memperoleh sentimen untuk setiap entity di dalam teks yang disebut dengan analyzeEntitySentiment. Mari kita pelajari cara kerjanya.
Gunakan nano untuk mengupdate request.json dengan kalimat di bawah:
{
"document":{
"type":"PLAIN_TEXT",
"content":"Saya suka sushinya, tetapi pelayanannya sangat buruk"
},
"encodingType": "UTF8"
}
Tekan CTRL+X untuk keluar dari nano, lalu Y untuk menyimpan file, kemudian ENTER untuk mengonfirmasi.
Selanjutnya, panggil endpoint analyzeEntitySentiment menggunakan perintah curl berikut:
Anda dapat melihat bawa skor yang diraih untuk "sushi" adalah skor netral 0, sedangkan "pelayanan" mendapatkan skor -0.7. Keren! Anda mungkin juga melihat bahwa ada dua objek sentimen yang ditampilkan untuk setiap entity. Jika salah satu dari istilah ini disebutkan lebih dari satu kali, API akan menampilkan skor dan besaran sentimen yang berbeda untuk tiap sebutan, beserta sentimen gabungan untuk entity tersebut.
Catatan: Jangan kaget jika skor Anda sedikit berbeda dari output contoh.
Tugas 6. Menganalisis sintaksis dan jenis kata
Gunakan analisis sintaksis, yakni metode lain yang dimiliki Natural Language API, untuk lebih mendalami detail linguistik pada teks. analyzeSyntax akan mengekstrak informasi linguistik, memecah teks menjadi serangkaian kalimat dan token (umumnya, batas-batas kata), untuk memberikan analisis yang lebih mendalam pada token tersebut. API akan memberi tahu Anda jenis kata (nomina, verba, adjektiva, dll.) untuk tiap kata di dalam teks dan bagaimana kata tersebut berhubungan dengan kata-kata lain yang ada dalam kalimat (Apakah itu merupakan kata kerja dasar? Atau penjelas?).
Coba praktikkan dengan kalimat sederhana. Permintaan JSON ini akan mirip dengan permintaan di atas, dengan tambahan berupa kunci fitur. Metode ini akan memerintahkan API untuk melakukan anotasi sintaksis.
Gunakan nano untuk menggantikan kode di request.json dengan teks berikut:
{
"document":{
"type":"PLAIN_TEXT",
"content": "Joanne Rowling adalah seorang novelis, penulis naskah, dan produser film asal Inggris."
},
"encodingType": "UTF8"
}
Tekan CTRL+X untuk keluar dari nano, lalu Y untuk menyimpan file, kemudian ENTER untuk mengonfirmasi.
partOfSpeech menunjukkan bahwa "Joanne" merupakan nomina.
dependencyEdge mencakup data yang dapat Anda gunakan untuk membuat hierarki penguraian dependensi teks. Pada dasarnya, ini adalah diagram yang menunjukkan bagaimana kata-kata dalam kalimat berkaitan satu dengan lainnya. Hierarki penguraian dependensi untuk kalimat di atas akan terlihat seperti berikut:
Catatan: Anda dapat membuat hierarki penguraian dependensi sendiri di browser dengan demo Natural Language yang tersedia dalam Panduan AI Natural Language
headTokenIndex merupakan indeks token yang memiliki alur yang mengarah ke "Joanne". Bayangkan tiap token dalam kalimat sebagai sebuah kata dalam array.
headTokenIndex sebesar 1 untuk "Joanne" merujuk pada kata "Rowling", yang terhubung kepadanya di hierarki. Label NN (kependekan dari penjelas nomina majemuk) menerangkan peran kata dalam kalimat. "Joanne" menjelaskan "Rowling", yang merupakan subjek dalam kalimat tersebut.
lemma merupakan bentuk kanonis dari kata. Sebagai contoh, kata run, runs, ran, dan running sama-sama berasal dari lema run. Nilai lemma berguna untuk melacak frekuensi penggunaan suatu kata dalam sebuah teks bervolume besar dari waktu ke waktu.
Tugas 7. Natural language processing multibahasa
Natural Language API juga mendukung bahasa selain bahasa Inggris (daftar lengkapnya dapat ditemukan di Panduan Dukungan Bahasa).
Ubah kode di request.json dengan kalimat berbahasa Jepang:
Bahkan URL Wikipedia merujuk ke halaman Wikipedia bahasa Jepang. Sangat keren!
Selamat!
Anda telah mempelajari cara melakukan analisis teks menggunakan Cloud Natural Language API dengan cara mengekstrak entity, menganalisis sentimen, dan melakukan anotasi sintaksis. Di lab ini, Anda telah membuat permintaan Natural Language API dan memanggil API dengan curl, mengekstrak entity, dan menjalankan analisis sentimen pada teks menggunakan Natural Language API, melakukan analisis linguistik pada teks, dan membuat permintaan Natural Language API dalam bahasa yang berbeda.
Langkah berikutnya
Lihat tutorial Natural Language API dalam dokumentasi.
Sertifikasi dan pelatihan Google Cloud
...membantu Anda mengoptimalkan teknologi Google Cloud. Kelas kami mencakup keterampilan teknis dan praktik terbaik untuk membantu Anda memahami dengan cepat dan melanjutkan proses pembelajaran. Kami menawarkan pelatihan tingkat dasar hingga lanjutan dengan opsi on demand, live, dan virtual untuk menyesuaikan dengan jadwal Anda yang sibuk. Sertifikasi membantu Anda memvalidasi dan membuktikan keterampilan serta keahlian Anda dalam teknologi Google Cloud.
Manual Terakhir Diperbarui pada 14 Februari 2024
Lab Terakhir Diuji pada 13 Oktober 2023
Hak cipta 2025 Google LLC. Semua hak dilindungi undang-undang. Google dan logo Google adalah merek dagang dari Google LLC. Semua nama perusahaan dan produk lain mungkin adalah merek dagang masing-masing perusahaan yang bersangkutan.
Lab membuat project dan resource Google Cloud untuk jangka waktu tertentu
Lab memiliki batas waktu dan tidak memiliki fitur jeda. Jika lab diakhiri, Anda harus memulainya lagi dari awal.
Di kiri atas layar, klik Start lab untuk memulai
Gunakan penjelajahan rahasia
Salin Nama Pengguna dan Sandi yang diberikan untuk lab tersebut
Klik Open console dalam mode pribadi
Login ke Konsol
Login menggunakan kredensial lab Anda. Menggunakan kredensial lain mungkin menyebabkan error atau dikenai biaya.
Setujui persyaratan, dan lewati halaman resource pemulihan
Jangan klik End lab kecuali jika Anda sudah menyelesaikan lab atau ingin mengulanginya, karena tindakan ini akan menghapus pekerjaan Anda dan menghapus project
Konten ini tidak tersedia untuk saat ini
Kami akan memberi tahu Anda melalui email saat konten tersedia
Bagus!
Kami akan menghubungi Anda melalui email saat konten tersedia
Satu lab dalam satu waktu
Konfirmasi untuk mengakhiri semua lab yang ada dan memulai lab ini
Gunakan penjelajahan rahasia untuk menjalankan lab
Gunakan jendela Samaran atau browser pribadi untuk menjalankan lab ini. Langkah ini akan mencegah konflik antara akun pribadi Anda dan akun Siswa yang dapat menyebabkan tagihan ekstra pada akun pribadi Anda.
Dengan Cloud Natural Language API, Anda akan dapat mengekstrak entity, sekaligus melakukan analisis sentimen dan sintaks pada sebuah blok teks. Dalam lab interaktif ini, Anda akan mempelajari cara mengekstrak entity dan sentimen dari teks menggunakan Cloud Natural Language API.