Auf dieser Seite wird erläutert, wie Sie Suchanfragen für eine Suchanwendung mit Websitedaten filtern.
Hinweis
Achten Sie darauf, dass Sie eine Anwendung und einen Datenspeicher erstellt und Websitedaten in den Datenspeicher aufgenommen haben. Weitere Informationen finden Sie unter Suchanwendung erstellen.
Filterausdrücke
Verwenden Sie Filterausdrücke, um Ihre Website-Suchfilter zu erstellen. Wie Sie Ihre Filter erstellen, hängt davon ab, ob Sie die erweiterte Websiteindexierung aktiviert haben. Je nachdem, ob Sie die einfache Website-Suche oder die erweiterte Websiteindexierung verwenden, finden Sie die entsprechenden Informationen in einem der folgenden Abschnitte:
Filterausdrücke für die einfache Website-Suche
In diesem Abschnitt wird das Verhalten von Filterausdrücken bei der einfachen Website-Suche erläutert (erweiterte Websiteindexierung ist deaktiviert).
Syntax für die einfache Website-Suche
Die folgende Extended Backus–Naur Form fasst die Syntax für Filterausdrücke zusammen, mit der Sie einen Website-Suchfilter erstellen können, wenn Sie die einfache Website-Suche verwenden. Doppelte Anführungszeichen nach dem Doppelpunkt in einem Filter sind obligatorisch.
# A single expression or multiple expressions that are joined by "AND". filter = expression, { "AND", expression }; expression = # A simple expression applying to a text url string. | filter_key, ":", \"text_value\" filter_key = (cr | highRange | lowRange | fileType | lr | rights | siteSearch); text_value = string value to filter on;
Verfügbare Felder für die einfache Website-Suche
Hier sind die Felder, die für das Filtern Ihrer Website-Suche verfügbar sind, wenn Sie die einfache Website-Suche verwenden:
cr(String): Beschränkt die Suchergebnisse auf Dokumente aus einem bestimmten Land. Eine Liste der unterstützten Werte finden Sie unter Werte der Ländersammlung.highRange(String): Gibt die Obergrenze des Suchbereichs an. Wenn ein Dokument eine Zahl enthält, muss diese Zahl kleiner oder gleich dem Wert vonhighRangesein, damit das Dokument in die Antwort aufgenommen wird. Geben Sie sowohlhighRangeals auchlowRangean, um eine Suchanfrage im Bereich dieser Parameter zu erstellen.lowRange(String): Gibt die Untergrenze des Suchbereichs an. Wenn ein Dokument eine Zahl enthält, muss diese Zahl größer oder gleich dem Wert vonlowRangesein, damit das Dokument in die Antwort aufgenommen wird. Geben Sie sowohllowRangeals auchhighRangean, um eine Suchanfrage im Bereich dieser Parameter zu erstellen.fileType(String): Beschränkt die Suchergebnisse auf Dokumente mit einer bestimmten Erweiterung. Eine Liste der unterstützten Dateitypen finden Sie unter Von Google indexierbare Dateitypen.lr(String): Beschränkt die Suchergebnisse auf Dokumente in einer bestimmten Sprache. Eine Liste der unterstützten Sprachen finden Sie unter Suchparameter (lr).rights(String): Filtert Suchergebnisse nach Lizenzierung. Unterstützte Werte finden Sie unter Suchparameter (rights).siteSearch(String): Gibt ein URL-Muster für die Webseiten an, die von Ihrer Abfrage durchsucht werden sollen.
Beispiele für die einfache Website-Suche
Hier einige Filterbeispiele für die einfache Website-Suche:
{"filter": "cr:\"countryUS\" AND siteSearch:\"https://example.com/example_domain\""}Filtert nach Dokumenten, die (1) aus den USA stammen und (2) sich in der Domain
https://example.com/example_domainbefinden.{"filter": "fileType:\".pdf\" AND lr:\"lang_en\""}Filtert nach Dokumenten, die (1) PDF-Dateien sind und (2) auf Englisch verfasst sind.
{"filter": "rights:\"cc_publicdomain\""}Filtert nach Dokumenten, die gemeinfrei sind.
Filterausdrücke mit erweiterter Websiteindexierung
In diesem Abschnitt wird das Verhalten von Filterausdrücken bei der erweiterten Websiteindexierung erläutert (erweiterte Websiteindexierung ist aktiviert).
Verfügbare Felder für die erweiterte Websiteindexierung
Wenn Sie die erweiterte Websiteindexierung verwenden, können Sie Ihre Website-Suche mit diesen Feldern filtern:
siteSearch(String): Ein URL-Muster für die Webseiten, die von Ihrer Abfrage durchsucht werden sollen.meta-Tag-Namen und PageMap-Attributnamen: Strukturierte Daten von Ihren Webseiten, die dem Schema Ihres Datenspeichers hinzugefügt werden können, damit die Felder durchsuchbar, abrufbar und indexierbar sind. Weitere Informationen finden Sie unter Strukturierte Daten für die erweiterte Websiteindexierung verwenden.
Syntax für die erweiterte Websiteindexierung
Die folgende Extended Backus–Naur Form fasst die Syntax für Filterausdrücke zusammen, mit der Sie einen Website-Suchfilter erstellen können, wenn Sie die erweiterte Websiteindexierung verwenden. Doppelte Anführungszeichen nach dem Doppelpunkt in einem Filter sind obligatorisch.
Beim Filtern nach siteSearch lautet die EBNF-Syntax so:
# A single expression or multiple expressions that are joined by "OR". filter = expression, { "OR", expression }; # Expressions can be prefixed with "-" or "NOT" to express a negation. expression = [ "-" | "NOT " ], # A simple expression applying to a text url string. | filter_key, ":", \"url_string\" filter_key = siteSearch; url_string = double quoted string representing a URL;
Beim Filtern nach meta-Tag-Namen und PageMap-Attributnamen lautet die EBNF-Syntax so:
# A single expression or multiple expressions that are joined by "OR". filter = expression, { "OR", expression }; # Expressions can be prefixed with "-" or "NOT" to express a negation. expression = [ "-" | "NOT " ], # Function "ANY" returns true if the field exactly matches any of the literals. | text_field, ":", "ANY", "(", literal, { ",", literal }, ")" literal = double quoted string; # text_field corresponds to the meta tag or PageMap Attribute name, for example, category text_field = text field;
Beispiele für die erweiterte Websiteindexierung
Hier einige Filterbeispiele für die erweiterte Websiteindexierung mit siteSearch:
{"filter": "siteSearch:\"https://example.com/example_domain\""}Filtert nach Dokumenten, die sich in der Domain
https://example.com/example_domainbefinden. Beispiel:https://example.com/example_domain/index.html.{"filter": "siteSearch:\"https://example.com/subdomains/*\""}Filtert nach Dokumenten, die sich in einer Domain befinden, die mit
https://example.com/subdomains/*übereinstimmt. Beispiel:https://example.com/subdomains/example_subdomain_page.{"filter": "siteSearch:\"https://altostrat.com/subdomain/pages/*\" OR siteSearch:\"http://cymbalgroup.com/pages/*\""}Filtert nach Dokumenten, die sich in einer Domain befinden, die mit dem ersten oder zweiten URL-Muster übereinstimmt. Beispiele:
https://altostrat.com/subdomain/pages/title_page,https://cymbalgroup.com/subdomain/pages/title_pageoderhttps://altostrat.com/subdomain/pages/INFO.
Hier einige Beispiele für das Filtern nach meta-Tag-Namen oder PageMap-Attributnamen:
{"filter": "product: ANY(\"networking\",\"compute\")"}Filtert nach Dokumenten, die das
meta-Tag oder das PageMap-Attributproductenthalten, wobei der Wert entwedernetworkingodercomputeist.{"filter": "NOT product: ANY(\"storage\")"}Filtert nach Dokumenten, die nicht das
meta-Tag oder den PageMap-Attributnamenproductmit dem Wertstorageenthalten.{"filter": "dateModified>= \"2025-07-31T00:00:00Z\")"}Filtert nach Dokumenten, deren Datum der letzten Änderung der 31. Juli 2025 ist. Das Format muss dem Format im Dokumentschema entsprechen. Weitere Informationen finden Sie unter
DATETIME.
Weitere Informationen zu meta Tag-Namen und PageMap-Attributnamen, die für die Indexierung verwendet werden,
finden Sie unter Anwendungsbeispiel für meta Tags
und Anwendungsbeispiel für PageMaps.
Website-Suche filtern
So filtern Sie eine Website-Suche:
App-ID suchen. Wenn Sie Ihre App-ID bereits haben, fahren Sie mit dem nächsten Schritt fort.
Rufen Sie in der Google Cloud Console die Seite KI-Anwendungen auf.
Suchen Sie auf der Seite Apps nach dem Namen Ihrer App und entnehmen Sie die App-ID der Spalte ID.
Verwenden Sie zum Filtern einer Website-Suche das Feld
filtermit derengines.servingConfigs.searchMethode.curl -X POST -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json" \ "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search:search" \ -d '{ "servingConfig": "projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search", "query": "QUERY", "filter": "FILTER" }'Ersetzen Sie Folgendes:
PROJECT_ID: die Projekt-ID.APP_ID: die App-ID.QUERY: der Abfragetext für die Suche.FILTER: ein Textfeld zum Filtern der Suche mit einem Filterausdruck. Der Standardwert ist ein leerer String.Informationen zum Erstellen eines Filters für die einfache Website-Suche finden Sie unter Filterausdrücke für die einfache Website-Suche.
Informationen zum Erstellen eines Filters für die erweiterte Websiteindexierung finden Sie unter Filterausdrücke mit erweiterter Websiteindexierung.