Documentos costumam ser extensos e não podem ser exibidos integralmente nos resultados de busca. Para resolver isso, configure resumos e realces de resultados de busca. O sistema extrai trechos que contêm os termos da consulta para ajudar os usuários a determinar rapidamente a relevância do resultado. Personalize a exibição dos resultados de busca no console. Após a configuração, essas definições são aplicadas automaticamente às consultas de busca por API, sem necessidade de especificá-las em cada requisição. Também é possível substituir essas configurações para uma consulta específica usando o parâmetro summary na requisição de API. Para mais informações, consulte Iniciar requisições de busca.
Parâmetros
Campo: campo para o qual gerar o resumo do resultado de busca.
Comprimento do trecho: comprimento máximo total do resumo do resultado de busca.
Tag de destaque: tag HTML usada para realçar os termos da consulta.
Conector de trechos: caractere ou string usado para unir os trechos.
Número de trechos: quantidade de trechos a exibir dentro do comprimento de resumo especificado.
Configure no console
No console, acesse OpenSearch High-performance Search Edition > Feature Extensions > Search Result Display e configure as opções na seção Search Result Summary.
O exemplo a seguir mostra a configuração de realce com a tag definida como
em.
Na seção Search Result Summary do console, o comprimento do trecho para o campo title está definido como 50, a tag de destaque como em, o conector de trechos como ... e o número de trechos como 5.
Configuração de API e sdk
API: especifique o parâmetro
summaryna requisição. Para mais informações, consulte Iniciar requisições de busca.-
sdk: o exemplo a seguir demonstra como configurar o resumo do resultado de busca usando o Java sdk:
// Configure the search result summary. The SearchParams object provides a simple way to do this. Summary summ = new Summary("name"); summ.setSummary_field("name");// The field to which the summary applies. This must be an analyzable text field. summ.setSummary_len("50");// The segment length. summ.setSummary_element("em"); // The highlight tag. summ.setSummary_ellipsis("...");// The segment connector. summ.setSummary_snippet("1");// The number of segments.Nota:
Ao usar o objeto
summaryda classeSearchParams, não é possível especificar prefixos ou sufixos personalizados para a tag de destaque. Use um nome completo de tag HTML. O prefixo e o sufixo assumem os valores padrão < e >, respectivamente. Por exemplo, se você definir a tag de destaque comoem, o resultado JSON retornado será formatado comoAlibaba Cloud<em>OpenSearch</em>product document.-
Para definir prefixo e sufixo personalizados para a tag de destaque no sdk, utilize o objeto
searchParamsBuilder.// A utility class for SearchParams that simplifies operations. SearchParamsBuilder paramsBuilder = SearchParamsBuilder.create(searchParams); // Use the SearchParamsBuilder object to add the search result summary. paramsBuilder.addCustomParam("summary", "summary_field:name,summary_ellipsis:...,summary_snipped:1,summary_len:50,summary_element_prefix:<abc>,summary_element_postfix:</abc>"); // To specify multiple summary_field values, separate them with semicolons (;).Notas de uso
O realce aplica-se apenas aos termos da consulta. O campo a ser realçado deve estar indexado; caso contrário, o recurso pode não funcionar corretamente.
Não é possível configurar resumos e realce separadamente.
Se você configurar resumos para vários campos, os termos correspondentes da consulta serão realçados em todos os campos especificados.
Termos correspondentes que aparecerem além do limite de 10.000 bytes no conteúdo não serão realçados.
A criação de tipos diferentes de analisadores para o mesmo campo, como um analisador padrão de chinês e um analisador de caractere único, pode causar falhas no realce. Por exemplo, o conteúdo pode ser realçado com base em apenas um analisador ou um conteúdo incorreto pode ser realçado.
O realce pode não funcionar corretamente se uma consulta utilizar múltiplos analisadores.
**Por padrão, caracteres especiais nos trechos realçados são filtrados do documento retornado. Para exibir esses caracteres, adicione a cláusula personalizada
kvpairs=filter_punc:0à consulta e desative essa filtragem.**