REST Resource: projects.locations.corpora.searchConfigs

Ressource: SearchConfig

SearchConfig stocke différentes propriétés qui affectent les comportements de recherche et les résultats de recherche.

Représentation JSON
{
  "name": string,
  "facetProperty": {
    object (FacetProperty)
  },
  "searchCriteriaProperty": {
    object (SearchCriteriaProperty)
  }
}
Champs
name

string

Nom de ressource de la configuration de recherche. Pour CustomSearchCriteria, searchConfig correspond au nom de l'opérateur de recherche. Pour les facettes, searchConfig correspond au nom de la dimension de facette. Formulaire: projects/{project_number}/locations/{location}/corpora/{corpus}/searchConfigs/{searchConfig}

facetProperty

object (FacetProperty)

Définit une FacetDimension et les spécifications associées.

searchCriteriaProperty

object (SearchCriteriaProperty)

Crée un mappage entre des critères de recherche personnalisés et une ou plusieurs clés UGA.

FacetProperty

Configuration centrale pour un facet.

Représentation JSON
{
  "mappedFields": [
    string
  ],
  "displayName": string,
  "resultSize": string,
  "bucketType": enum (FacetBucketType),

  // Union field range_facet_config can be only one of the following:
  "fixedRangeBucketSpec": {
    object (FixedRangeBucketSpec)
  },
  "customRangeBucketSpec": {
    object (CustomRangeBucketSpec)
  },
  "datetimeBucketSpec": {
    object (DateTimeBucketSpec)
  }
  // End of list of possible types for union field range_facet_config.
}
Champs
mappedFields[]

string

Nom des attributs, qui sont les dimensions que les utilisateurs souhaitent utiliser pour affiner les résultats de recherche. mappedFields correspond aux clés UserSpecifiedDataSchema.

Par exemple, l'utilisateur peut ajouter un certain nombre d'UGA avec la même clé, comme player:adam, player:bob et player:charles. Lorsque plusieurs mappedFields sont spécifiés, leurs valeurs sont fusionnées en tant que valeur de facette finale. Par exemple, home_team: a, home_team:b, away_team:a, away_team:c, lorsque facet_field = [home_team, away_team], facet_value sera [a, b, c].

À moins qu'il ne s'agisse d'une dimension de facette individuelle (mappedFields.size() == 1) ET que le champ mapped_field soit égal au nom SearchConfig.name du parent, le parent doit également contenir une propriété SearchCriteriaProperty qui fait correspondre les mêmes champs. mappedFields ne doit pas être vide.

displayName

string

Nom à afficher de l'attribut. À utiliser par l'UI pour l'affichage des facettes.

resultSize

string (int64 format)

Nombre maximal de buckets uniques à renvoyer pour un seul attribut. Le nombre de buckets peut être élevé pour une facette à forte cardinalité telle que "joueur". Nous ne renvoyons que les n premières les plus pertinentes pour l'utilisateur. Si la valeur est inférieure ou égale à 0, le serveur détermine la valeur de resultSize appropriée.

bucketType

enum (FacetBucketType)

Type de bucket de facette (par exemple, valeur, plage).

Champ d'union range_facet_config.

range_facet_config ne peut être qu'un des éléments suivants :

fixedRangeBucketSpec

object (FixedRangeBucketSpec)

Configuration du bucket de facettes à plage fixe.

customRangeBucketSpec

object (CustomRangeBucketSpec)

Configuration du bucket d'attributs de plage personnalisée.

datetimeBucketSpec

object (DateTimeBucketSpec)

Configuration du bucket de facette de plage de dates et d'heures.

FixedRangeBucketSpec

Si le type de bucket est FIXED_RANGE, spécifiez comment les valeurs sont divisées en buckets. Utilisez FixedRangeBucketSpec lorsque vous souhaitez créer plusieurs buckets avec une granularité égale. Prenons l'exemple d'une valeur de bucket entier. Lorsque bucketStart est défini sur 0, bucketGranularity sur 10 et bucketCount sur 5, cet attribut est agrégé via les buckets suivants: [-inf, 0), [0, 10), [10, 20), [20, 30), [30, inf). Notez que la valeur bucketCount <= 1 n'est pas valide.

Représentation JSON
{
  "bucketStart": {
    object (FacetValue)
  },
  "bucketGranularity": {
    object (FacetValue)
  },
  "bucketCount": integer
}
Champs
bucketStart

object (FacetValue)

Limite inférieure du bucket. REMARQUE: Seul le type entier est actuellement accepté pour ce champ.

bucketGranularity

object (FacetValue)

Précision des buckets. REMARQUE: Seul le type entier est actuellement accepté pour ce champ.

bucketCount

integer

Nombre total de buckets.

FacetValue

Définition d'une seule valeur avec un type générique.

Représentation JSON
{

  // Union field value can be only one of the following:
  "stringValue": string,
  "integerValue": string,
  "datetimeValue": {
    object (DateTime)
  }
  // End of list of possible types for union field value.
}
Champs

Champ d'union value.

value ne peut être qu'un des éléments suivants :

stringValue

string

Valeur de type de chaîne.

integerValue

string (int64 format)

Valeur de type entier.

datetimeValue

object (DateTime)

Valeur du type Date/Heure.

CustomRangeBucketSpec

Si le type de bucket est CUSTOM_RANGE, spécifiez comment les valeurs sont divisées en buckets. Prenons l'exemple d'une valeur de bucket entier. Lorsque les points de terminaison sont définis sur 0, 10, 100 et 1 000, les attributs suivants sont générés: [-inf, 0), [0, 10), [10, 100), [100, 1 000), [1 000, inf). En particulier: - Les points de terminaison doivent être listés dans l'ordre croissant. Sinon, l'API SearchConfig rejettera la configuration des facettes. - Un nombre inférieur à 1 de points de terminaison est une spécification non valide.

Représentation JSON
{
  "endpoints": [
    {
      object (FacetValue)
    }
  ]
}
Champs
endpoints[]

object (FacetValue)

Actuellement, seul le type entier est accepté pour ce champ.

DateTimeBucketSpec

Si le type de bucket est "DATE", spécifiez comment les valeurs de date sont réparties en buckets.

Représentation JSON
{
  "granularity": enum (Granularity)
}
Champs
granularity

enum (Granularity)

Précision de la facette de type de date.

Précision

Énumération de la granularité pour le bucket de date/heure.

Enums
GRANULARITY_UNSPECIFIED Précision non spécifiée.
YEAR La granularité est l'année.
MONTH La précision est de mois.
DAY La granularité est de jour.

FacetBucketType

Différents types de buckets de facettes.

Enums
FACET_BUCKET_TYPE_UNSPECIFIED Type non spécifié.
FACET_BUCKET_TYPE_VALUE Type de valeur.
FACET_BUCKET_TYPE_DATETIME Type Date/Heure.
FACET_BUCKET_TYPE_FIXED_RANGE Type de plage fixe.
FACET_BUCKET_TYPE_CUSTOM_RANGE Type de plage personnalisée.

SearchCriteriaProperty

Configuration centralisée des critères de recherche personnalisés.

Représentation JSON
{
  "mappedFields": [
    string
  ]
}
Champs
mappedFields[]

string

Chaque champ mappé correspond à une clé UGA. Pour comprendre le fonctionnement de cette propriété, prenons l'exemple suivant. Dans le tableau SearchConfig, l'utilisateur ajoute cette entrée: searchConfig { name: "person" searchCriteriaProperty { mappedFields: "player" mappedFields: "coach" } }

Désormais, lorsqu'un utilisateur émet une requête telle que: criteria { field: "person" textArray { txtValues: "Tom Brady" txtValues: "Bill Belichick" } }

La recherche MWH renvoie les documents de recherche où (joueur=Tom Brady || entraîneur=Tom Brady || joueur=Bill Belichick || entraîneur=Bill Belichick).

Méthodes

create

Crée une configuration de recherche dans un corpus.

delete

Supprime une configuration de recherche dans un corpus.

get

Récupère une configuration de recherche dans un corpus.

list

Répertorie toutes les configurations de recherche d'un corpus.

patch

Met à jour une configuration de recherche dans un corpus.