Suchergebnisse abrufen

Auf dieser Seite werden grundlegende Abfragen mit der Suche beschrieben, einschließlich Textabfragesuchen, Browsersuchen, Paginierung, Optimierung und personalisierter Ergebnisse.

Personalisierte Ergebnisse eines Endnutzers dürfen niemals im Cache gespeichert und niemals an einen anderen Endnutzer zurückgegeben werden.

Relevanz ist nicht dasselbe wie Abgleich. Beim Abgleich werden im Index Kandidatenprodukte gefunden, die der Suchanfrage des Nutzers entsprechen. Relevanz hingegen ist ein Grad der Übereinstimmung. Dabei werden die Produkte so sortiert, dass die Intention und die Bedürfnisse des Nutzers bestmöglich erfüllt werden. Bei Vertex AI Search for Retail werden Techniken eingesetzt, um die Übereinstimmung und Relevanz zu verbessern und so die allgemeine Suchfunktion für Nutzer zu optimieren und die Anforderungen von Einzelhändlern zu erfüllen.

Bei Vertex AI Search for Commerce wird standardmäßig die Relevanz in der Suche verwendet. Die Suche ist jedoch so optimiert, dass auch nur geringfügig relevante Artikel weiter oben in den Suchergebnissen angezeigt werden. So erhalten Einzelhändler gezieltere Suchergebnisse, um das Conversion-Potenzial von Nutzerereignissen zu steigern.

Diese zusätzlichen Suchfunktionen optimieren den Standardrelevanzalgorithmus und bieten nicht standardmäßige Funktionen, die auf das Nutzungsprofil des jeweiligen Einzelhändlers abgestimmt sind, darunter:

  • Optionen zum Sortieren von Ergebnissen, z. B. nach Preis, am besten bewerteten oder meistverkauften Artikeln. Die nicht standardmäßige Suche ist so angepasst, dass bestimmte Suchergebnisse mit den richtigen Produktvarianten zurückgegeben werden. So können Sie beispielsweise die günstigste oder teuerste Variante anzeigen, wenn Sie nach Preis sortieren.

  • Automatische Anwendung eines strengeren Relevanzfilters für Nutzerereignisse, die nicht dem Standard entsprechen.

  • Sie können die Stärke der Boost-/Bury-Steuerelemente anpassen, um die Suchergebnisse zu optimieren.

Die Suche bietet sowohl die Möglichkeit, Textabfragen zu suchen, als auch die Möglichkeit, zu suchen, indem Sie durch die Inhalte browsen.

Bei der textbasierten Suche gibt ein Käufer möglicherweise eine textbasierte Anfrage auf Ihrer Website ein. Bei der Suche wird eine Suchantwort mit Produkten zurückgegeben, die den Parametern der von Ihnen eingerichteten Einstellungen entsprechen. Die Produkte sind nach Relevanz und Umsatzmaximierung sortiert.

Im Browse-Anwendungsfall ruft ein Käufer möglicherweise das Menü Ihrer Website auf und navigiert zu einer bestimmten Produktkategorie. Bei der automatischen Suche wird die umsatzmaximierende Sortierreihenfolge anhand von Nutzerverhalten und Trends ausgewählt. Die Browserergebnisse können durch die von Ihnen eingerichteten Steuerelemente weiter eingegrenzt werden.

Sowohl Text- als auch Browse-Suchanfragen verwenden die Methode servingConfigs.search.

Textabfragesuchen

Wenn ein Nutzer eine Textanfrage eingibt, um auf Ihrer Website zu suchen, werden potenzielle Suchergebnisse anhand von Relevanz, Beliebtheit, Kaufbarkeit und Personalisierung sortiert.

Bei einer servingConfigs.search-Anfrage wird davon ausgegangen, dass es sich um eine textbasierte Suchanfrage handelt, wenn das Feld query nicht leer ist.

Wenn Sie Nutzerereignisse hochladen, senden Sie Ereignisse für die Suche nach Textanfragen, die durch die Suche generiert wurden, als search-Nutzerereignisse. Wenn das Ereignis ein nicht leeres Feld userEvent.searchQuery und ein leeres Feld userEvent.pageCategories hat, wird es bei der Suche als textbasiertes Suchereignis betrachtet.

Suchanfragen ansehen

Bei der Funktion „Durchsuchen“ werden Suchergebnisse mit gleicher Relevanz anhand der Websitenavigation generiert und nach Bestsellern sortiert. Bei der Suche wird KI eingesetzt, um die Sortierung der Suchergebnisse zu optimieren. Dabei werden Beliebtheit, Kaufbarkeit und Personalisierung berücksichtigt.

Damit die richtigen Suchergebnisse angezeigt werden, sollten Sie Folgendes beachten:

  • Die Werte für pageCategories und filter in Ihren Suchanfragen müssen genau mit den Werten für pageCategories und filter in Ihren hochgeladenen Nutzerereignissen übereinstimmen. Wenn die Parameter in den Anfragen nicht mit den Parametern in den Ereignissen übereinstimmen, funktioniert das auf Grundlage der Ereignisse trainierte Modell für die Neusortierung auf Grundlage von Klicks für diese spezielle Anfrage nicht sehr gut und wirkt sich negativ auf die Ergebnisqualität aus.

  • In Vertex AI Search for Commerce wird ein search-Nutzerereignis als durchsuchen-basiertes Ereignis kategorisiert, wenn das Feld userEvent.searchQuery leer und das Feld userEvent.pageCategories nicht leer ist. Daher müssen Sie dafür sorgen, dass Sie von Vertex AI Search for Commerce generierte Browse-Ereignisse als search-Nutzerereignisse senden, wenn Sie sie hochladen.

  • Ein Filter für die Produktsuche muss gültig sein und für jede Suchanfrage angeben, welche Produkte zur Produktkategorie gehören, in der der Nutzer sucht. Für dieses Setup muss die Kategorie-ID sowohl im Feld filter als auch im Feld page_category definiert werden. Wenn Sie beispielsweise möchten, dass die Suchergebnisse auf „Heim & Garten“ ausgerichtet sind, Zunächst einmal reicht ein einzelner filter-Wert von "in-stock" nicht aus, um die Suche so weit einzugrenzen, dass optimale Stöberergebnisse erzielt werden. Damit Suchergebnisse auf Haus und Garten beschränkt werden, müssen Sie nicht nur "Home \& Garden" in der Seitenkategorie, sondern auch im Filter mit categories: ANY("Home & Garden") festlegen. Wenn Sie die Kategorie im Filterteil nicht definieren, sind die Suchergebnisse wahrscheinlich zu breit gefasst und enthalten viele Artikel, die nicht zur Kategorie „Heim & Garten“ gehören.

Anfragen und Ereignisse mit einem leeren Anfragefeld und ausgefüllten page_categories-Feldern gelten als Browseranfragen und Nutzerereignisse. Das Feld page_categories gibt die Übersichtsseite selbst an. Wenn mit der Methode servingConfigs.search eine Anfrage gesendet wird, wird sie von der Suche als Browsersuchanfrage betrachtet, wenn das Feld query leer ist. In diesem Fall basieren die Ergebnisse auf den Feldern filter und pageCategories sowie, falls verfügbar, auf einer weiteren Optimierung und Personalisierung.

Sie können die Kategorie in beiden festlegen, wie in diesem Beispiel:

JSON

page_category: "Home & Garden"
filter: "(availability: ANY("IN_STOCK")) AND (categories: ANY("Home & Garden"))"

Andernfalls werden die Produkte in einer bestimmten Kategorie nicht automatisch in den Ergebnissen für eine bestimmte Seitenkategorie angezeigt, da die Suche mit einem leeren String funktioniert. Wenn der Endnutzer also ohne Angabe einer Textanfrage sucht, werden möglicherweise keine effektiv ausgerichteten Ergebnisse zurückgegeben, auch wenn er zu einer Kategorieseite navigiert.

Suchanfragen verwenden

Mit Suchanfragen können Sie Ergebnisse für Text- und Browsersuchen abrufen. Verwenden Sie zum Stellen einer Suchanfrage die Methode servingConfigs.search.

Für alle Suchanfragen ist placement erforderlich. Damit wird der vollständige Ressourcenname der Bereitstellungskonfiguration angegeben, die verwendet werden soll. Die Bereitstellungskonfiguration bestimmt, welche Einstellungen und zugehörigen Steuerelemente sich auf die Suchergebnisse auswirken.

Für Textanfrage-Suchanfragen ist ein nicht leeres query-Feld erforderlich.

Für Browser-Suchanfragen ist ein nicht leeres Feld pageCategories erforderlich.

Java

import com.google.cloud.retail.v2.SearchRequest;
import com.google.cloud.retail.v2.SearchResponse;
import com.google.cloud.retail.v2.SearchServiceClient;

public static void searchProducts(String query) throws IOException, InterruptedException {
  SearchRequest searchRequest = SearchRequest.newBuilder()
      .setPlacement(DEFAULT_SEARCH_PLACEMENT_NAME)
      .setBranch(DEFAULT_BRANCH_NAME)
      .setVisitorId(VISITOR_ID)
      .setQuery(query)
      .build();

  try (SearchServiceClient searchClient = SearchServiceClient.create()) {
    SearchResponse response = searchClient.search(searchRequest).getPage().getResponse();
    System.out.println("Search response: " + searchResponse);
  }
}

Standardmäßig wird eine angemessene Anzahl von Ergebnissen zurückgegeben, sortiert nach Relevanz.

Um Produktattribute abzurufen, die mit der Suchantwort zurückgegeben werden, müssen Sie beim Importieren Ihrer Katalogdaten Attributwerte angeben. Product hat vordefinierte Systemattribute wie Marke, Farbe und Größe, für die Sie Werte angeben können. Sie können auch benutzerdefinierte Attribute hinzufügen, die Sie mit Product.attributes definieren.

Anleitung zu Anfragen

In diesem Tutorial erfahren Sie, wie Sie eine textbasierte Suchanfrage an den Vertex AI Search for Commerce-Dienst senden und die Antwort analysieren.


Klicken Sie auf Anleitung, um eine detaillierte Anleitung für diese Aufgabe direkt im Cloud Shell-Editor zu erhalten:

Anleitung


Seitenumbruch

Verwenden Sie die Paginierung, um die Suchzeit und die Größe der gesendeten Antworten zu verringern.

Anleitung zum Seitenumbruch

In dieser Anleitung erfahren Sie, wie Sie den Seitenumbruch in einer textbasierten Suchanfrage steuern. Wenn ein Käufer in einem Shop nach Produkten sucht, kann er die Navigation in den Suchergebnissen verbessern. So können sie beispielsweise die Anzahl der Elemente in der Suchantwort mit der Funktion für die Seitengröße begrenzen oder mit der Offset-Funktion zur gewünschten Seite springen.


Klicken Sie auf Anleitung, um eine detaillierte Anleitung für diese Aufgabe direkt im Cloud Shell-Editor zu erhalten:

Anleitung


Paginieren

Verwenden Sie je nach Anwendungsfall page_token oder offset, um von einer Seite zu einer anderen zu springen.

Mit page_token können Sie zur nächsten Seite springen. Angenommen, Sie senden den folgenden SearchRequest.

JSON

{
  placement: 'projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/placements/default_search'
  visitor_id: 'VISITOR_ID'
  query: 'shoes'
  page_size: 5
}

Von SearchResponse können Sie die resultierenden Produkte mit einer Top-5-Relevanz zusammen mit einem next_page_token abrufen.

JSON

{
  results: [
    products{...}, products{...}, products{...}, products{...}, products{...}
  ]
  next_page_token: "wY4ETNkBDOlVjZ0YWLzUmM40SMhVjMtADMwATL5UGN5MGZlVDJaIQ5LaYsQUw9fC6lIwgE1EgC"
  total_size: 100
  search_token: "NtQKDAiXt4_3BRDCg_jnARABGiQ1ZWRjOTRlOC0wMDAwLTI1YTEtODJlMy1mNGY1ZTgwZDUxOGM"
}

Um die Produktergebnisse mit den nächsten fünf Relevanzstellen (6. bis 10.) abzurufen, geben Sie für page_token dieselben Werte für placement und visitor_id an und query als next_page_token der vorherigen SearchResponse.

Java

import com.google.cloud.retail.v2.SearchRequest;
import com.google.cloud.retail.v2.SearchResponse;
import com.google.cloud.retail.v2.SearchServiceClient;

public static void searchProducts_withNextPageToken(String query, int pageSize)
    throws IOException, InterruptedException {
  try (SearchServiceClient searchClient = SearchServiceClient.create()) {
    SearchRequest firstRequest = SearchRequest.newBuilder()
        .setPlacement(DEFAULT_SEARCH_PLACEMENT_NAME)
        .setBranch(DEFAULT_BRANCH_NAME)
        .setVisitorId(VISITOR_ID)
        .setQuery(query)
        .setPageSize(pageSize)
        .build();

    SearchResponse firstResponse = searchClient.search(firstRequest).getPage()
        .getResponse();
    System.out.println("First search response: " + firstResponse);

    SearchRequest secondRequest = SearchRequest.newBuilder()
        .setPlacement(DEFAULT_SEARCH_PLACEMENT_NAME)
        .setBranch(DEFAULT_BRANCH_NAME)
        .setVisitorId(VISITOR_ID)
        .setQuery(query)
        .setPageSize(pageSize)
        .setPageToken(firstResponse.getNextPageToken())
        .build();

    SearchResponse secondResponse = searchClient.search(secondRequest).getPage()
        .getResponse();
    System.out.println("Second search response: " + secondResponse);
  }
}

In diesem Beispiel sieht SearchRequest so aus:

JSON

{
  placement: 'projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/placements/default_search'
  visitor_id: 'VISITOR_ID'
  query: 'shoes'
  page_size: 5
  page_token: "wY4ETNkBDOlVjZ0YWLzUmM40SMhVjMtADMwATL5UGN5MGZlVDJaIQ5LaYsQUw9fC6lIwgE1EgC"
}

In anderen Fällen können Sie anstatt von Seite zu Seite zu gehen oder Ergebnisse mit hoher Relevanz zu erhalten, mit offset eine bestimmte Position direkt erreichen.

Java

import com.google.cloud.retail.v2.SearchRequest;
import com.google.cloud.retail.v2.SearchResponse;
import com.google.cloud.retail.v2.SearchServiceClient;

public static void searchProducts_withOffset(String query, int pageSize,
    int offset) throws IOException, InterruptedException {
  SearchRequest searchRequest = SearchRequest.newBuilder()
      .setPlacement(DEFAULT_SEARCH_PLACEMENT_NAME)
      .setBranch(DEFAULT_BRANCH_NAME)
      .setVisitorId(VISITOR_ID)
      .setQuery(query)
      .setPageSize(pageSize)
      .setOffset(offset)
      .build();

  try (SearchServiceClient searchClient = SearchServiceClient.create()) {
    SearchResponse response = searchClient.search(searchRequest).getPage().getResponse();
    System.out.println("Search response: " + searchResponse);
  }
}

Wenn Sie beispielsweise die 10. Ergebnisseite abrufen möchten und die Seitengröße 5 beträgt, können Sie den Wert offset auf 45 festlegen. Dieser Wert wird folgendermaßen berechnet (10 - 1) * 5.

JSON

{
  placement: 'projects/PROJECT_NUMBER/locations/global/catalogs/default_catalog/placements/default_search'
  visitor_id: 'VISITOR_ID'
  query: 'shoes'
  page_size: 5
  offset: 45
}

Leistungsstufen für die Suche

Search bietet mehrere Leistungsstufen für die Suche, die Ihre Ergebnisse immer weiter verbessern. Bei Anwendungsfällen für die Suche mit Textanfragen können die Ergebnisse beispielsweise ausschließlich auf Relevanz basieren. Wenn Sie höhere Leistungsstufen erreichen, können in der Suche Ergebnisse zurückgegeben werden, die auf Relevanz, Beliebtheit, Umsatzoptimierung und Personalisierung basieren.

In Search werden automatisch höhere Leistungsstufen freigeschaltet, wenn Sie Katalog- und Nutzerereignisdaten hochladen, die die Mindestanforderungen der jeweiligen Stufe erfüllen.

Weitere Informationen zur Verwendung dieser Seite zum Aufrufen von Datenqualitäts- und Suchleistungsstufen finden Sie unter Suchleistungsstufen freischalten. Auf der Seite Datenqualität in der Search for Commerce-Konsole sehen Sie eine Bewertung, welche Anforderungen Sie für die einzelnen Stufen erfüllt haben.

Ergebnisse der Textsuche und des Browsens auswerten

Bevor Sie Ihren Websitecode zum Anfordern von Text- oder Browsersuchergebnissen aktualisieren, können Sie eine Vorschau der Ergebnisse aufrufen, um zu prüfen, ob Ihre Bereitstellungskonfiguration wie erwartet funktioniert.

Weitere Informationen zu Bereitstellungskonfigurationen finden Sie unter Bereitstellungskonfigurationen.

Sie können eine Vorschau der Ergebnisse der Bereitstellungskonfiguration entweder auf der Seite Bewerten oder in der Console auf der Seite Details einer Bereitstellungskonfiguration aufrufen und auf den Tab Bewerten klicken. In den folgenden Schritten wird beschrieben, wie Sie eine Vorschau auf der Seite Bewerten aufrufen.

So rufen Sie eine Vorschau der Ergebnisse auf, die von Ihrer Bereitstellungskonfiguration zurückgegeben werden:

  1. Rufen Sie in der Search for Commerce Console die Seite Bewerten auf.

    Zur Seite „Bewerten“

  2. Klicken Sie auf den Tab Suche.

  3. Wählen Sie die Bereitstellungskonfiguration aus, die Sie als Vorschau ansehen möchten.

  4. Wählen Sie den Katalogzweig aus, der den Katalog enthält, den Sie in der Vorschau ansehen möchten.

  5. Optional: Geben Sie eine Besucher-ID ein, um eine Vorschau der Suchergebnisse für diesen Nutzer aufzurufen.

  6. Optional: Geben Sie eine Nutzer-ID ein, um eine Vorschau der Suchergebnisse für diesen Nutzer aufzurufen.

  7. Optional: Geben Sie eine Suchzeit ein, um eine Vorschau der Suchergebnisse aufzurufen, die zu dieser Zeit angezeigt würden.

    Wenn Sie beispielsweise bestimmte Produkte für ein Sonderangebot beworben haben, können Sie sich die Ergebnisse so ansehen, wie sie an diesem Tag angezeigt würden.

  8. Optional: Wählen Sie Facetten aus, die neben den Suchergebnissen angezeigt werden sollen, und klicken Sie auf OK, um sie anzuwenden.

    Die ausgewählten Facets werden verwendet, um eine Liste von Facet-Filtern zu generieren, die nach der ersten Suche unter Facets hinzufügen angezeigt werden. Diese Attributfilter können auch andere Attribute als die in diesem Schritt ausgewählten Attribute enthalten, z. B. dynamische Attribute.

  9. Geben Sie eine textbasierte Suchanfrage ein, um die Vorschau der Suchergebnisse für diese Anfrage aufzurufen.

  10. Klicken Sie auf Suchvorschau oder drücken Sie in einem beliebigen Eingabefeld die Eingabetaste, um die Ergebnisse zu sehen.

    Die Suchergebnisse werden mit den verfügbaren Miniaturansichten angezeigt.

    Wenn durch Ihre Suche eine Weiterleitungssteuerung ausgelöst wird, wird ein Hinweis mit dem Weiterleitungs-URI angezeigt.

  11. Optional: Klicken Sie auf das Symbol Raster oder Liste, um die Darstellung der Suchergebnisse in der Vorschau zu ändern.

  12. Optional: Wenn Sie Attribute ausgewählt haben, die neben den Ergebnissen angezeigt werden sollen, wählen Sie in der Attributliste einen oder mehrere Attributwerte aus, um die Ergebnisse nach diesen Werten zu filtern. Die Ergebnisse werden automatisch aktualisiert, wenn Sie eine Auswahl treffen.

    Wenn Sie mehrere Werte derselben Facette auswählen, werden sie wie mit einem ODER-Operator angewendet. Werte aus verschiedenen Facetten werden wie mit einem UND-Operator angewendet. Nachdem Sie beispielsweise die Facetten Farbe und die Werte „Blau“ und „Gold“ sowie die Material-Werte „Baumwolle“ und „Polyester“ ausgewählt haben. Ihre Suchergebnisse müssen entweder „blau“ oder „gold“ als Attribut und entweder „Baumwolle“ oder „Polyester“ als Attribut haben.

Durchsuchen

  1. Rufen Sie in der Search for Commerce Console die Seite Bewerten auf.

    Zur Seite „Bewerten“

  2. Klicken Sie auf den Tab Durchsuchen.

  1. Wählen Sie die Bereitstellungskonfiguration aus, die Sie als Vorschau ansehen möchten.

  2. Wählen Sie den Katalogzweig aus, der den Katalog enthält, den Sie in der Vorschau ansehen möchten.

  3. Optional: Geben Sie eine Besucher-ID ein, um eine Vorschau der Ergebnisse für diesen Nutzer aufzurufen.

  4. Optional: Geben Sie eine Nutzer-ID ein, um eine Vorschau der Ergebnisse für diesen Nutzer aufzurufen.

  5. Wenn Sie sich ansehen möchten, wie die Ergebnisse mit einem bestimmten Filter aussehen würden, geben Sie einen Filterstring ein. Verwenden Sie die in der Filterdokumentation angegebene Syntax des Filterausdrucks.

  6. Optional: Geben Sie eine Uhrzeit ein, um eine Vorschau der Ergebnisse aufzurufen, die zu dieser Uhrzeit angezeigt würden.

    Wenn Sie beispielsweise bestimmte Produkte für ein Verkaufsereignis mit hohem Besucheraufkommen beworben haben, können Sie sich die Ergebnisse so ansehen, wie sie an diesem Tag aussehen würden.

  7. Geben Sie die Seitenkategorie ein, für die Sie die Browsergebnisse testen.

  8. Optional: Wählen Sie Facetten aus, die neben den Ergebnissen angezeigt werden sollen, und klicken Sie auf OK, um sie anzuwenden.

    Die ausgewählten Facets werden verwendet, um eine Liste von Facet-Filtern zu generieren, die nach der ersten Suche unter Facets hinzufügen angezeigt werden. Diese Attributfilter können auch andere Attribute als die in diesem Schritt ausgewählten Attribute enthalten, z. B. dynamische Attribute.

  9. Klicken Sie auf Vorschau ansehen oder drücken Sie in einem beliebigen Eingabefeld die Eingabetaste, um die Ergebnisse zu sehen.

    Die Ergebnisse werden mit den verfügbaren Thumbnails angezeigt.

  10. Optional: Klicken Sie auf das Symbol Raster oder Liste, um die Darstellung der Ergebnisse in der Vorschau zu ändern.

  11. Optional: Wenn Sie Attribute ausgewählt haben, die neben den Ergebnissen angezeigt werden sollen, wählen Sie in der Attributliste einen oder mehrere Attributwerte aus, um die Ergebnisse nach diesen Werten zu filtern. Die Ergebnisse werden automatisch aktualisiert, wenn Sie eine Auswahl treffen.

    Wenn Sie mehrere Werte derselben Facette auswählen, werden sie wie mit einem ODER-Operator angewendet. Werte aus verschiedenen Facetten werden wie mit einem UND-Operator angewendet. Nachdem Sie beispielsweise die Facetten Farbe und Material ausgewählt haben, können Sie Ihre Suchergebnisse filtern, indem Sie die Farbwerte „Blau“ und „Gold“ sowie die Materialwerte „Baumwolle“ und „Polyester“ auswählen. Ihre Ergebnisse müssen entweder „blau“ oder „gold“ als Attribut und entweder „Baumwolle“ oder „Polyester“ als Attribut enthalten.

Wenn Sie die Seite Details für die Bereitstellungskonfiguration aufrufen möchten, die Sie in der Vorschau ansehen, klicken Sie unter dem Feld Bereitstellungskonfiguration auswählen auf Bereitstellungskonfiguration ansehen.