REST Resource: projects.locations.evaluations

Risorsa: valutazione

Una valutazione è una singola esecuzione (o run) di un processo di valutazione. Incapsula lo stato della valutazione e i dati risultanti.

Rappresentazione JSON
{
  "name": string,
  "evaluationSpec": {
    object (EvaluationSpec)
  },
  "qualityMetrics": {
    object (QualityMetrics)
  },
  "state": enum (State),
  "error": {
    object (Status)
  },
  "createTime": string,
  "endTime": string,
  "errorSamples": [
    {
      object (Status)
    }
  ]
}
Campi
name

string

Identificatore. Il nome completo della risorsa di Evaluation, nel formato projects/{project}/locations/{location}/evaluations/{evaluation}.

Questo campo deve essere una stringa codificata in UTF-8 con un limite di lunghezza di 1024 caratteri.

evaluationSpec

object (EvaluationSpec)

Obbligatorio. La specifica della valutazione.

qualityMetrics

object (QualityMetrics)

Solo output. Le metriche prodotte dalla valutazione, calcolate in media su tutti i SampleQuery nel SampleQuerySet.

Compilato solo quando lo stato della valutazione è RIUSCITO.

state

enum (State)

Solo output. Lo stato della valutazione.

error

object (Status)

Solo output. L'errore che si è verificato durante la valutazione. Viene compilato solo quando lo stato della valutazione è FAILED.

createTime

string (Timestamp format)

Solo output. Timestamp della creazione di Evaluation.

Utilizza RFC 3339, in cui l'output generato è sempre normalizzato in base al fuso orario UTC e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

endTime

string (Timestamp format)

Solo output. Timestamp del completamento di Evaluation.

Utilizza RFC 3339, in cui l'output generato è sempre normalizzato in base al fuso orario UTC e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

errorSamples[]

object (Status)

Solo output. Un campione degli errori riscontrati durante l'elaborazione della richiesta.

EvaluationSpec

Descrive la specifica della valutazione.

Rappresentazione JSON
{
  "querySetSpec": {
    object (QuerySetSpec)
  },

  // Union field search_spec can be only one of the following:
  "searchRequest": {
    object (SearchRequest)
  }
  // End of list of possible types for union field search_spec.
}
Campi
querySetSpec

object (QuerySetSpec)

Facoltativo. La specifica dell'insieme di query.

Campo unione search_spec. La specifica di ricerca. search_spec può essere solo uno dei seguenti:
searchRequest

object (SearchRequest)

Obbligatorio. La richiesta di ricerca utilizzata per eseguire la valutazione.

Sono supportati solo i seguenti campi all'interno di SearchRequest; se vengono forniti altri campi, verrà restituito un errore UNSUPPORTED:

SearchRequest

Richiesta di messaggio per il metodo SearchService.Search.

Rappresentazione JSON
{
  "servingConfig": string,
  "branch": string,
  "query": string,
  "imageQuery": {
    object (ImageQuery)
  },
  "pageSize": integer,
  "pageToken": string,
  "offset": integer,
  "oneBoxPageSize": integer,
  "dataStoreSpecs": [
    {
      object (DataStoreSpec)
    }
  ],
  "filter": string,
  "canonicalFilter": string,
  "orderBy": string,
  "userInfo": {
    object (UserInfo)
  },
  "languageCode": string,
  "regionCode": string,
  "facetSpecs": [
    {
      object (FacetSpec)
    }
  ],
  "boostSpec": {
    object (BoostSpec)
  },
  "params": {
    string: value,
    ...
  },
  "queryExpansionSpec": {
    object (QueryExpansionSpec)
  },
  "spellCorrectionSpec": {
    object (SpellCorrectionSpec)
  },
  "userPseudoId": string,
  "contentSearchSpec": {
    object (ContentSearchSpec)
  },
  "embeddingSpec": {
    object (EmbeddingSpec)
  },
  "rankingExpression": string,
  "rankingExpressionBackend": enum (RankingExpressionBackend),
  "safeSearch": boolean,
  "userLabels": {
    string: string,
    ...
  },
  "naturalLanguageQueryUnderstandingSpec": {
    object (NaturalLanguageQueryUnderstandingSpec)
  },
  "searchAsYouTypeSpec": {
    object (SearchAsYouTypeSpec)
  },
  "displaySpec": {
    object (DisplaySpec)
  },
  "session": string,
  "sessionSpec": {
    object (SessionSpec)
  },
  "relevanceThreshold": enum (RelevanceThreshold),
  "personalizationSpec": {
    object (PersonalizationSpec)
  },
  "relevanceScoreSpec": {
    object (RelevanceScoreSpec)
  },
  "searchAddonSpec": {
    object (SearchAddonSpec)
  }
}
Campi
servingConfig

string

Obbligatorio. Il nome risorsa della configurazione di pubblicazione della ricerca, ad esempio projects/*/locations/global/collections/default_collection/engines/*/servingConfigs/default_serving_config o projects/*/locations/global/collections/default_collection/dataStores/default_data_store/servingConfigs/default_serving_config. Questo campo viene utilizzato per identificare il nome della configurazione di pubblicazione, l'insieme di modelli utilizzati per eseguire la ricerca.

branch

string

Il nome della risorsa del ramo, ad esempio projects/*/locations/global/collections/default_collection/dataStores/default_data_store/branches/0.

Utilizza default_branch come ID ramo o lascia vuoto questo campo per cercare documenti nel ramo predefinito.

query

string

Query di ricerca non elaborata.

imageQuery

object (ImageQuery)

Query di immagini RAW.

pageSize

integer

Il numero massimo di Document da restituire. Il valore massimo consentito dipende dal tipo di dati. I valori superiori al valore massimo vengono forzati al valore massimo.

  • Siti web con indicizzazione di base: Predefinito 10, Massimo 25.
  • Siti web con indicizzazione avanzata: Predefinita 25, Massima 50.
  • Altro: predefinito 50, massimo 100.

Se questo campo è negativo, viene restituito un INVALID_ARGUMENT.

pageToken

string

Un token di pagina ricevuto da una precedente chiamata SearchService.Search. Forniscilo per recuperare la pagina successiva.

Durante la paginazione, tutti gli altri parametri forniti a SearchService.Search devono corrispondere alla chiamata che ha fornito il token di pagina. In caso contrario, viene restituito un errore INVALID_ARGUMENT.

offset

integer

Un numero intero con indice 0 che specifica l'offset corrente (ovvero la posizione del risultato iniziale tra i Document considerati pertinenti dall'API) nei risultati di ricerca. Questo campo viene preso in considerazione solo se pageToken non è impostato.

Se questo campo è negativo, viene restituito un INVALID_ARGUMENT.

Un offset elevato potrebbe essere limitato a una soglia ragionevole.

oneBoxPageSize

integer

Il numero massimo di risultati da restituire per OneBox. Questo si applica a ogni tipo di OneBox singolarmente. Il numero predefinito è 10.

dataStoreSpecs[]

object (DataStoreSpec)

Specifiche che definiscono i DataStore specifici da cercare, insieme alle configurazioni per questi datastore. Questo aspetto viene preso in considerazione solo per i Engine con più datastore. Per i motori con un unico datastore, devono essere utilizzate le specifiche direttamente sotto SearchRequest.

filter

string

La sintassi del filtro è costituita da un linguaggio di espressione per costruire un predicato da uno o più campi dei documenti da filtrare. L'espressione del filtro è sensibile alle maiuscole.

Se questo campo non è riconoscibile, viene restituito un INVALID_ARGUMENT.

Il filtro in Vertex AI Search viene eseguito mappando la chiave del filtro LHS a una proprietà chiave definita nel backend di Vertex AI Search. Questa mappatura viene definita dal cliente nello schema. Ad esempio, un cliente del settore dei media potrebbe avere un campo "nome" nel proprio schema. In questo caso, il filtro sarà simile a questo: filter --> name:'ANY("king kong")'

Per saperne di più sul filtraggio, inclusi sintassi e operatori di filtro, consulta Filtro.

canonicalFilter

string

Il filtro predefinito applicato quando un utente esegue una ricerca senza selezionare alcun filtro nella pagina di ricerca.

Il filtro applicato a ogni richiesta di ricerca quando è necessario un miglioramento della qualità, ad esempio l'espansione della query. Nel caso in cui una query non abbia un numero sufficiente di risultati, questo filtro verrà utilizzato per determinare se attivare o meno il flusso di espansione della query. Il filtro originale verrà comunque utilizzato per la ricerca con query estesa. Questo campo è vivamente consigliato per ottenere una qualità di ricerca elevata.

Per ulteriori informazioni sulla sintassi dei filtri, consulta SearchRequest.filter.

orderBy

string

L'ordine in cui vengono restituiti i documenti. I documenti possono essere ordinati in base a un campo in un oggetto Document. Lascia il campo vuoto se l'ordine è per pertinenza. L'espressione orderBy è sensibile alle maiuscole.

Per saperne di più sull'ordinamento dei risultati di ricerca sul sito web, vedi Ordinare i risultati di ricerca sul web. Per saperne di più sull'ordinamento dei risultati di ricerca relativi all'assistenza sanitaria, consulta Ordinare i risultati di ricerca relativi all'assistenza sanitaria. Se questo campo non è riconoscibile, viene restituito un INVALID_ARGUMENT.

userInfo

object (UserInfo)

Informazioni sull'utente finale. Consigliato vivamente per l'analisi e la personalizzazione. UserInfo.user_agent viene utilizzato per dedurre deviceType per l'analisi.

languageCode

string

Il codice lingua BCP-47, ad esempio "en-US" o "sr-Latn". Per ulteriori informazioni, vedi Campi standard. Questo campo aiuta a interpretare meglio la query. Se non viene specificato un valore, il codice della lingua della query viene rilevato automaticamente, ma potrebbe non essere preciso.

regionCode

string

Il codice Unicode paese/regione (CLDR) di una località, ad esempio "US" e "419". Per ulteriori informazioni, vedi Campi standard. Se impostato, i risultati verranno migliorati in base al codice regione fornito.

facetSpecs[]

object (FacetSpec)

Specifiche dei facet per la ricerca con facet. Se è vuoto, non vengono restituite sfaccettature.

Sono consentiti massimo 100 valori. In caso contrario, viene restituito un errore INVALID_ARGUMENT.

boostSpec

object (BoostSpec)

Aumenta la specifica per aumentare la visibilità di determinati documenti. Per ulteriori informazioni sul boosting, consulta la sezione Boosting.

params

map (key: string, value: value (Value format))

Parametri di ricerca aggiuntivi.

Solo per la ricerca di siti web pubblici, i valori supportati sono:

  • user_country_code: stringa. Il valore predefinito è vuoto. Se impostato su un valore non vuoto, i risultati vengono limitati o migliorati in base alla località fornita. Ad esempio, user_country_code: "au"

Per i codici disponibili, consulta Codici paese.

  • searchType: doppio. Il valore predefinito è vuoto. Consente la ricerca di elementi diversi dalle pagine web a seconda del valore. L'unico valore non predefinito valido è 1, che attiva la ricerca di immagini. Ad esempio, searchType: 1
queryExpansionSpec

object (QueryExpansionSpec)

La specifica di espansione delle query che specifica le condizioni in cui si verifica l'espansione delle query.

spellCorrectionSpec

object (SpellCorrectionSpec)

La specifica di correzione ortografica che specifica la modalità in cui la correzione ortografica ha effetto.

userPseudoId

string

Un identificatore univoco per il monitoraggio dei visitatori. Ad esempio, questa operazione può essere implementata con un cookie HTTP, che dovrebbe essere in grado di identificare in modo univoco un visitatore su un singolo dispositivo. Questo identificatore univoco non deve cambiare se il visitatore accede o esce dal sito web.

Questo campo NON deve avere un valore fisso come unknown_visitor.

Deve essere lo stesso identificatore di UserEvent.user_pseudo_id e CompleteQueryRequest.user_pseudo_id

Il campo deve essere una stringa codificata in UTF-8 con un limite di lunghezza di 128 caratteri. In caso contrario, viene restituito un errore INVALID_ARGUMENT.

contentSearchSpec

object (ContentSearchSpec)

Una specifica per la configurazione del comportamento della ricerca dei contenuti.

embeddingSpec

object (EmbeddingSpec)

Utilizza l'incorporamento fornito per eseguire un ulteriore recupero semantico dei documenti. Il recupero si basa sul prodotto scalare di SearchRequest.EmbeddingSpec.EmbeddingVector.vector e sull'incorporamento del documento fornito in SearchRequest.EmbeddingSpec.EmbeddingVector.field_path.

Se SearchRequest.EmbeddingSpec.EmbeddingVector.field_path non viene fornito, verrà utilizzato ServingConfig.EmbeddingConfig.field_path.

rankingExpression

string

Facoltativo. L'espressione di ranking controlla il ranking personalizzato dei documenti recuperati. Questa azione sostituisce ServingConfig.ranking_expression. La sintassi e le funzionalità supportate dipendono dal valore di rankingExpressionBackend. Se rankingExpressionBackend non viene fornito, il valore predefinito è RANK_BY_EMBEDDING.

Se rankingExpressionBackend non viene fornito o è impostato su RANK_BY_EMBEDDING, deve essere una singola funzione o più funzioni unite dal segno "+".

  • rankingExpression = function, { " + ", function };

Funzioni supportate:

  • double * relevanceScore
  • double * dotProduct(embedding_field_path)

Variabili della funzione:

  • relevanceScore: parole chiave predefinite, utilizzate per misurare la pertinenza tra query e documento.
  • embedding_field_path: il campo di incorporamento del documento utilizzato con il vettore di incorporamento della query.
  • dotProduct: funzione di embedding tra embedding_field_path e il vettore di embedding della query.

Espressione di ranking di esempio:

Se il documento ha un campo di incorporamento doc_embedding, l'espressione di ranking potrebbe essere 0.5 * relevanceScore + 0.3 * dotProduct(doc_embedding).

Se rankingExpressionBackend è impostato su RANK_BY_FORMULA, sono supportati i seguenti tipi di espressioni (e le combinazioni di questi concatenati utilizzando gli operatori + o *):

  • double
  • signal
  • log(signal)
  • exp(signal)
  • rr(signal, double > 0): trasformazione del rango reciproco con il secondo argomento che è una costante del denominatore.
  • isNan(signal) -- returns 0 if signal is NaN, 1 otherwise.
  • fillNan(signal1, signal2 | double) -- if signal1 is NaN, returns signal2 | double, else returns signal1.

Ecco alcuni esempi di formule di ranking che utilizzano i tipi di espressioni di ranking supportati:

  • 0.2 * semanticSimilarityScore + 0.8 * log(keywordSimilarityScore) -- mostly rank by the logarithm of keywordSimilarityScore with slight semantic_smilarity_score adjustment.
  • 0.2 * exp(fillNan(semanticSimilarityScore, 0)) + 0.3 * isNan(keywordSimilarityScore): classifica in base all'esponente di semanticSimilarityScore, riempiendo il valore con 0 se è NaN.Aggiungi anche la costante 0,3 al punteggio finale se semanticSimilarityScore è NaN.
  • 0.2 * rr(semanticSimilarityScore, 16) + 0.8 * rr(keywordSimilarityScore, 16): per lo più classifica in base al rango reciproco di keywordSimilarityScore con un leggero aggiustamento del rango reciproco di semantic_smilarity_score.

Sono supportati i seguenti indicatori:

  • semanticSimilarityScore: aggiustamento della similarità semantica calcolato utilizzando gli incorporamenti generati da un modello proprietario di Google. Questo punteggio determina la somiglianza semantica di una query di ricerca con un documento.
  • keywordSimilarityScore: l'aggiustamento della corrispondenza delle parole chiave utilizza la funzione di ranking Best Match 25 (BM25). Questo punteggio viene calcolato utilizzando un modello probabilistico per stimare la probabilità che un documento sia pertinente a una determinata query.
  • relevanceScore: aggiustamento della pertinenza semantica che utilizza un modello proprietario di Google per determinare il significato e l'intento alla base della query di un utente nel contesto dei contenuti dei documenti.
  • pctrRank: aggiustamento del tasso di conversione previsto come utilizzo del ranking. La percentuale di clic prevista (pCTR) viene utilizzata per valutare la pertinenza e l'attrattività di un risultato di ricerca dal punto di vista dell'utente. Un pCTR più elevato suggerisce che il risultato ha maggiori probabilità di soddisfare la query e l'intenzione dell'utente, il che lo rende un indicatore prezioso per il ranking.
  • freshnessRank: aggiustamento dell'aggiornamento come ranking
  • documentAge: Il tempo in ore trascorso dall'ultimo aggiornamento del documento, un numero in virgola mobile (ad es. 0,25 significa 15 minuti).
  • topicalityRank: aggiustamento della pertinenza dell'argomento come ranking. Utilizza un modello proprietario di Google per determinare la sovrapposizione basata sulle parole chiave tra la query e il documento.
  • baseRank: il ranking predefinito del risultato
rankingExpressionBackend

enum (RankingExpressionBackend)

Facoltativo. Il backend da utilizzare per la valutazione dell'espressione di ranking.

userLabels

map (key: string, value: string)

Le etichette utente applicate a una risorsa devono soddisfare i seguenti requisiti:

  • Ogni risorsa può avere più etichette, fino a un massimo di 64.
  • Ogni etichetta deve essere una coppia chiave-valore.
  • Le chiavi hanno una lunghezza minima di 1 carattere e una lunghezza massima di 63 caratteri e non possono essere vuote. I valori possono essere vuoti e avere una lunghezza massima di 63 caratteri.
  • Le chiavi e i valori possono contenere solo lettere minuscole, caratteri numerici, trattini bassi e trattini. Tutti i caratteri devono utilizzare la codifica UTF-8 e sono consentiti i caratteri internazionali.
  • La parte della chiave di un'etichetta deve essere univoca. Tuttavia, puoi utilizzare la stessa chiave con più risorse.
  • Le chiavi devono iniziare con una lettera minuscola o un carattere internazionale.

Per ulteriori dettagli, consulta il documento Google Cloud.

naturalLanguageQueryUnderstandingSpec

object (NaturalLanguageQueryUnderstandingSpec)

Facoltativo. Configurazione per le funzionalità di comprensione delle query in linguaggio naturale, ad esempio l'estrazione di filtri di campi strutturati dalla query. Per ulteriori informazioni, consulta questa documentazione. Se naturalLanguageQueryUnderstandingSpec non è specificato, non verrà eseguita alcuna comprensione aggiuntiva delle query in linguaggio naturale.

searchAsYouTypeSpec

object (SearchAsYouTypeSpec)

Configurazione della ricerca durante la digitazione. Supportato solo per la verticale IndustryVertical.MEDIA.

displaySpec

object (DisplaySpec)

Facoltativo. Configurazione per la funzionalità di visualizzazione, ad esempio l'evidenziazione delle corrispondenze nei risultati di ricerca.

session

string

Il nome della risorsa della sessione. Facoltativo.

La sessione consente agli utenti di effettuare chiamate API multi-turn /search o il coordinamento tra chiamate API /search e chiamate API /answer.

Esempio 1 (chiamate API multi-turn /search): chiama l'API /search con l'ID sessione generato nella prima chiamata. In questo caso, la query di ricerca precedente viene presa in considerazione nella posizione della query. Ad esempio, se la prima query è "Come è andata Alphabet nel 2022?" e la query attuale è "E il 2023?", la query attuale verrà interpretata come "Come è andata ad Alphabet nel 2023?".

Esempio n. 2 (coordinamento tra chiamate API /search e chiamate API /answer): chiama l'API /answer con l'ID sessione generato nella prima chiamata. In questo caso, la generazione della risposta avviene nel contesto dei risultati di ricerca della prima chiamata di ricerca.

La funzionalità di ricerca multiconversazione è attualmente in fase GA privata. Utilizza la versione v1alpha o v1beta prima del lancio di questa funzionalità in disponibilità generale pubblica. In alternativa, richiedi l'inserimento nella lista consentita tramite il team di assistenza Google.

sessionSpec

object (SessionSpec)

Specifica della sessione.

Può essere utilizzato solo quando è impostato session.

relevanceThreshold

enum (RelevanceThreshold)

La soglia di pertinenza dei risultati di ricerca.

Utilizza la soglia definita da Google, sfruttando un equilibrio tra precisione e richiamo per fornire risultati altamente accurati e una copertura completa delle informazioni pertinenti.

Questa funzionalità non è supportata per la ricerca di servizi sanitari.

personalizationSpec

object (PersonalizationSpec)

La specifica per la personalizzazione.

Tieni presente che se sono impostati sia ServingConfig.personalization_spec che SearchRequest.personalization_spec, SearchRequest.personalization_spec sostituisce ServingConfig.personalization_spec.

relevanceScoreSpec

object (RelevanceScoreSpec)

Facoltativo. La specifica per la restituzione del punteggio di pertinenza.

searchAddonSpec

object (SearchAddonSpec)

Facoltativo. SearchAddonSpec viene utilizzato per disattivare i componenti aggiuntivi per la ricerca in base al nuovo modello di ricalcolo dei prezzi. Questo campo è supportato solo per le richieste di ricerca.

ImageQuery

Specifica l'input della query di immagini.

Rappresentazione JSON
{

  // Union field image can be only one of the following:
  "imageBytes": string
  // End of list of possible types for union field image.
}
Campi

Campo unione image.

image può essere solo uno dei seguenti:

imageBytes

string

Byte dell'immagine con codifica Base64. Formati immagine supportati: JPEG, PNG e BMP.

DataStoreSpec

Una struttura per definire i datastore su cui filtrare in una chiamata di ricerca e le configurazioni per questi datastore. In caso contrario, viene restituito un errore INVALID_ARGUMENT.

Rappresentazione JSON
{
  "dataStore": string,
  "filter": string,
  "boostSpec": {
    object (BoostSpec)
  },
  "customSearchOperators": string
}
Campi
dataStore

string

Obbligatorio. Nome completo della risorsa di DataStore, ad esempio projects/{project}/locations/{location}/collections/{collectionId}/dataStores/{dataStoreId}. Il percorso deve includere il numero di progetto. L'ID progetto non è supportato per questo campo.

filter

string

Facoltativo. Specifica del filtro per filtrare i documenti nel datastore specificato dal campo dataStore. Per saperne di più sul filtraggio, consulta Filtro.

boostSpec

object (BoostSpec)

Facoltativo. Aumenta la specifica per aumentare la visibilità di determinati documenti. Per ulteriori informazioni sul boosting, consulta la sezione Boosting.

customSearchOperators

string

Facoltativo. Operatori di ricerca personalizzati che, se specificati, verranno utilizzati per filtrare i risultati dai datastore di workspace. Per ulteriori informazioni sugli operatori di ricerca personalizzati, consulta SearchOperators.

BoostSpec

Aumenta la specifica per aumentare la visibilità di determinati documenti.

Rappresentazione JSON
{
  "conditionBoostSpecs": [
    {
      object (ConditionBoostSpec)
    }
  ]
}
Campi
conditionBoostSpecs[]

object (ConditionBoostSpec)

Specifiche del potenziamento della condizione. Se un documento corrisponde a più condizioni nelle specifiche, i punteggi di boost di queste specifiche vengono tutti applicati e combinati in modo non lineare. Il numero massimo di specifiche è 20.

ConditionBoostSpec

Il boost si applica ai documenti che corrispondono a una condizione.

Rappresentazione JSON
{
  "condition": string,
  "boost": number,
  "boostControlSpec": {
    object (BoostControlSpec)
  }
}
Campi
condition

string

Un'espressione che specifica una condizione di aumento. La sintassi e i campi supportati sono gli stessi di un'espressione di filtro. Per la sintassi e le limitazioni dettagliate, consulta la pagina SearchRequest.filter.

Esempi:

  • Per aumentare il ranking dei documenti con ID documento "doc_1" o "doc_2" e colore "Rosso" o "Blu": (documentId: ANY("doc_1", "doc_2")) AND (color: ANY("Red", "Blue"))
boost

number

Intensità del boosting della condizione, che deve essere compresa tra -1 e 1. Un boosting negativo indica una retrocessione. Il valore predefinito è 0.0.

Se il boosting viene impostato su 1.0, il documento viene promosso maggiormente. Tuttavia, non significa necessariamente che il documento con boosting sarà sempre il risultato in cima alla prima pagina né che gli altri documenti verranno esclusi. Potrebbero essere visualizzati comunque dei risultati anche se nessun articolo corrisponde alla condizione. Inoltre, i risultati molto più pertinenti alla query di ricerca possono comunque avere la precedenza sui tuoi documenti nettamente preferiti, ma non pertinenti.

Se il valore viene impostato su -1.0, il documento viene declassato in modo significativo. Tuttavia, potrebbero comunque essere mostrati risultati molto pertinenti. Il documento dovrà affrontare una battaglia upstream per ottenere un ranking piuttosto elevato, ma non è completamente bloccato.

Se il valore è impostato su 0,0, non viene applicato alcun boost. La condizione di incremento viene ignorata. È impostata solo una delle combinazioni (condizione, boost) o boostControlSpec riportate di seguito. Se entrambi sono impostati, il boost globale viene ignorato e viene applicato boostControlSpec più granulare.

boostControlSpec

object (BoostControlSpec)

Specifica complessa per il ranking personalizzato in base al valore dell'attributo definito dal cliente.

BoostControlSpec

Specifica per il ranking personalizzato basato sul valore dell'attributo specificato dal cliente. Offre più controlli per la classificazione personalizzata rispetto alla semplice combinazione (condizione, aumento) riportata sopra.

Rappresentazione JSON
{
  "fieldName": string,
  "attributeType": enum (AttributeType),
  "interpolationType": enum (InterpolationType),
  "controlPoints": [
    {
      object (ControlPoint)
    }
  ]
}
Campi
fieldName

string

Il nome del campo il cui valore verrà utilizzato per determinare l'importo dell'aggiustamento.

attributeType

enum (AttributeType)

Il tipo di attributo da utilizzare per determinare l'importo del boost. Il valore dell'attributo può essere derivato dal valore del campo specificato in fieldName. Nel caso di valori numerici, è semplice, ad esempio attributeValue = numerical_field_value. Nel caso della freschezza, attributeValue = (time.now() - datetime_field_value).

interpolationType

enum (InterpolationType)

Il tipo di interpolazione da applicare per collegare i punti di controllo elencati di seguito.

controlPoints[]

object (ControlPoint)

I punti di controllo utilizzati per definire la curva. La funzione monotona (definita tramite interpolationType sopra) passa attraverso i punti di controllo elencati qui.

AttributeType

L'attributo(o la funzione) a cui deve essere applicato il ranking personalizzato.

Enum
ATTRIBUTE_TYPE_UNSPECIFIED Tipo di attributo non specificato.
NUMERICAL Il valore del campo numerico verrà utilizzato per aggiornare dinamicamente l'importo dell'incremento. In questo caso, attributeValue (il valore x) del punto di controllo sarà il valore effettivo del campo numerico per cui è specificato boostAmount.
FRESHNESS Per il caso d'uso della freschezza, il valore dell'attributo sarà la durata tra l'ora corrente e la data nel campo datetime specificato. Il valore deve essere formattato come valore XSD dayTimeDuration (un sottoinsieme limitato di un valore di durata ISO 8601). Il pattern è: [nD][T[nH][nM][nS]]. Ad esempio, 5D, 3DT12H30M, T24H.

InterpolationType

Il tipo di interpolazione da applicare. Il valore predefinito sarà lineare (lineare a tratti).

Enum
INTERPOLATION_TYPE_UNSPECIFIED Il tipo di interpolazione non è specificato. In questo caso, il valore predefinito è Lineare.
LINEAR Verrà applicata l'interpolazione lineare a tratti.

ControlPoint

I punti di controllo utilizzati per definire la curva. La curva definita tramite questi punti di controllo può essere solo crescente o decrescente in modo monotono(i valori costanti sono accettabili).

Rappresentazione JSON
{
  "attributeValue": string,
  "boostAmount": number
}
Campi
attributeValue

string

Può corrispondere a uno dei seguenti: 1. Il valore del campo numerico. 2. Specifica della durata per l'aggiornamento: il valore deve essere formattato come valore XSD dayTimeDuration (un sottoinsieme limitato di un valore di durata ISO 8601). Il pattern è: [nD][T[nH][nM][nS]].

boostAmount

number

Il valore compreso tra -1 e 1 in base al quale aumentare il punteggio se attributeValue restituisce il valore specificato sopra.

FacetSpec

Una specifica del facet per eseguire la ricerca con facet.

Rappresentazione JSON
{
  "facetKey": {
    object (FacetKey)
  },
  "limit": integer,
  "excludedFilterKeys": [
    string
  ],
  "enableDynamicPosition": boolean
}
Campi
facetKey

object (FacetKey)

Obbligatorio. La specifica della chiave facet.

limit

integer

Numero massimo di valori di facet restituiti per questo facet. Se non specificato, il valore predefinito è 20. Il valore massimo consentito è 300. I valori superiori a 300 vengono forzati a 300. Per l'aggregazione nella ricerca nel settore sanitario, quando [FacetKey.key] è "healthcare_aggregation_key", il limite verrà sostituito internamente con 10.000, indipendentemente dal valore impostato qui.

Se questo campo è negativo, viene restituito un INVALID_ARGUMENT.

excludedFilterKeys[]

string

Elenco delle chiavi da escludere durante la creazione di sfaccettature.

Per impostazione predefinita, FacetKey.key non viene escluso dal filtro, a meno che non sia elencato in questo campo.

L'elenco di una chiave di facet in questo campo consente di visualizzare i relativi valori come risultati di facet, anche se sono filtrati dai risultati di ricerca. L'utilizzo di questo campo non influisce sui risultati di ricerca restituiti.

Ad esempio, supponiamo che ci siano 100 documenti con la sfaccettatura di colore "Rosso" e 200 documenti con la sfaccettatura di colore "Blu". Una query contenente il filtro "color:ANY("Red")" e con "color" come FacetKey.key restituirebbe per impostazione predefinita solo i documenti "Red" nei risultati di ricerca e restituirebbe anche "Red" con conteggio 100 come unico facet di colore. Sebbene siano disponibili anche documenti blu, "Blu" non verrà visualizzato come valore di sfaccettatura disponibile.

Se "color" è elencato in "excludedFilterKeys", la query restituisce i valori della sfaccettatura "Red" con conteggio 100 e "Blue" con conteggio 200, perché la chiave "color" è ora esclusa dal filtro. Poiché questo campo non influisce sui risultati di ricerca, questi ultimi vengono comunque filtrati correttamente per restituire solo i documenti "Rossi".

Sono consentiti massimo 100 valori. In caso contrario, viene restituito un errore INVALID_ARGUMENT.

enableDynamicPosition

boolean

Attiva la posizione dinamica per questo facet. Se è impostata su true, la posizione di questa sfaccettatura tra tutte le sfaccettature nella risposta viene determinata automaticamente. Se i facet dinamici sono abilitati, vengono ordinati insieme. Se impostato su false, la posizione di questo facet nella risposta è la stessa della richiesta e viene classificato prima dei facet con posizione dinamica abilitata e di tutti i facet dinamici.

Ad esempio, potresti voler sempre restituire la sfaccettatura della valutazione nella risposta, ma non è necessario visualizzarla sempre in alto. In questo caso, puoi impostare enableDynamicPosition su true in modo che la posizione del facet di valutazione nella risposta venga determinata automaticamente.

Un altro esempio, supponendo di avere i seguenti facet nella richiesta:

  • "rating", enableDynamicPosition = true

  • "price", enableDynamicPosition = false

  • "brands", enableDynamicPosition = false

Inoltre, hai attivato i facet dinamici, che generano un facet gender. L'ordine finale delle sfaccettature nella risposta può essere ("price", "brands", "rating", "gender") o ("price", "brands", "gender", "rating") a seconda di come l'API ordina le sfaccettature "gender" e "rating". Tuttavia, nota che "price" e "brands" sono sempre classificati in prima e seconda posizione perché enableDynamicPosition è false.

FacetKey

Specifica come viene calcolata una sfaccettatura.

Rappresentazione JSON
{
  "key": string,
  "intervals": [
    {
      object (Interval)
    }
  ],
  "restrictedValues": [
    string
  ],
  "prefixes": [
    string
  ],
  "contains": [
    string
  ],
  "caseInsensitive": boolean,
  "orderBy": string
}
Campi
key

string

Obbligatorio. Chiavi di sfaccettatura testuali e numeriche supportate nell'oggetto Document, in base alle quali vengono calcolati i valori delle sfaccettature. La chiave del facet è sensibile alle maiuscole.

intervals[]

object (Interval)

Imposta solo se i valori devono essere suddivisi in bucket in intervalli. Deve essere impostato per le sfaccettature con valori numerici. Non deve essere impostato per il facet con valori di testo. Il numero massimo di intervalli è 30.

restrictedValues[]

string

Ottieni solo la sfaccettatura per i valori con limitazioni specificati. Supportato solo sui campi di testo. Ad esempio, supponiamo che "category" abbia tre valori: "Action > 2022", "Action > 2021" e "Sci-Fi > 2022". Se imposti "restrictedValues" su "Azione > 2022", la sfaccettatura "category" (categoria) contiene solo "Azione > 2022". Supportato solo sui campi di testo. Il valore massimo è 10.

prefixes[]

string

Recupera solo i valori delle sfaccettature che iniziano con il prefisso della stringa specificato. Ad esempio, supponiamo che "category" abbia tre valori: "Action > 2022", "Action > 2021" e "Sci-Fi > 2022". Se imposti "prefissi" su "Azione", la sfaccettatura "categoria" contiene solo "Azione > 2022" e "Azione > 2021". Supportato solo sui campi di testo. Il valore massimo è 10.

contains[]

string

Recupera solo i valori delle sfaccettature che contengono le stringhe specificate. Ad esempio, supponiamo che "category" abbia tre valori: "Action > 2022", "Action > 2021" e "Sci-Fi > 2022". Se imposti "contiene" su "2022", la sfaccettatura "categoria" contiene solo "Azione > 2022" e "Fantascienza > 2022". Supportato solo sui campi di testo. Il valore massimo è 10.

caseInsensitive

boolean

True per rendere le chiavi di sfaccettatura non sensibili alle maiuscole e minuscole quando si ottengono valori di sfaccettatura con prefissi o contiene; false in caso contrario.

orderBy

string

L'ordine in cui vengono restituiti i documenti.

I valori consentiti sono:

Se non viene impostato, i valori testuali vengono ordinati in ordine naturale; gli intervalli numerici vengono ordinati nell'ordine indicato da FacetSpec.FacetKey.intervals.

Intervallo

Un intervallo con rappresentazione in virgola mobile.

Rappresentazione JSON
{

  // Union field min can be only one of the following:
  "minimum": number,
  "exclusiveMinimum": number
  // End of list of possible types for union field min.

  // Union field max can be only one of the following:
  "maximum": number,
  "exclusiveMaximum": number
  // End of list of possible types for union field max.
}
Campi

Campo unione min. Il limite inferiore dell'intervallo. Se nessuno dei campi min è impostato, il limite inferiore è infinito negativo.

Questo campo non deve essere maggiore del valore massimo. In caso contrario, viene restituito un errore INVALID_ARGUMENT. min può essere solo uno dei seguenti:

minimum

number

Limite inferiore inclusivo.

exclusiveMinimum

number

Limite inferiore esclusivo.

Campo unione max. Il limite superiore dell'intervallo. Se nessuno dei campi max è impostato, il limite superiore è infinito positivo.

Questo campo non deve essere inferiore al valore minimo. In caso contrario, viene restituito un errore INVALID_ARGUMENT. max può essere solo uno dei seguenti:

maximum

number

Limite superiore inclusivo.

exclusiveMaximum

number

Limite superiore esclusivo.

QueryExpansionSpec

Specifica per determinare in quali condizioni deve verificarsi l'espansione della query.

Rappresentazione JSON
{
  "condition": enum (Condition),
  "pinUnexpandedResults": boolean
}
Campi
condition

enum (Condition)

La condizione in base alla quale deve verificarsi l'espansione delle query. Il valore predefinito è Condition.DISABLED.

pinUnexpandedResults

boolean

Se bloccare i risultati non espansi. Se questo campo è impostato su true, i prodotti non espansi si trovano sempre nella parte superiore dei risultati di ricerca, seguiti dai risultati espansi.

Condizione

Enumerazione che descrive in quale condizione deve verificarsi l'espansione della query.

Enum
CONDITION_UNSPECIFIED Condizione di espansione delle query non specificata. In questo caso, il comportamento del server è impostato su Condition.DISABLED per impostazione predefinita.
DISABLED Espansione delle query disattivata. Viene utilizzata solo la query di ricerca esatta, anche se SearchResponse.total_size è pari a zero.
AUTO Espansione automatica delle query creata dall'API Search.

SpellCorrectionSpec

La specifica per la correzione ortografica delle query.

Rappresentazione JSON
{
  "mode": enum (Mode)
}
Campi
mode

enum (Mode)

La modalità in cui la correzione ortografica sostituisce la query di ricerca originale. Il valore predefinito è Mode.AUTO.

Modalità

Enumerazione che descrive in quale modalità deve essere eseguita la correzione ortografica.

Enum
MODE_UNSPECIFIED Modalità di correzione ortografica non specificata. In questo caso, il comportamento del server è impostato su Mode.AUTO per impostazione predefinita.
SUGGESTION_ONLY L'API Search tenta di trovare un suggerimento ortografico. Se viene trovato un suggerimento, questo viene inserito in SearchResponse.corrected_query. Il suggerimento ortografico non verrà utilizzato come query di ricerca.
AUTO Correzione ortografica automatica integrata nell'API Search. La ricerca si baserà sulla query corretta, se trovata.

EmbeddingSpec

La specifica che utilizza il vettore di incorporamento delle query personalizzato per eseguire il recupero semantico dei documenti.

Rappresentazione JSON
{
  "embeddingVectors": [
    {
      object (EmbeddingVector)
    }
  ]
}
Campi
embeddingVectors[]

object (EmbeddingVector)

Il vettore di embedding utilizzato per il recupero. Limita a 1.

EmbeddingVector

Vettore di embedding.

Rappresentazione JSON
{
  "fieldPath": string,
  "vector": [
    number
  ]
}
Campi
fieldPath

string

Percorso campo di embedding nello schema.

vector[]

number

Vettore di embedding della query.

RankingExpressionBackend

Il backend da utilizzare per la valutazione dell'espressione di ranking.

Enum
RANKING_EXPRESSION_BACKEND_UNSPECIFIED Opzione predefinita per i valori non specificati/sconosciuti.
BYOE

Deprecato: utilizza RANK_BY_EMBEDDING. Classificazione in base al modello di incorporamento personalizzato, il modo predefinito per valutare l'espressione di ranking. Opzione di enumerazione legacy, deve essere utilizzata RANK_BY_EMBEDDING.

CLEARBOX

Deprecato: utilizza RANK_BY_FORMULA. Classifica in base alla formula personalizzata. Opzione di enumerazione legacy, deve essere utilizzata RANK_BY_FORMULA.

RANK_BY_EMBEDDING Classificazione in base al modello di incorporamento personalizzato, il modo predefinito per valutare l'espressione di ranking.
RANK_BY_FORMULA Classifica in base alla formula personalizzata.

NaturalLanguageQueryUnderstandingSpec

Specifica per abilitare le funzionalità di comprensione del linguaggio naturale per le richieste di ricerca.

Rappresentazione JSON
{
  "filterExtractionCondition": enum (FilterExtractionCondition),
  "geoSearchQueryDetectionFieldNames": [
    string
  ],
  "extractedFilterBehavior": enum (ExtractedFilterBehavior),
  "allowedFieldNames": [
    string
  ]
}
Campi
filterExtractionCondition

enum (FilterExtractionCondition)

La condizione in base alla quale deve essere eseguita l'estrazione del filtro. Il comportamento del server è impostato per impostazione predefinita su DISABLED.

geoSearchQueryDetectionFieldNames[]

string

Nomi dei campi utilizzati per il filtro basato sulla posizione, in cui i filtri di geolocalizzazione vengono rilevati nelle query di ricerca in linguaggio naturale. Valido solo quando FilterExtractionCondition è impostato su ENABLED.

Se questo campo è impostato, sostituisce i nomi dei campi impostati in ServingConfig.geo_search_query_detection_field_names.

extractedFilterBehavior

enum (ExtractedFilterBehavior)

Facoltativo. Controlla il comportamento di applicazione dei filtri estratti alla ricerca. Il comportamento predefinito dipende dalla richiesta. Per la ricerca strutturata in un singolo datastore, il valore predefinito è HARD_FILTER. Per la ricerca in più datastore, il comportamento predefinito è SOFT_BOOST. I filtri basati sulla posizione vengono sempre applicati come filtri rigidi e l'impostazione SOFT_BOOST non li influenzerà. Questo campo viene utilizzato solo se [SearchRequest.natural_language_query_understanding_spec.filter_extraction_condition][] è impostato su FilterExtractionCondition.ENABLED.

allowedFieldNames[]

string

Facoltativo. Elenco consentito di campi che possono essere utilizzati per l'estrazione di filtri in linguaggio naturale. Per impostazione predefinita, se non viene specificato, tutti i campi indicizzabili sono idonei all'estrazione del filtro in linguaggio naturale (ma non è garantito che vengano utilizzati). Se vengono specificati dei campi in allowedFieldNames, solo i campi contrassegnati come indicizzabili nello schema e specificati nella lista consentita saranno idonei per l'estrazione dei filtri in linguaggio naturale. Nota: per la ricerca in più datastore, questa funzionalità non è ancora supportata e verrà ignorata.

FilterExtractionCondition

Enumerazione che descrive in quale condizione deve avvenire l'estrazione del filtro.

Enum
CONDITION_UNSPECIFIED Il comportamento del server è impostato per impostazione predefinita su DISABLED.
DISABLED Disattiva l'estrazione dei filtri NL.
ENABLED Consente l'estrazione dei filtri NL.

ExtractedFilterBehavior

Enumerazione che descrive come i filtri estratti vengono applicati alla ricerca.

Enum
EXTRACTED_FILTER_BEHAVIOR_UNSPECIFIED EXTRACTED_FILTER_BEHAVIOR_UNSPECIFIED utilizzerà il comportamento predefinito per i filtri estratti. Per la ricerca in un singolo datastore, il comportamento predefinito è l'applicazione come filtri rigidi. Per la ricerca in più datastore, l'impostazione predefinita prevede l'applicazione come soft boost.
HARD_FILTER Applica tutti i filtri estratti come filtri rigidi ai risultati. I risultati che non superano i filtri estratti non verranno restituiti nel set di risultati.
SOFT_BOOST Applica tutti i filtri estratti come aggiustamenti morbidi. I risultati che superano i filtri verranno promossi a posizioni più elevate nel set di risultati.

SearchAsYouTypeSpec

Specifica per la ricerca durante la digitazione nelle richieste di ricerca.

Rappresentazione JSON
{
  "condition": enum (Condition)
}
Campi
condition

enum (Condition)

La condizione in base alla quale deve verificarsi la ricerca durante la digitazione. Il valore predefinito è Condition.DISABLED.

Condizione

Enumerazione che descrive in quale condizione deve verificarsi la ricerca durante la digitazione.

Enum
CONDITION_UNSPECIFIED Il comportamento del server è impostato per impostazione predefinita su Condition.DISABLED.
DISABLED Disattiva la ricerca durante la digitazione.
ENABLED Attiva la ricerca durante la digitazione.
AUTO Passaggio automatico tra le modalità di ricerca durante la digitazione e ricerca standard, ideale per implementazioni di una sola API (ad es. debouncing).

DisplaySpec

Specifica le funzionalità di visualizzazione, come l'evidenziazione delle corrispondenze.

Rappresentazione JSON
{
  "matchHighlightingCondition": enum (MatchHighlightingCondition)
}
Campi
matchHighlightingCondition

enum (MatchHighlightingCondition)

La condizione in base alla quale deve verificarsi l'evidenziazione della corrispondenza.

MatchHighlightingCondition

Enumerazione che descrive in quale condizione deve verificarsi l'evidenziazione della corrispondenza.

Enum
MATCH_HIGHLIGHTING_CONDITION_UNSPECIFIED Il comportamento del server è lo stesso di MATCH_HIGHLIGHTING_DISABLED.
MATCH_HIGHLIGHTING_DISABLED Disattiva l'evidenziazione delle corrispondenze in tutti i documenti.
MATCH_HIGHLIGHTING_ENABLED Attiva l'evidenziazione delle corrispondenze in tutti i documenti.

SessionSpec

Specifica della sessione.

La funzionalità di ricerca multiconversazione è attualmente in fase GA privata. Utilizza la versione v1alpha o v1beta prima del lancio di questa funzionalità in disponibilità generale pubblica. In alternativa, richiedi l'inserimento nella lista consentita tramite il team di assistenza Google.

Rappresentazione JSON
{
  "queryId": string,
  "searchResultPersistenceCount": integer
}
Campi
queryId

string

Se impostato, il risultato di ricerca viene memorizzato nel "turno" specificato da questo ID query.

Esempio: supponiamo che la sessione sia la seguente: session { name: ".../sessions/xxx" turns { query { text: "What is foo?" queryId: ".../questions/yyy" } answer: "Foo is ..." } turns { query { text: "How about bar then?" queryId: ".../questions/zzz" } } }

L'utente può chiamare l'API /search con una richiesta come questa:

session: ".../sessions/xxx" sessionSpec { queryId: ".../questions/zzz" }

L'API memorizza quindi il risultato della ricerca, associato all'ultimo turno. Il risultato della ricerca memorizzato può essere utilizzato da una successiva chiamata API /answer (con l'ID sessione e l'ID query specificati). Inoltre, è possibile chiamare /search e /answer in parallelo con lo stesso ID sessione e ID query.

searchResultPersistenceCount

integer

Il numero di risultati di ricerca principali da conservare. I risultati di ricerca persistenti possono essere utilizzati per la successiva chiamata API /answer.

Questo campo è simile al campo summaryResultCount in SearchRequest.ContentSearchSpec.SummarySpec.summary_result_count.

Al massimo 10 risultati per la modalità Documenti o 50 per la modalità Chunk.

RelevanceThreshold

La soglia di pertinenza dei risultati di ricerca. Maggiore è la soglia di pertinenza, maggiore è il numero di risultati pertinenti mostrati e minore è il numero di risultati restituiti.

Enum
RELEVANCE_THRESHOLD_UNSPECIFIED Valore predefinito. In questo caso, il comportamento del server è impostato sulla soglia definita da Google.
LOWEST Soglia di pertinenza più bassa.
LOW Soglia di pertinenza bassa.
MEDIUM Soglia di pertinenza media.
HIGH Soglia di pertinenza elevata.

RelevanceScoreSpec

La specifica per la restituzione del punteggio di pertinenza del documento.

Rappresentazione JSON
{
  "returnRelevanceScore": boolean
}
Campi
returnRelevanceScore

boolean

Facoltativo. Indica se restituire il punteggio di pertinenza per i risultati di ricerca. Più alto è il punteggio, più pertinente è il documento rispetto alla query.

SearchAddonSpec

SearchAddonSpec viene utilizzato per disattivare i componenti aggiuntivi per la ricerca in base al nuovo modello di ricalcolo dei prezzi. Per impostazione predefinita, se SearchAddonSpec non è specificato, riteniamo che il cliente voglia attivarli ovunque applicabile.

Rappresentazione JSON
{
  "disableSemanticAddOn": boolean,
  "disableKpiPersonalizationAddOn": boolean,
  "disableGenerativeAnswerAddOn": boolean
}
Campi
disableSemanticAddOn

boolean

Facoltativo. Se è true, il componente aggiuntivo semantico è disattivato. Il componente aggiuntivo semantico include incorporamenti e jetstream.

disableKpiPersonalizationAddOn

boolean

Facoltativo. Se è true, disattiva la riassegnazione del ranking e la personalizzazione degli eventi per ottimizzare i KPI e personalizzare i risultati.

disableGenerativeAnswerAddOn

boolean

Facoltativo. Se è true, il componente aggiuntivo per le risposte di AI generativa è disattivato. Il componente aggiuntivo per le risposte generative include il linguaggio naturale per i filtri e le risposte semplici.

QuerySetSpec

Descrive la specifica del set di query.

Rappresentazione JSON
{
  "sampleQuerySet": string
}
Campi
sampleQuerySet

string

Facoltativo. Il nome completo della risorsa di SampleQuerySet utilizzato per la valutazione, nel formato projects/{project}/locations/{location}/sampleQuerySets/{sampleQuerySet}.

QualityMetrics

Descrive le metriche prodotte dalla valutazione.

Rappresentazione JSON
{
  "docRecall": {
    object (TopkMetrics)
  },
  "docPrecision": {
    object (TopkMetrics)
  },
  "docNdcg": {
    object (TopkMetrics)
  },
  "pageRecall": {
    object (TopkMetrics)
  },
  "pageNdcg": {
    object (TopkMetrics)
  }
}
Campi
docRecall

object (TopkMetrics)

Richiamo per documento, a vari livelli di soglia top-k.

Il richiamo è la frazione di documenti pertinenti recuperati su tutti i documenti pertinenti.

Esempio (primi 5): * Per un singolo SampleQuery, se vengono recuperati 3 documenti pertinenti su 5 nei primi 5 risultati, recall@5 = 3/5 = 0,6

docPrecision

object (TopkMetrics)

Precisione per documento, a vari livelli di cutoff top-k.

La precisione è la frazione di documenti recuperati pertinenti.

Esempio (top 5): * Per un singolo SampleQuery, se 4 dei 5 documenti recuperati nella top 5 sono pertinenti, precision@5 = 4/5 = 0,8

docNdcg

object (TopkMetrics)

Guadagno cumulativo scontato normalizzato (NDCG) per documento, a vari livelli di interruzione top-k.

NDCG misura la qualità del ranking, dando maggiore pertinenza ai risultati migliori.

Esempio (migliori 3): supponiamo che SampleQuery con tre documenti recuperati (D1, D2, D3) e giudizi di pertinenza binari (1 per pertinente, 0 per non pertinente):

Recuperato: [D3 (0), D1 (1), D2 (1)] Ideale: [D1 (1), D2 (1), D3 (0)]

Calcola NDCG@3 per ogni SampleQuery: * DCG@3: 0/log2(1+1) + 1/log2(2+1) + 1/log2(3+1) = 1,13 * DCG@3 ideale: 1/log2(1+1) + 1/log2(2+1) + 0/log2(3+1) = 1,63 * NDCG@3: 1,13/1,63 = 0,693

pageRecall

object (TopkMetrics)

Richiamo per pagina, a vari livelli di cutoff top-k.

Il richiamo è la frazione di pagine pertinenti recuperate sul totale delle pagine pertinenti.

Esempio (prime 5): * Per un singolo SampleQuery, se 3 delle 5 pagine pertinenti vengono recuperate nelle prime 5 posizioni, recall@5 = 3/5 = 0,6

pageNdcg

object (TopkMetrics)

Guadagno cumulativo scontato normalizzato (NDCG) per pagina, a vari livelli di cutoff top-k.

NDCG misura la qualità del ranking, dando maggiore pertinenza ai risultati migliori.

Esempio (prime 3): supponiamo che SampleQuery con tre pagine recuperate (P1, P2, P3) e giudizi di pertinenza binari (1 per pertinente, 0 per non pertinente):

Recuperati: [P3 (0), P1 (1), P2 (1)] Ideale: [P1 (1), P2 (1), P3 (0)]

Calcola NDCG@3 per SampleQuery: * DCG@3: 0/log2(1+1) + 1/log2(2+1) + 1/log2(3+1) = 1,13 * DCG@3 ideale: 1/log2(1+1) + 1/log2(2+1) + 0/log2(3+1) = 1,63 * NDCG@3: 1,13/1,63 = 0,693

TopkMetrics

Memorizza i valori delle metriche a livelli top-k specifici.

Rappresentazione JSON
{
  "top1": number,
  "top3": number,
  "top5": number,
  "top10": number
}
Campi
top1

number

Il valore principale.

top3

number

Il valore top-3.

top5

number

Il valore top-5.

top10

number

Il valore top-10.

Stato

Descrive lo stato di una valutazione.

Enum
STATE_UNSPECIFIED La valutazione non è specificata.
PENDING Il servizio si sta preparando a eseguire la valutazione.
RUNNING La valutazione è in corso.
SUCCEEDED La valutazione è stata completata.
FAILED La valutazione non è riuscita.

Metodi

create

Crea un Evaluation.

get

Riceve un Evaluation.

list

Recupera un elenco di Evaluation.

listResults

Recupera un elenco di risultati per un determinato Evaluation.