- Recurso: Evaluación
- EvaluationSpec
- ImageQuery
- FacetSpec
- FacetKey
- Interval
- QueryExpansionSpec
- Afección
- SpellCorrectionSpec
- Mode
- EmbeddingSpec
- EmbeddingVector
- RankingExpressionBackend
- NaturalLanguageQueryUnderstandingSpec
- FilterExtractionCondition
- ExtractedFilterBehavior
- SearchAsYouTypeSpec
- Afección
- DisplaySpec
- MatchHighlightingCondition
- SessionSpec
- RelevanceThreshold
- RelevanceScoreSpec
- SearchAddonSpec
- QuerySetSpec
- QualityMetrics
- TopkMetrics
- Estado
- Métodos
Recurso: Evaluación
Una evaluación es una sola ejecución (o corrida) de un proceso de evaluación. Encapsula el estado de la evaluación y los datos resultantes.
Representación JSON |
---|
{ "name": string, "evaluationSpec": { object ( |
Campos | |
---|---|
name |
Es el identificador. Es el nombre completo del recurso Este campo debe ser una cadena codificada en UTF-8 con un límite de longitud de 1,024 caracteres. |
evaluationSpec |
Obligatorio. Es la especificación de la evaluación. |
qualityMetrics |
Solo salida. Son las métricas que produce la evaluación, cuyo promedio se calcula en todos los Solo se propaga cuando el estado de la evaluación es SUCCEEDED. |
state |
Solo salida. Es el estado de la evaluación. |
error |
Solo salida. Es el error que se produjo durante la evaluación. Solo se propaga cuando el estado de la evaluación es FAILED. |
createTime |
Solo salida. Es la marca de tiempo en la que se creó el objeto Usa el formato RFC 3339, en el que el resultado generado siempre estará normalizado a Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: |
endTime |
Solo salida. Es la marca de tiempo en la que se completó el Usa el formato RFC 3339, en el que el resultado generado siempre estará normalizado a Z y usará 0, 3, 6 o 9 dígitos fraccionarios. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: |
errorSamples[] |
Solo salida. Es una muestra de los errores que se encontraron durante el procesamiento de la solicitud. |
EvaluationSpec
Describe la especificación de la evaluación.
Representación JSON |
---|
{ "querySetSpec": { object ( |
Campos | |
---|---|
querySetSpec |
Opcional. Es la especificación del conjunto de búsquedas. |
Campo de unión search_spec . Es la especificación de búsqueda. search_spec puede ser solo uno de los siguientes: |
|
searchRequest |
Obligatorio. Es la solicitud de búsqueda que se usa para realizar la evaluación. Solo se admiten los siguientes campos dentro de SearchRequest. Si se proporcionan otros campos, se devolverá un error UNSUPPORTED: |
ImageQuery
Especifica la entrada de la búsqueda de imágenes.
Representación JSON |
---|
{ // Union field |
Campos | |
---|---|
Campo de unión
|
|
imageBytes |
Son los bytes de la imagen codificados en Base64. Formatos de imagen admitidos: JPEG, PNG y BMP. |
FacetSpec
Es una especificación de faceta para realizar una búsqueda por facetas.
Representación JSON |
---|
{
"facetKey": {
object ( |
Campos | |
---|---|
facetKey |
Obligatorio. Es la especificación de la clave de faceta. |
limit |
Es la cantidad máxima de valores de faceta que se devuelven para esta faceta. Si no se especifica, el valor predeterminado es 20. El valor máximo permitido es 300. Los valores superiores a 300 se convertirán a 300. Para la agregación en la búsqueda de atención médica, cuando [FacetKey.key] es "healthcare_aggregation_key", el límite se anulará internamente a 10,000, independientemente del valor establecido aquí. Si este campo es negativo, se devuelve un |
excludedFilterKeys[] |
Es la lista de claves que se excluirán cuando se creen facetas. De forma predeterminada, Si se incluye una clave de faceta en este campo, sus valores pueden aparecer como resultados de faceta, incluso cuando se filtran de los resultados de la búsqueda. El uso de este campo no afecta los resultados de la búsqueda que se muestran. Por ejemplo, supongamos que hay 100 documentos con la faceta de color "Rojo" y 200 documentos con la faceta de color "Azul". Una búsqueda que contenga el filtro "color:ANY("Red")" y que tenga "color" como Si "color" aparece en "excludedFilterKeys", la búsqueda devuelve los valores de la faceta "Rojo" con el recuento 100 y "Azul" con el recuento 200, ya que la clave "color" ahora se excluye del filtro. Dado que este campo no afecta los resultados de la búsqueda, estos se filtran correctamente para mostrar solo los documentos "rojos". Se permite un máximo de 100 valores. De lo contrario, se muestra un error |
enableDynamicPosition |
Habilita la posición dinámica para esta faceta. Si se establece como verdadero, la posición de esta faceta entre todas las facetas de la respuesta se determina automáticamente. Si las facetas dinámicas están habilitadas, se ordenan juntas. Si se establece como falso, la posición de esta faceta en la respuesta es la misma que en la solicitud, y se clasifica antes que las facetas con posición dinámica habilitada y todas las facetas dinámicas. Por ejemplo, es posible que siempre desees que se muestre la faceta de clasificación en la respuesta, pero no es necesario que siempre se muestre en la parte superior. En ese caso, puedes establecer enableDynamicPosition como verdadero para que la posición de la faceta de clasificación en la respuesta se determine automáticamente. Otro ejemplo, suponiendo que tienes los siguientes facets en la solicitud:
También tienes habilitadas las facetas dinámicas, que generan una faceta |
FacetKey
Especifica cómo se calcula una faceta.
Representación JSON |
---|
{
"key": string,
"intervals": [
{
object ( |
Campos | |
---|---|
key |
Obligatorio. Son las claves de facetas textuales y numéricas admitidas en el objeto |
intervals[] |
Solo se establece si los valores se deben agrupar en intervalos. Se debe configurar para las facetas con valores numéricos. No se debe establecer para la faceta con valores de texto. La cantidad máxima de intervalos es 30. |
restrictedValues[] |
Solo se obtiene la faceta para los valores restringidos determinados. Solo se admite en campos de texto. Por ejemplo, supongamos que "categoría" tiene tres valores: "Acción > 2022", "Acción > 2021" y "Ciencia ficción > 2022". Si se establece "restrictedValues" en "Action > 2022", la faceta "category" solo contiene "Action > 2022". Solo se admite en campos de texto. El máximo es 10. |
prefixes[] |
Solo se obtienen los valores de faceta que comienzan con el prefijo de cadena determinado. Por ejemplo, supongamos que "categoría" tiene tres valores: "Acción > 2022", "Acción > 2021" y "Ciencia ficción > 2022". Si se establece "prefixes" en "Action", la faceta "category" solo contiene "Action > 2022" y "Action > 2021". Solo se admite en campos de texto. El máximo es 10. |
contains[] |
Solo se obtienen los valores de faceta que contienen las cadenas proporcionadas. Por ejemplo, supongamos que "categoría" tiene tres valores: "Acción > 2022", "Acción > 2021" y "Ciencia ficción > 2022". Si se establece "contiene" en "2022", la faceta "categoría" solo contendrá "Acción > 2022" y "Ciencia ficción > 2022". Solo se admite en campos de texto. El máximo es 10. |
caseInsensitive |
Es verdadero si las claves de faceta no distinguen mayúsculas de minúsculas cuando se obtienen valores de facetas con prefijos o contiene; de lo contrario, es falso. |
orderBy |
Es el orden en que se muestran los documentos. Los valores permitidos son los siguientes:
Si no se establece, los valores textuales se ordenan en orden natural, y los intervalos numéricos se ordenan según el orden que indica |
Intervalo
Es un intervalo de punto flotante.
Representación JSON |
---|
{ // Union field |
Campos | |
---|---|
Campo de unión Este campo no debe ser mayor que el valor máximo. De lo contrario, se mostrará un error |
|
minimum |
Es el límite inferior inclusivo. |
exclusiveMinimum |
Límite inferior exclusivo. |
Campo de unión Este campo no debe ser inferior al valor mín. De lo contrario, se muestra un error |
|
maximum |
Es el límite superior inclusivo. |
exclusiveMaximum |
Límite superior exclusivo. |
QueryExpansionSpec
Es la especificación para determinar en qué condiciones se debe realizar la búsqueda expandida.
Representación JSON |
---|
{
"condition": enum ( |
Campos | |
---|---|
condition |
Es la condición en la que se debe realizar la búsqueda expandida. Margen aproximado predeterminado: |
pinUnexpandedResults |
Indica si se deben fijar los resultados sin expandir. Si este campo se establece como verdadero, los productos que no son parte de la búsqueda expandida siempre aparecerán en la parte superior de los resultados de la búsqueda, seguidos de los resultados expandidos. |
Condición
Es una enumeración que describe bajo qué condición debe ocurrir la búsqueda expandida.
Enums | |
---|---|
CONDITION_UNSPECIFIED |
No se especificó la condición de búsqueda expandida. En este caso, el comportamiento del servidor se establece de forma predeterminada en Condition.DISABLED . |
DISABLED |
Se inhabilitó la búsqueda expandida. Solo se usa la búsqueda exacta, incluso si SearchResponse.total_size es cero. |
AUTO |
Búsqueda expandida automática que crea la API de Search. |
SpellCorrectionSpec
Es la especificación para la corrección ortográfica de la búsqueda.
Representación JSON |
---|
{
"mode": enum ( |
Campos | |
---|---|
mode |
Es el modo en el que la corrección ortográfica reemplaza la búsqueda original. La configuración predeterminada es |
Modo
Es una enumeración que describe en qué modo se debe realizar la corrección ortográfica.
Enums | |
---|---|
MODE_UNSPECIFIED |
No se especificó el modo de corrección ortográfica. En este caso, el comportamiento del servidor se establece de forma predeterminada en Mode.AUTO . |
SUGGESTION_ONLY |
La API de Search intenta encontrar una sugerencia ortográfica. Si se encuentra una sugerencia, se coloca en SearchResponse.corrected_query . La sugerencia de ortografía no se usará como consulta de búsqueda. |
AUTO |
Corrección ortográfica automática integrada en la API de Search. La búsqueda se basará en la consulta corregida, si se encuentra. |
EmbeddingSpec
Es la especificación que usa un vector de incorporación de búsqueda personalizado para realizar la recuperación semántica de documentos.
Representación JSON |
---|
{
"embeddingVectors": [
{
object ( |
Campos | |
---|---|
embeddingVectors[] |
Es el vector de incorporación que se usa para la recuperación. Límite de 1. |
EmbeddingVector
Es el vector de embedding.
Representación JSON |
---|
{ "fieldPath": string, "vector": [ number ] } |
Campos | |
---|---|
fieldPath |
Es la ruta del campo de embedding en el esquema. |
vector[] |
Es el vector de embedding de la búsqueda. |
RankingExpressionBackend
Es el backend que se usará para la evaluación de la expresión de clasificación.
Enums | |
---|---|
RANKING_EXPRESSION_BACKEND_UNSPECIFIED |
Es la opción predeterminada para los valores no especificados o desconocidos. |
BYOE |
Obsoleto: Usa |
CLEARBOX |
Obsoleto: Usa |
RANK_BY_EMBEDDING |
Clasificación según el modelo de incorporación personalizado, la forma predeterminada de evaluar la expresión de clasificación. |
RANK_BY_FORMULA |
Es el ranking según una fórmula personalizada. |
NaturalLanguageQueryUnderstandingSpec
Es una especificación para habilitar las capacidades de comprensión del lenguaje natural para las solicitudes de búsqueda.
Representación JSON |
---|
{ "filterExtractionCondition": enum ( |
Campos | |
---|---|
filterExtractionCondition |
Condición en la que se debe realizar la extracción del filtro. El comportamiento del servidor se establece de forma predeterminada en |
geoSearchQueryDetectionFieldNames[] |
Son los nombres de los campos que se usan para el filtrado basado en la ubicación, en el que se detectan filtros de ubicación geográfica en las búsquedas en lenguaje natural. Solo es válido cuando FilterExtractionCondition se establece en Si se configura este campo, se anulan los nombres de los campos establecidos en |
extractedFilterBehavior |
Opcional. Controla el comportamiento de cómo se aplican los filtros extraídos a la búsqueda. El comportamiento predeterminado depende de la solicitud. Para la búsqueda estructurada de un solo almacén de datos, el valor predeterminado es |
allowedFieldNames[] |
Opcional. Lista de entidades permitidas de los campos que se pueden usar para la extracción de filtros de lenguaje natural. De forma predeterminada, si no se especifica, todos los campos indexables son aptos para la extracción de filtros de lenguaje natural (pero no se garantiza que se usen). Si se especifica algún campo en allowedFieldNames, solo los campos que estén marcados como indexables en el esquema y especificados en la lista de entidades permitidas serán aptos para la extracción de filtros en lenguaje natural. Nota: Aún no se admite la búsqueda en varios almacenes de datos, por lo que se ignorará este parámetro. |
FilterExtractionCondition
Es una enumeración que describe en qué condición se debe realizar la extracción del filtro.
Enums | |
---|---|
CONDITION_UNSPECIFIED |
El comportamiento del servidor se establece de forma predeterminada en DISABLED . |
DISABLED |
Inhabilita la extracción de filtros de NL. |
ENABLED |
Habilita la extracción de filtros de lenguaje natural. |
ExtractedFilterBehavior
Es una enumeración que describe cómo se aplican los filtros extraídos a la búsqueda.
Enums | |
---|---|
EXTRACTED_FILTER_BEHAVIOR_UNSPECIFIED |
EXTRACTED_FILTER_BEHAVIOR_UNSPECIFIED usará el comportamiento predeterminado para los filtros extraídos. En el caso de la búsqueda en un solo almacén de datos, la configuración predeterminada es aplicar filtros estrictos. En el caso de la búsqueda en varios almacenes de datos, la configuración predeterminada es aplicar los aumentos como aumentos leves. |
HARD_FILTER |
Aplica todos los filtros extraídos como filtros estrictos en los resultados. Los resultados que no pasen los filtros extraídos no se devolverán en el conjunto de resultados. |
SOFT_BOOST |
Aplica todos los filtros extraídos como refuerzos leves. Los resultados que pasen los filtros se impulsarán a clasificaciones más altas en el conjunto de resultados. |
SearchAsYouTypeSpec
Es la especificación de la búsqueda mientras escribes en las solicitudes de búsqueda.
Representación JSON |
---|
{
"condition": enum ( |
Campos | |
---|---|
condition |
Condición en la que se debe realizar la búsqueda a medida que escribes. Margen aproximado predeterminado: |
Condición
Es una enumeración que describe en qué condición debe ocurrir la búsqueda mientras escribes.
Enums | |
---|---|
CONDITION_UNSPECIFIED |
El comportamiento del servidor se establece de forma predeterminada en Condition.DISABLED . |
DISABLED |
Inhabilita la función de búsqueda mientras escribes. |
ENABLED |
Habilita la función de búsqueda mientras escribes. |
AUTO |
Cambio automático entre los modos de búsqueda estándar y de búsqueda mientras escribes, ideal para implementaciones de una sola API (p.ej., eliminación de rebotes). |
DisplaySpec
Especifica las funciones para mostrar, como el resaltado de coincidencias.
Representación JSON |
---|
{
"matchHighlightingCondition": enum ( |
Campos | |
---|---|
matchHighlightingCondition |
Condición en la que se debe destacar la coincidencia. |
MatchHighlightingCondition
Es una enumeración que describe en qué condición se debe destacar la coincidencia.
Enums | |
---|---|
MATCH_HIGHLIGHTING_CONDITION_UNSPECIFIED |
El comportamiento del servidor es el mismo que el de MATCH_HIGHLIGHTING_DISABLED . |
MATCH_HIGHLIGHTING_DISABLED |
Inhabilita el resaltado de coincidencias en todos los documentos. |
MATCH_HIGHLIGHTING_ENABLED |
Habilita el resaltado de coincidencias en todos los documentos. |
SessionSpec
Es la especificación de la sesión.
Actualmente, la función de búsqueda de turnos múltiples se encuentra en la etapa de disponibilidad general privada. Usa la versión v1alpha o v1beta antes de que lancemos esta función para la DG pública, o bien solicita que se agregue a la lista de entidades permitidas a través del equipo de Atención al cliente de Google.
Representación JSON |
---|
{ "queryId": string, "searchResultPersistenceCount": integer } |
Campos | |
---|---|
queryId |
Si se configura, el resultado de la búsqueda se almacena en el "turno" especificado por este ID de búsqueda. Ejemplo: Supongamos que la sesión se ve de la siguiente manera: 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" } } } El usuario puede llamar a la API de /search con una solicitud como esta: session: ".../sessions/xxx" sessionSpec { queryId: ".../questions/zzz" } Luego, la API almacena el resultado de la búsqueda asociado con el último turno. El resultado de la búsqueda almacenado se puede usar en una llamada posterior a la API de /answer (con el ID de sesión y el ID de consulta especificados). También es posible llamar a /search y /answer en paralelo con el mismo ID de sesión y de búsqueda. |
searchResultPersistenceCount |
Es la cantidad de resultados de la búsqueda principales que se conservarán. Los resultados de la búsqueda persistentes se pueden usar para la llamada posterior a la API de /answer. Este campo es similar al campo Como máximo, 10 resultados para el modo de documentos o 50 para el modo de fragmentos. |
RelevanceThreshold
Es el umbral de relevancia de los resultados de la búsqueda. Cuanto más alto sea el umbral de relevancia, más resultados pertinentes se mostrarán y menos resultados se devolverán.
Enums | |
---|---|
RELEVANCE_THRESHOLD_UNSPECIFIED |
Valor predeterminado. En este caso, el comportamiento del servidor se establece de forma predeterminada en el umbral definido por Google. |
LOWEST |
Es el umbral de relevancia más bajo. |
LOW |
Umbral de relevancia bajo. |
MEDIUM |
Umbral de relevancia medio. |
HIGH |
Umbral de relevancia alto. |
RelevanceScoreSpec
Es la especificación para devolver la puntuación de relevancia del documento.
Representación JSON |
---|
{ "returnRelevanceScore": boolean } |
Campos | |
---|---|
returnRelevanceScore |
Opcional. Indica si se debe devolver la puntuación de relevancia para los resultados de la búsqueda. Cuanto más alta sea la puntuación, más pertinente será el documento para la búsqueda. |
SearchAddonSpec
SearchAddonSpec se usa para inhabilitar los complementos de la búsqueda según el nuevo modelo de cambio de precios. De forma predeterminada, si no se especifica SearchAddonSpec, consideramos que el cliente desea habilitarlos siempre que sea aplicable.
Representación JSON |
---|
{ "disableSemanticAddOn": boolean, "disableKpiPersonalizationAddOn": boolean, "disableGenerativeAnswerAddOn": boolean } |
Campos | |
---|---|
disableSemanticAddOn |
Opcional. Si es verdadero, se inhabilita el complemento semántico. El complemento semántico incluye embeddings y jetstream. |
disableKpiPersonalizationAddOn |
Opcional. Si es verdadero, inhabilita la clasificación y la personalización de eventos para optimizar los KPI y personalizar los resultados. |
disableGenerativeAnswerAddOn |
Opcional. Si es verdadero, el complemento de respuestas generativas está inhabilitado. El complemento de respuestas generativas incluye lenguaje natural para filtros y respuestas simples. |
QuerySetSpec
Describe la especificación del conjunto de búsquedas.
Representación JSON |
---|
{ "sampleQuerySet": string } |
Campos | |
---|---|
sampleQuerySet |
Opcional. Es el nombre completo del recurso |
QualityMetrics
Describe las métricas que produce la evaluación.
Representación JSON |
---|
{ "docRecall": { object ( |
Campos | |
---|---|
docRecall |
Recuperación por documento, en varios niveles de corte de los primeros k resultados. La recuperación es la fracción de documentos pertinentes recuperados de todos los documentos pertinentes. Ejemplo (5 primeros): * Para un solo |
docPrecision |
Es la precisión por documento, en varios niveles de corte de los k principales. La precisión es la fracción de documentos recuperados que son pertinentes. Ejemplo (top-5): * Para un solo |
docNdcg |
Es la ganancia acumulada normalizada y con descuento (NDCG) por documento, en varios niveles de corte de los primeros k resultados. El NDCG mide la calidad de la clasificación y otorga mayor relevancia a los resultados principales. Ejemplo (los 3 primeros): Supongamos que Recuperados: [D3 (0), D1 (1), D2 (1)] Ideales: [D1 (1), D2 (1), D3 (0)] Calcula el NDCG@3 para cada |
pageRecall |
Recuperación por página, en varios niveles de corte de los primeros k resultados. La recuperación es la fracción de páginas relevantes recuperadas de todas las páginas relevantes. Ejemplo (5 primeros): * Para un solo |
pageNdcg |
Ganancia acumulada normalizada y con descuento (NDCG) por página, en varios niveles de corte de los primeros k resultados. El NDCG mide la calidad de la clasificación y otorga mayor relevancia a los resultados principales. Ejemplo (3 principales): Supongamos que Recuperado: [P3 (0), P1 (1), P2 (1)] Ideal: [P1 (1), P2 (1), P3 (0)] Calcula NDCG@3 para |
TopkMetrics
Almacena los valores de la métrica en niveles específicos de los mejores K.
Representación JSON |
---|
{ "top1": number, "top3": number, "top5": number, "top10": number } |
Campos | |
---|---|
top1 |
Es el valor del primer resultado. |
top3 |
Es el valor de los 3 primeros. |
top5 |
Es el valor de los 5 principales. |
top10 |
Es el valor de los 10 primeros. |
Estado
Describe el estado de una evaluación.
Enums | |
---|---|
STATE_UNSPECIFIED |
La evaluación no está especificada. |
PENDING |
El servicio se está preparando para ejecutar la evaluación. |
RUNNING |
La evaluación está en curso. |
SUCCEEDED |
La evaluación se completó correctamente. |
FAILED |
Se produjo un error en la evaluación. |
Métodos |
|
---|---|
|
Crea un Evaluation . |
|
Obtienes una Evaluation . |
|
Obtiene una lista de Evaluation s. |
|
Obtiene una lista de resultados para un Evaluation determinado. |