Summarizer API به redBus و Miravia کمک می‌کند تا خلاصه‌های مفیدی برای بررسی کاربران ایجاد کنند، Summarizer API به redBus و Miravia کمک می‌کند تا خلاصه‌های مفیدی برای بررسی کاربران ایجاد کنند، Summarizer API به redBus و Miravia کمک می‌کند تا خلاصه‌های مفیدی برای بررسی کاربران ایجاد کنند، API Summarizer به redBus و Miravia کمک می‌کند تا خلاصه‌های مفیدی را برای کاربران ایجاد کنند.

سیسیلیا کونگ
Cecilia Cong
هادیان اندیکا
Hadyan Andika

منتشر شده: ۱۵ مه ۲۰۲۵، آخرین به‌روزرسانی: ۲۷ مه ۲۰۲۶

وب‌سایت‌هایی که نظرات کاربران را منتشر می‌کنند، مانند سایت‌های تجارت الکترونیک یا مسافرتی، اغلب حجم زیادی از اطلاعات را دارند. این امر می‌تواند بررسی تعداد زیادی از نظرات و تصمیم‌گیری در مورد خرید را برای کاربران بسیار وقت‌گیر کند. ارائه خلاصه نظرات می‌تواند به کاربران کمک کند تا بازخوردها را درک کرده و در زمان صرفه‌جویی کنند.

بیاموزید که چگونه redBus و Miravia از Summarizer API برای بهبود تصمیم‌گیری و تجربه خرید استفاده می‌کنند. افزودن خلاصه نظرات توسط Miravia منجر به بهبود نرخ تبدیل در صفحات محصول و در سراسر سایت شده است.

توضیح دهنده وب افزونه‌ها وضعیت کروم قصد
ام دی ان کروم ۱۳۸ کروم ۱۳۸ مشاهده قصد ارسال

رابط برنامه‌نویسی کاربردی خلاصه‌ساز (Summarizer API) به شما امکان می‌دهد انواع مختلف خلاصه‌ها را در طول‌ها و قالب‌های متنوع، مانند جملات، پاراگراف‌ها، فهرست‌های نقطه‌ای و موارد دیگر، تولید کنید. این رابط برنامه‌نویسی کاربردی، مانند بسیاری از رابط‌های برنامه‌نویسی کاربردی هوش مصنوعی داخلی ما، از مدل‌های زبانی بزرگ برای انجام استنتاج استفاده می‌کند. در کروم، این مدل Gemini Nano است.

redBus به مشتریان کمک می‌کند تا بهترین گزینه اتوبوس را انتخاب کنند

ردباس (redBus) بزرگترین ارائه دهنده خدمات اتوبوس در هند است که بیش از 30 میلیون مشتری دارد و خدمات اتوبوس را در تقریباً 10،000 شهر و شهرستان که در سراسر کشور به هم متصل هستند، ارائه می‌دهد. ردباس از طریق داده‌ها و بازخوردها متوجه شد که نظرات کاربران نقش مهمی در کمک به مشتریان برای تعیین مسیر و اتوبوسی که برای نیازهای سفرشان بهترین است، ایفا می‌کند. ردباس حجم بالایی از نظرات را دریافت می‌کند و هر نظر مختص به نقاط و زمان دقیق ورود و خروج است.

برای کمک به مشتریان در درک سطح بالا برای شهرها یا مسیرهای خاص، آنها از API Summarizer برای ارائه بینش‌های کلیدی از بررسی‌های مرتبط استفاده می‌کنند.

مشتری به دنبال مسیری از بنگلور به منگالورو است. خلاصه‌ساز (Sumarizer) نظرات موجود را بررسی می‌کند و یک مرور کلی مفید را برای کمک به مشتریان در یافتن بهترین اتوبوس برای سفرشان ارائه می‌دهد.

«رابط برنامه‌نویسی نرم‌افزار Summarizer توانست خلاصه‌های باکیفیتی از تعداد زیادی از نظرات و جایگشت‌های جستجوی کاربر ایجاد کند. این ویژگی سمت کلاینت، پیچیدگی فنی و هزینه‌های اضافی کسب‌وکار را که برای یک جایگزین سمت سرور وجود داشت، حذف کرد. این برای ما مهم است زیرا این مورد استفاده بخشی از قیف تبدیل است.»

— آمیت کومار، مدیر ارشد مهندسی، 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 می‌تواند خلاصه را برای ترجیحات سفر کاربران وارد شده، مانند راحتی صندلی یا دسترسی به Wi-Fi، شخصی‌سازی کند. استنتاج سمت کلاینت، به این معنی که این جستجو و خلاصه برای کاربر خصوصی باقی می‌ماند.

به یک نمونه کد کوتاه نگاهی بیندازید که در دسترس بودن 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> به‌طورکلی نظرات مثبتی در مورد راحتی، تمیزی و خدمات کارکنان دریافت کرده است. برخی از آنها با مشکلات جزئی مانند تأخیر، رفتار راننده (بی‌ادبانه)، کمبود امکانات رفاهی (ردیابی زنده، پتو) و ناراحتی (اندازه صندلی، کمک‌فنرهای ضعیف) مواجه شده‌اند.

این نقد، الزامات درخواستی را برآورده می‌کند و نکات مثبت و منفی آن در یک پاراگراف کوتاه آمده است که خواندن آن بسیار آسان‌تر از خواندن ۳۰۸ نقد جداگانه است.

خلاصه‌ای از بررسی‌های تجارت الکترونیک میراویا

میراویا یک پلتفرم تجارت الکترونیک پیشرو در اسپانیا است که میلیون‌ها کاربر فعال ماهانه دارد. هر زمان که کاربران نظرات را فیلتر می‌کنند (مثلاً بر اساس رتبه‌بندی محصول)، خلاصه جدیدی ایجاد می‌شود. این خلاصه‌ای مختصر از بازخورد مشتری ارائه می‌دهد و نگرانی‌ها و توصیه‌ها را برجسته می‌کند.

کاربران می‌توانند خلاصه نظرات مربوط به محصول را برای رتبه‌بندی‌های مختلف ایجاد کنند.

«پیش از این، درک مزایا و معایب کلیدی در نقد و بررسی محصولات، مستلزم آن بود که کاربران نظرات متعدد و جداگانه را در صفحه جزئیات بخوانند. برای کمک به کاربران در درک سریع احساسات کلی مشتری، ما رابط برنامه‌نویسی نرم‌افزار Summarizer را معرفی کرده‌ایم. این خلاصه به صورت پویا هر زمان که کاربر نقدها را فیلتر می‌کند (مانند امتیازدهی ستاره‌ای یا معیارهای دیگر) به‌روزرسانی می‌شود و یک مرور سریع و جامع از بازخوردهای مربوط به خریدار ارائه می‌دهد.»

— Ziyi Liang، مهندس ارشد نرم افزار، Miravia

در ابتدا، ویژگی خلاصه‌سازی نظرات کاربران در میراویا (Miravia) به یک سرویس هوش مصنوعی سمت سرور متکی بود. آنها دریافتند که Gemini Nano با اجرای هوش مصنوعی سمت کلاینت می‌تواند نتایج قابل مقایسه‌ای را با کاهش هزینه‌های نگهداری ارائه دهد. این مزیت به ویژه برای اقلام محبوب و پرفروش که نظرات آنها دائماً به‌روز می‌شود، آشکار است.

اگرچه پیاده‌سازی میراویا نیازمند بررسی، واکشی و خلاصه‌سازی بلادرنگ است، چه استنتاج روی سرور و چه در مرورگر رخ دهد، هوش مصنوعی سمت کلاینت با افزایش فرکانس به طور قابل توجهی کارآمدتر می‌شود. آن‌ها از عملکرد کلی آن راضی هستند.

ابتدا، 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.',
  };
};

سپس، میراویا نظرات موجود را خلاصه می‌کند. نظرات با یک نقطه اضافی به هم متصل می‌شوند تا ورودی منسجم‌تر شود.

/**
 * 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 به صورت عملیاتی در دسترس قرار گرفت، Miravia دریافته است که این خلاصه‌ها منجر به موارد زیر می‌شوند:

  • ۱۲.۴٪ نرخ تبدیل بالاتر در صفحات محصول.
  • ۳.۳٪ نرخ تبدیل بالاتر در سراسر وب‌سایت.

بهترین شیوه‌ها

اگر ورودی بررسی از حد مجاز توکن فراتر رفت، این اقدامات کاهش‌دهنده را دنبال کنید:

  • از یک نمونه کوچکتر (مانند ۴ بررسی اخیر) برای API استفاده کنید. این به تولید نتایج سریعتر کمک می‌کند. به راهنمای ما در مورد مقیاس‌بندی خلاصه‌سازی سمت کلاینت مراجعه کنید.
  • QuotaExceededError اطلاعات بیشتری در مورد توکن‌های درخواستی در ورودی ارائه می‌دهد. شیء summarizer دارای یک ویژگی inputQuota است که محدودیت توکن API را نشان می‌دهد. این امر امکان بازخورد بلادرنگ و غیرفعال کردن عملکرد را در صورت تجاوز ورودی از حد مجاز فراهم می‌کند.

شاید بخواهید یک رویکرد ترکیبی را در نظر بگیرید تا از یک تجربه یکپارچه برای همه کاربران اطمینان حاصل کنید. اولین باری که یک API هوش مصنوعی داخلی فراخوانی می‌شود، مرورگر باید مدل را دانلود کند.

  • میراویا از یک مدل سمت سرور برای ارائه خلاصه اولیه استفاده کرد، در حالی که مدل در حال دانلود بود. پس از آماده شدن مدل داخلی، سایت به انجام استنتاج سمت کلاینت تغییر وضعیت داد.

شما همیشه باید برای ایجاد یک رابط کاربری دوستانه و ارتباطی تلاش کنید:

  • یک نوار پیشرفت برای دانلود مدل‌ها پیاده‌سازی کنید و تأخیرهای پاسخ را کاهش دهید.
  • شفافیت در مورد دانلود مدل را در نظر بگیرید. سایت‌های روشن به کاربران در مورد دانلود مدل اطلاع دادند تا شفافیت و رضایت در مورد استفاده از منابع را فراهم کنند. به این ترتیب، کاربران می‌توانند قبل از ادامه، آن را بپذیرند یا رد کنند.

نتیجه‌گیری و توصیه‌ها

این مثال‌های واقعی از redBus و Miravia نشان می‌دهند که چگونه Summarizer API با ارائه خلاصه‌های مختصر و مرتبط از نظرات کاربران، به کاربران کمک می‌کند تا به سرعت تصمیمات آگاهانه بگیرند. توانایی این API در کار در سمت کلاینت، بدون هزینه اضافی تجاری و پیچیدگی فنی کم، آن را به گزینه‌ای مناسب برای موارد استفاده مشابه که در آن‌ها اطلاعات نیاز به خلاصه‌سازی دارند، تبدیل می‌کند. همه APIهای هوش مصنوعی داخلی، موارد استفاده عملی هوش مصنوعی در سمت کلاینت را امکان‌پذیر می‌کنند.

آیا می‌خواهید بدانید که Summarizer API چگونه می‌تواند در موارد استفاده دیگر کمک کند؟ ما همچنین به اشتراک گذاشته‌ایم که چگونه Summarizer API تعامل با مقاله را افزایش می‌دهد .

آیا با این APIها چیز جدیدی می‌سازید؟ آن را با ما در @ChromiumDev در X یا Chromium for Developers در لینکدین به اشتراک بگذارید.

منابع

تقدیرنامه‌ها

با تشکر از ماکاخوف آندری و زیی لیانگ از میراویا (گروه علی‌بابا)، آمیت کومار از ردباس، سوِتا گوپالاکریشنان ، الکساندرا کِلِپِر ، توماس اشتاینر و کنجی باهوکس برای کمک به نوشتن و بررسی این سند.