Puoi specificare le condizioni di boosting nella richiesta di ricerca per promuovere o declassare determinati documenti nei risultati di ricerca. Quando un documento soddisfa le condizioni specificate, vengono applicati i valori di boost e i risultati vengono ordinati di conseguenza. Puoi anche specificare valori numerici e timestamp personalizzati che ti consentono di ordinare i risultati in base a parametri come popolarità e freschezza.
La specifica di boosting in una richiesta di ricerca è diversa da un controllo del boosting allegato a una configurazione di pubblicazione. Per ulteriori informazioni sui controlli di potenziamento, consulta Informazioni sui controlli di potenziamento.
In questa pagina vengono descritti i seguenti tipi di specifiche di boost:
- Aumentare con una condizione fissa
- Aumentare l'offerta utilizzando gli attributi numerici personalizzati
- Aumento in base all'aggiornamento
Aumentare l'offerta con una condizione fissa
Per aumentare i risultati di un importo fisso in base al fatto che soddisfino una condizione, svolgi le seguenti operazioni:
Specifica la specifica di boosting nel campo
boostSpec
quando invii una richiestaservingConfigs.search
.{ "boostSpec": { "conditionBoostSpecs": { "condition": "BOOST_CONDITION", "boost": BOOST_VALUE } } }
La specifica contiene i seguenti parametri:
BOOST_CONDITION
: un'espressione di filtro di testo per selezionare i documenti a cui viene applicato il boost. Il filtro deve restituire un valore booleano.BOOST_VALUE
: un numero in virgola mobile nell'intervallo [-1,1]. Quando il valore è negativo, i risultati vengono declassati (vengono visualizzati più in basso nei risultati). Quando il valore è positivo, i risultati vengono promossi (vengono visualizzati più in alto nei risultati).
Caso d'uso di esempio
Supponiamo che il tuo datastore contenga dati sugli hotel e sulle relative valutazioni a stelle. Vuoi
promuovere gli hotel con una classificazione in stelle pari o superiore a tre. La valutazione
a stelle è disponibile nel campo numerico star_rating
. Puoi specificare condition
in boostSpec
come star_rating >= 3.0
e un valore di incremento di 0,7 per aumentare in egual misura tutti gli hotel con star_rating
pari a 3,0 o superiore.
{
"boostSpec": {
"conditionBoostSpecs": {
"condition": "star_rating>=3.0",
"boost": 0.7
}
}
}
Aumentare l'offerta utilizzando attributi numerici personalizzati
Puoi migliorare i risultati in base agli attributi numerici personalizzati in modo lineare a tratti specificando i punti di controllo e i relativi valori di incremento.
Per specificare una specifica di aggiustamento utilizzando attributi numerici personalizzati, segui questi passaggi:
Specifica la specifica di boosting nel campo
boostSpec
quando invii una richiestaservingConfigs.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 specifica contiene i seguenti parametri:
BOOST_CONDITION
: un'espressione di filtro di testo per selezionare i documenti a cui viene applicato il boost. Il filtro deve restituire un valore booleano.CUSTOM_ATTRIBUTE_FIELD_NAME
: il nome del campo dell'attributo numerico personalizzato il cui valore determina l'importo dell'aggiustamento.CUSTOM_ATTRIBUTE_VALUE
: il valore numerico dell'attributo personalizzato per un determinato punto di controllo con un tipo di dati stringa. Ad esempio,"3.3"
o"12"
. Per ulteriori informazioni, consulta ControlPoint.BOOST_AMOUNT
: un numero in virgola mobile nell'intervallo [-1,1]. Quando il valore è negativo, i risultati vengono declassati (vengono visualizzati più in basso nei risultati). Quando il valore è positivo, i risultati vengono promossi (vengono visualizzati più in alto nei risultati). Indica l'importo dell'incremento mappato all'attributo personalizzato per un determinato punto di controllo.
Quando un documento nel risultato di ricerca soddisfa la condizione specificata, viene applicato un importo di boost come segue:
Valore attributo | Importo del boost |
---|---|
Meno del primo punto di controllo | È uguale all'importo dell'incremento del primo punto di controllo |
Uguale al punto di controllo | È uguale all'importo del boost mappato |
Tra i punti di controllo | Viene calcolato mediante interpolazione lineare |
Superiore all'ultimo punto di controllo | È uguale all'importo del potenziamento dell'ultimo punto di controllo |
Caso d'uso di esempio
Supponiamo che il tuo datastore contenga dati sugli hotel e sulle relative valutazioni a stelle. Vuoi migliorare i risultati di ricerca di hotel in proporzione alla loro classificazione in stelle. Puoi definire la specifica di boost nel seguente modo:
{
"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
}
]
}
}
}
}
Per questo scenario, i risultati di ricerca vengono migliorati nel seguente modo:
Stelle | Importo del boost |
---|---|
minore o uguale a 3,5 | 0,25 |
tra 3,5 e 4,0 | tra 0,25 e 0,30, calcolato utilizzando l'interpolazione lineare |
uguale a 4,0 | 0,30 |
tra 4 e 4,5 | tra 0,30 e 0,32, calcolato utilizzando l'interpolazione lineare |
maggiore o uguale a 4,5 | 0,32 |
Incremento in base alla freschezza
Puoi aumentare i risultati in base agli attributi di data e ora in modo lineare a tratti specificando i punti di controllo e i relativi valori di incremento.
Per specificare una specifica di boost utilizzando attributi personalizzati di data e ora:
Specifica la specifica di boosting nel campo
boostSpec
quando invii una richiestaservingConfigs.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 specifica contiene i seguenti parametri:
BOOST_CONDITION
: un'espressione di filtro di testo per selezionare i documenti a cui viene applicato il boost. Il filtro deve restituire un valore booleano.DATETIME_FIELD_NAME
: il nome del campo di un attributoDATETIME
personalizzato, ad esempio data di pubblicazione o data dell'ultimo aggiornamento, o un attributo predefinito dedotto da Google, ad esempiodatePublished
.DURATION_VALUE
: il valore della durata nel tipo di datidayTimeDuration
che determina la freschezza di un documento. Viene calcolato come la durata tra la data e l'ora in cui viene eseguita la ricerca e la data e l'ora dell'attributo data e ora personalizzato di un documento. Il valore della durata deve essere specificato in base al formato ISO 8601 nel pattern[nD][T[nH][nM][nS]]
. Ad esempio, la durata tra il 1° gennaio 2024 e il 1° marzo 2024 può essere espressa come59D
. Analogamente, la durata di due giorni e mezzo può essere espressa come2DT12H
. Per ulteriori informazioni, consulta ControlPoint.BOOST_AMOUNT
: un numero in virgola mobile nell'intervallo [-1,1]. Quando il valore è negativo, i risultati vengono declassati (vengono visualizzati più in basso nei risultati). Quando il valore è positivo, i risultati vengono promossi (vengono visualizzati più in alto nei risultati). Indica l'importo dell'incremento mappato all'attributo data e ora personalizzato per un determinato punto di controllo.
Quando un documento nel risultato di ricerca soddisfa la condizione specificata, viene applicato un importo di boost come segue:
Valore durata | Importo del boost |
---|---|
Meno del primo punto di controllo | È uguale all'importo dell'incremento del primo punto di controllo |
Uguale a un punto di controllo specificato | È uguale all'importo del boost mappato |
Tra i punti di controllo | Viene calcolato mediante interpolazione lineare |
Superiore all'ultimo punto di controllo | È uguale all'importo del potenziamento dell'ultimo punto di controllo |
Esempio di caso d'uso che utilizza un attributo personalizzato di data e ora
Supponiamo che il tuo datastore contenga dati strutturati in cui ogni documento ha una data di pubblicazione. Vuoi migliorare i risultati di ricerca in proporzione alla loro freschezza. Puoi definire la specifica di boost nel seguente modo:
{
"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
}
]
}
}
}
}
Per questo scenario, i risultati di ricerca vengono migliorati nel seguente modo:
Aggiornamento | Importo del boost |
---|---|
minore o uguale a 7 giorni | 0,40 |
tra 7 e 30 giorni | tra 0,40 e 0,37, calcolato utilizzando l'interpolazione lineare |
pari a 30 giorni | 0,37 |
tra 30 e 60 giorni | tra 0,37 e 0,32, calcolato utilizzando l'interpolazione lineare |
uguale a 60 giorni | 0,32 |
tra 60 e 90 giorni | tra 0,32 e 0, calcolato utilizzando l'interpolazione lineare |
maggiore o uguale a 90 giorni | 0.0 |
Regolare l'importo del boost con il filtro Pertinenza
Oltre ai fattori che influenzano il ranking di un risultato, come
la corrispondenza delle parole chiave, la corrispondenza contestuale e la pertinenza, la condizione di incremento influisce in modo significativo sul ranking di
un risultato. Pertanto, devi calibrare con attenzione l'importo del boost, soprattutto quando utilizzi il campo boostSpec
con il filtro per pertinenza. Per ulteriori
informazioni sul filtro per pertinenza, consulta
Filtrare le ricerche in base alla pertinenza a livello di documento.
Supponiamo che tu abbia documenti diversi con date di pubblicazione diverse. Per una determinata query, la tabella seguente rappresenta la classificazione assoluta senza implementare alcun importo di boost o filtri di pertinenza e indica la pertinenza dei documenti alla query.
Documento | Data di pubblicazione | Pertinenza | Classifica |
---|---|---|---|
A | 1° febbraio 2024 | Alta | #1 |
B | 1° mar 2024 | Alta | #2 |
C | 1° aprile 2024 | Minimo | #3 |
D | 1° maggio 2024 | Media | #4 |
E | 1° giugno 2024 | Bassa | #5 |
Il 6 giugno 2024 aggiungi le seguenti condizioni di ricerca alla tua richiesta:
- Il filtro per pertinenza è impostato su
LOW
. - Aumenta il valore in modo che i documenti pubblicati negli ultimi 31 giorni vengano aumentati di un valore pari a 0,7 e i documenti più vecchi di una settimana, ma più recenti di 60 giorni, vengano aumentati di un valore pari a 0,6.
Nell'output della ricerca, i risultati vengono prima filtrati in base alla pertinenza e poi viene applicato l'importo del boost. Pertanto, le condizioni applicate modificano la classifica delle pagine nei risultati nel seguente modo:
Documento | Data di pubblicazione | Pertinenza | Classifica |
---|---|---|---|
E | 1° giugno 2024 | Bassa | #1 |
D | 1° maggio 2024 | Media | #2 |
A | 1° febbraio 2024 | Alta | #3 |
B | 1° mar 2024 | Alta | #4 |
Il risultato con la pertinenza più bassa viene filtrato a causa del filtro per pertinenza. I documenti meno pertinenti a una query vengono classificati come risultati principali perché sono potenziati da un valore di boost elevato. I risultati più pertinenti hanno un ranking inferiore.
Pertanto, Google consiglia di iniziare con un valore basso e preciso per l'incremento e di aggiustarlo in base all'output della ricerca. In questo esempio, iniziare con importi di boost pari o inferiori a 0,1 potrebbe generare risultati più pertinenti nella parte superiore della pagina.
Passaggi successivi
- Invia una richiesta di ricerca con la specifica di boosting
nel campo
boostSpec
. - Per comprendere l'impatto del boost sulla qualità della ricerca di un'app di ricerca personalizzata, valuta la qualità della ricerca. Per maggiori informazioni, vedi Valutare la qualità della ricerca.