REST Resource: projects.locations.corpora.searchConfigs

Ressource: SearchConfig

In „SearchConfig“ werden verschiedene Properties gespeichert, die sich auf das Suchverhalten und die Suchergebnisse auswirken.

JSON-Darstellung
{
  "name": string,
  "facetProperty": {
    object (FacetProperty)
  },
  "searchCriteriaProperty": {
    object (SearchCriteriaProperty)
  }
}
Felder
name

string

Ressourcenname der Suchkonfiguration. Bei „CustomSearchCriteria“ ist „searchConfig“ der Name des Suchoperators. Bei Facetten ist „searchConfig“ der Name der Facettendimension. Formular: projects/{project_number}/locations/{location}/corpora/{corpus}/searchConfigs/{searchConfig}

facetProperty

object (FacetProperty)

Hiermit wird eine Facettendimension und die zugehörigen Spezifikationen festgelegt.

searchCriteriaProperty

object (SearchCriteriaProperty)

Erstellt eine Zuordnung zwischen einem benutzerdefinierten SearchCriteria und einem oder mehreren UGA-Schlüsseln.

FacetProperty

Zentrale Konfiguration für eine Facette.

JSON-Darstellung
{
  "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.
}
Felder
mappedFields[]

string

Name der Facetten, also der Dimensionen, mit denen Nutzer die Suchergebnisse verfeinern möchten. mappedFields wird mit Schlüsseln des UserSpecifiedDataSchema abgeglichen.

So können Nutzer beispielsweise mehrere UGAs mit demselben Schlüssel hinzufügen, z. B. „player:adam“, „player:bob“ und „player:charles“. Wenn mehrere „mappedFields“ angegeben werden, werden ihre Werte zum endgültigen Facettenwert zusammengeführt. Beispiel: „Heimmannschaft: a“, „Heimmannschaft: b“, „Auswärtsmannschaft: a“, „Auswärtsmannschaft: c“. Wenn „facet_field“ die Werte „Heimmannschaft“ und „Auswärtsmannschaft“ enthält, ist „facet_value“ gleich [a, b, c].

Sofern es sich nicht um eine 1:1-Facettendimension handelt (mappedFields.size() == 1) und das mapped_field dem übergeordneten SearchConfig.name entspricht, muss das übergeordnete Element auch eine SearchCriteriaProperty enthalten, die denselben Feldern zugeordnet ist. mappedFields darf nicht leer sein.

displayName

string

Der Anzeigename der Facette. Wird von der Benutzeroberfläche für das Facett-Rendering verwendet.

resultSize

string (int64 format)

Maximale Anzahl der eindeutigen Bucket, die für eine Facette zurückgegeben werden sollen. Bei einer Facette mit hoher Kardinalität wie „Spieler“ kann die Anzahl der Bucket sehr hoch sein. Wir geben dem Nutzer nur die n wichtigsten Ergebnisse zurück. Wenn der Wert <= 0 ist, entscheidet der Server über die entsprechende resultSize.

bucketType

enum (FacetBucketType)

Bucket-Typ der Facette, z.B. „Wert“ oder „Bereich“.

Union-Feld range_facet_config.

Für range_facet_config ist nur einer der folgenden Werte zulässig:

fixedRangeBucketSpec

object (FixedRangeBucketSpec)

Konfiguration des Bucket für die Facette „Festgelegter Bereich“

customRangeBucketSpec

object (CustomRangeBucketSpec)

Konfiguration des benutzerdefinierten Bereichs-Facetten-Buckets.

datetimeBucketSpec

object (DateTimeBucketSpec)

Konfiguration des Bucket für die Facette „Zeitraum“

FixedRangeBucketSpec

Wenn der Bucket-Typ FIXED_RANGE ist, geben Sie an, wie Werte in Buckets aufgeteilt werden sollen. Verwenden Sie „FixedRangeBucketSpec“, wenn Sie mehrere Bucket mit gleicher Detaillierung erstellen möchten. Wenn beispielsweise „bucketStart“ = 0, „bucketGranularity“ = 10 und „bucketCount“ = 5 ist, wird diese Facette anhand der folgenden Buckets aggregiert: [-inf, 0), [0, 10), [10, 20), [20, 30), [30, inf). Insbesondere ist „bucketCount <= 1“ eine ungültige Angabe.

JSON-Darstellung
{
  "bucketStart": {
    object (FacetValue)
  },
  "bucketGranularity": {
    object (FacetValue)
  },
  "bucketCount": integer
}
Felder
bucketStart

object (FacetValue)

Untergrenze des Buckets. HINWEIS: Derzeit wird für dieses Feld nur der Ganzzahltyp unterstützt.

bucketGranularity

object (FacetValue)

Detaillierungsgrad des Buckets. HINWEIS: Derzeit wird für dieses Feld nur der Ganzzahltyp unterstützt.

bucketCount

integer

Die Gesamtzahl der Buckets.

FacetValue

Definition eines einzelnen Werts mit generischen Typ.

JSON-Darstellung
{

  // 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.
}
Felder

Union-Feld value.

Für value ist nur einer der folgenden Werte zulässig:

stringValue

string

Stringwert.

integerValue

string (int64 format)

Ganzzahlwert.

datetimeValue

object (DateTime)

Wert des Datentyps „Datum/Uhrzeit“.

CustomRangeBucketSpec

Wenn der Bucket-Typ CUSTOM_RANGE ist, geben Sie an, wie Werte in Buckets aufgeteilt werden sollen. Wenn Sie beispielsweise einen Ganzzahl-Bucket-Wert verwenden und die Endpunkte 0, 10, 100 und 1.000 sind, werden die folgenden Attribute generiert: [-inf, 0), [0, 10), [10, 100), [100, 1000), [1000, inf). Insbesondere: Endpunkte müssen in aufsteigender Reihenfolge aufgeführt werden. Andernfalls wird die Facettenkonfiguration von der SearchConfig API abgelehnt. – Weniger als ein Endpunkt ist eine ungültige Spezifikation.

JSON-Darstellung
{
  "endpoints": [
    {
      object (FacetValue)
    }
  ]
}
Felder
endpoints[]

object (FacetValue)

Derzeit wird für dieses Feld nur der Ganzzahltyp unterstützt.

DateTimeBucketSpec

Wenn der Bucket-Typ DATE ist, geben Sie an, wie Datumswerte in Buckets aufgeteilt werden sollen.

JSON-Darstellung
{
  "granularity": enum (Granularity)
}
Felder
granularity

enum (Granularity)

Detaillierungsgrad der Facette vom Typ „Datum“.

Detaillierungsgrad

Aufzählung für die Granularität des datetime-Buckets.

Enums
GRANULARITY_UNSPECIFIED Nicht angegebene Detailebene.
YEAR Die Detaillierungsebene ist „Jahr“.
MONTH Die Detaillierung erfolgt auf Monatsebene.
DAY Der Detaillierungsgrad ist „Tag“.

FacetBucketType

Verschiedene Typen für einen Facettenbereich.

Enums
FACET_BUCKET_TYPE_UNSPECIFIED Nicht definierter Typ.
FACET_BUCKET_TYPE_VALUE Werttyp.
FACET_BUCKET_TYPE_DATETIME Datums-/Uhrzeittyp.
FACET_BUCKET_TYPE_FIXED_RANGE Typ „Fester Bereich“.
FACET_BUCKET_TYPE_CUSTOM_RANGE Typ „Benutzerdefinierter Zeitraum“

SearchCriteriaProperty

Zentrale Konfiguration für benutzerdefinierte Suchkriterien.

JSON-Darstellung
{
  "mappedFields": [
    string
  ]
}
Felder
mappedFields[]

string

Jedes mapped_field entspricht einem UGA-Schlüssel. Das folgende Beispiel veranschaulicht die Funktionsweise dieser Property. In der Tabelle „SearchConfig“ fügt der Nutzer diesen Eintrag hinzu: searchConfig { name: "person" searchCriteriaProperty { mappedFields: "player" mappedFields: "coach" } }

Wenn ein Nutzer jetzt eine Suchanfrage wie diese stellt: criteria { field: "person" textArray { txtValues: "Tom Brady" txtValues: "Bill Belichick" } }

Die MWH-Suche gibt Suchdokumente zurück, in denen (player=Tom Brady || coach=Tom Brady || player=Bill Belichick || coach=Bill Belichick) enthalten ist.

Methoden

create

Erstellt eine Suchkonfiguration in einem Korpus.

delete

Löscht eine Suchkonfiguration in einem Korpus.

get

Ruft eine Suchkonfiguration in einem Corpus ab.

list

Listet alle Suchkonfigurationen in einem Korpus auf.

patch

Aktualisiert eine Suchkonfiguration in einem Corpus.