Pode especificar condições de aumento na sua solicitação de pesquisa para promover ou rebaixar determinados documentos nos resultados da pesquisa. Quando um documento cumpre as condições especificadas, são-lhe aplicados valores de aumento e os resultados são ordenados em conformidade. Também pode especificar valores numéricos personalizados e valores de data/hora que lhe permitem ordenar os resultados com base em parâmetros como popularidade e novidade.
A especificação de aumento num pedido de pesquisa é diferente de um controlo de aumento que está anexado a uma configuração de publicação. A especificação de aumento no campo boostSpec
substitui o controlo de aumento definido no campo boostAction
de uma configuração de publicação. Para mais informações sobre os controlos de aumento, consulte o artigo
Acerca dos controlos de aumento.
Esta página descreve os seguintes tipos de especificações de aumento:
- Aumente com uma condição fixa
- Aumente o desempenho com atributos numéricos personalizados
- Otimize de acordo com a atualidade
Pode aplicar estas especificações de aumento às apps de pesquisa de multimédia de consulta e às apps de pesquisa personalizadas que contêm dados estruturados, não estruturados e de Websites. Estas especificações não são aplicáveis a apps de pesquisa de cuidados de saúde.
Aumente com uma condição fixa
Para aumentar os resultados por um valor fixo com base no cumprimento de uma condição, faça o seguinte:
Especifique a especificação do aumento no campo
boostSpec
quando enviar um pedidoservingConfigs.search
.{ "boostSpec": { "conditionBoostSpecs": { "condition": "BOOST_CONDITION", "boost": BOOST_VALUE } } }
A especificação contém os seguintes parâmetros:
BOOST_CONDITION
: uma expressão de filtro de texto para selecionar os documentos aos quais o aumento se aplica. O filtro tem de ser avaliado como um valor booleano.BOOST_VALUE
: um número de vírgula flutuante no intervalo [-1,1]. Quando o valor é negativo, os resultados são despromovidos (aparecem mais abaixo nos resultados). Quando o valor é positivo, os resultados são promovidos (aparecem mais acima nos resultados).
Exemplo de utilização
Suponhamos que o seu repositório de dados contém dados sobre hotéis e as respetivas classificações por estrelas. Quer
aumentar os hotéis com classificações de estrelas iguais ou superiores a três. A classificação por estrelas está disponível no campo numérico star_rating
. Pode especificar o condition
no boostSpec
como star_rating >= 3.0
e um valor de aumento de 0,7 para aumentar
todos os hotéis com star_rating
de 3,0 ou superior por um valor igual.
{
"boostSpec": {
"conditionBoostSpecs": {
"condition": "star_rating>=3.0",
"boost": 0.7
}
}
}
Aumente o desempenho com atributos numéricos personalizados
Pode aumentar os resultados com base em atributos numéricos personalizados de forma linear por partes especificando pontos de controlo e os respetivos valores de aumento.
Para especificar uma especificação de aumento usando atributos numéricos personalizados, faça o seguinte:
Especifique a especificação do aumento no campo
boostSpec
quando enviar um pedidoservingConfigs.search
.{ "boostSpec": { "conditionBoostSpecs": { "condition": "BOOST_CONDITION", "boostControlSpec": { "attributeType": "NUMERICAL", "interpolationType": "LINEAR", "fieldName": "CUSTOM_ATTRIBUTE_FIELD_NAME", "controlPoints": [ { "attributeValue": "CUSTOM_ATTRIBUTE_VALUE_1", "boostAmount": BOOST_AMOUNT_1 }, { "attributeValue": "CUSTOM_ATTRIBUTE_VALUE_2", "boostAmount": BOOST_AMOUNT_2 } ] } } } }
A especificação contém os seguintes parâmetros:
BOOST_CONDITION
: uma expressão de filtro de texto para selecionar os documentos aos quais o aumento se aplica. O filtro tem de ser avaliado como um valor booleano.CUSTOM_ATTRIBUTE_FIELD_NAME
: o nome do campo do atributo numérico personalizado cujo valor decide o valor do aumento.CUSTOM_ATTRIBUTE_VALUE
: o valor numérico do atributo personalizado para um determinado ponto de controlo com um tipo de dados de string. Por exemplo,"3.3"
ou"12"
. Para mais informações, consulte o artigo ControlPoint.BOOST_AMOUNT
: um número de vírgula flutuante no intervalo [-1,1]. Quando o valor é negativo, os resultados são despromovidos (aparecem mais abaixo nos resultados). Quando o valor é positivo, os resultados são promovidos (aparecem mais acima nos resultados). Indica o valor de aumento mapeado para o atributo personalizado de um determinado ponto de controlo.
Quando um documento no resultado da pesquisa cumpre a condição especificada, é aplicado um valor de aumento da seguinte forma:
Valor do atributo | Valor do aumento |
---|---|
Inferior ao primeiro ponto de controlo | É igual ao valor do aumento do primeiro ponto de controlo |
Igual ao ponto de controlo | É igual ao valor do aumento mapeado |
Entre pontos de controlo | É calculado através da interpolação linear |
Superior ao último ponto de controlo | É igual ao valor do aumento do último ponto de controlo |
Exemplo de utilização
Suponhamos que o seu repositório de dados contém dados sobre hotéis e as respetivas classificações por estrelas. Quer aumentar os resultados da pesquisa de hotéis proporcionalmente às respetivas classificações por estrelas. Pode definir a especificação do aumento da seguinte forma:
{
"boostSpec": {
"conditionBoostSpecs": {
"condition": "star_rating >= 3.0",
"boostControlSpec": {
"attributeType": "NUMERICAL",
"interpolationType": "LINEAR",
"fieldName": "star_rating",
"controlPoints": [
{
"attributeValue": "3.5",
"boostAmount": 0.25
},
{
"attributeValue": "4.0",
"boostAmount": 0.30
},
{
"attributeValue": "4.5",
"boostAmount": 0.32
}
]
}
}
}
}
Neste cenário, os resultados da pesquisa são otimizados da seguinte forma:
Número de estrelas | Valor do aumento |
---|---|
inferior ou igual a 3,5 | 0,25 |
entre 3,5 e 4,0 | Entre 0,25 e 0,30, calculado através da interpolação linear |
igual a 4.0 | 0,30 |
entre 4,0 e 4,5 | entre 0,30 e 0,32, calculado através da interpolação linear |
superior ou igual a 4,5 | 0,32 |
Aumente de acordo com a atualidade
Pode aumentar os resultados com base nos atributos de data/hora de forma linear por partes especificando pontos de controlo e os respetivos valores de aumento.
Para especificar uma especificação de aumento usando atributos de data/hora personalizados, faça o seguinte:
Especifique a especificação do aumento no campo
boostSpec
quando enviar um pedidoservingConfigs.search
.{ "boostSpec": { "conditionBoostSpecs": { "condition": "BOOST_CONDITION", "boostControlSpec": { "fieldName": "DATETIME_FIELD_NAME", "attributeType": "FRESHNESS", "interpolationType": "LINEAR", "controlPoints": [ { "attributeValue": "DURATION_VALUE_1", "boostAmount": BOOST_AMOUNT_1 }, { "attributeValue": "DURATION_VALUE_2", "boostAmount": BOOST_AMOUNT_2 } ] } } } }
A especificação contém os seguintes parâmetros:
BOOST_CONDITION
: uma expressão de filtro de texto para selecionar os documentos aos quais o aumento se aplica. O filtro tem de ser avaliado como um valor booleano.DATETIME_FIELD_NAME
: o nome do campo de um atributoDATETIME
personalizado, como a data de publicação ou a data da última atualização, ou um atributo inferido pela Google predefinido, comodatePublished
.DURATION_VALUE
: o valor de duração nodayTimeDuration
tipo de dados que determina a atualidade de um documento. Isto é calculado como a duração entre a data/hora em que a pesquisa é realizada e a data/hora do atributo de data/hora personalizado de um documento. O valor da duração tem de ser especificado de acordo com o formato ISO 8601 no padrão[nD][T[nH][nM][nS]]
. Por exemplo, a duração entre 1 de janeiro de 2024 e 1 de março de 2024 pode ser expressa como59D
. Da mesma forma, a duração de dois dias e meio pode ser expressa como2DT12H
. Para mais informações, consulte o artigo ControlPoint.BOOST_AMOUNT
: um número de vírgula flutuante no intervalo [-1,1]. Quando o valor é negativo, os resultados são despromovidos (aparecem mais abaixo nos resultados). Quando o valor é positivo, os resultados são promovidos (aparecem mais acima nos resultados). Indica o valor do aumento mapeado para o atributo de data/hora personalizado para um determinado ponto de controlo.
Quando um documento no resultado da pesquisa cumpre a condição especificada, é aplicado um valor de aumento da seguinte forma:
Valor da duração | Valor do aumento |
---|---|
Inferior ao primeiro ponto de controlo | É igual ao valor do aumento do primeiro ponto de controlo |
Igual a um determinado ponto de controlo | É igual ao valor do aumento mapeado |
Entre pontos de controlo | É calculado por interpolação linear |
Superior ao último ponto de controlo | É igual ao valor do aumento do último ponto de controlo |
Exemplo de utilização com um atributo de data/hora personalizado
Suponhamos que o seu repositório de dados contém dados estruturados em que cada documento tem uma data de publicação. Quer aumentar os resultados da pesquisa proporcionalmente à sua atualidade. Pode definir a especificação do aumento da seguinte forma:
{
"boostSpec": {
"conditionBoostSpecs": {
"condition": true,
"boostControlSpec": {
"fieldName": "publication_date",
"attributeType": "FRESHNESS",
"interpolationType": "LINEAR",
"controlPoints": [
{
"attributeValue": "7D",
"boostAmount": 0.40
},
{
"attributeValue": "30D",
"boostAmount": 0.37
},
{
"attributeValue": "60D",
"boostAmount": 0.32
},
{
"attributeValue": "90D",
"boostAmount": 0
}
]
}
}
}
}
Neste cenário, os resultados da pesquisa são otimizados da seguinte forma:
Atualidade | Valor do aumento |
---|---|
inferior ou igual a 7 dias | 0,40 |
entre 7 e 30 dias | entre 0,40 e 0,37, calculado através da interpolação linear |
igual a 30 dias | 0,37 |
entre 30 e 60 dias | entre 0,37 e 0,32, calculado através da interpolação linear |
igual a 60 dias | 0,32 |
entre 60 e 90 dias | entre 0,32 e 0,0, calculado através da interpolação linear |
superior ou igual a 90 dias | 0.0 |
Exemplo de utilização com uma data da página inferida pela Google
Ao rastrear as páginas Web no seu arquivo de dados do Website, a Google infere os dados das páginas através das propriedades que se aplicam ao seu conteúdo. O Vertex AI Search adiciona estas propriedades de dados de páginas inferidas ao seu esquema. Estes dados inferidos incluem as seguintes propriedades de data predefinidas:
datePublished
: a data e a hora em que a página foi publicada pela primeira vezdateModified
: a data e a hora em que a página foi modificada mais recentemente
Estas propriedades são indexadas automaticamente. Pode usar diretamente estas propriedades de data para enriquecer a sua pesquisa sem as adicionar ao esquema.
Pode usar estas propriedades predefinidas para melhorar a sua página. Por exemplo, pode definir a especificação do aumento definindo o campo fieldName
como pageModified
da seguinte forma:
{
"boostSpec": {
"conditionBoostSpecs": {
"condition": true,
"boostControlSpec": {
"fieldName": "dateModified",
"attributeType": "FRESHNESS",
"interpolationType": "LINEAR",
"controlPoints": [
{
"attributeValue": "7D",
"boostAmount": 0.35
},
{
"attributeValue": "30D",
"boostAmount": 0.30
}
]
}
}
}
}
A Google infere estas datas com base no melhor esforço e as datas inferidas podem não corresponder às datas reais. Estes campos só são preenchidos quando a Google tem uma confiança elevada. Quando estes valores de data estão em falta, estes campos tornam-se anuláveis.
Como prática recomendada, a Google recomenda que o proprietário do domínio ou o administrador do Website atualize estas propriedades para as suas páginas Web e que atualize manualmente o seu arquivo de dados do Website da Vertex AI Search após a atualização. Para mais informações, consulte a publicação no blogue Ajude a Pesquisa Google a saber qual a melhor data para a sua página Web e saiba como funcionam os dados estruturados na Pesquisa Google.
Para adicionar atributos de dados estruturados personalizados para enriquecer o seu índice, consulte o artigo Adicione atributos de dados estruturados personalizados ao esquema da loja de dados
Ajuste do valor do aumento
Além dos fatores que influenciam a classificação de um resultado, como a correspondência de palavras-chave, a correspondência de contexto e a relevância, a condição de aumento afeta significativamente a classificação de um resultado. Por conseguinte, tem de calibrar cuidadosamente o valor do aumento. A Google recomenda que comece com um valor de aumento baixo e preciso, como 0,1 ou menos, e o ajuste com base no resultado da pesquisa.
Exemplo de utilização com filtro de relevância
A regulamentação do valor do aumento é especialmente importante quando usa o campo boostSpec
com o filtro de relevância. Para mais informações sobre o filtro de relevância, consulte o artigo Filtre as pesquisas por relevância ao nível do documento.
Suponhamos que tem documentos diferentes com datas de publicação diferentes. Para uma consulta específica, a tabela seguinte representa a classificação absoluta sem implementar nenhuma condição de aumento nem filtro de relevância e indica a relevância dos documentos para a consulta.
Documento | Data de publicação | Relevância | Classificação |
---|---|---|---|
A | 1 de fevereiro de 2024 | Alto | #1 |
B | 1 de março de 2024 | Alto | #2 |
C | 1 de abril de 2024 | Mais baixas | #3 |
D | 1 de maio de 2024 | Médio | #4 |
E | 1 de junho de 2024 | Baixo | #5 |
A 6 de junho de 2024, adiciona as seguintes condições de pesquisa ao seu pedido de pesquisa:
- Filtro de relevância definido como
LOW
. - Aumente o valor de forma que os documentos publicados durante os últimos 31 dias sejam aumentados por um valor de 0,7 e os documentos com mais de uma semana, mas menos de 60 dias, sejam aumentados por um valor de 0,6.
No resultado da pesquisa, os resultados são primeiro filtrados por relevância e, em seguida, é aplicado o valor do aumento. Por conseguinte, as condições aplicadas alteram a classificação das páginas nos resultados da seguinte forma:
Documento | Data de publicação | Relevância | Classificação |
---|---|---|---|
E | 1 de junho de 2024 | Baixo | #1 |
D | 1 de maio de 2024 | Médio | #2 |
A | 1 de fevereiro de 2024 | Alto | #3 |
B | 1 de março de 2024 | Alto | #4 |
O resultado com a relevância mais baixa é filtrado devido ao filtro de relevância. Os documentos menos relevantes para uma consulta são classificados como principais resultados porque são aumentados por um valor de aumento elevado. Os resultados mais relevantes têm uma classificação inferior.
Por conseguinte, a Google recomenda que comece o valor do aumento com um valor baixo e preciso e ajuste o valor consoante o resultado da pesquisa. Neste exemplo, começar com valores de aumento de 0,1 ou menos pode gerar resultados mais relevantes na parte superior.
O que se segue?
- Faça um pedido de pesquisa com a especificação do aumento
no campo
boostSpec
. - Para compreender o impacto do aumento na qualidade da pesquisa de uma app de pesquisa personalizada, avalie a qualidade da pesquisa. Para mais informações, consulte Avalie a qualidade da pesquisa.