Dies ist die Dokumentation für Recommendations AI, Retail Search und die neue Retail Console.

Ergebnisse verbessern

Auf dieser Seite wird die Optimierung der Suchergebnisse erläutert.

Anleitung zur Auffrischung

In dieser Anleitung werden einige Beispiele für Produkt-Boostings aufgeführt.


Eine detaillierte Anleitung zu dieser Aufgabe finden Sie direkt im Cloud Shell-Editor. Klicken Sie dazu einfach auf Anleitung:

Anleitung


Die folgenden Abschnitte führen Sie durch dieselben Schritte wie das Klicken auf Anleitung.

Beispieldatensatz

Auf dieser Seite wird das folgende Dataset als Beispiel verwendet. Nur die zur Erläuterung erforderlichen Felder sind enthalten.

Vorbereitung

Weitere Informationen zur Syntax von Filterausdrücken finden Sie unter Ergebnisse filtern und sortieren.

Schub

Mit der Verstärkung können Sie das Ergebnis-Ranking steuern, indem Sie einen Boost anwenden, um die Ergebnisse zu priorisieren oder herabzusetzen.

Wenn Sie beispielsweise nach "Google Lautsprecher" suchen, erhalten Sie in keiner bestimmten Reihenfolge "nest_mini_2nd_gen", "nest_audio", "nest_hub_max", "nest_hub", "google_home_max" und "google_home_mini".

Java

public static SearchResponse searchProductsWithBoostSpec(String query, int pageSize,
    String condition, float boostStrength) throws IOException, InterruptedException {
  SearchServiceClient searchClient = getSearchServiceClient();

  BoostSpec boostSpec = BoostSpec.newBuilder()
      .addConditionBoostSpecs(ConditionBoostSpec.newBuilder()
          .setCondition(condition)
          .setBoost(boostStrength)
          .build())
      .build();

  SearchRequest searchRequest = SearchRequest.newBuilder()
      .setPlacement(DEFAULT_SEARCH_PLACEMENT_NAME)
      .setBranch(DEFAULT_BRANCH_NAME)
      .setVisitorId(VISITOR_ID)
      .setQuery(query)
      .setPageSize(pageSize)
      .setBoostSpec(boostSpec)
      .build();

  SearchResponse response = searchClient.search(searchRequest).getPage().getResponse();

  searchClient.shutdownNow();
  searchClient.awaitTermination(2, TimeUnit.SECONDS);

  return response;
}

Angenommen, Sie möchten günstigere Produkte (weniger als 95 $) priorisieren und die teuren Produkte priorisieren (höher als 95 $). Sie können eine Boost-Spezifikation wie folgt anwenden:

JSON

{
  condition_boost_specs {
    condition: "price: IN(*, 95.0e)"
    boost: 0.5
  }
  condition_boost_specs {
    condition: "price: IN(95.0e, *)"
    boost: -0.5
  }
}

Im Ergebnis sind beispielsweise "nest_mini_2nd_gen" und "nest_hub" die ersten drei, "nest_audio" und "google_home_max" die letzten drei. Es ist jedoch keine bestimmte Reihenfolge garantiert, die sich von der Reihenfolge nach Preis unterscheidet, wie unter Filter- und Bestellergebnisse erläutert.