Publicado em 15 de maio de 2025, atualizado pela última vez em 27 de maio de 2026
Sites com avaliações de usuários, como sites de e-commerce ou viagens, geralmente têm um grande volume de informações. Isso pode tornar demorado para os usuários analisar muitas avaliações para decidir sobre uma compra. Fornecer resumos de avaliações pode ajudar os usuários a entender o feedback e economizar tempo.
Saiba como redBus e Miravia usam a API Summarizer para melhorar a tomada de decisões e a experiência de compra. A adição de resumos de avaliações da Miravia levou a taxas de conversão aprimoradas nas páginas de produtos e em todo o site.
| Explicação | Web | Extensões | Status do Chrome | Intenção |
|---|---|---|---|---|
| MDN | Ver | Intenção de envio |
A API Summarizer permite gerar diferentes tipos de resumos em vários comprimentos e formatos, como frases, parágrafos, listas com marcadores e muito mais. Essa API, como muitas das nossas APIs de IA integradas, usa modelos de linguagem grandes para realizar a inferência. No Chrome, o modelo é o Gemini Nano.
A redBus ajuda os clientes a decidir a melhor opção de ônibus
A redBus é a maior provedora de ônibus da Índia, com mais de 30 milhões de clientes, oferecendo serviços de ônibus em aproximadamente 10.000 cidades e vilas, conectadas em todo o país. Com dados e feedback, a redBus percebeu que as avaliações geradas pelo usuário desempenham um papel importante para ajudar os clientes a determinar qual rota e qual ônibus são melhores para as necessidades de viagem. A redBus recebe um grande volume de avaliações, e cada uma delas é específica para os pontos e horários exatos de chegada e partida.
Para ajudar os clientes a entender em um nível alto para determinadas cidades ou rotas, eles usam a API Summarizer para apresentar insights importantes de avaliações relevantes.
"A API Summarizer conseguiu criar resumos de qualidade com base no grande número de avaliações e permutações de consultas de pesquisa do usuário. Esse recurso do lado do cliente removeu a complexidade técnica e o custo comercial adicional que estariam presentes em uma alternativa do lado do servidor. Isso é importante para nós porque esse caso de uso faz parte do funil de conversão.
— Amit Kumar, gerente sênior de engenharia, redBus
A granularidade das avaliações armazenadas no back-end da redBus, combinada com o enorme número de permutações possíveis nas consultas de pesquisa do usuário, com variáveis como horários de partida e chegada, ponto de embarque específico na cidade e diferentes operadoras de ônibus, dificulta o destaque de insights específicos das avaliações. Com esse volume de dados, um resumo do lado do servidor para cada consulta de pesquisa seria proibitivo.
Para gerar resumos eficazes, a redBus fornece o contexto a seguir à API Summarizer, além das avaliações dos clientes:
//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.';
Os resumos melhoram a tomada de decisões do cliente, sem custos comerciais adicionais e complexidade técnica. Além disso, a redBus pode personalizar o resumo para as preferências de viagem dos usuários conectados, como conforto do assento ou disponibilidade de Wi-Fi. Inferência do lado do cliente, o que significa que essa pesquisa e resumo permanecem privados para o usuário.
Confira um pequeno exemplo de código que verifica a disponibilidade do Summarizer, fornece contexto e recupera avaliações com base na consulta de pesquisa do usuário.
// 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
}
}
Com o exemplo de pesquisa de Bangalore para Mangaluru, a saída do Summarizer é a seguinte:
<Bus Provider X> geralmente recebeu avaliações positivas sobre conforto, limpeza e serviço de equipe. Alguns problemas menores, como atrasos, comportamento do motorista (rude), falta de comodidades (rastreamento ao vivo, cobertores) e desconforto (tamanho do assento, amortecedores ruins).
Essa avaliação atende aos requisitos solicitados, com pontos positivos e negativos em um parágrafo curto, que é muito mais fácil de ler do que 308 avaliações individuais.
Miravia resumiu as avaliações de e-commerce
A Miravia é uma plataforma de e-commerce líder na Espanha, com milhões de usuários ativos por mês. Sempre que os usuários filtram as avaliações (por exemplo, por classificação do produto), um novo resumo é gerado. Isso fornece uma visão geral concisa do feedback do cliente, destacando preocupações e recomendações.
Antes, para entender os principais prós e contras nas avaliações do produto, os usuários precisavam ler vários comentários individuais na página de detalhes. Para ajudar os usuários a entender rapidamente o sentimento geral do cliente, apresentamos a API Summarizer. Esse resumo é atualizado dinamicamente sempre que um usuário filtra as avaliações (por exemplo, por classificação por estrelas ou outros critérios), fornecendo uma visão geral rápida e abrangente do feedback relevante do comprador.
— Ziyi Liang, engenheiro de software sênior, Miravia
Inicialmente, o recurso de resumo de avaliações de usuários da Miravia dependia de um serviço de IA do lado do servidor. Eles descobriram que o Gemini Nano que executa a IA do lado do cliente pode oferecer resultados comparáveis, com uma redução nos custos de manutenção. Essa vantagem é particularmente clara para itens populares e de venda rápida, cujas avaliações são constantemente atualizadas.
Embora a implementação da Miravia exija busca e resumo de avaliações em tempo real, seja a inferência no servidor ou no navegador, a IA do lado do cliente é muito mais eficiente à medida que a frequência aumenta. Eles estão satisfeitos com a performance geral.
Primeiro, a Miravia verifica a compatibilidade de recursos e dispositivos.
// 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.',
};
};
Em seguida, a Miravia resume as avaliações disponíveis. As avaliações são unidas a um período adicional para tornar a entrada mais coerente.
/**
* 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.'
);
}
};
Melhoria nas conversões
Desde que a API Summarizer ficou disponível na produção, a Miravia descobriu que os resumos levam a:
- 12,4% de conversão maior nas páginas de produtos.
- 3,3% de conversão maior em todo o site.
Práticas recomendadas
Se a entrada de avaliação exceder o limite de token, siga estas mitigações:
- Use uma amostra menor (como as quatro avaliações mais recentes) na API. Isso ajuda a gerar resultados mais rápidos. Consulte nossas orientações sobre como escalonar o resumo do lado do cliente.
- O
QuotaExceededErrorfornece mais informações sobre os tokens solicitados na entrada. O objetosummarizertem uma propriedadeinputQuotaque indica o limite de token da API. Isso permite feedback em tempo real e desativa a funcionalidade se a entrada exceder o limite.
Talvez você queira considerar uma abordagem híbrida para garantir uma experiência perfeita para todos os usuários. Na primeira vez que uma API de IA integrada é chamada, o navegador precisa fazer o download do modelo.
- A Miravia usou um modelo do lado do servidor para fornecer um resumo inicial enquanto o modelo estava sendo baixado. Quando o modelo integrado estava pronto, o site passou a realizar a inferência do lado do cliente.
Você sempre deve se esforçar para criar uma interface amigável e comunicativa:
- Implemente uma barra de progresso para downloads de modelos e mitigue atrasos na resposta.
- Considere a transparência sobre o download do modelo. Os sites brilhantes notificaram os usuários sobre o download do modelo para permitir a transparência e o consentimento do uso de recursos. Dessa forma, os usuários podem aceitar ou recusar antes de continuar.
Conclusões e recomendações
Esses exemplos reais da redBus e da Miravia demonstram como a API Summarizer ajudou os usuários a tomar decisões informadas rapidamente, fornecendo resumos concisos e relevantes de avaliações de usuários. A capacidade da API de trabalhar do lado do cliente, sem custo comercial adicional e baixa complexidade técnica, a torna uma opção viável para casos de uso semelhantes em que as informações precisam ser resumidas. Todas as APIs de IA integradas permitem casos de uso práticos de IA do lado do cliente.
Quer saber como a API Summarizer pode ajudar em outros casos de uso? Também compartilhamos como a API Summarizer aumenta o engajamento do artigo.
Você está criando algo novo com essas APIs? Compartilhe conosco em @ChromiumDev no X ou em Chromium para desenvolvedores no LinkedIn.
Recursos
- Saiba mais sobre a API Summarizer.
- Comece a usar APIs integradas no Chrome.
- Leia o estudo de caso da API Prompt sobre como capacitar blogueiros.
- Leia o estudo de caso do Translation and Language Detector.
- Leia como a API Summarizer ajuda os sites brilhantes e a Terra a criar resumos de artigos envolventes
Agradecimentos
Agradecemos a Makakhov Andrey e Ziyi Liang da Miravia (Alibaba Group), Amit Kumar da redBus, Swetha Gopalakrishnan, Alexandra Klepper, Thomas Steiner e Kenji Baheux por ajudar a escrever e revisar este documento.