Valuta le recensioni prodotto con l'IA

Maud Nalpas
Maud Nalpas
Kenji Baheux
Kenji Baheux
Alexandra Klepper
Alexandra Klepper

Quando si fa acquisti online, può essere difficoltoso vedere il volume di recensioni dei prodotti e il volume di prodotti disponibili. Come possiamo risolvere tutte queste certezze per trovare il prodotto che risponde effettivamente alle nostre esigenze specifiche?

Ad esempio, supponiamo che stiamo acquistando uno zaino da lavoro. Gli zaini devono trovare un equilibrio in termini di funzionalità, estetica e praticità. Il numero di recensioni rende quasi impossibile sapere se hai trovato la borsa perfetta. E se potessimo usare l'IA per vagliare la confusione e trovare il prodotto perfetto?

Sarebbe utile un riepilogo di tutte le recensioni, insieme a un elenco dei pro e dei contro più comuni.

Esempio di recensione di un utente con caratteristiche principali positive e negative.
Esempio di recensione di un utente con valutazione a stelle e elenco di pro e contro.

Per crearla, utilizziamo l'IA generativa lato server. Su un server si verifica un'inferenza.

In questo documento, puoi seguire un tutorial per l'API Gemini con Node.js, utilizzando l'SDK JavaScript dell'IA di Google per riassumere i dati di molte recensioni. Ci concentreremo sulla parte dell'IA generativa di questo lavoro; non tratteremo come archiviare i risultati o creare una coda di job.

In pratica, puoi utilizzare qualsiasi API LLM con qualsiasi SDK. Tuttavia, il prompt suggerito potrebbe dover essere adattato per soddisfare il modello scelto.

Prerequisiti

  1. Crea una chiave per l'API Gemini e definiscila nel file di ambiente.

  2. Installa l'SDK JavaScript dell'IA di Google, ad esempio con npm: npm install @google/generative-ai

Crea un'applicazione per il riassunto delle recensioni

  1. Inizializza un oggetto di IA generativa.
  2. Crea una funzione per generare riassunti delle recensioni.
    1. Seleziona il modello di IA generativa. Per il nostro caso d'uso, utilizzeremo Gemini Pro. Utilizza un modello specifico per il tuo caso d'uso (ad esempio, gemini-pro-vision è per l'input multimodale).
    2. Aggiungi un prompt.
    3. Richiama generateContent per passare il prompt come argomento.
    4. Genera e restituisce la risposta.
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;
}

Scrivere un prompt efficace

Il modo migliore per avere successo con l'IA generativa è creare un prompt completo. In questo esempio, abbiamo utilizzato la tecnica dei Prompt one-shot per ottenere output coerenti.

I prompt one-shot sono rappresentati dall'output di esempio da modellare in Gemini.

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):`;

Ecco un esempio di output di questo prompt, che include un riepilogo di tutte le recensioni, oltre a un elenco dei pro e dei contro comuni.

## 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.

Limiti dei token

Molte recensioni possono raggiungere il limite di token del modello. I token non sempre corrispondono a una sola parola; un token può essere costituito da parti di una parola o da più parole insieme. Ad esempio, Gemini Pro ha un limite di 30.720 token. Ciò significa che il prompt può includere al massimo 600 revisioni in media di 30 parole in inglese, meno il resto delle istruzioni del prompt.

Utilizza countTokens() per controllare il numero di token e ridurre l'input se il prompt supera il limite consentito.

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

Crea per le aziende

Se sei un utente di Google Cloud o hai comunque bisogno di assistenza aziendale, puoi accedere a Gemini Pro e ad altri modelli, come i modelli Claude di Anthropic, con Vertex AI. Puoi utilizzare Model Garden per determinare il modello più adatto al tuo caso d'uso specifico.

Passaggi successivi

L'applicazione che abbiamo creato fa molto affidamento sulle recensioni di qualità per fornire riassunti più efficaci. Per raccogliere le revisioni della qualità, leggi l'articolo successivo di questa serie è Aiutare gli utenti a scrivere recensioni prodotto utili con l'IA per il web on-device.

Vogliamo conoscere la tua opinione su questo approccio. Raccontaci quali casi d'uso ti interessano di più. Puoi condividere il tuo feedback e partecipare al programma Anteprima in anteprima per testare questa tecnologia con prototipi locali.

Il tuo contributo può aiutarci a rendere l'IA uno strumento potente ma pratico per tutti.

Successiva: Aiutare gli utenti a scrivere recensioni utili dei prodotti