AI Babel Enchanter Dokumentation

Schreiben Sie Ihren gesamten Magento-Katalog mit wiederverwendbaren Profilen um, verbessern und übersetzen ihn — mit Dry-Run-Vorschau und vollständigem Rollback, damit nichts eine Einbahnstraße ist.

Als Markdown anzeigen
Das
Das "Enrichments & Translations"-Raster — jedes generierte Feld für jedes Produkt und jede Sprache, inline bearbeitbar.

Neu in v3.4.0

Ihre Texte bleiben dort, wo Sie sie hingeschrieben haben. Erklären Sie ein Feld zu Final, und die KI fasst es nie wieder an, ohne jede Kosten, nicht einmal nach einer Änderung von Prompt oder Modell. Eine stündliche Hintergrundprüfung bemerkt, wenn ein von diesem Modul geschriebener Text nicht mehr am Produkt steht, und setzt ihn wieder ein — kostenlos, solange sich der Quelltext nicht geändert hat. Und Apply to already processed überträgt einen verbesserten Prompt auf die bereits erledigten Produkte. Ziehen Sie den Schieberegler, um zu sehen, was das Modul überhaupt erst erzeugt: aus einem rohen Import wird ein reichhaltiger, markengerechter Verkaufstext.

Die vollständige Seite lesen: Babel und Importer →

After — magnified by AI Babel Enchanter
Before — as imported
Vorher Nachher
⇄

Ziehen Sie den Trenner zum Vergleichen · auf Touch tippen Sie eine Seite an, um zu wechseln

Installation

Voraussetzungen

Magento 2.4.x — getestet mit 2.4.9, kompatibel mit früheren 2.4.*-Versionen. PHP 8.1–8.5. Funktioniert sowohl mit dem Standard-Theme Luma als auch mit dem Hyvä-Theme — das Modul läuft vollständig im Admin und schreibt Standard-Katalogattribute, sodass Ihr Storefront die verbesserten Inhalte ohne Template-Änderungen darstellt. Hängt vom kostenlosen Modul codingrow/module-core ab, das automatisch installiert wird. Erfordert einen API-Schlüssel von mindestens einem KI-Anbieter für den Schritt Verbessern/Umschreiben (Anthropic, OpenAI, Google oder OpenRouter) und für die Übersetzung entweder einen Schlüssel für maschinelle Übersetzung (DeepL) oder ein als Übersetzer genutztes LLM. Die gesamte KI- und Übersetzungsnutzung wird Ihnen direkt vom Anbieter berechnet — Codingrow schlägt nie etwas auf.

Einrichtungsschritte

  1. Fügen Sie die per E-Mail erhaltenen Zugangsdaten in die Datei auth.json im Stammverzeichnis Ihres Magento-Projekts ein: { "http-basic": { "repo.codingrow.com": { "username": "...", "password": "..." } } }
  2. composer config repositories.codingrow composer https://repo.codingrow.com
  3. composer require codingrow/module-ai-babel-enchanter
  4. bin/magento module:enable Codingrow_BabelEnchanter
  5. bin/magento setup:upgrade && bin/magento setup:di:compile && bin/magento cache:flush (setup:di:compile ist bei einem Produktions-Deployment erforderlich; auf einem Entwickler-Setup können Sie es überspringen)
  6. Fügen Sie Ihren Lizenzschlüssel unter Admin → Stores → Configuration → Codingrow → AI Babel Enchanter → License → License Key ein, speichern Sie und leeren Sie dann den Cache.

Konfiguration

Stores → Configuration → Codingrow → AI Babel Enchanter.

EinstellungWas sie bewirktStandardHinweise
License KeyDer für diese Domain ausgestellte Lizenzschlüssel.—Akzeptiert einen Einzelmodul-Schlüssel oder einen Codingrow-Abo-Schlüssel. Ohne gültige Lizenz läuft das Modul nicht.
EnableHauptschalter für das Modul.NoErfordert eine gültige Lizenz und mindestens einen Anbieter-API-Schlüssel.
Enhancement providerAnbieter, Modell und API-Schlüssel, die den Text umschreiben und verbessern (die Verbesserungs-/Umschreib-Engine).—Verwenden Sie Load models neben dem Feld Model, statt eine id einzutippen.
Translation providerWie die Zielsprachen erzeugt werden: ein maschineller Übersetzungsdienst (DeepL) oder ein als Übersetzer genutztes LLM, mit Modell und Schlüssel.—Übersetzen Sie mit demselben LLM wie beim Verbesserungsschritt oder mit einem dedizierten MT-Schlüssel für geringere Kosten pro Zeichen.
SEO optionsSchalter dafür, was generiert wird: meta title, meta description, meta keywords, URL key.—Deaktivieren Sie alles, was das Modul nicht anfassen soll.
ResilienceCircuit Breaker: automatische Wiederholung bei vorübergehenden Fehlern, Cooldown-Stunden vor dem erneuten Versuch, Pause nach N aufeinanderfolgenden Fehlern.—Schützt einen langen Lauf, wenn dem Anbieter das Guthaben ausgeht oder er ein Rate Limit anwendet.

Deinstallation

Setzen Sie Enable auf No und speichern Sie, um jede Verarbeitung sofort zu stoppen — Ihre Kataloginhalte bleiben genau so, wie sie sind. Wenn Sie zuvor zum Originaltext zurückkehren möchten, führen Sie ein Rollback aus (siehe Benutzerhandbuch). Um das Modul vollständig zu entfernen: bin/magento module:disable Codingrow_BabelEnchanter dann composer remove codingrow/module-ai-babel-enchanter.

Anbieter & Kosten

Anbieter wählen

AI Babel Enchanter hat zwei unabhängige Anbieter-Slots: einen für den Schritt Verbessern/Umschreiben (ein LLM) und einen für die Übersetzung (ein LLM oder ein dedizierter maschineller Übersetzungsdienst wie DeepL). Sie bringen Ihre eigenen Schlüssel mit und die gesamte Nutzung wird Ihnen direkt vom gewählten Anbieter berechnet — Codingrow schlägt nie etwas auf. Wählen Sie das Verbesserungsmodell nach Qualität und übersetzen Sie mit demselben LLM oder mit einem günstigeren MT-Schlüssel pro Zeichen.

Anthropic (Claude-Modelle)

  1. Melden Sie sich bei console.anthropic.com an.
  2. Gehen Sie zu console.anthropic.com/settings/keys.
  3. Klicken Sie auf Create Key, benennen Sie ihn (z. B. "AI Babel Enchanter") und kopieren Sie den Wert.
  4. Fügen Sie ihn in den Anbieter-Slot mit Provider auf Anthropic ein und nutzen Sie dann Load models.

OpenAI (GPT-Modelle)

  1. Melden Sie sich bei platform.openai.com an.
  2. Gehen Sie zu platform.openai.com/api-keys.
  3. Klicken Sie auf Create new secret key, benennen Sie ihn und kopieren Sie ihn sofort — er wird nur einmal angezeigt.
  4. Fügen Sie ihn in den Anbieter-Slot mit Provider auf OpenAI ein und nutzen Sie dann Load models.

Google (Gemini-Modelle)

  1. Melden Sie sich bei aistudio.google.com mit einem Google-Konto an.
  2. Gehen Sie zu aistudio.google.com/app/apikey.
  3. Klicken Sie auf Create API key, wählen oder erstellen Sie ein Google-Cloud-Projekt und kopieren Sie den Schlüssel.
  4. Fügen Sie ihn in den Anbieter-Slot mit Provider auf Google ein und nutzen Sie dann Load models.

OpenRouter (ein Schlüssel, Modelle vieler Anbieter)

  1. Melden Sie sich bei openrouter.ai an.
  2. Gehen Sie zu openrouter.ai/keys.
  3. Klicken Sie auf Create Key, benennen Sie ihn und kopieren Sie den Wert.
  4. Fügen Sie ihn in den Anbieter-Slot mit Provider auf OpenRouter ein und nutzen Sie dann Load models.

DeepL (maschinelle Übersetzung)

  1. Melden Sie sich bei deepl.com/pro-api an.
  2. Öffnen Sie Account → API keys und kopieren Sie Ihren Authentication Key.
  3. Fügen Sie ihn in den Slot Translation provider ein, mit dem Übersetzer auf DeepL.

DeepL wird pro Zeichen abgerechnet (etwa 20 € pro 1M Zeichen), meist günstiger als ein LLM für reine Übersetzung. Sie können DeepL auch ganz weglassen und mit demselben LLM wie beim Verbesserungsschritt übersetzen.

Load models — keine Modell-id zum Eintippen

Sobald der API-Schlüssel eingetragen ist, speichern Sie den Abschnitt und klicken Sie auf Load models unter dem Feld Model: das Modul ruft mit Ihrem Schlüssel den Modell-Listen-Endpunkt des Anbieters auf und füllt ein Dropdown mit jedem Modell, das Ihr Schlüssel tatsächlich nutzen kann — wählen Sie aus der Liste, statt eine id einzutippen. Ein manuelles Textfeld bleibt als Fallback für eine noch nicht gelistete Modell-id. Ein Link direkt unter dem Feld verweist stets auf die richtige Schlüsselseite des aktuell gewählten Anbieters.

Die Kosten eines Laufs über den gesamten Katalog schätzen

Ein vollständiger Durchlauf hat zwei Kostentreiber, die sich pro Produkt summieren: Verbessern (LLM-Tokens, Preis pro Million) und Übersetzen (Zeichen, Preis pro Million, mal Anzahl der Zielsprachen). Nutzen Sie den Rechner unten, um einen Lauf vor dem Start zu dimensionieren — es ist eine rein indikative Schätzung; Ihre tatsächlichen Zahlen hängen von der Inhaltslänge und den gewählten Modellen ab.

Full-catalog run cost calculator

Estimate what one full pass over your catalog costs. Two cost drivers add up per product: improve (LLM tokens, priced per million) and translate (characters, priced per million, multiplied by the number of target languages). Everything is billed to you directly by the AI/translation provider — this is a purely indicative estimate.

Per-product volume assumptions
Improve / product: –  ·  Translate / product: –
Cost per product (improve + translate)
–
Full-catalog run (all products)
–
Quick reference — 5,000 products, 2 languages, ~1,500 chars & ~2,000 tokens/product (indicative)
Improve model~ improve / productFull-catalog improve ~
Gemini 2.x Flash~€0.0004~€2
OpenAI gpt-4o-mini~€0.0006~€3
Claude Haiku 4.5~€0.004~€20
Claude Sonnet 4.5~€0.015~€75

Benutzerhandbuch

Profile und Persona-Prompt

Alles, was das Modul tut, ist in Profilen organisiert. Ein Profil ist eine wiederverwendbare Konfiguration, die Sie auf einen Ausschnitt des Katalogs anwenden: welche Attribute es anfassen darf, die anzuwendende Schritt-Pipeline, eine optionale exklusive Kategorie, damit das Profil nur auf Produkte dieser Kategorie wirkt, und einen Persona-Prompt — Freitext-Anweisungen, die Tonfall und Regeln der Umschreibung festlegen. Profile sind Anti-Revert: Ein bereits von einem Profil verarbeitetes Produkt wird beim nächsten Lauf übersprungen, sofern Sie es nicht zurücksetzen, sodass erneutes Ausführen sicher ist.

Beispiel für einen Persona-Prompt: "Sie schreiben für einen Premium-Shop für Outdoor-Ausrüstung. Seien Sie prägnant und selbstsicher, beginnen Sie mit dem Nutzen, verwenden Sie britisches Englisch, erfinden Sie nie Spezifikationen und halten Sie jede Produktbeschreibung unter 90 Wörtern."
Das Profile-Admin-Raster: wiederverwendbare Konfigurationen mit ihrer exklusiven Kategorie, Schritten und Persona-Prompt.
Profile: wiederverwendbare, kategoriebezogene Konfigurationen, die jeden Lauf steuern.

Gruppen und Schritte (die Pipeline)

Innerhalb eines Profils definieren Sie Gruppen von Schritten, die der Reihe nach laufen. Die beiden Kernschritt-Typen sind improve (den Quelltext mit dem Verbesserungs-Anbieter umschreiben/anreichern) und translate (die zielsprachlichen Versionen erzeugen). Die normale Pipeline ist improve → translate: Zuerst wird die Ausgangssprache umgeschrieben, dann wird der verbesserte Text übersetzt, sodass jede Store View die bessere Fassung erbt, statt den alten Text zu übersetzen. Durch Gruppieren können Sie verschiedene Schritte auf verschiedene Attribute anwenden und als einen Vorgang ausführen.

AI — Models (der Anmeldedaten-Pool)

Registrieren Sie jede KI einmal im Tab AI — Models und verwenden Sie sie überall wieder. Jede Zeile ist ein Zugang: ein eigener Name, der Anbieter (Anthropic, OpenAI, Google/Gemini, OpenRouter oder DeepL), der API-Schlüssel (verschlüsselt gespeichert), das Modell — tippen Sie es ein oder klicken Sie auf Load models, um nur die Modelle auszuwählen, die Ihr Schlüssel tatsächlich nutzen kann, jeweils mit seiner Antwortgeschwindigkeit annotiert — eine Fähigkeit (translate / enhancement / both), ein Standard, eine Fallback-Reihenfolge und ein Aktiviert-Flag.

Fügen Sie beliebig viele hinzu: Wenn ein Schlüssel ausfällt (kein Guthaben, Rate Limit, ein Auth-Fehler), markiert das Modul ihn mit Cooldown und schaltet auf den nächsten Zugang in der Kette um, anbieterübergreifend, sodass ein langer Lauf einen toten Schlüssel übersteht. Modell und Prompt werden dann pro Schritt im Profil gewählt — mit einem Spitzenmodell anreichern und geringwertige Titel mit einem günstigen, schnellen übersetzen, in einer Pipeline.

Max tokens (pro Zugang) ist die Obergrenze für die Tokens, die ein Modell erzeugen darf — ein Limit, kein Ziel, sodass Sie nur für das Erzeugte zahlen. Zu niedrig, und der Text wird abgeschnitten; bei Reasoning-Modellen kann sogar nichts zurückkommen. Der Standard von 4000 deckt Beschreibung + Kurzbeschreibung + Titel + Meta ab. Extended thinking ist standardmäßig aus (es verbessert Verkaufstexte nicht) und Sie können einen optionalen Preis pro KI festlegen, der in die Kostenschätzung einfließt.

AI Compare

Öffnen Sie den Tab AI Compare eines Profils, haken Sie die zu vergleichenden Modelle an und wählen Sie einige Beispielprodukte. Run comparison reichert jedes Beispiel mit jedem Modell an (ein Dry-Run — nichts wird geschrieben) und ergibt eine Matrix: eine Spalte pro Modell, eine Zeile pro Produkt, jede Zelle zeigt den generierten Titel mit einer Referenz, die Zeit der Generierung, indikative €-Kosten (aus den echten API-Token-Zählungen) und ein Preview, das das vollständig gerenderte Ergebnis öffnet.

Ein Juror — das Modell, das Sie im Dropdown wählen, idealerweise Ihr leistungsfähigstes — bewertet jede Ausgabe nach Sprachqualität, Formatierung, kontextualisierten Maßangaben, Premium-Register, JSON-Gültigkeit und SEO und kürt einen Sieger; das Urteil ergänzt durchschnittliche Zeit und durchschnittliche Kosten pro Modell. Wählen Sie All models judge, und jedes Modell liefert sein eigenes Urteil, je eine Tabelle. Ein Live-Timer und ein Skeleton zeigen den Juror bei der Arbeit, eine Stop-Schaltfläche unterbricht, und der letzte Vergleich wird gespeichert am Profil, sodass er — mit Zeitstempel — ohne erneuten Lauf wieder erscheint.

Wie Tokens funktionieren (und was ihre falsche Einstellung verursacht)

Jeder magnify- oder translate-Schritt ist ein Aufruf an ein KI-Modell. Das Modell liest Ihren Persona-Prompt, die Quellfelder des Produkts und — wenn es auch den Titel generiert — eine kleine Stichprobe verwandter Titel: das ist der Input. Anschließend schreibt es ein einzelnes JSON-Objekt mit den umgeschriebenen Feldern: das ist der Output. Der Anbieter berechnet Ihnen beides, aber Output-Tokens kosten ein Vielfaches der Input-Tokens, daher bestimmt die Länge des generierten Textes die Kosten.

Max tokens begrenzt nur den Output, den ein Modell in einem Aufruf erzeugen darf. Es ist ein Limit, kein Ziel: Endet der Text von sich aus früher, zahlen Sie nur für das Geschriebene, ein großzügiges Limit kostet also nie mehr — es verhindert nur, dass guter Output abgeschnitten wird. Der Standardwert von 4000 deckt bequem eine ausführliche Beschreibung plus short description, Titel und meta description zusammen ab.

Was ein zu niedriges Limit verursacht. Wäre der Output länger als das Limit, wird die Antwort mitten im Satz abgeschnitten und das JSON schließt nie — das Modul kann es nicht parsen. Manche neueren Modelle führen vor dem Schreiben auch verstecktes Reasoning aus: bei einem knappen Limit können sie das gesamte Budget mit Nachdenken verbrauchen und überhaupt nichts zurückgeben. In beiden Fällen behält Babel nicht stillschweigend den Originaltext — es markiert dieses Produkt als fehlgeschlagen mit dem echten Grund in der Warteschlange, damit Sie das Limit erhöhen und es erneut versuchen können. Kommen Produkte je ungewöhnlich kurz oder “in der Ausgangssprache stecken geblieben” zurück, ist das Token-Limit das Erste, was Sie prüfen sollten.

Extended thinking ist standardmäßig aus, mit Absicht. Für Verkaufstexte im Katalog verbessert es das Ergebnis nicht — es kommt derselbe Text heraus — während es Tokens und Zeit verbraucht und die oben genannte Falle der leeren Antwort riskiert. Lassen Sie es bei der Generierung aus; der AI Compare-Richter aktiviert es nur, wo Reasoning wirklich hilft, und weicht elegant aus, wenn das gewählte Modell es nicht unterstützt.

In der Praxis: Halten Sie Max tokens bei 4000 (oder etwas höher für sehr lange Beschreibungen), beobachten Sie die Warteschlange auf Fehler mit klarem Grund statt stillen Fehlausgaben, und lassen Sie die Kostenschätzung — gespeist von den echten Token-Zahlen, die die API zurückgibt — Ihnen sagen, was jeder Lauf tatsächlich kostet, bevor Sie ihn starten.

Die objektiven Produktmerkmale

In vielen Katalogen stehen die Maße in keinem Attribut: Sie stecken im Namen. Tapetenrolle 10 m, Verlängerungskabel 5 m. Ein Mensch liest das mühelos, der Shop nicht: Wer zehn Meter will, bekommt eine Seite mit einem Stück, weil kein Feld sagt, wie lang ein Stück ist.

Während Babel ein Produkt bearbeitet, hält es dessen messbare Fakten im Attribut Product characteristics (Babel) der Produktseite fest, das du liest und korrigierst.

unita_vendita: confezione
copertura_pezzo: 2.22 m2
pezzi_confezione: 8
spessore: 8 mm
materiale: Laminat
tipologia: Klickboden (dedotto)

unita_vendita wird niemals abgeleitet. Es ist ein kaufmännischer Begriff: er sagt, worauf sich der Preis bezieht. Eine Zeile außer pezzo wird nur geschrieben, wenn alle drei Bedingungen gelten — sie ist nicht abgeleitet, die Zahl für die Rechnung ist da (pezzi_confezione für die Packung, copertura_pezzo für Meter), und der Beweis steht in den Daten des Produkts, vom Modul geprüft und nicht der KI geglaubt. Sagt es nichts, fehlt die Zeile einfach, und das bedeutet: der Preis gilt für ein Stück — die sichere Seite.

Die Rechnung macht copertura_pezzo — wie viel EIN Stück abdeckt — ein Maß, das sich aus dem Produkt ermitteln lässt. Ein Paket Laminat, das 2,22 m² abdeckt, trägt unita_vendita: confezione und copertura_pezzo: 2.22 m2, und aus dreißig Quadratmetern werden vierzehn Pakete. Ohne das Paar wurden es dreißig Pakete: mehr als das Doppelte.

Der Marker (dedotto) ist die Grenze. Eine Zeile, die so endet, hat niemand geschrieben: Die KI hat sie abgeleitet. Sie hilft beim Verstehen und Suchen, aber daraus wird nie eine Menge berechnet. Zum Bestätigen löschst du dieses Wort; was falsch ist, korrigierst du, was nicht hingehört, entfernst du. Es ist dein Katalog.

Bei einem Produkt mit Varianten trägt jeder seinen Teil: Der Elternteil hält, was für alle Varianten gilt (Verkaufseinheit, Material, Typ), jede Variante, was sie unterscheidet (ihre Größe, ihr Durchmesser). Varianten werden nur bearbeitet, wenn sich eine Maßangabe ändert: ändert sich nur die Farbe, hätte die Variante nichts Eigenes zu sagen. Ein gruppiertes Produkt oder ein Bundle hat keine eigenen Maße — es ist eine Liste von Artikeln, jeder mit seinen — und bei virtuellen und herunterladbaren Produkten wird gar nichts geschrieben: Ein Kurs hat keine Größe.

Es schreibt deine Texte nicht um: Es ist ein eigener, kleiner Aufruf mit eigenem Gedächtnis. Für bereits bearbeitete Artikel gibt es den Button Merkmale festhalten auf der Profilseite oder bin/magento babel:params --profile=3. In einem echten Katalog: 38 Elternartikel und 116 Varianten durchgegangen, die Verkaufseinheit bei 34 der 38 Elternartikel — sie gehört zum Elternteil und nie zur Variante, denn wie eine Sache verkauft wird, ändert sich nicht zwischen der 80 und der 100.

Bei einer Variante ist das Feld oft leer, und das ist das richtige Ergebnis: was sie unterscheidet, steht schon in einem Magento-Attribut (ihr Gewicht, das Maß, in dem sie variiert), und es hier noch einmal zu schreiben, ergibt zwei Kopien, die auseinanderlaufen — wobei die Variante den Elternteil überstimmt. In diesem Katalog tragen 97 von 116 Varianten eine eigene Zeile, die übrigen 19 hatten nichts hinzuzufügen. Und die Regeln gelten auch für das, was schon geschrieben ist: eine von einer älteren Version hinterlassene Zeile, die das heutige Format verletzt, wird beim nächsten Durchgang entfernt, während eine von Hand korrigierte Zeile unberührt bleibt.

Produkttypen und ihre unterschiedliche Behandlung

Ein konfigurierbares Produkt ist kein Einzelartikel, ein gruppiertes kein Paket, und ein virtuelles oder herunterladbares Produkt wird nicht versandt. Das Modul erkennt den Typ selbst und übergibt der KI eine Beschreibung der Struktur, die ändert, was der Text sagt und was er nicht sagen darf.

Wo man ihn einschaltet. Im Reiter Mapping des Profils, am einzelnen Schritt: Produktstruktur-Kontext. Standardmäßig aus: das Einschalten ändert, was die KI erhält, und erzeugt damit die Seiten dieses Profils beim nächsten Durchlauf neu. Schalten Sie ihn vor einem neuen Durchlauf ein, nicht mitten in einem laufenden.

  • Konfigurierbar — erhält die Auswahlachse mit ihrer Beschriftung in der Sprache der Storefront (etwa Größe: 80, 100), die Optionen und jene Attribute, die sich zwischen den Kindern tatsächlich unterscheiden, ermittelt durch Vergleich. Nichts muss von Hand eingerichtet werden: die Attribute eines konfigurierbaren Produkts erkennt das Modul selbst. Preise, Sonderpreise, Kosten und Staffeln bleiben bewusst draußen, weil sie sich ändern und ein Text, der sie nennt, schlecht altert. Der entstehende Text beschreibt die Bandbreite; eine Überschrift darf nie den Wert einer einzelnen Option tragen (etwa Rohr 1m 100, wenn 100 eine der Größen ist).
  • Bundle — erhält die Titel der Optionen, welche Pflicht sind und welche Artikel in jeder wählbar sind, damit der Text erklären kann, wie das Produkt zusammengesetzt ist.
  • Gruppiert — erhält die Liste der zugeordneten Artikel, damit der Text sagen kann, dass sie zusammen gekauft werden und wofür jeder gut ist.
  • Virtuell — erhält nur den Typ, und das genügt: der KI wird verboten, Versand, Lieferung, Verpackung und Gewicht zu erwähnen. Ohne diese Regel schreibt das Modell schneller Versand auch für eine Garantieverlängerung.
  • Herunterladbar — erhält die Zahl der Dateien und ob eine Probe existiert: der Text erklärt die digitale Lieferung, und Versand bleibt tabu.

Varianten werden nicht bearbeitet. Daneben steht Varianten überspringen, standardmäßig an auf Gruppenebene: ein Produkt, das als Kind eines konfigurierbaren auftritt, bleibt aus der Warteschlange. Es hat keine Seite, die ein Kunde öffnen kann, also ist seine Anreicherung Ausgabe ohne Ertrag; in einem auf Varianten gebauten Katalog sind sie der größte Teil der Warteschlange. Wer Varianten als eigenständige Artikel verkauft, schaltet es aus.

Ziele eingrenzen. Am selben Schritt schränken Produkttypen und Sichtbarkeit die Warteschlange auf das ein, was Sie wirklich bearbeiten wollen — etwa nur konfigurierbare Produkte oder nur in Katalog und Suche sichtbare.

Cross-sell, verwandte und Up-Sell (KI-Relationen)

Drei unabhängige Schalter erlauben es einem Profil, mithilfe der KI Cross-Sell-, verwandte und Up-Sell-Produkte vorzuschlagen. Das Modell schlägt immer nur echte SKUs aus Ihrem Katalog vor — es kann kein nicht existierendes Produkt erfinden — und die Vorschläge werden in Magentos native Cross-Sell-/verwandte/Up-Sell-Verknüpfungen geschrieben, sodass sie in den Standard-Storefront-Blöcken erscheinen. Aktivieren Sie nur die Relationstypen, die das Modul verwalten soll.

Die KI-Relationen-Mapping-Ansicht: vorgeschlagene Cross-Sell-, verwandte und Up-Sell-SKUs für ein Produkt.
KI-Relationen: Cross-Sell-, verwandte und Up-Sell-Vorschläge, stets echte Katalog-SKUs.

Dry-Run-Vorschau (und gerendert)

Bevor irgendetwas geschrieben wird, führen Sie ein Profil im Dry-Run aus: das Modul erzeugt die vorgeschlagenen Inhalte für eine Stichprobe von Produkten und zeigt sie neben dem aktuellen Text an, inklusive einer gerenderten Vorschau, sodass Sie sehen, wie die verbesserte Beschreibung tatsächlich auf der Seite aussieht — nicht nur der Rohtext. Im Dry-Run wird nichts gespeichert; er dient dazu, den Persona-Prompt und die Pipeline zu validieren, bevor Sie sich auf einen vollständigen Lauf festlegen.

Gerenderte Dry-Run-Vorschau: die vorgeschlagene Produktbeschreibung, dargestellt wie sie im Storefront rendert.
Gerenderte Dry-Run-Vorschau: genau so wird der verbesserte Inhalt aussehen, bevor etwas gespeichert wird.

Das "Enrichments & Translations"-Raster

Der Tab "Enrichments & Translations" ist das Arbeitsraster: jedes generierte Feld für jedes Produkt und jede Sprache, paginiert und filterbar. Sie können jeden generierten Wert vor oder nach der Anwendung inline bearbeiten — die KI-Ausgabe ist ein Ausgangspunkt, keine Sperre — und jede Zeile behält einen Link zum Originaltext, sodass Sie den Originalwert wiederherstellen können, wenn Ihnen das Ergebnis nicht gefällt. Das ist die Human-in-the-Loop-Ebene über der automatisierten Pipeline.

Inline-Bearbeitung eines generierten Feldes im Enrichments-and-Translations-Raster, mit verfügbarem Originaltext zum Wiederherstellen.
Inline-Bearbeitung eines generierten Werts — mit dem Original nur einen Klick entfernt.

Texte, die Sie als final erklären

Früher oder später gibt es ein Produkt, dessen Beschreibung Sie selbst schreiben: das Aushängeschild, das Produkt, das dem Inhaber am Herzen liegt, dasjenige, bei dem der KI-Text gut war, aber nicht richtig. Sie korrigieren ihn von Hand, und von diesem Moment an wollen Sie eine einzige Garantie — niemand schreibt diesen Text je wieder um. Diese Garantie ist das Kontrollkästchen Final, neu in v3.4.0.

Öffnen Sie Enrichments & Translations, öffnen Sie ein Produkt: Unter jedem Feld steht ein Kontrollkästchen mit der Beschriftung “Final — never regenerate this text”. Setzen Sie den Haken, und dieses eine Feld ist zu Ihrem erklärt.

Der Editor Enrichments and Translations zeigt unter jedem generierten Feld ein Kontrollkästchen Final, never regenerate this text.
Ein Kontrollkästchen pro Feld: Haken setzen, und der Text gehört endgültig Ihnen.

Was “final” genau bedeutet. Für dieses Feld, bei diesem Produkt, in dieser Store-View gilt:

  • die KI wird dafür nie wieder aufgerufen — nicht beim nächsten Lauf, nicht nachdem Sie den Persona-Prompt geändert haben, nicht nach einem Modellwechsel, nicht nach einem Cache-Flush und auch nicht, wenn Sie Apply to already processed drücken. Es kostet nichts, für immer. Und wenn jedes Feld eines Produkts als final erklärt ist, wird der KI-Aufruf für dieses Produkt überhaupt nicht ausgeführt;
  • verschwindet der Wert vom Produkt — ein Importer hat ihn überschrieben, jemand hat das Original wiederhergestellt, eine Migration hat ihn gelöscht —, dann setzt die Hintergrundprüfung Ihren als final erklärten Text wieder ein, ebenfalls kostenlos;
  • es setzt sich gegen die automatischen Regeln des Moduls selbst durch. Der Meta-Titel zum Beispiel wird normalerweise immer zwingend dem Produktnamen nachgeführt; erklären Sie den Meta-Titel zu final, und Ihr Text gewinnt sogar dagegen;
  • es gilt nur für dieses eine Feld. Die übrigen Felder desselben Produkts werden weiterhin normal generiert. Die Beschreibung als final zu erklären friert nicht den Meta-Titel ein, und es nimmt das Produkt nicht aus dem Profil heraus.

Eine Bearbeitung im Grid setzt den Haken für Sie. Sobald Sie im Grid in ein Feld tippen, setzt sich dessen Final-Kontrollkästchen von selbst. Es ist das Verhalten, das die Oberfläche nahelegt — Sie sind hineingegangen und haben diesen Text korrigiert, die Korrektur ist also der ganze Sinn der Sache —, und vor v3.4.0 geschah es nicht: Ein von Hand korrigierter Text überlebte bis zur nächsten Prompt-Änderung und wurde dann stillschweigend überschrieben und neu generiert. Wenn Sie möchten, dass ein korrigierter Text später neu generiert wird, entfernen Sie den Haken vor dem Speichern.

Beispiel. Sie verkaufen handgefertigte Möbel. Beim Schreibtisch aus Mangoholz schreiben Sie die Kurzbeschreibung selbst, weil die KI nicht wissen konnte, dass die Schubladenfront aus einem einzigen Stück geschnitzt ist. Sie setzen bei diesem Feld den Haken bei Final und speichern. Drei Wochen später formulieren Sie den Persona-Prompt in einem wärmeren Ton neu und drücken Apply to already processed: Jedes andere Feld jedes anderen Produkts wird neu generiert, auch Beschreibung und Meta-Angaben des Schreibtischs werden neu generiert — und seine Kurzbeschreibung ist exakt der Satz, den Sie geschrieben haben, unangetastet, ohne einen einzigen dafür abgerechneten KI-Aufruf.

Das Eine, was Sie sich merken sollten: Ein finales Feld ist das Einzige im Modul, das eine Änderung von Persona-Prompt oder Modell überlebt. Alles andere wird aus dem gespeicherten Ergebnis wiederaufgebaut, und das gespeicherte Ergebnis liegt unter einem Schlüssel, der den gesamten Prompt enthält — ändern Sie den Prompt, lässt sich keines der gespeicherten Ergebnisse mehr wiederverwenden.

Texte, die von selbst zurückkommen

Hier ein Fehler, der früher unbemerkt blieb. Ein bereits verarbeitetes Produkt gelangt nie von selbst zurück in die Warteschlange — mit Absicht, damit der erneute Lauf eines Profils günstig und sicher bleibt. Der Nebeneffekt: Wenn etwas einen generierten Text überschreibt, nachdem das Produkt verarbeitet wurde, wird dieses Produkt nie wieder angesehen. Der Storefront zeigt weiterhin den überschriebenen Text, die Warteschlange meldet done, die Historie enthält nach wie vor den generierten Text, und nirgends wird ein Fehler gemeldet. Wir haben das in einem echten Katalog gefunden: 318 Produkte mit englischen Titeln und Beschreibungen in einem italienischen Shop, wochenlang, während der italienische Text unverändert in der Historie des Moduls lag.

v3.4.0 schließt diese Lücke. Eine Hintergrundprüfung läuft stündlich und stellt pro gespeichertem Ergebnis eine einzige Frage, wobei sie ausschließlich die Datenbank liest und dafür nie eine KI aufruft: Steht der Text, den ich geschrieben habe, noch am Produkt? Lautet die Antwort nein, kehrt das Produkt mit der günstigsten passenden Behandlung in die Warteschlange zurück:

Was die Prüfung an einem Produkt feststelltWas sie tutWas es kostet
mindestens eines der fehlenden Felder ist als final erklärtsetzt Ihren erklärten Text unmittelbar wieder einnichts, immer
die Felder haben sich geändert, aber der Quelltext ist unverändertverwendet das gespeicherte Ergebnis erneut — kein KI-Aufrufnichts
die Felder haben sich geändert und der Quelltext hat sich tatsächlich geändertgeneriert sie neu: Hier liegt wirklich neues Produktmaterial vorein kostenpflichtiger KI-Aufruf — unterliegt der Obergrenze

Sie arbeitet in Portionen, und das ist wichtig. Jeder Durchlauf prüft 500 gespeicherte Ergebnisse und merkt sich, wo er aufgehört hat, um eine Stunde später von dort weiterzumachen. Der Vergleich kostet zwei Abfragen pro Zeile; einen großen Katalog jede einzelne Stunde vollständig zu durchlaufen wäre also eine Last, um die niemand gebeten hat. Der gesamte Katalog wird trotzdem abgedeckt — nur zeitlich verteilt. Bei einem großen Katalog bedeutet das, dass ein verschwundener Text Stunden warten kann, bei einem sehr großen ein paar Tage, bis die Prüfung ihn erreicht. Sie hängt nicht fest; sie ist nur noch nicht dort angekommen. Wenn Sie jetzt sofort eine Antwort brauchen, sieht sich bin/magento babel:reapply unmittelbar an, worauf Sie es ansetzen.

Gesteuert wird das unter Stores → Configuration → Codingrow → AI Babel Enchanter → Keeping the texts in place:

Die Konfigurationsgruppe Keeping the texts in place mit den Optionen Put back texts that disappeared und At most, per check.
Zwei Einstellungen: ob die Hintergrundprüfung läuft und wie viele Produkte sie pro Durchgang wiederherstellen darf.
  • Put back texts that disappeared — standardmäßig Yes. Stellen Sie es auf No, dann wird nie etwas automatisch wiederhergestellt; für manuelle Durchläufe bleibt Ihnen der Befehl babel:reapply.
  • At most, per check — standardmäßig 200. Alles oberhalb der Obergrenze übernehmen die folgenden Durchläufe. Setzen Sie den Wert auf 0, um die Hintergrundprüfung abzuschalten.

Warum die Obergrenze Produkte zählt und nicht KI-Aufrufe. “Das hier kostet nichts” ist eine Prognose auf Basis des gespeicherten Ergebnisses. Haben Sie zwischenzeitlich den Prompt oder das Modell geändert, lässt sich dieses gespeicherte Ergebnis nicht mehr wiederverwenden, und eine Wiederherstellung, die kostenlos aussah, wird kostenpflichtig. Produkte zu deckeln hält die Rechnung auch dann begrenzt, wenn die Prognose danebenliegt. Kostenlose Wiederherstellungen werden zuerst abgearbeitet, sodass die günstige Arbeit immer erledigt ist, bevor die Obergrenze erreicht wird.

Was sie nicht tut — und was sie tut. Sie rührt nie Preise, Bestände, Bilder oder irgendein Attribut außerhalb derer an, die das Profil verwaltet, und sie nimmt nie ein Produkt auf, das nie verarbeitet wurde. Aber seien Sie sich über den Teil im Klaren, der die Leute überrascht: Sie stellt das Produkt zurück in die Warteschlange, und der Lauf schreibt dann jedes Feld, das dieses Profil verwaltet, neu. Wenn Sie also eines dieser Felder auf der Produktseite korrigiert hatten, wird diese Korrektur ersetzt. Das ist kein Fehler, sondern die Regel der zwei Wege: Eine Korrektur, die erhalten bleiben soll, gehört ins Grid oder bekommt den Haken bei Final.

Auf der Kommandozeile bin/magento babel:reapply berichtet nur und schreibt nichts, solange Sie nicht --confirm übergeben — der sichere Weg, den Zustand eines Katalogs zu sehen, bevor Sie entscheiden. Ergänzen Sie --only-free für die Wiederherstellungen, die nichts kosten, sowie --profile und --limit, um den Durchlauf einzugrenzen.

Einen neuen Prompt auf die bereits erledigten Produkte anwenden

Profile sind bewusst darauf ausgelegt, nichts zweimal anzufassen: Ein bereits verarbeitetes Produkt wird nicht erneut verarbeitet, und genau das macht den erneuten Lauf eines Profils sicher und günstig. Die Kehrseite: Wenn Sie den Persona-Prompt verbessern, erreicht die Verbesserung nur Produkte, die ab diesem Moment verarbeitet werden — alles bereits Erledigte behält den alten Text. Bis v3.4.0 war der einzige Weg, diese Produkte einzubeziehen, babel:run --force auf der Kommandozeile.

Jetzt hat die Profilseite eine Schaltfläche dafür.

Die Aktionsleiste des Profils mit der Schaltfläche Apply to already processed.
Auf der Profilseite, direkt neben Run now: Apply to already processed.

Apply to already processed stellt die Produkte mit dem Status done, partial und skipped wieder in die Warteschlange dieses Profils. Die Bestätigung nennt die Kosten in klaren Worten, bevor irgendetwas passiert: “Produkte, deren Quelltext sich nicht geändert hat, werden kostenlos wiederverwendet. Die übrigen werden von der KI neu geschrieben, und das stellt Ihr Anbieter Ihnen in Rechnung; rechnen Sie nach einer Änderung der Persona oder der Anweisungen also damit, dass das gesamte Profil neu geschrieben wird.”

Dieser letzte Halbsatz ist keine Floskel. Jedes angereicherte Ergebnis liegt unter einem Schlüssel, der den Anbieter, das Modell und den gesamten System-Prompt enthält. Ändern Sie die Persona, ändern Sie das Template, ändern Sie das Modell — und kein einziges angereichertes Ergebnis im Katalog lässt sich wiederverwenden; und die Übersetzungen ziehen nach, denn das, was sie übersetzen, hat sich gerade geändert. Diese Schaltfläche nach einer Prompt-Änderung zu drücken bedeutet also “dieses ganze Profil neu generieren — und dafür bezahlen”. Vor einer Prompt-Änderung, auf einem unangetasteten Katalog, ist dieselbe Schaltfläche nahezu kostenlos.

Verwenden Sie sie, wenn Sie den Prompt verbessert haben und die alten Produkte auf den neuen Stand bringen wollen; wenn Sie einer Gruppe ein Attribut hinzugefügt haben und es überall gefüllt sehen wollen; wenn Sie einen Zuordnungsfehler korrigiert haben. Verwenden Sie sie nicht, wenn Sie lediglich verschwundene Texte reparieren wollen — dafür ist die oben beschriebene Hintergrundprüfung zuständig, und sie ist weitaus günstiger.

Als Final erklärte Felder werden auch von dieser Schaltfläche nicht neu generiert.

Wenn Ihr Katalog importiert wird

Wenn Produkte über einen Lieferanten-Feed, ein ERP, ein PIM oder einen beliebigen geplanten Import nach Magento gelangen, schreiben dieser Importer und Babel in dieselben Felder. Ob die beiden friedlich koexistieren, hängt davon ab, wie der Importer konfiguriert ist und wie viele Store-Views Sie haben — und wenn sie es nicht tun, ist das Symptom keine Fehlermeldung: Es ist Ihr bezahlter Text, der still verschwindet, während jeder Bildschirm weiterhin Erfolg meldet.

Der Abnahmetest dauert eine Minute: Reichern Sie ein Produkt an, lassen Sie den Import laufen, ohne irgendetwas am Feed zu ändern, und laden Sie das Produkt neu. Steht Babels Text noch da, ist dieser Importer kompatibel. Ist der Lieferantentext zurück, ist er es nicht — und keine Einstellung in Babel behebt das.

Wichtig — lesen Sie dies, wenn Ihr Katalog importiert wird. Phasenweise Abläufe, die zeigen, was zu jedem Zeitpunkt im Feld steht, der Vorbehalt bei nur einer Store-View, wo Babel vergleicht, der schlimmste Fall in voller Länge und der Abnahmetest für jeden beliebigen Importer.

Die vollständige Seite lesen: Babel und Importer →

Rollback

Jeder vom Modul geschriebene Wert ist reversibel. Zusätzlich zum zeilenweisen Original wiederherstellen im Raster setzt der CLI-Befehl babel:rollback Inhalte in großem Umfang zurück — pro Profil, pro Produkt oder für den gesamten Lauf — auf den Text, der vor dem Eingriff des Moduls vorhanden war. Da das Original stets erhalten bleibt, ist ein Lauf über den gesamten Katalog nie eine Einbahnstraße.

Wiederherstellen des Originaltextes für ein Produktfeld, Rücknahme eines generierten Werts.
Original wiederherstellen: jedes generierte Feld auf den Text vor dem Lauf zurücksetzen, zeilenweise oder in großem Umfang.

Queue und Guthaben-Circuit-Breaker

Lange Läufe werden über eine Warteschlange verarbeitet, die Sie beobachten, pausieren und fortsetzen können. Der integrierte Circuit Breaker (konfiguriert unter Resilience) schützt den Lauf: bei wiederholten Anbieterfehlern — meist Anbieter ohne Guthaben oder mit Rate Limit — pausiert er nach N Fehlern, wartet den konfigurierten Cooldown ab und kann vorübergehende Fehler automatisch wiederholen, statt den ganzen Batch scheitern zu lassen. Wenn Sie Guthaben aufladen oder das Limit zurückgesetzt wird, setzen Sie die Warteschlange fort und sie macht dort weiter, wo sie aufgehört hat.

Die Ansicht der Verarbeitungs-Warteschlange mit Status, Pause und Fortsetzen sowie dem Zustand des Guthaben-Circuit-Breakers.
Die Warteschlange: lange Läufe beobachten, pausieren und fortsetzen; der Circuit Breaker hält bei wiederholten Anbieterfehlern an.

Händlereinträge: Rücksendung und Versand

Google liest Rücksende- und Versandbedingungen von der Produktseite, um sie in den kostenlosen Händlereinträgen zu zeigen, und die Search Console meldet sie als fehlend, wenn sie nicht da sind. Aus dem Katalog lassen sie sich nicht ableiten — es sind kaufmännische Bedingungen — daher werden sie in der Konfiguration unter Merchant listings (returns and shipping) angegeben. Beide Blöcke sind standardmäßig aus und setzen die strukturierten Produktdaten voraus.

Merchant listings group in the admin: return policy and shipping details
  • Rücksendebedingungen → hasMerchantReturnPolicy: Länder (aus Magentos eigener Liste), Rücksendefenster, Tage, wie die Ware zurückkommt, wer zahlt und gegebenenfalls die Gebühr.
  • Versandbedingungen → shippingDetails: Zielländer, Kosten (0 für kostenlosen Versand), Bearbeitungs- und Lieferzeit in Werktagen.

Zwei Regeln sind Absicht. Ein Block mit unvollständigen Pflichtfeldern wird ganz weggelassen statt halb wahr veröffentlicht: Google vergleicht Ihre Angaben mit dem, was der Kunde auf der Website vorfindet, daher ist eine falsche Angabe weniger wert als gar keine. Und bei "Rücksendungen nicht akzeptiert" werden weder Methode noch Kostenträger veröffentlicht — es gibt keine Rücksendung zu beschreiben.

Das Angebot trägt außerdem validFrom, das Datum, ab dem der veröffentlichte Preis gilt — der Beginn des Sonderpreises, sonst das Anlagedatum des Produkts. Dafür ist keine Konfiguration nötig.

Selten gelten diese Bedingungen für den gesamten Katalog: Bearbeitungs- und Lieferzeiten unterscheiden sich zwischen eigenem Lager und Dropshipping, der Versand hängt vom Volumen ab, das Rücksendefenster von der Ware. Und die Zahl steht meist schon am Produkt, in einem Attribut, das Ihr Importeur oder Ihr Team pflegt. Jedes dieser Felder kann daher auf ein Produktattribut zeigen — die Liste enthält auch Ihre eigenen — samt Feld für einen Code, den die Liste nicht anbietet. Wo das Produkt einen Wert trägt, gewinnt es; wo nicht, gilt der feste Wert; und ein Wert, der keine Zahl ist, fällt auf den festen zurück, statt Unsinn zu veröffentlichen.

The fields that take their value from a product attribute

Jede Zahl kann aus einem Produktattribut kommen, gewählt aus der Liste des Katalogs: hier stammen Bearbeitungs- und Lieferzeit aus den Attributen, die ein Importeur füllt.

Befehlszeile (CLI)

Alles lässt sich für Planung und große Läufe über die CLI steuern.

BefehlWas er bewirkt
bin/magento babel:runFührt ein Profil (Verbessern-/Übersetzen-Pipeline) über seine Zielprodukte aus — die Standardmethode, um einen Durchlauf über den gesamten Katalog zu starten.
bin/magento babel:rollbackSetzt generierte Inhalte auf den Originaltext zurück, mit Umfang pro Profil, Produkt oder für den gesamten Lauf.
bin/magento babel:queuePrüft und steuert die Verarbeitungs-Warteschlange: Status, Pause, Fortsetzen.
Ausführen eines Babel-Enchanter-Profils über die Befehlszeile.
Einen Lauf über den gesamten Katalog von der Befehlszeile aus steuern.
Neue Anleitungen, sobald sie erscheinen

Eine praxisnahe Magento-2-Anleitung pro E-Mail, nur wenn wir eine veröffentlichen. Sonst nichts.

Die Artikel sind auf Englisch. Abmeldung mit einem Klick, in jeder E-Mail. · privacy