पब्लिश होने की तारीख: 15 मई, 2025, आखिरी बार अपडेट होने की तारीख: 27 मई, 2026
ई-कॉमर्स या ट्रैवल साइटों जैसी, उपयोगकर्ताओं की समीक्षाएं दिखाने वाली वेबसाइटों पर अक्सर बहुत ज़्यादा जानकारी होती है. इससे उपयोगकर्ताओं को खरीदारी का फ़ैसला लेने के लिए, कई समीक्षाएं पढ़नी पड़ सकती हैं. इसमें काफ़ी समय लग सकता है. समीक्षाओं की खास जानकारी देने से, उपयोगकर्ताओं को फ़ीडबैक समझने और समय बचाने में मदद मिल सकती है.
जानें कि redBus और Miravia Summarizer API का इस्तेमाल करके, फ़ैसले लेने की प्रोसेस और खरीदारी के अनुभव को कैसे बेहतर बनाते हैं. Miravia ने समीक्षाओं की खास जानकारी दिखाने की सुविधा जोड़ी है. इससे कन्वर्ज़न रेट बेहतर हुए हैं प्रॉडक्ट पेजों और पूरी साइट पर.
| ज़्यादा जानकारी देने वाला वीडियो | वेब | एक्सटेंशन | Chrome स्टेटस | मकसद |
|---|---|---|---|---|
| MDN | देखें | शिप करने का मकसद |
Summarizer API की मदद से, अलग-अलग लंबाई और फ़ॉर्मैट में कई तरह की खास जानकारी जनरेट की जा सकती है. जैसे, वाक्य, पैराग्राफ़, बुलेट पॉइंट वाली सूचियां वगैरह. यह एपीआई, पहले से मौजूद हमारे कई एआई एपीआई की तरह, अनुमान लगाने के लिए बड़े लैंग्वेज मॉडल का इस्तेमाल करता है.
redBus, ग्राहकों को बस का सबसे अच्छा विकल्प चुनने में मदद करता है
redBus, भारत में बस की सबसे बड़ी सेवा देने वाली कंपनी है. इसके 3 करोड़ से ज़्यादा ग्राहक हैं. यह पूरे देश में करीब 10,000 शहरों और कस्बों में बस सेवाएं उपलब्ध कराती है. डेटा और फ़ीडबैक के ज़रिए, redBus को पता चला कि उपयोगकर्ता की जनरेट की गई समीक्षाएं, ग्राहकों को यह तय करने में अहम भूमिका निभाती हैं कि उनकी यात्रा की ज़रूरतों के लिए कौनसी बस और कौनसे रूट सबसे सही हैं. redBus को बड़ी संख्या में समीक्षाएं मिलती हैं. हर समीक्षा, बस के पहुंचने और रवाना होने के सटीक पॉइंट और समय के बारे में होती है.
कुछ शहरों या रूट के लिए, ग्राहकों को खास जानकारी देने के लिए, redBus, Summarizer API का इस्तेमाल करता है. इससे काम की समीक्षाओं से अहम जानकारी मिलती है.
"Summarizer API, हमारी बड़ी संख्या में मौजूद समीक्षाओं और उपयोगकर्ता की खोज क्वेरी के क्रमपरिवर्तन से, अच्छी क्वालिटी की खास जानकारी जनरेट कर पाया. क्लाइंट-साइड की इस सुविधा से, तकनीकी जटिलता और कारोबार की अतिरिक्त लागत कम हुई. सर्वर-साइड के विकल्प में ये समस्याएं आ सकती थीं. यह हमारे लिए ज़रूरी है, क्योंकि यह इस्तेमाल का उदाहरण, कन्वर्ज़न फ़नल का हिस्सा है."
— अमित कुमार, सीनियर इंजीनियरिंग मैनेजर, redBus
redBus के बैकएंड पर सेव की गई समीक्षाओं की बारीकी से जानकारी और उपयोगकर्ता की खोज क्वेरी में क्रमपरिवर्तन की बड़ी संख्या की वजह से, समीक्षाओं से खास जानकारी को हाइलाइट करना मुश्किल हो जाता है. उपयोगकर्ता की खोज क्वेरी में, रवाना होने और पहुंचने का समय, शहर में बस पकड़ने का खास पॉइंट, और बस ऑपरेटर जैसे वैरिएबल शामिल होते हैं. इतने बड़े डेटा के लिए, हर खोज क्वेरी के लिए सर्वर-साइड की खास जानकारी जनरेट करना महंगा होगा.
असरदार खास जानकारी जनरेट करने के लिए, redBus, Summarizer API को ग्राहक की समीक्षाओं के अलावा, यह कॉन्टेक्स्ट उपलब्ध कराता है:
//Context to provide a useful summary
const promptContext =
'Summarize the following reviews in 30 words or less.' +
'Focus on key positives and negatives, such as comfort, maintenance,' +
'pricing, and cleanliness. Reviews are separated by {end}.' +
'Give the summary in just one paragraph.';
खास जानकारी से, ग्राहकों को फ़ैसले लेने में मदद मिलती है. साथ ही, इससे कारोबार की अतिरिक्त लागत और तकनीकी जटिलता भी कम होती है. इसके अलावा, redBus, लॉग-इन किए हुए उपयोगकर्ताओं की यात्रा की प्राथमिकताओं के हिसाब से खास जानकारी को पसंद के मुताबिक बना सकता है. जैसे, सीट का आराम या वाई-फ़ाई की उपलब्धता. क्लाइंट-साइड पर अनुमान लगाया जाता है. इसका मतलब है कि यह खोज और खास जानकारी, सिर्फ़ उपयोगकर्ता के लिए निजी रहती है.
कोड का एक छोटा सैंपल देखें. इससे Summarizer की उपलब्धता की जांच की जाती है, कॉन्टेक्स्ट दिया जाता है, और उपयोगकर्ता की खोज क्वेरी के आधार पर समीक्षाएं वापस ली जाती हैं.
// The Summarizer API is available
if ('Summarizer' in self) {
try {
const available = await Summarizer.availability();
let summarizer;
if (available === 'unavailable') {
return null;
}
if (available === 'available') {
//model is already available, use immediately
summarizer = await Summarizer.create();
} else {
//trigger model download and wait
summarizer = await Summarizer.create();
}
// Context to provide a useful summary
const promptContext =
'Summarize the following reviews in 30 words or less.' +
'Focus on key positives and negatives, such as comfort, maintenance,' +
'pricing, and cleanliness. Reviews are separated by {end}.' +
'Give the summary in just one paragraph.';
// Retrieve the reviews to be summarized based on user's search query
let reviews = getIndividualBusReviews();
if (reviews) {
const reviewSummary = await summarizer.summarize(reviews, {
context: promptContext
});
}
} catch (e) {
console.error("SUMMARIZER_API_ERROR: ", e);
return null
}
}
बेंगलुरु से मंगलुरु की खोज के उदाहरण के साथ, खास जानकारी देने वाले टूल का आउटपुट इस तरह है:
<Bus Provider X> को आम तौर पर, आराम, साफ़-सफ़ाई, और स्टाफ़ की सेवा के लिए अच्छी समीक्षाएं मिली हैं. कुछ लोगों को मामूली समस्याएं हुईं. जैसे, देरी, ड्राइवर का व्यवहार (असभ्य), सुविधाओं की कमी (लाइव ट्रैकिंग, कंबल), और असुविधा (सीट का साइज़, खराब शॉक एब्ज़ॉर्बर).
यह समीक्षा, अनुरोध की गई ज़रूरी शर्तें पूरी करती है. इसमें सकारात्मक और नकारात्मक पहलुओं को एक छोटे पैराग्राफ़ में बताया गया है. इसे 308 अलग-अलग समीक्षाओं के मुकाबले पढ़ना ज़्यादा आसान है.
Miravia ने ई-कॉमर्स की समीक्षाओं की खास जानकारी दी
Miravia, स्पेन में ई-कॉमर्स का एक बड़ा प्लैटफ़ॉर्म है, इसके हर महीने लाखों सक्रिय उपयोगकर्ता हैं. जब भी उपयोगकर्ता समीक्षाओं को फ़िल्टर करते हैं (उदाहरण के लिए, प्रॉडक्ट की रेटिंग के हिसाब से), तो एक नई खास जानकारी जनरेट होती है. इससे ग्राहकों के फ़ीडबैक की संक्षिप्त खास जानकारी मिलती है. इसमें चिंताएं और सुझाव हाइलाइट किए जाते हैं.
"पहले, प्रॉडक्ट की समीक्षाओं में मुख्य फ़ायदे और नुकसान समझने के लिए, उपयोगकर्ताओं को जानकारी वाले पेज पर कई अलग-अलग टिप्पणियां पढ़नी पड़ती थीं. उपयोगकर्ताओं को ग्राहकों की भावनाओं को तुरंत समझने में मदद करने के लिए, हमने Summarizer API लॉन्च किया है. जब भी कोई उपयोगकर्ता समीक्षाओं को फ़िल्टर करता है (जैसे, स्टार रेटिंग या अन्य मानदंड के हिसाब से), तो यह खास जानकारी डाइनैमिक तरीके से अपडेट होती है. इससे खरीदारों के काम के फ़ीडबैक की खास जानकारी तुरंत और पूरी मिलती है."
— ज़ियी लियांग, सीनियर सॉफ़्टवेयर इंजीनियर, Miravia
शुरुआत में, Miravia की उपयोगकर्ता की समीक्षाओं की खास जानकारी देने वाली सुविधा, सर्वर-साइड की एआई सेवा पर निर्भर थी. उन्हें पता चला कि क्लाइंट-साइड एआई का इस्तेमाल करके, रखरखाव की लागत कम करके भी तुलना करने लायक नतीजे मिल सकते हैं. यह फ़ायदा, खास तौर पर लोकप्रिय और तेज़ी से बिकने वाली चीज़ों के लिए साफ़ तौर पर दिखता है. इनकी समीक्षाएं लगातार अपडेट होती रहती हैं.
Miravia के लिए, समीक्षाओं को रीयल टाइम में फ़ेच करना और उनकी खास जानकारी जनरेट करना ज़रूरी है. हालांकि, अनुमान सर्वर पर लगाया जाता है या ब्राउज़र में, क्लाइंट-साइड एआई ज़्यादा असरदार होता है, क्योंकि इसकी फ़्रीक्वेंसी बढ़ जाती है. वे इसकी पूरी परफ़ॉर्मेंस से संतुष्ट हैं.
सबसे पहले, Miravia, सुविधा और डिवाइस की कंपैटिबिलिटी की जांच करता है.
// Compatibility check for device with built-in AI
export const deviceCheck = async () => {
// Query the browser's AI capabilities
const availability = await Summarizer.availability();
// Case 1: Device doesn't support AI summarization
if (availability === 'unavailable') {
return {
summarizationAvailable: false,
message:
'AI summarization tools are not supported on this device, or the appropriate permissions have not be set.',
};
}
// Case 2: Device supports AI but requires model download
if (availability === 'downloadable') {
// Try to trigger an installation
Summarizer.create();
return {
summarizationAvailable: false,
message: 'Installing in the background. This may take a few minutes...',
};
}
// Case 3: Device supports AI summarization
return {
summarizationAvailable: true,
message: 'Ready for use.',
};
};
इसके बाद, Miravia, उपलब्ध समीक्षाओं की खास जानकारी देता है. समीक्षाओं को एक अतिरिक्त अवधि के साथ जोड़ा जाता है, ताकि इनपुट ज़्यादा सुसंगत हो.
/**
* Summarizes a list of reviews using Chrome's Built-in AI
* @param {Array<string>} reviewContentList - Array of review texts to summarize
* @returns {Promise<string>} The generated summary text
* @throws {Error} If summarization is not available or fails
*/
export const reviewSummarize = async (reviewContentList) => {
// Validate input
if (!Array.isArray(reviewContentList) || !reviewContentList.length) {
throw new Error('Please provide a non-empty array of reviews to summarize');
}
// Check device compatibility
const { summarizationAvailable, message } = await deviceCheck();
if (summarizationAvailable) {
try {
// Configure and create the summarizer with appropriate parameters
const summarizer = await Summarizer.create({
type: 'tl;dr',
length: 'short',
sharedContext:
'Summarize the given user reviews. Maintain a polite and formal tone.',
});
// Generate the summary from the joined review texts
const summary = await summarizer.summarize(reviewContentList.join('. '));
// Return the generated summary
return summary;
} catch (error) {
// Handle any errors during summarization
throw new Error(`Summarization failed: ${error.message}`);
}
} else {
// If unavailable, throw an error with the message from deviceCheck
throw new Error(
message ||
'AI summarization tools are not supported on this device or browser.'
);
}
};
बेहतर कन्वर्ज़न
Summarizer API के प्रोडक्शन में उपलब्ध होने के बाद, Miravia को पता चला कि खास जानकारी से:
- प्रॉडक्ट पेजों पर 12.4% ज़्यादा कन्वर्ज़न मिले.
- पूरी वेबसाइट पर 3.3% ज़्यादा कन्वर्ज़न मिले.
सबसे सही तरीके
अगर समीक्षा का इनपुट, टोकन की सीमा से ज़्यादा है, तो इन तरीकों को अपनाएं:
- एपीआई के लिए, छोटा सैंपल इस्तेमाल करें. जैसे, सबसे हाल की चार समीक्षाएं. इससे नतीजे तेज़ी से जनरेट होते हैं. क्लाइंट-साइड की खास जानकारी देने की सुविधा को स्केल करने के बारे में हमारे दिशा-निर्देश देखें.
QuotaExceededErrorसे, इनपुट में अनुरोध किए गए टोकन के बारे में ज़्यादा जानकारी मिलती है.summarizerऑब्जेक्ट मेंinputQuotaप्रॉपर्टी होती है. इससे एपीआई की टोकन सीमा का पता चलता है. इससे रीयल टाइम में फ़ीडबैक मिलता है. साथ ही, अगर इनपुट सीमा से ज़्यादा है, तो इस सुविधा को बंद किया जा सकता है.
सभी उपयोगकर्ताओं के लिए बेहतर अनुभव पक्का करने के लिए, हाइब्रिड तरीका अपनाया जा सकता है. पहले से मौजूद एआई एपीआई को पहली बार कॉल करने पर, ब्राउज़र को मॉडल डाउनलोड करना होगा.
- Miravia ने शुरुआती खास जानकारी देने के लिए, सर्वर-साइड मॉडल का इस्तेमाल किया. ऐसा तब किया गया, जब मॉडल डाउनलोड हो रहा था. पहले से मौजूद मॉडल के तैयार होने के बाद, साइट ने क्लाइंट-साइड पर अनुमान लगाना शुरू कर दिया.
आपको हमेशा ऐसा इंटरफ़ेस बनाने की कोशिश करनी चाहिए जो इस्तेमाल में आसान हो और जिसमें बातचीत की जा सके:
- मॉडल डाउनलोड करने के लिए, प्रोग्रेस बार लागू करें और जवाब में होने वाली देरी को कम करें.
- मॉडल डाउनलोड करने के बारे में पारदर्शिता बनाए रखें. Bright Sites ने उपयोगकर्ताओं को मॉडल डाउनलोड करने के बारे में सूचना दी, ताकि संसाधनों के इस्तेमाल में पारदर्शिता और सहमति बनी रहे. इससे उपयोगकर्ता, आगे बढ़ने से पहले सहमति दे सकते थे या इनकार कर सकते थे.
नतीजे और सुझाव
redBus और Miravia के इन असल उदाहरणों से पता चलता है कि Summarizer API ने, उपयोगकर्ताओं की समीक्षाओं की संक्षिप्त और काम की खास जानकारी देकर, उपयोगकर्ताओं को तुरंत सोच-समझकर फ़ैसले लेने में कैसे मदद की. एपीआई, क्लाइंट-साइड पर काम कर सकता है. इसके लिए, कारोबार की अतिरिक्त लागत और तकनीकी जटिलता कम होती है. इसलिए, यह उन मामलों के लिए एक सही विकल्प है जहां जानकारी की खास जानकारी देनी होती है. पहले से मौजूद सभी एआई एपीआई, क्लाइंट-साइड एआई के इस्तेमाल के उदाहरणों को लागू करने में मदद करते हैं.
क्या आपको यह जानना है कि Summarizer API, अन्य मामलों में कैसे मदद कर सकता है? हमने यह भी बताया है कि Summarizer API से, लेखों पर लोगों की दिलचस्पी कैसे बढ़ती है.
क्या आपने इन एपीआई की मदद से कुछ नया बनाया है? इसे X पर @ChromiumDev या LinkedIn पर Chromium for Developers के साथ शेयर करें.
संसाधन
- Summarizer API के बारे में ज़्यादा जानें.
- Chrome पर पहले से मौजूद एपीआई का इस्तेमाल करना शुरू करें.
- ब्लॉगर को सशक्त बनाने के बारे में, Prompt API की केस स्टडी पढ़ें.
- अनुवाद और भाषा की पहचान करने वाले टूल की केस स्टडी पढ़ें.
- पढ़ें कि Summarizer API, Bright Sites और Terra को लोगों की दिलचस्पी बढ़ाने वाली लेखों की खास जानकारी बनाने में कैसे मदद करता है
Acknowledgements
इस दस्तावेज़ को लिखने और इसकी समीक्षा करने में मदद करने के लिए, हम Miravia (Alibaba Group) के Makakhov Andrey और Ziyi Liang, Amit Kumar redBus के, Swetha Gopalakrishnan, Alexandra Klepper, Thomas Steiner और Kenji Baheux का धन्यवाद करते हैं.