PS PrestaShop Anfänger

KI-Semantische Suche für PrestaShop

Semantische Suche per KI-Embeddings installieren, konfigurieren und betreiben: Autovervollständigung, Ergebnisseite, ähnliche Produkte und Analytics.

Aktualisiert Modulversion 1.1.0

Dieses Modul fügt Ihrem PrestaShop-Shop eine KI-gestützte semantische Suche hinzu: Autovervollständigung, Suchergebnisseite, Block „Das könnte Ihnen auch gefallen“ auf der Produktseite und Analytics-Dashboard teilen dasselbe bedeutungsbasierte Ranking, berechnet mit Vektor-Embeddings.

Voraussetzungen

  • PrestaShop 8.0 bis 9.x
  • PHP 7.4 bis 8.3 mit aktivierter cURL-Erweiterung
  • Ein API-Schlüssel eines Embedding-Anbieters: OpenAI, Mistral AI oder ein beliebiges OpenAI-kompatibles Gateway

Installation

  1. Öffnen Sie im Backoffice Module > Modul-Manager.
  2. Klicken Sie auf Modul hochladen und laden Sie die ZIP-Datei hoch.
  3. Klicken Sie nach der Installation auf Konfigurieren.

Das Modul legt vier Tabellen an (dfvectorsearch_index, dfvectorsearch_qcache, dfvectorsearch_log, dfvectorsearch_similar) sowie einen versteckten Tab für seine AJAX-Aufrufe. Im Storefront ist nichts sichtbar, solange der Index nicht aufgebaut ist.

Embedding-Anbieter konfigurieren

Wählen Sie im Tab Einstellungen Ihren Anbieter und geben Sie Ihren API-Schlüssel ein.

OpenAI

Wählen Sie den Anbieter OpenAI und geben Sie Ihren Schlüssel ein. Das empfohlene Modell ist text-embedding-3-small (gutes Preis-Leistungs-Verhältnis). Für maximale Präzision bei einem anspruchsvollen Katalog können Sie text-embedding-3-large verwenden.

Mistral AI (europäisches Hosting)

Wählen Sie Mistral AI für eine DSGVO-konforme Datenverarbeitung in Europa. Das zu verwendende Modell ist mistral-embed.

OpenAI-kompatibles Gateway

Wählen Sie Custom, um Ihr eigenes Gateway zu verwenden (interner Proxy, Azure OpenAI usw.). Geben Sie dann die Basis-URL der API ein, zum Beispiel https://mein-gateway.beispiel.com/v1.

Der API-Schlüssel wird nach dem Speichern maskiert. Lassen Sie den maskierten Wert unverändert, um den vorhandenen Schlüssel zu behalten; geben Sie nur dann einen neuen Schlüssel ein, wenn Sie ihn ersetzen möchten.

Dimensionen

Das Feld Dimensionen ermöglicht es, die Vektorgröße zu reduzieren, um die Suche bei sehr großen Katalogen zu beschleunigen. Belassen Sie 0 für die Standardgröße des Modells. Die OpenAI-text-embedding-3-Modelle unterstützen reduzierte Dimensionen (zum Beispiel 512).

Ein Wechsel von Anbieter, Modell oder Anzahl der Dimensionen macht den gesamten Index veraltet: Beim Speichern wird der Index automatisch für einen vollständigen Neuaufbau markiert und der Query-Cache geleert. Führen Sie danach die Indexierung erneut aus.

Den Index aufbauen

Gehen Sie nach dem Speichern des API-Schlüssels zum Kasten Embedding-Index oben auf der Konfigurationsseite.

  1. Klicken Sie auf Jetzt indexieren. Das Modul verarbeitet die Produkte in Batches mit einem Fortschrittsbalken, Sprache für Sprache und Shop für Shop.
  2. Lassen Sie die Seite geöffnet, bis der Status Index aktuell anzeigt.

Batch-Größe

Die Einstellung Indexierungs-Batch-Größe steuert, wie viele Produkte pro Aufruf verarbeitet werden (5 bis 100). Verringern Sie sie bei Server-Timeouts.

Geplante Indexierung (Cron)

Um den Index automatisch mit dem Katalog synchron zu halten, kopieren Sie die in der Konfiguration angezeigte Cron-Indexierungs-URL und rufen Sie sie regelmäßig auf (zum Beispiel alle 15 Minuten) über den Aufgabenplaner Ihres Hostings.

Die URL enthält ein Sicherheitstoken. Jeder Aufruf arbeitet etwa zwanzig Sekunden und stoppt dann sauber, um mit den PHP-Ausführungszeitlimits kompatibel zu bleiben.

Wie die Neuindexierung funktioniert

Jedes Mal, wenn ein Produkt hinzugefügt, geändert oder gelöscht wird, wird der entsprechende Eintrag zur Neuindexierung markiert. Das Modul berechnet eine Prüfsumme des Produkttextes: Wenn sich nur der Preis oder der Bestand geändert hat, bleibt der Text identisch und es wird kein neuer API-Aufruf ausgelöst. Deaktivierte Produkte und deaktivierte Sprachen werden automatisch aus dem Index bereinigt.

Suche im Storefront

Autovervollständigung

Aktivieren Sie Frontend-Autovervollständigung, um ein Menü mit semantischen Vorschlägen an die Suchleiste Ihres Themes anzuhängen. Das Feld CSS-Selektor des Suchfelds teilt dem Modul mit, an welches Feld es sich anhängen soll. Der Standardwert #search_widget input[type="text"] funktioniert mit classic-basierten Themes.

Theme-Autovervollständigung deaktivieren

Die Einstellung Autovervollständigung des Themes deaktivieren (standardmäßig aktiv) entfernt die nativen Suchvorschläge (ps_searchbar und Ähnliche), um ein doppeltes Dropdown zu vermeiden. Das Modul entfernt das native Skript und blendet jedes von einem individuellen Theme injizierte Dropdown aus.

Hybridmodus

Mit aktiviertem Hybridmodus (empfohlen) steht das semantische Ranking an erster Stelle und die fehlenden nativen Keyword-Ergebnisse werden angehängt. Sie erhalten nie weniger Ergebnisse als bei der ursprünglichen Suche.

Schwellenwert und Ergebnisanzahl

Der minimale Ähnlichkeitswert (zwischen 0 und 0,99; empfohlen: 0,30) verwirft zu weit entfernte Ergebnisse. Die maximale Ergebnisanzahl begrenzt die in der Autovervollständigung angezeigten Vorschläge.

Die Suchergebnisseite

Die Einstellung Die Suchergebnisseite übernehmen (standardmäßig aktiv) lässt das Modul das Ranking der Suchseite über den Hook productSearchProvider liefern, den offiziellen Mechanismus von PrestaShop, den auch die Facettennavigation nutzt. Konkret:

  • Autovervollständigung und Seite zeigen dieselben Produkte in derselben Reihenfolge;
  • Paginierung und Sortierungen des Themes funktionieren weiter (die Sortierung „Relevanz“ behält die semantische Reihenfolge; Preis, Name und Datum werden innerhalb des Rankings neu angewendet);
  • ist die Embedding-API nicht verfügbar, greift das Modul unbemerkt auf die nativen Ergebnisse zurück und protokolliert den Vorfall: Die Suchseite bricht nie.

Das Modul greift nur bei einer Textsuche. Kategorien, Tag-Seiten und andere Listings behalten ihre nativen Mechanismen.

Ähnliche Produkte (Das könnte Ihnen auch gefallen)

Der Block „Ähnliche Produkte“ (standardmäßig aktiv) zeigt auf jeder Produktseite ein „Das könnte Ihnen auch gefallen“, berechnet aus der semantischen Nähe der bereits in Ihrer Datenbank gespeicherten Vektoren. Es erfolgt kein API-Aufruf: Der Block funktioniert sogar ohne API-Schlüssel, solange der Index existiert.

  • Anzahl ähnlicher Produkte: 2 bis 12 (Standard 6).
  • Mindest-Score für ähnliche Produkte: ein dedizierter Schwellenwert, unabhängig vom Suchschwellenwert (empfohlen: 0,45). Darunter erscheint das Produkt nicht, auch wenn dadurch weniger Karten angezeigt werden. Eine Änderung leert automatisch den Cache der ähnlichen Produkte.
  • Ein Affinitätsbonus bevorzugt Produkte derselben Standardkategorie und derselben Marke.
  • Die Ergebnisse werden 24 Stunden pro Produkt zwischengespeichert und bei der Neuindexierung automatisch invalidiert.
  • Das Rendering nutzt die nativen Miniaturen Ihres Themes: Flags, Wunschliste, Schnellansicht und Hover-Stile inklusive.

In einem kleinen Demo-Katalog, in dem alle Produkte denselben Marketingtext teilen, sind die Ähnlichkeiten naturgemäß lockerer. Erhöhen Sie den Schwellenwert auf 0,55-0,60, um nur enge Treffer zu behalten.

Statistiken und Analytics

Die Konfigurationsseite zeigt ein Dashboard über die letzten 30 Tage: Anzahl der Suchen, Quote ohne Ergebnisse, durchschnittliche Ergebnisse pro Suche, Histogramm des Tagesvolumens, Top 20 der Suchanfragen (Anzahl, durchschnittliche Ergebnisse, bester Score) und Top 20 der Anfragen ohne Ergebnisse.

Anfragen ohne Ergebnisse sind eine Goldgrube: Sie zeigen genau, wonach Ihre Kunden suchen, ohne es zu finden, und damit, was Sie Ihrem Katalog oder Ihren Synonymen hinzufügen sollten.

  • Die Schaltfläche CSV exportieren lädt das vollständige Protokoll herunter (Semikolon-Trennzeichen) mit der Quelle jeder Suche: Autovervollständigung oder Ergebnisseite.
  • Das Protokoll wird nach 365 Tagen automatisch bereinigt.

Query-Cache

Die Embeddings der Kundenanfragen werden 30 Tage lang zwischengespeichert. Wiederholte Suchen sind sofort verfügbar und werden nicht erneut abgerechnet. Die Schaltfläche Query-Cache leeren setzt ihn jederzeit zurück.

Modul aktualisieren

Wenn Sie das Modul durch Ersetzen seiner Dateien aktualisieren (außerhalb des Modul-Managers), öffnen Sie einmal die Konfigurationsseite: Das Modul registriert dann automatisch fehlende Hooks, legt fehlende Tabellen und Spalten an und setzt neue Standardwerte. Die CSS- und JS-Dateien des Frontends enthalten einen Cache-Buster, ein Leeren des Browser-Caches ist nicht nötig.

Fehlerbehebung

  • Es erscheinen keine Ergebnisse: Prüfen Sie, dass der Index aufgebaut ist (Zähler „Indexierte Vektoren“ > 0) und dass der API-Schlüssel gültig ist.
  • Zwei Dropdowns werden angezeigt: Prüfen Sie, dass Autovervollständigung des Themes deaktivieren aktiv ist, und leeren Sie einmal den PrestaShop-Cache.
  • Autovervollständigung und Ergebnisseite unterscheiden sich: Öffnen Sie einmal die Konfigurationsseite des Moduls (der Hook der Ergebnisseite wird automatisch registriert) und prüfen Sie, dass Die Suchergebnisseite übernehmen aktiv ist.
  • Der Block Das könnte Ihnen auch gefallen ist leer: Der Index muss für die aktuelle Sprache und den aktuellen Shop aufgebaut sein; andernfalls senken Sie den Mindest-Score für ähnliche Produkte.
  • Timeouts während der Indexierung: Verringern Sie die Batch-Größe und bevorzugen Sie die Cron-Indexierung.
  • Inkonsistente Ergebnisse nach einem Modellwechsel: Führen Sie einen vollständigen Neuaufbau des Index durch.
War diese Seite hilfreich?

Immer noch nicht weiter? Support kontaktieren