เมื่อช็อปปิ้งออนไลน์ การดูปริมาณผลิตภัณฑ์อาจเป็นเรื่องยาก รีวิวและจำนวนผลิตภัณฑ์ที่มี เราจะกรอง การค้นหาผลิตภัณฑ์ที่จะตอบสนองความต้องการเฉพาะของเราได้จริงหรือไม่
ตัวอย่างเช่น สมมติว่าเรากำลังซื้อกระเป๋าเป้ใส่ทำงาน เป้สะพายหลังต้องเป็นไปตามข้อกำหนด มีความสมดุลระหว่างฟังก์ชันการทำงาน ความสวยงาม และการใช้งานจริง จำนวนรีวิว ก็แทบเป็นไปไม่ได้เลยที่จะรู้ ว่าคุณได้เจอกระเป๋าที่ถูกใจหรือเปล่า ถ้าเราทำได้ ใช้ AI เพื่อคัดกรองเสียงรบกวนและค้นหาผลิตภัณฑ์ที่สมบูรณ์แบบ
สิ่งที่จะเป็นประโยชน์คือสรุปความเห็นทั้งหมด พร้อมกับรายการ ข้อดีและข้อเสียที่พบบ่อย
![ตัวอย่างรีวิวของผู้ใช้ที่ไฮไลต์เชิงบวกและเชิงลบ](https://developer.chrome.com/static/docs/ai/images/user-reviews.jpg?hl=th)
เราสร้างระบบนี้โดยใช้ Generative AI ฝั่งเซิร์ฟเวอร์ การอนุมานจะเกิดขึ้นในเซิร์ฟเวอร์
ในเอกสารนี้ คุณสามารถทำตามพร้อมกับบทแนะนำสำหรับ Gemini API กับ Node.js, โดยใช้ Google AI JavaScript SDK เพื่อสรุปข้อมูลจากรีวิวจำนวนมาก เรามุ่งเน้น ในส่วน Generative AI ของงานนี้ เราจะไม่กล่าวถึงวิธีจัดเก็บผลลัพธ์ หรือสร้างคิวงาน
ในทางปฏิบัติ คุณสามารถใช้ LLM API ใดก็ได้กับ SDK ใดก็ได้ อย่างไรก็ตาม คุณอาจต้องปรับพรอมต์ที่แนะนำให้ตรงกับรูปแบบที่คุณเลือก
สิ่งที่ต้องดำเนินการก่อน
สร้างคีย์สำหรับ Gemini API และกำหนดในไฟล์สภาพแวดล้อมของคุณ
ติดตั้ง Google AI JavaScript SDK ตัวอย่างเช่น ด้วย npm ดังนี้
npm install @google/generative-ai
สร้างแอปพลิเคชันสรุปรีวิว
- เริ่มต้นออบเจ็กต์ Generative AI
- สร้างฟังก์ชันเพื่อสร้างสรุปรีวิว
- เลือกโมเดล Generative AI สําหรับกรณีการใช้งานของเรา เราจะใช้ Gemini Pro ใช้
รุ่นที่เจาะจงสำหรับ Use Case ของคุณ (เช่น
gemini-pro-vision
สำหรับการป้อนข้อมูลหลายรูปแบบ) - เพิ่มพรอมต์
- เรียกใช้
generateContent
เพื่อส่งพรอมต์เป็นอาร์กิวเมนต์ - สร้างและแสดงผลคำตอบ
- เลือกโมเดล Generative AI สําหรับกรณีการใช้งานของเรา เราจะใช้ Gemini Pro ใช้
รุ่นที่เจาะจงสำหรับ Use Case ของคุณ (เช่น
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;
}
เขียนพรอมต์ที่มีประสิทธิภาพ
วิธีที่ดีที่สุดในการใช้ Generative AI ให้ประสบผลสำเร็จคือการสร้างพรอมต์ที่ครอบคลุม ในตัวอย่างนี้ เราใช้เทคนิคพรอมต์แบบช็อตเดียว เพื่อให้ได้เอาต์พุตที่สอดคล้องกัน
พรอมต์แบบช็อตเดียวจะแสดงโดยผลลัพธ์ตัวอย่างให้ 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):`;
ต่อไปนี้เป็นตัวอย่างเอาต์พุตจากพรอมต์นี้ ซึ่งมีข้อมูลสรุป รีวิว พร้อมทั้งรายการข้อดีและข้อเสียที่พบบ่อย
## 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.
ขีดจำกัดของโทเค็น
รีวิวจำนวนมากอาจมีโทเค็นของโมเดลถึงขีดจำกัด โทเค็นไม่ได้เท่ากับ คำเดียว; โทเค็นอาจเป็นส่วนต่างๆ ของคำๆ หนึ่งหรือหลายคำรวมกันก็ได้ สำหรับ เช่น Gemini Pro มี โดยจำกัดจำนวนโทเค็นไว้ที่ 30,720 รายการ ซึ่งหมายความว่าข้อความแจ้งสามารถรวมค่าเฉลี่ย 600 รายการ รีวิวภาษาอังกฤษ 30 คำ ไม่รวมคำสั่งที่เหลือ
ใช้ countTokens()
เพื่อตรวจสอบจำนวนโทเค็นและลดอินพุตหากข้อความแจ้งมีขนาดใหญ่กว่า
อนุญาต
const MAX_INPUT_TOKENS = 30720
const { totalTokens } = await model.countTokens(prompt);
if (totalTokens > MAX_INPUT_TOKENS) {
// Shorten the prompt.
}
สร้างมาเพื่อองค์กร
หากคุณเป็นผู้ใช้ Google Cloud หรือต้องการการสนับสนุนสำหรับองค์กร คุณสามารถ เข้าถึง Gemini Pro และโมเดลอื่นๆ เช่น โมเดล Claude ของ Anthropic Vertex AI คุณอาจต้องการใช้ Model Garden เพื่อพิจารณาว่าโมเดลใด ตรงกับกรณีการใช้งานของคุณที่สุด
ขั้นตอนถัดไป
แอปพลิเคชันที่เราสร้างขึ้นอาศัยการตรวจสอบคุณภาพเป็นหลัก เพื่อให้ได้ การสรุปที่มีประสิทธิภาพ หากต้องการรวบรวมรีวิวคุณภาพเหล่านั้น โปรดอ่านบทความถัดไปใน ซีรีส์นี้คือ ช่วยให้ผู้ใช้เขียนรีวิวผลิตภัณฑ์ที่เป็นประโยชน์ด้วย AI บนเว็บในอุปกรณ์
เราอยากทราบความคิดเห็นของคุณเกี่ยวกับแนวทางนี้ บอกให้เราทราบถึงกรณีการใช้งานส่วนใหญ่ ที่คุณสนใจ คุณสามารถ แชร์ความคิดเห็นและเข้าร่วมโปรแกรมทดลองใช้ก่อนเปิดตัว เพื่อทดสอบเทคโนโลยีนี้กับต้นแบบในเครื่อง
การมีส่วนร่วมของคุณช่วยเราในการทำให้ AI เป็นเครื่องมือที่ทรงพลังแต่ใช้งานได้จริง ทุกคน