Puedes especificar condiciones de aumento en tu solicitud de búsqueda para promocionar o descender de nivel ciertos documentos en los resultados de la búsqueda. Cuando un documento cumple con las condiciones especificadas, se le aplican valores de mejora y los resultados se ordenan según corresponda. También puedes especificar valores numéricos y de marca de tiempo personalizados que te permitan ordenar los resultados según parámetros como la popularidad y la actualidad.
La especificación de boosting en una solicitud de búsqueda es diferente de un control de boosting que se adjunta a una configuración de entrega. Para obtener más información sobre los controles de aumento, consulta Acerca de los controles de aumento.
En esta página, se describen los siguientes tipos de especificaciones de aumento:
- Aumenta con una condición fija
- Aumenta la visibilidad con atributos numéricos personalizados
- Aumenta según la actualidad
Impulso con una condición fija
Para aumentar los resultados en una cantidad fija según si cumplen con una condición, haz lo siguiente:
Especifica la especificación de boosting en el campo
boostSpeccuando envíes una solicitudservingConfigs.search.{ "boostSpec": { "conditionBoostSpecs": { "condition": "BOOST_CONDITION", "boost": BOOST_VALUE } } }La especificación contiene los siguientes parámetros:
BOOST_CONDITION: es una expresión de filtro de texto para seleccionar los documentos a los que se aplica la mejora. El filtro debe evaluarse como un valor booleano.BOOST_VALUE: Es un número de punto flotante en el rango [-1,1]. Cuando el valor es negativo, los resultados se descienden de nivel (aparecen más abajo en los resultados). Cuando el valor es positivo, se promocionan los resultados (aparecen más arriba en los resultados).
Ejemplo de caso de uso
Supongamos que tu almacén de datos contiene información sobre hoteles y sus calificaciones por estrellas. Quieres
impulsar los hoteles con calificaciones por estrellas superiores o iguales a tres. La calificación por estrellas está disponible en el campo numérico star_rating. Puedes especificar el
condition en el boostSpec como star_rating >= 3.0 y un valor de aumento de 0.7
para aumentar todos los hoteles con star_rating de 3.0 o más en un importe igual.
{
"boostSpec": {
"conditionBoostSpecs": {
"condition": "star_rating>=3.0",
"boost": 0.7
}
}
}
Aumenta con atributos numéricos personalizados
Puedes aumentar los resultados según los atributos numéricos personalizados de forma lineal por partes especificando los puntos de control y sus valores de aumento correspondientes.
Para especificar una especificación de aumento con atributos numéricos personalizados, haz lo siguiente:
Especifica la especificación de boosting en el campo
boostSpeccuando envíes una solicitudservingConfigs.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 } ] } } } }La especificación contiene los siguientes parámetros:
BOOST_CONDITION: es una expresión de filtro de texto para seleccionar los documentos a los que se aplica el aumento. El filtro debe evaluarse como un valor booleano.CUSTOM_ATTRIBUTE_FIELD_NAME: Es el nombre del campo del atributo numérico personalizado cuyo valor decide el importe de la mejora.CUSTOM_ATTRIBUTE_VALUE: Es el valor numérico del atributo personalizado para un punto de control determinado con un tipo de datos de cadena. Por ejemplo,"3.3"o"12". Para obtener más información, consulta ControlPoint.BOOST_AMOUNT: Es un número de punto flotante en el rango [-1,1]. Cuando el valor es negativo, los resultados se descienden de nivel (aparecen más abajo en los resultados). Cuando el valor es positivo, se promocionan los resultados (aparecen más arriba en los resultados). Indica el importe de aumento asignado al atributo personalizado para un punto de control determinado.
Cuando un documento en el resultado de la búsqueda cumple con la condición especificada, se aplica un importe de mejora de la siguiente manera:
| Valor de atributo | Importe de la mejora |
|---|---|
| Menor que el primer punto de control | Es igual al importe de aumento del primer punto de control. |
| Igual al punto de control | Es igual al importe de aumento asignado. |
| Entre puntos de control | Se calcula mediante la interpolación lineal. |
| Mayor que el último punto de control | Es igual al importe de aumento del último punto de control. |
Ejemplo de caso de uso
Supongamos que tu almacén de datos contiene información sobre hoteles y sus calificaciones por estrellas. Quieres mejorar los resultados de la búsqueda de hoteles en proporción a sus calificaciones por estrellas. Puedes definir la especificación de aumento de la siguiente manera:
{
"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
}
]
}
}
}
}
En esta situación, los resultados de la búsqueda se potencian de la siguiente manera:
| Calificación por estrellas | Importe de la mejora |
|---|---|
| menor o igual que 3.5 | 0.25 |
| entre 3.5 y 4.0 | entre 0.25 y 0.30, calculado con la interpolación lineal |
| igual a 4.0 | 0.30 |
| entre 4.0 y 4.5 | entre 0.30 y 0.32, calculado con interpolación lineal |
| mayor o igual que 4.5 | 0.32 |
Aumenta según la actualidad
Puedes aumentar los resultados según los atributos de fecha y hora de forma lineal por partes especificando los puntos de control y sus valores de aumento correspondientes.
Para especificar una especificación de aumento con atributos de fecha y hora personalizados, haz lo siguiente:
Especifica la especificación de boosting en el campo
boostSpeccuando envíes una solicitudservingConfigs.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 } ] } } } }La especificación contiene los siguientes parámetros:
BOOST_CONDITION: es una expresión de filtro de texto para seleccionar los documentos a los que se aplica la mejora. El filtro debe evaluarse como un valor booleano.DATETIME_FIELD_NAME: Es el nombre del campo de un atributoDATETIMEpersonalizado, como la fecha de publicación o la fecha de la última actualización, o un atributo predefinido inferido por Google, comodatePublished.DURATION_VALUE: Es el valor de duración en el tipo de datosdayTimeDurationque decide la actualidad de un documento. Se calcula como la duración entre la fecha y hora en que se realiza la búsqueda y la fecha y hora del atributo de fecha y hora personalizado de un documento. El valor de la duración se debe especificar según el formato ISO 8601 en el patrón[nD][T[nH][nM][nS]]. Por ejemplo, la duración entre el 1 de enero de 2024 y el 1 de marzo de 2024 se puede expresar como59D. Del mismo modo, la duración de dos días y medio se puede expresar como2DT12H. Para obtener más información, consulta ControlPoint.BOOST_AMOUNT: Es un número de punto flotante en el rango [-1,1]. Cuando el valor es negativo, los resultados se descienden de nivel (aparecen más abajo en los resultados). Cuando el valor es positivo, se promocionan los resultados (aparecen más arriba en los resultados). Indica el importe de aumento asignado al atributo de fecha y hora personalizado para un punto de control determinado.
Cuando un documento en el resultado de la búsqueda cumple con la condición especificada, se aplica un importe de mejora de la siguiente manera:
| Valor de duración | Importe de la mejora |
|---|---|
| Menor que el primer punto de control | Es igual al importe de aumento del primer punto de control. |
| Igual a un punto de control determinado | Es igual al importe de aumento asignado. |
| Entre puntos de control | Se calcula mediante interpolación lineal. |
| Mayor que el último punto de control | Es igual al importe de aumento del último punto de control. |
Caso de uso de ejemplo con un atributo datetime personalizado
Supongamos que tu almacén de datos contiene datos estructurados en los que cada documento tiene una fecha de publicación. Quieres aumentar los resultados de la búsqueda en proporción a su actualidad. Puedes definir la especificación de aumento de la siguiente manera:
{
"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
}
]
}
}
}
}
En esta situación, los resultados de la búsqueda se potencian de la siguiente manera:
| Actualidad | Importe de la mejora |
|---|---|
| menor o igual que 7 días | 0.40 |
| entre 7 y 30 días | entre 0.40 y 0.37, calculado con la interpolación lineal |
| igual a 30 días | 0.37 |
| entre 30 y 60 días | entre 0.37 y 0.32, calculado con interpolación lineal |
| igual a 60 días | 0.32 |
| entre 60 y 90 días | entre 0.32 y 0.0, calculado con interpolación lineal |
| mayor o igual que 90 días | 0.0 |
Regula el importe de la mejora con el filtro de relevancia
Además de los factores que influyen en la clasificación de un resultado, como
la concordancia de palabras clave, la concordancia de contexto y la relevancia, la condición de aumento afecta la clasificación de
un resultado de forma significativa. Por lo tanto, debes calibrar con cuidado el importe de la mejora,
en especial cuando uses el campo boostSpec con el filtro de relevancia. Para obtener más
información sobre el filtro de relevancia, consulta
Filtra las búsquedas por relevancia a nivel del documento.
Supongamos que tienes diferentes documentos con distintas fechas de publicación. Para una consulta en particular, la siguiente tabla representa la clasificación absoluta sin implementar ningún importe de aumento ni filtros de relevancia, y también indica la relevancia de los documentos para la consulta.
| Documento | Fecha de publicación | Relevancia | Clasificación |
|---|---|---|---|
| A | 1 de febrero de 2024 | Alta | #1 |
| B | 1 de marzo de 2024 | Alta | N.º 2 |
| C | 1 de abril de 2024 | Más baja | #3 |
| D | 1 de mayo de 2024 | Media | #4 |
| E | 1 de junio de 2024 | Baja | #5 |
El 6 de junio de 2024, agregas las siguientes condiciones de búsqueda en tu solicitud de búsqueda:
- Se estableció el filtro de relevancia en
LOW. - Mejora el valor de modo que los documentos publicados durante los últimos 31 días se mejoren en un valor de 0.7 y los documentos con más de una semana de antigüedad, pero con menos de 60 días, se mejoren en un valor de 0.6.
En el resultado de la búsqueda, los resultados se filtran primero por relevancia y, luego, se aplica el importe de aumento. Por lo tanto, las condiciones aplicadas alteran la clasificación de las páginas en los resultados de la siguiente manera:
| Documento | Fecha de publicación | Relevancia | Clasificación |
|---|---|---|---|
| E | 1 de junio de 2024 | Baja | #1 |
| D | 1 de mayo de 2024 | Media | N.º 2 |
| A | 1 de febrero de 2024 | Alta | #3 |
| B | 1 de marzo de 2024 | Alta | #4 |
El resultado con la relevancia más baja se excluye debido al filtro de relevancia. Los documentos que son menos relevantes para una consulta se clasifican como resultados principales porque se potencian con un gran importe de potenciación. Los resultados más pertinentes se clasifican más abajo.
Por lo tanto, Google recomienda que comiences el importe de aumento desde un valor bajo y preciso, y que lo ajustes según el resultado de la búsqueda. En este ejemplo, comenzar con importes de aumento de 0.1 o menos podría recuperar resultados más pertinentes en la parte superior.
¿Qué sigue?
- Realiza una solicitud de búsqueda con la especificación de boosting
en el campo
boostSpec. - Para comprender el impacto de la mejora en la calidad de la búsqueda de una app de búsqueda personalizada, evalúa la calidad de la búsqueda. Para obtener más información, consulta Evalúa la calidad de la búsqueda.