Mengevaluasi ulasan produk dengan AI

Maud Nalpas
Maud Nalpas
Kenji Baheux
Kenji Baheux

Dipublikasikan: 16 Mei 2024

Saat berbelanja online, Anda mungkin merasa kewalahan melihat volume ulasan produk dan volume produk yang tersedia. Bagaimana cara kami memilah semua derau ini untuk menemukan produk yang benar-benar akan memenuhi kebutuhan spesifik kita?

Misalnya, kita sedang berbelanja ransel kerja. Ransel harus memenuhi keseimbangan fungsi, estetika, dan kepraktisan. Jumlah ulasan membuat hampir tidak mungkin untuk mengetahui apakah Anda telah menemukan tas yang sempurna. Bagaimana jika kita dapat menggunakan AI untuk menyaring derau dan menemukan produk yang sempurna?

Yang akan membantu adalah ringkasan semua ulasan, beserta daftar kelebihan dan kekurangan yang paling umum.

Contoh ulasan pengguna dengan sorotan positif dan negatif.
Contoh ulasan pengguna dengan rating bintang dan daftar kelebihan dan kekurangan.

Untuk mem-build ini, kita menggunakan AI generatif sisi server. Inferensi terjadi di server.

Dalam dokumen ini, Anda dapat mengikuti tutorial untuk Gemini API dengan Node.js, menggunakan Google AI JavaScript SDK untuk meringkas data dari banyak ulasan. Kita berfokus pada bagian AI generatif dari pekerjaan ini; kita tidak akan membahas cara menyimpan hasil atau membuat antrean tugas.

Dalam praktiknya, Anda dapat menggunakan LLM API apa pun dengan SDK apa pun. Namun, perintah yang disarankan mungkin perlu disesuaikan untuk memenuhi model yang Anda pilih.

Prasyarat

  1. Buat kunci untuk Gemini API, dan tentukan di file lingkungan Anda.

  2. Instal Google AI JavaScript SDK, misalnya dengan npm: npm install @google/generative-ai

Membuat aplikasi peringkas ulasan

  1. Lakukan inisialisasi objek AI generatif.
  2. Buat fungsi untuk membuat ringkasan ulasan.
    1. Pilih model AI generatif. Untuk kasus penggunaan kita, kita akan menggunakan Gemini Pro. Gunakan model yang khusus untuk kasus penggunaan Anda (misalnya, gemini-pro-vision adalah untuk input multimodal).
    2. Tambahkan perintah.
    3. Panggil generateContent untuk meneruskan perintah sebagai argumen.
    4. Buat dan tampilkan respons.
const { GoogleGenerativeAI } = require("@google/generative-ai");

// Access the API key env
const genAI = new GoogleGenerativeAI(process.env.API_KEY_GEMINI);

async function generateReviewSummary(reviews) {
  // Use gemini-pro model for text-only input
  const model = genAI.getGenerativeModel({ model: "gemini-pro" });
  // Shortened for legibility. See "Write an effective prompt" for
  // writing an actual production-ready prompt.
  const prompt = `Summarize the following product reviews:\n\n${reviews}`;
  const result = await model.generateContent(prompt);
  const response = await result.response;
  const summary = response.text();
  return summary;
}

Menulis perintah yang efektif

Cara terbaik untuk meraih kesuksesan dengan AI generatif adalah membuat perintah yang menyeluruh. Dalam contoh ini, kita telah menggunakan teknik perintah satu kali untuk mendapatkan output yang konsisten.

Perintah one-shot direpresentasikan oleh contoh output untuk Gemini yang akan dimodelkan.

const prompt =
`I will give you user reviews for a product. Generate a short summary of the
reviews, with focus on the common positive and negative aspects across all of
the reviews. Use the exact same output format as in the example (list of
positive highlights, list of negative aspects, summary). In the summary,
address the potential buyer with second person ("you", "be aware").

Input (list of reviews):
// ... example

Output (summary of reviews):
// ... example

**Positive highlights**
// ... example
**Negative aspects**
// ... example
**Summary**
// ... example

Input (list of reviews):
${reviews}

Output (summary of all input reviews):`;

Berikut adalah contoh output dari perintah ini, yang mencakup ringkasan semua ulasan, beserta daftar kelebihan dan kekurangan umum.

## Summary of Reviews:

**Positive highlights:**

* **Style:** Several reviewers appreciate the backpack's color and design.
* **Organization:** Some users love the compartments and find them useful for
  organization.
* **Travel & School:** The backpack seems suitable for both travel and school
  use, being lightweight and able to hold necessary items.

**Negative aspects:**

* **Durability:** Concerns regarding the zipper breaking and water bottle holder
  ripping raise questions about the backpack's overall durability.
* **Size:** A few reviewers found the backpack smaller than expected.
* **Material:** One user felt the material was cheap and expressed concern about
  its longevity.

**Summary:**

This backpack seems to be stylish and appreciated for its organization and
suitability for travel and school. However, you should be aware of potential
durability issues with the zippers and water bottle holder. Some users also
found the backpack smaller than anticipated and expressed concerns about the
material's quality.

Batas token

Banyak ulasan dapat mencapai batas token model. Token tidak selalu sama dengan satu kata; token dapat berupa bagian dari kata atau beberapa kata secara bersamaan. Misalnya, Gemini Pro memiliki batas token 30.720. Artinya, perintah dapat menyertakan, maksimal, 600 ulasan rata-rata 30 kata dalam bahasa Inggris, tidak termasuk petunjuk perintah lainnya.

Gunakan countTokens() untuk memeriksa jumlah token dan mengurangi input jika perintah lebih besar dari yang diizinkan.

const MAX_INPUT_TOKENS = 30720
const { totalTokens } = await model.countTokens(prompt);
if (totalTokens > MAX_INPUT_TOKENS) {
    // Shorten the prompt.
}

Membangun aplikasi untuk perusahaan

Jika Anda adalah pengguna Google Cloud atau memerlukan dukungan perusahaan, Anda dapat mengakses Gemini Pro dan model lainnya, seperti model Claude dari Anthropic, dengan Vertex AI. Sebaiknya gunakan Model Garden untuk menentukan model mana yang paling cocok dengan kasus penggunaan spesifik Anda.

Langkah berikutnya

Aplikasi yang kami buat sangat bergantung pada ulasan berkualitas untuk memberikan ringkasan yang paling efektif. Untuk mengumpulkan ulasan berkualitas tersebut, baca artikel berikutnya dalam serial ini, yaitu Membantu pengguna menulis ulasan produk yang bermanfaat dengan AI web di perangkat.

Kami ingin mendengar pendapat Anda tentang pendekatan ini. Beri tahu kami kasus penggunaan yang paling menarik bagi Anda. Anda dapat memberikan masukan dan bergabung dalam program pratinjau awal untuk menguji teknologi ini dengan prototipe lokal.

Kontribusi Anda dapat membantu kami menjadikan AI sebagai alat yang efektif, tetapi praktis, bagi semua orang.

Berikutnya: Membantu pengguna menulis ulasan produk yang bermanfaat