API Summarizer помогает redBus и Miravia создавать полезные сводки отзывов пользователей. API Summarizer помогает redBus и Miravia создавать полезные сводки отзывов пользователей. API Summarizer помогает redBus и Miravia создавать полезные сводки отзывов пользователей. API Summarizer помогает redBus и Miravia создавать полезные сводки отзывов пользователей.

Сесилия Конг
Cecilia Cong
Хадьян Андика
Hadyan Andika

Опубликовано: 15 мая 2025 г.

Веб-сайты с отзывами пользователей, такие как сайты электронной коммерции или путешествий, часто содержат огромный объем информации. Это может привести к тому, что пользователям придется тратить много времени на просмотр множества отзывов, чтобы принять решение о покупке. Предоставление резюме отзывов может помочь пользователям понять обратную связь и сэкономить время. Узнайте, как redBus и Miravia используют API Summarizer для улучшения процесса принятия решений и покупки.

Объяснитель Веб Расширения Статус Хрома Намерение
МДН За флагом Chrome 138 бета За флагом Chrome 138 бета Вид Намерение отправить

API Summarizer позволяет вам генерировать различные типы резюме разной длины и формата, такие как предложения, абзацы, списки маркеров и т. д. Этот API, как и многие из наших встроенных API AI , использует большие языковые модели для выполнения вывода. В Chrome наша модель — Gemini Nano.

redBus помогает клиентам выбрать лучший вариант автобуса

redBus — крупнейший поставщик автобусных перевозок в Индии, имеющий более 30 миллионов клиентов, предоставляющий автобусные услуги примерно в 10 000 городов и поселков, соединенных по всей стране. Благодаря данным и отзывам, redBus понял, что отзывы пользователей играют важную роль в помощи клиентам в определении маршрута и автобуса, которые лучше всего подходят для их потребностей в путешествии. redBus получает большое количество отзывов, и каждый отзыв касается точных пунктов прибытия и отправления, а также времени.

Чтобы помочь клиентам получить общее представление об определенных городах или маршрутах, они используют API Summarizer для представления ключевых сведений из соответствующих обзоров.

Клиент ищет маршрут из Бангалора в Мангалуру. Сумматор просматривает доступные отзывы и собирает полезный обзор, чтобы помочь клиентам найти лучший автобус для своего путешествия.

«API Summarizer смог создать качественные сводки из большого количества наших обзоров и перестановок поисковых запросов пользователей. Эта клиентская функция устранила техническую сложность и дополнительные бизнес-расходы, которые присутствовали бы для серверной альтернативы. Это важно для нас, поскольку этот вариант использования является частью воронки конверсии».

— Амит Кумар, старший технический менеджер, redBus

Детализация отзывов, хранящихся на бэкенде redBus, в сочетании с огромным количеством возможных перестановок в поисковых запросах пользователей — с такими переменными, как время отправления и прибытия, конкретная точка посадки в городе и различные операторы автобусов — затрудняет выделение конкретных идей из отзывов. При таком объеме данных сводка на стороне сервера для каждого поискового запроса будет стоить непомерно дорого.

Для создания эффективных сводок redBus предоставляет API Summarizer следующий контекст в дополнение к отзывам клиентов:

//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> в целом получил положительные отзывы за комфорт, чистоту и обслуживание персонала. Некоторые столкнулись с незначительными проблемами, такими как задержки, поведение водителя (грубое), отсутствие удобств (отслеживание в реальном времени, одеяла) и дискомфорт (размер сиденья, плохие амортизаторы).

Этот обзор соответствует требуемым требованиям, положительные и отрицательные стороны изложены в одном коротком абзаце, что намного легче читать, чем 308 имеющихся отдельных обзоров.

Miravia суммировала обзоры электронной коммерции

Miravia — ведущая платформа электронной коммерции в Испании с миллионами активных пользователей в месяц. Всякий раз, когда пользователи фильтруют отзывы (например, по рейтингу продукта), генерируется новое резюме. Это дает краткий обзор отзывов клиентов, выделяя проблемы и рекомендации.

Пользователи могут создавать сводки обзоров продуктов для различных рейтингов.

«Раньше, чтобы понять основные плюсы и минусы в обзорах продуктов, пользователям требовалось прочитать множество отдельных комментариев на странице с подробностями. Чтобы помочь пользователям быстро понять общее настроение клиентов, мы внедрили API Summarizer. Это резюме динамически обновляется всякий раз, когда пользователь фильтрует обзоры (например, по рейтингу или другим критериям), предоставляя быстрый и полный обзор соответствующих отзывов покупателей».

— Цзыи Лян, старший инженер-программист, Miravia

Изначально функция резюмирования отзывов пользователей Miravia опиралась на серверную службу ИИ. Они обнаружили, что Gemini Nano, работающая на клиентской стороне ИИ, может давать сопоставимые результаты, при этом сокращая расходы на обслуживание. Это преимущество особенно очевидно для популярных, быстро продаваемых товаров, отзывы о которых постоянно обновляются.

В то время как реализация 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 summarization is not available, throw an error with the message from deviceCheck
    throw new Error(
      message ||
        'AI summarization tools are not supported on this device or browser.'
    );
  }
};

Лучшие практики

Если количество просмотренных данных превышает лимит токенов, воспользуйтесь следующими мерами:

  • Используйте меньшую выборку (например, последние 4 отзыва) для API. Это помогает быстрее получать результаты. Ознакомьтесь с нашим руководством по масштабированию клиентского резюмирования .
  • QuotaExceededError предоставляет больше информации о запрошенных токенах во входных данных. Объект summarizer имеет свойство inputQuota , которое указывает предел токенов API. Это позволяет получать обратную связь в реальном времени и отключать функциональность, если входные данные превышают предел.

Вы можете рассмотреть гибридный подход, чтобы обеспечить бесперебойный опыт для всех пользователей. При первом вызове встроенного API AI браузер должен загрузить модель.

  • Miravia использовала серверную модель для предоставления первоначального резюме, пока модель загружалась. После того, как встроенная модель была готова, сайт переключился на выполнение вывода на стороне клиента.

Всегда следует стремиться к созданию дружелюбного и коммуникативного интерфейса:

  • Реализуйте индикатор выполнения загрузки моделей и сократите задержки ответов.
  • Рассмотрите прозрачность загрузки модели. Bright Sites уведомил пользователей о загрузке модели, чтобы обеспечить прозрачность и согласие на использование ресурсов. Таким образом, пользователи могли принять или отклонить, прежде чем продолжить.

Выводы и рекомендации

Эти реальные примеры от redBus и Miravia демонстрируют, как API Summarizer помогает пользователям быстро принимать обоснованные решения, предоставляя краткие, релевантные резюме отзывов пользователей. Способность API работать на стороне клиента без дополнительных бизнес-затрат и низкая техническая сложность делают его жизнеспособным вариантом для аналогичных случаев использования, когда необходимо суммировать информацию. Все встроенные API ИИ позволяют реализовать практические случаи использования ИИ на стороне клиента.

Хотите узнать, как API Summarizer может помочь в других вариантах использования? Мы также рассказали, как API Summarizer помогает повысить вовлеченность статей .

Вы создаете что-то новое с помощью этих API? Поделитесь этим с нами на @ChromiumDev on X или Chromium for Developers на LinkedIn .

Ресурсы

Благодарности

Выражаем благодарность Андрею Макахову и Цзыи Лян из Miravia (Alibaba Group), Амиту Кумару из redBus, Свете Гопалакришнан , Александре Клеппер , Томасу Штайнеру и Кенджи Бахе за помощь в написании и рецензировании этого документа.