English version → Zur Produktseite →
Vermontas

AURA OF CLARITY

Perception beyond words // Magento 2 Handbuch

Dieses Handbuch beschreibt Installation, Betrieb und Diagnose von Aura of Clarity für Magento 2 und Hyvä. Aura erweitert die vorhandene Produktsuche um lokales semantisches Retrieval, Intent Reranking, Product Knowledge, Shop Wissen, Visual Perception und einen vorwärmbaren Query Cache.

Technischer Stand: September 2026Plattform: Magento 2.4.6+PHP: 8.2+Frontend: Hyvä Theme
Kapitel 01

Überblick

Aura of Clarity ist keine separate Suchanwendung und kein Chatbot über dem Shop. Die Extension erweitert die bestehende Hyvä Suche direkt im Magento Frontend. Die vorhandene Suchbox und das Theme bleiben dabei erhalten.

Das GrundprinzipMagento Produktdaten werden in einen lokalen Wissensindex überführt. Textanfragen werden semantisch und lexikalisch ausgewertet und anschließend lokal nach Intent neu bewertet. Für die Bildsuche werden Produktbilder und Kundenbilder mit einem lokalen Vision Modell verglichen.

Was lokal verarbeitet wird

  • Text Embeddings für semantische Produktsuche
  • Magento Volltextsignale für exakte und lexikalische Treffer
  • Intent Reranking mit lokalem mMARCO Modell
  • Bildvektoren und Bildsuchanfragen mit lokalem CLIP Modell
  • Typotoleranz, Hybrid Ranking und Clarity Logik
  • Query Cache und Schutz vor doppelter gleichzeitiger Berechnung identischer Suchanfragen

Was optional extern verarbeitet wird

Nur die optionale Product Knowledge Anreicherung mit Claude Sonnet verwendet einen externen KI Dienst. Dabei werden die dafür vorgesehenen Produktdaten verarbeitet. Suchanfragen Ihrer Kunden werden nicht an Claude übertragen.

Kapitel 02

Voraussetzungen

KomponenteAnforderungHinweis
MagentoMagento 2.4.6 oder neuerAura integriert sich in Produktdaten, Storeviews, Suchergebnisse und Magento Indexer.
PHPPHP 8.2 oder neuerDie Release Prüfung kontrolliert die laufende PHP Version.
FrontendHyvä ThemeDie vorhandene Hyvä Suchbox wird in place erweitert.
PHP Extensionscurl, ffi, gd, mbstringFFI wird für lokale ONNX Inferenz benötigt.
GDJPEG und PNG, für WebP Uploads zusätzlich WebPFehlende WebP Unterstützung blockiert nur WebP Suchbilder.
ONNX PHP Runtimeankane/onnxruntime ^0.3.6Die Runtime wird regulär über Composer installiert.
CronFunktionsfähiger Magento CronFür den empfohlenen Indexer Modus Update by Schedule erforderlich.
Keine zusätzliche Suchinfrastruktur erforderlich. Aura benötigt weder einen Python Prozess noch eine separate Vector Datenbank, keinen Docker Container oder externen Embedding Dienst. Ist OpenSearch mit k-NN bereits verfügbar, kann Aura diesen Vector Pfad verwenden. Andernfalls arbeitet Aura mit dem PHP Native Vector Pfad.

Lokale Modelle

Die lokalen Modelle und Tokenizer müssen an den vorgesehenen Positionen vorhanden sein und sind im Installationspaket vollständig enthalten. Die PHP ONNX Runtime Anbindung selbst wird nicht mit der Extension gebündelt, sondern als regulärer Composer Installationsschritt eingerichtet.

FunktionModellZieldateiDimension
Text PerceptionXenova/multilingual-e5-smallModel/ML/models/text/model.onnx384
Text Tokenizerpassender E5 Unigram TokenizerModel/ML/models/text/tokenizer.json-
Intent PerceptionSugoLabs/mmarco-mMiniLMv2-L12-H384-v1Model/ML/models/reranker/model.onnx-
Intent Tokenizerpassender XLM-R Unigram TokenizerModel/ML/models/reranker/tokenizer.json-
Visual PerceptionXenova/clip-vit-base-patch32Model/ML/models/vision/vision_model.onnx512
Kapitel 03

Installation

Die Extension wird unter app/code/Vermonta/AuraOfClarity installiert. Die PHP ONNX Runtime Anbindung wird separat über Composer eingerichtet.

Extension kopieren

Entpacken Sie Aura of Clarity nach app/code/Vermonta/AuraOfClarity.

ONNX PHP Runtime installieren

Installieren Sie die von Aura benötigte Composer Abhängigkeit.

Magento Modul aktivieren

Aktivieren Sie das Modul und führen Sie das Magento Setup aus.

Indexer einrichten

Für den laufenden Betrieb wird Update by Schedule empfohlen.

Aura konfigurieren und Erstindex erzeugen

Aktivieren Sie Aura, hinterlegen Sie optional den empfohlenen Claude API Key und erzeugen Sie anschließend den Wissensindex.

Release Audit ausführen

Prüfen Sie Runtime, Modelle, Uploadkapazität und Indexbereitschaft.

Query Cache vorwärmen

Wärmen Sie nach erfolgreicher Installation die wichtigsten Suchanfragen vor, damit häufige Suchanfragen direkt aus dem Aura Query Cache beantwortet werden können.

Composer Abhängigkeit

Shell
composer require ankane/onnxruntime:^0.3.6

Magento Installation

Shell
php bin/magento module:enable Vermonta_AuraOfClarity
php bin/magento setup:upgrade
php bin/magento setup:di:compile
php bin/magento cache:flush

Indexer auf Update by Schedule setzen

Shell
php bin/magento indexer:set-mode schedule vermonta_auraofclarity_vectors

Ersten vollständigen Index erzeugen

Shell
php bin/magento indexer:reindex vermonta_auraofclarity_vectors

Installation prüfen

Shell
php bin/magento aura:release:audit --store=2
php bin/magento aura:license:check

Ersetzen Sie 2 durch die Storeview ID, die geprüft werden soll.

Kapitel 04

Konfiguration

Aura wurde bewusst so entwickelt, dass keine manuelle Abstimmung von Suchgewichten, Schwellenwerten oder zahlreichen technischen Parametern erforderlich ist.

Aktivieren. Optional API Key hinterlegen. Shop Wissen bei Bedarf ergänzen.Für den normalen Betrieb genügt die Aktivierung. Ein Claude Sonnet API Key kann optional für zusätzliche Product Knowledge Anreicherung hinterlegt werden. Shop Wissen erlaubt ergänzend die Pflege von Händlerwissen, das weder aus Magento Daten noch zuverlässig aus allgemeinem KI Wissen abgeleitet werden kann.

Die Grundeinstellungen finden Sie unter Stores > Configuration > Vermonta > Aura of Clarity.

EinstellungBedeutungEmpfehlung
Enable Aura of ClarityAktiviert oder deaktiviert die Aura Suche im Frontend.Yes für den produktiven Betrieb.
Claude API KeyOptionaler Schlüssel für zusätzliche Product Knowledge Anreicherung. Der Wert wird verschlüsselt gespeichert und nicht für Kundensuchanfragen verwendet.Optional, für bestmögliche Product Knowledge Qualität empfohlen. API Keys können in der Anthropic Console erstellt werden.

Shop Wissen

Im Aura Adminbereich steht unter Experience > Shop Wissen ein zentrales Freitextfeld für spezifisches Händlerwissen zur Verfügung. Tragen Sie dort natürliche Zuordnungen ein, die Kunden im Shop verwenden, die aber aus den Produktdaten allein nicht sicher hervorgehen.

Beispiel
Wenn Kunden nach "Deckelpappen" suchen, meinen sie meist SKU 5154; SKU 5143 ist eine Alternative.
Wenn Kunden nach "Wachsplatten DN" suchen, sind die Produkte der SKUs 3520 und 3522 besonders relevant.

Die zuerst genannte SKU erhält innerhalb dieser Händlerzuordnung die stärkere Priorität. Weitere SKUs können als Alternativen angegeben werden. Aura nutzt Shop Wissen als zusätzliches Signal innerhalb der normalen Suchpipeline. Es ersetzt nicht die übrige semantische, lexikalische und Intent Bewertung.

Shop Wissen ist bewusst allgemein. Es dient nicht dazu, technische Rankingregeln zu programmieren. Ein Eintrag sollte eine echte Beziehung zwischen Kundensprache und Sortiment beschreiben.

Statusbereich Clarity

Passage to 4th DimensionText Perception

Zeigt, ob das lokale Text Modell einsatzbereit ist.

Product KnowledgeProdukte im Wissensindex

Zeigt die Anzahl vorhandener Textvektoren.

Visual PerceptionVision Modell

Zeigt, ob die lokale Bildinferenz bereit ist.

Intent PerceptionReranker

Zeigt, ob das lokale Intent Modell geladen werden kann.

Zusätzlich wird der automatisch aufgelöste Vector Pfad angezeigt: PHP Native oder OpenSearch k-NN.

Kapitel 05

Lizenzierung und Kaufprozess

Aura of Clarity wird für eine registrierte Shop Domain lizenziert. Ein Lizenzschlüssel muss im Magento Admin nicht eingegeben werden. Die Freischaltung erfolgt durch Vermonta für die vereinbarte Domain.

Eine Domain inklusive echter SubdomainsWird beispielsweise shop.de freigeschaltet, gilt die Lizenz auch für zugehörige Subdomains wie www.shop.de, dev.shop.de oder staging.shop.de. Weitere eigenständige Hauptdomains benötigen eine eigene Lizenz.

So läuft der Kauf ab

Aura anfragen

Auf der Aura Produktseite führt der Kaufen Button zum Vermonta Kontaktformular.

Voraussetzungen und Domain abstimmen

Vermonta prüft kurz die technischen Voraussetzungen und stimmt mit Ihnen die zu lizenzierende Shop Domain ab.

Lizenz freischalten

Nach Abschluss des Kaufs wird die vereinbarte Domain auf dem Vermonta Lizenzdienst für Aura freigeschaltet.

Software erhalten und installieren

Sie erhalten Aura of Clarity und installieren die Extension gemäß diesem Handbuch.

Lizenzprüfung im Betrieb

Aura überprüft die Lizenz in regelmäßigen Abständen über den Vermonta Lizenzdienst. Kurzzeitige Verbindungsprobleme führen nicht unmittelbar zur Abschaltung. Ist keine gültige Lizenz vorhanden, deaktiviert Aura nur die eigenen Suchfunktionen. Magento und die reguläre Hyvä Produktsuche bleiben davon unberührt.

Lizenz prüfen
php bin/magento aura:license:check
Domainwechsel: Wenn der Shop dauerhaft auf eine andere Hauptdomain umzieht, wenden Sie sich bitte an Vermonta, damit die Lizenz auf die neue Domain übertragen werden kann.

Aura of Clarity über das Vermonta Kontaktformular anfragen →

Kapitel 06

Product Knowledge und Shop Wissen

Product Knowledge ist die Wissensschicht, aus der Aura semantische und lexikalische Suchsignale erzeugt. Sie funktioniert bereits ohne externen API Key. Shop Wissen ergänzt diese Ebene um das konkrete Erfahrungswissen des Händlers.

Lokales Produktwissen aus Magento

Aura verwendet Produktname, SKU, Kategoriepfad, Kurzbeschreibung, Beschreibung und bis zu 24 sinnvolle kundenrelevante Produktattribute. Berücksichtigt werden geeignete Text, Textarea, Select, Multiselect und Boolean Attribute, wenn sie sichtbar, durchsuchbar, filterbar oder im Produktlisting verwendet werden. Bei Select und Multiselect verwendet Aura die sichtbaren Optionsbezeichnungen statt interner Options IDs.

Optionale Anreicherung mit Claude Sonnet

Ist ein Claude API Key hinterlegt, kann Aura zusätzliche kundenorientierte Bedeutung aus den vorhandenen Produktdaten ableiten, beispielsweise Produkttyp, Verwendungszweck, typische Situationen, Zielgruppen, Synonyme und natürliche Kundenformulierungen.

Die Anreicherung darf keine nicht belegten technischen Fakten erfinden. Kann ein Batch nicht angereichert werden, läuft die Indexierung mit lokalem Magento Produktwissen weiter.

Hash und Cache Logik

Aura speichert angereichertes Produktwissen zusammen mit einem Hash der relevanten Quelldaten und einem Storeview bezogenen Scope. Solange sich die relevanten Produktdaten nicht verändern, wird vorhandenes Wissen wiederverwendet.

Ein Reindex bedeutet nicht automatisch neue API Kosten für jedes Produkt. Unveränderte Produkte verwenden den vorhandenen Knowledge Cache.

Shop Wissen als dritte Wissensebene

Magento Daten beschreiben objektive Produkteigenschaften. Die optionale KI Anreicherung kann allgemeine Bedeutung und Kundensprache ergänzen. Shop Wissen bildet die dritte Ebene: konkrete Begriffe, Zuordnungen und Erfahrungen, die nur der Händler aus seinem Sortiment und Kundenkontakt kennt.

Kapitel 07

Indexierung

Der Indexer trägt die ID vermonta_auraofclarity_vectors und erscheint in Magento als Aura of Clarity - Knowledge Index.

Was ein vollständiger Lauf erzeugt

  • Product Knowledge pro aktiver Storeview
  • normalisierte semantische Textvektoren
  • lexikalische Suchdokumente für Magento Volltext
  • Bildvektoren, sofern ein verwendbares Produktbild vorhanden ist
  • optional angereichertes und gecachtes Claude Product Knowledge

Der Vollindex verarbeitet alle aktiven Storeviews separat. Produktdaten, Locale, Kategorien und Wissensscope sind Storeview bezogen.

Empfohlener Betriebsmodus

Verwenden Sie Update by Schedule und stellen Sie sicher, dass der Magento Cron zuverlässig läuft.

Status prüfen
php bin/magento indexer:status vermonta_auraofclarity_vectors
php bin/magento indexer:show-mode vermonta_auraofclarity_vectors

Nur Textwissen neu erzeugen

Shell
php bin/magento aura:index:text-rebuild

Bestehendes Claude Wissen und bestehende Bildvektoren bleiben dabei erhalten.

Query Cache nach Indexänderungen. Aura invalidiert den Suchcache bei relevanten Indexänderungen, damit veraltete Rankings nicht dauerhaft ausgeliefert werden.
Kapitel 09

Query Cache und Cache Warmer

Lokale ONNX Modelle liefern hohe Suchqualität, benötigen bei einer vollständig kalten Anfrage jedoch Rechenzeit. Aura speichert deshalb die bereits berechnete Reihenfolge der Produkt IDs im Magento Cache. Produktdarstellung, Preise, URLs und Bilder werden beim späteren Laden weiterhin frisch aus Magento erzeugt.

Query Cache

  • Cache Scope berücksichtigt Storeview, Suchanfrage und Aura Suchmodus.
  • Änderungen am Shop Wissen fließen in die Cache Identität ein.
  • Leere Ergebnisse können ebenfalls gecacht werden.
  • Die aktuelle Standard TTL beträgt 24 Stunden.
  • Ist der Magento Cache nicht verfügbar, arbeitet die Suche ohne Cache weiter.

Concurrency Lock

Bei mehreren nahezu gleichzeitigen identischen kalten Suchanfragen berechnet Aura die Query nur einmal. Weitere identische Requests warten kurz auf den entstehenden Cacheeintrag. Unterschiedliche Suchanfragen werden dadurch nicht global blockiert.

Cache Warmer

Der Cache Warmer bereitet häufige Suchanfragen seriell über denselben Suchpfad vor, den auch das Frontend verwendet. Er sammelt zuerst Begriffe aus Shop Wissen und ergänzt anschließend echte Magento Suchhistorie aus search_query, priorisiert nach Popularität.

Suchanfragen, für die Magento selbst keine Treffer hatte, werden nicht grundsätzlich entfernt. Gerade solche Begriffe können für die semantische Aura Suche besonders relevant sein. Offensichtlicher technischer Müll, leere Werte, reine Zahlen und ungeeignete Einträge werden gefiltert.

Dry Run
php bin/magento aura:cache:warm --store=2 --limit=100 --dry-run

Der Dry Run zeigt die ausgewählten Begriffe an, ohne ONNX Suchen auszuführen.

Top 100 vorwärmen
php bin/magento aura:cache:warm --store=2 --limit=100

Bereits vorhandene gültige Cacheeinträge werden übersprungen.

Neu berechnen
php bin/magento aura:cache:warm --store=2 --limit=100 --force

--force berechnet die ausgewählten Suchanfragen bewusst neu.

Alle geeigneten Begriffe
php bin/magento aura:cache:warm --store=2 --limit=0
--limit=0 nicht als Standard verwenden. Damit werden alle geeigneten Begriffe aus der Suchhistorie berücksichtigt. Bei großen Shops kann dies eine sehr große Zahl sein. Für den normalen Betrieb ist eine begrenzte, nach Popularität priorisierte Menge sinnvoller.

Nach Magento Cache Flush

Der Aura Query Cache liegt im Magento Cache und wird deshalb auch durch php bin/magento cache:flush geleert. Nach Deployments oder einem bewussten Cache Flush kann der Cache Warmer direkt erneut ausgeführt werden.

Kapitel 10

Visual Perception

Die Bildsuche ergänzt die vorhandene Hyvä Suche um ein Kamera Icon. Kunden können ein Bild hochladen, ohne den Produktnamen zu kennen.

Unterstützte Uploads

FormateJPEG, PNG, WebP
Standardlimit5 MB
Maximale Pixelzahl25 Megapixel
Mindestabmessung16 × 16 Pixel
Vision InputRGB, 224 × 224, ONNX Tensor [batch, 3, 224, 224]
Vision Outputnormalisierter 512 dimensionaler Bildvektor

Aura vertraut weder dem Browser Dateinamen noch der vom Browser gemeldeten MIME Information. Der tatsächliche Bildheader, die Uploadquelle, Dateigröße, Bilddimensionen und der verfügbare GD Decoder werden serverseitig geprüft.

Visual Confidence

Das Confidence Gate wird vor Visual Clarity auf den rohen CLIP Cosine Scores angewendet. Dadurch kann semantische Familienähnlichkeit keine künstliche Sicherheit für ein unpassendes Bild erzeugen.

StatusInterne ZoneFrontend Verhalten
LOWTop Score < 0.700Keine erzwungenen Produktvorschläge.
UNCERTAIN0.700 bis < 0.750Hinweis auf keine eindeutige Übereinstimmung; ähnliche Produkte können bewusst eingeblendet werden.
HIGHab 0.750Normale visuelle Ergebnisse.
Diese Schwellenwerte sind interne Release Heuristiken. Sie sind bewusst keine Händler Settings.

Vollständige Bildergebnisse

Für die vollständige Ergebnisseite speichert Aura nur geordnete Produkt IDs hinter einem zufälligen, zeitlich begrenzten Token. Das hochgeladene Bild selbst wird nicht dauerhaft gespeichert.

Kapitel 11

Datenschutz und Datenfluss

Aura trennt lokale Kundensuche und optionale Produktdaten Anreicherung technisch voneinander.

Lokal

Textsuchanfragen

Werden auf dem Shopserver verarbeitet und nicht für die Suche an Claude oder einen externen Embedding Dienst übertragen.

Lokal & temporär

Suchbilder

Werden lokal validiert und vektorisiert. Aura entfernt die temporäre Upload Datei nach der Vektorextraktion.

Optional extern

Produktdaten

Nur bei aktivierter Claude Sonnet Product Knowledge Anreicherung werden die vorgesehenen Produktdaten extern verarbeitet.

Öffentliche Suchendpunkte

Die Text und Bild AJAX Antworten werden mit no-store, no-cache und nosniff Headern ausgeliefert. Aura Suchergebnisseiten sind außerdem nicht indexierbar.

Kapitel 12

Storeviews und Sprachen

Aura indexiert aktive Magento Storeviews separat und verwendet die jeweilige Store Locale für Product Knowledge und Suche.

LocaleSprache
de_DEDeutsch
de_CHDeutsch, Schweiz
en_USEnglisch
fr_FRFranzösisch
it_ITItalienisch

Für die optionale Claude Anreicherung wird der Knowledge Cache Storeview bezogen geführt. Dadurch kann dasselbe Produkt in unterschiedlichen Storeviews eigenes sprachliches Product Knowledge erhalten.

Kapitel 13

CLI Werkzeuge

Aura enthält Diagnose und Wartungsbefehle für Installation, Betrieb, Suchqualität und Cache Pflege.

aura:release:audit

Prüft PHP, Extensions, ONNX Runtime, Modelle, Uploadkapazität, Vector Pfad und Storeview bezogene Indexbereitschaft.

aura:license:check

Prüft die aktuelle Domainlizenz und zeigt den Lizenzstatus an.

aura:cache:warm

Wärmt wichtige Shop Wissen Begriffe und häufige reale Magento Suchanfragen in den Aura Query Cache.

aura:search:diagnose

Zeigt die Stufen der Textsuche für eine konkrete Suchanfrage.

aura:semantic:probe

Vergleicht eine Suchanfrage gezielt mit ausgewählten Produkt IDs und Product Knowledge Daten.

aura:index:text-rebuild

Erzeugt Textwissen und Textvektoren neu, ohne Bildvektoren erneut zu berechnen.

aura:image:diagnose

Diagnostiziert rohe visuelle Treffer, Visual Confidence und Visual Clarity.

aura:image:benchmark

Verarbeitet einen festen Bildordner für visuelle Regressionstests.

Release Audit

Shell
php bin/magento aura:release:audit --store=2

Cache Warmer

Shell
php bin/magento aura:cache:warm --store=2 --limit=100 --dry-run
php bin/magento aura:cache:warm --store=2 --limit=100

Textsuche diagnostizieren

Shell
php bin/magento aura:search:diagnose "bienen beruhigen ohne unnötigen stress" --store=2 --limit=10

Bildsuche diagnostizieren

Lokales Bild
php bin/magento aura:image:diagnose /path/to/image.jpg --store=2 --limit=20 --pool=30
Kapitel 14

Troubleshooting

Aura zeigt „WAITING FOR MODEL“

Prüfen Sie zuerst den Release Audit. Fehlende Modell oder Tokenizer Dateien sowie eine nicht verfügbare ONNX PHP Runtime werden dort separat aufgeführt.

Shell
php bin/magento aura:release:audit --store=2

Textsuche liefert keine semantischen Treffer

Prüfen Sie, ob der Text Encoder im Audit bereit ist und ob Product Knowledge Vektoren für die betroffene Storeview existieren. Anschließend kann die konkrete Anfrage mit aura:search:diagnose analysiert werden.

Eine bekannte Suchanfrage ist nach Cache Flush wieder langsam

Ein Magento cache:flush leert auch den Aura Query Cache. Führen Sie den Cache Warmer erneut aus.

Shell
php bin/magento aura:cache:warm --store=2 --limit=100

Neue oder geänderte Produkte fehlen

Prüfen Sie den Aura Indexer Status und den Magento Cron.

Shell
php bin/magento indexer:status vermonta_auraofclarity_vectors
php bin/magento cron:run

Claude Anreicherung schlägt fehl

Aura setzt die Indexierung mit lokalem Magento Produktwissen fort. Prüfen Sie API Key, Netzwerkzugriff und Magento Logs. Kundensuchanfragen sind davon nicht abhängig.

OpenSearch k-NN ist nicht verfügbar

Das ist kein Fehler. Aura fällt auf PHP Native zurück. Der aktive Vector Pfad wird im Admin und im Release Audit angezeigt.

Kapitel 15

Updates

Sichern Sie vor dem Austausch des Modulverzeichnisses lokale Modell und Tokenizer Dateien, sofern diese nicht Bestandteil des gelieferten Pakets sind.

Typischer Abschluss nach Modulupdate
php bin/magento setup:upgrade
php bin/magento setup:di:compile
php bin/magento cache:flush
php bin/magento aura:release:audit --store=2
php bin/magento aura:cache:warm --store=2 --limit=100

Ob ein vollständiger Aura Reindex erforderlich ist, hängt vom jeweiligen Release ab. Beachten Sie deshalb die Release Hinweise der ausgelieferten Version.

Optionaler Update und Kompatibilitätsservice. Updates und laufende Kompatibilität können für 250 € netto pro Jahr gebucht werden. Die bereits installierte und lizenzierte Version bleibt auch ohne Verlängerung nutzbar.
Kapitel 16

Support

Gewährleistung und Fehlerbehebung beziehen sich auf echte Programmfehler und Sicherheitsprobleme der unveränderten Aura Extension. Individuelle Anpassungen, Integrationen oder allgemeines Magento Consulting sind davon nicht umfasst.

Vermonta IT- & Media Agencyinfo@vermonta.de
www.vermonta.de

Für eine zielgerichtete Analyse sind bei technischen Problemen insbesondere Magento Version, betroffene Storeview ID und die Ausgabe von aura:release:audit hilfreich.