Quando si parla di scalare l'e-commerce, ci si concentra sulle grandi sfide ingegneristiche: ricerca distribuita, inventario in tempo reale, motori di raccomandazione e ottimizzazione del checkout. Ma sotto tutto questo si nasconde un problema più silenzioso e persistente con cui quasi tutti i rivenditori fanno i conti: i valori degli attributi.
Gli attributi sono la spina dorsale della scoperta dei prodotti. Alimentano filtri, confronti, ranking di ricerca e logica di raccomandazione. Ma nei cataloghi reali, i valori degli attributi sono raramente puliti. Sono incoerenti, duplicati, formattati male o semanticamente ambigui.
Prendiamo qualcosa di semplice come Dimensione. Potresti vedere:
Code
["XL", "Small", "12cm", "Large", "M", "S"]
O Colore:
Code
["RAL 3020", "Crimson", "Red", "Dark Red"]
Individualmente, queste incoerenze sembrano innocue. Ma moltiplicale su oltre 3 milioni di SKU, ognuno con decine di attributi, e il problema diventa sistemico. I filtri si comportano in modo imprevedibile, i motori di ricerca perdono rilevanza, i merchandiser annegano nella pulizia manuale e la scoperta dei prodotti diventa più lenta e frustrante per i clienti.
Questa era la sfida che ho affrontato come ingegnere software full-stack presso Zoro, un problema facile da trascurare ma che influenzava ogni pagina prodotto.
Non volevo un misterioso Agente IA black box che si limitasse a ordinare le cose. Sistemi del genere sono difficili da fidarsi, debuggare o scalare. Invece, ho puntato a una pipeline che fosse:
Il risultato è stata una pipeline Basato su IA ibrida che combina ragionamento contestuale dagli LLM con regole chiare e controlli dei merchandiser. Agisce in modo intelligente quando necessario, ma rimane sempre prevedibile. Questa è un'IA con guardrail, non un'IA fuori controllo.
Tutta l'elaborazione degli attributi avviene in processi in background offline, non in tempo reale. Questa non è stata una compromissione; è stata una scelta architettonica strategica.
Le pipeline in tempo reale sembrano allettanti, ma su scala e-commerce introducono:
I processi offline, d'altra parte, ci hanno dato:
Mantenere i sistemi rivolti ai clienti separati dalle pipeline di elaborazione dati è essenziale quando si lavora con milioni di SKU.
Prima di utilizzare l'IA sui dati, ho eseguito un chiaro passaggio di preprocessing per rimuovere rumore e confusione. Questo passaggio può sembrare semplice, ma ha notevolmente migliorato il ragionamento dell'LLM.
La pipeline di pulizia includeva:
Questo ha garantito che l'LLM ricevesse input puliti e chiari, fondamentali per risultati coerenti. Spazzatura in entrata, spazzatura in uscita. A questa scala, anche piccoli errori possono portare a problemi più grandi in seguito.
L'LLM non stava solo ordinando i valori alfabeticamente. Stava ragionando su di essi.
Il servizio ha ricevuto:
Con questo contesto, il modello poteva comprendere:
Il modello ha restituito:
Questo consente alla pipeline di gestire diversi tipi di attributi senza codificare regole per ogni categoria.
Non tutti gli attributi hanno bisogno dell'Agente IA.
Infatti, molti attributi sono gestiti meglio da logica deterministica.
Intervalli numerici, valori basati su unità e set semplici spesso beneficiano di:
La pipeline ha rilevato automaticamente questi casi e ha utilizzato logica deterministica per loro. Questo ha mantenuto il sistema efficiente ed evitato chiamate LLM non necessarie.
I merchandiser avevano ancora bisogno di controllo, soprattutto per attributi sensibili dal punto di vista business.
Quindi ogni categoria poteva essere taggata come:
Questo sistema dual-tag consente alle persone di prendere le decisioni finali mentre l'IA faceva la maggior parte del lavoro. Ha anche costruito fiducia, poiché i merchandiser potevano sovrascrivere il modello quando necessario senza rompere la pipeline.
Tutti i risultati sono stati archiviati direttamente in un database Product MongoDB, mantenendo l'architettura semplice e centralizzata.
MongoDB è diventato il singolo archivio operativo per:
Questo ha reso facile rivedere le modifiche, sovrascrivere i valori, rielaborare le categorie e sincronizzare con altri sistemi.
Una volta ordinati, i valori fluivano in:
Questo ha garantito che:
La ricerca è dove l'ordinamento degli attributi è più visibile e dove la coerenza conta di più.
Per far funzionare questo su milioni di SKU, ho progettato una pipeline modulare costruita attorno a processi in background, ragionamento Basato su IA e integrazione di ricerca. Il diagramma dell'architettura qui sotto cattura il flusso completo:
Questo flusso assicura che ogni valore di attributo, sia ordinato dall'IA che impostato manualmente, si rifletta nella ricerca, nel merchandising e nell'esperienza del cliente.
Ecco come i valori disordinati sono stati trasformati:
| Attributo | Valori grezzi | Output ordinato | |----|----|----| | Dimensione | XL, Small, 12cm, Large, M, S | Small, M, Large, XL, 12cm | | Colore | RAL 3020, Crimson, Red, Dark Red | Red, Dark Red, Crimson, Red (RAL 3020) | | Materiale | Steel, Carbon Steel, Stainless, Stainless Steel | Steel, Stainless Steel, Carbon Steel | | Numerico | 5cm, 12cm, 2cm, 20cm | 2cm, 5cm, 12cm, 20cm |
Questi esempi mostrano come la pipeline combina ragionamento contestuale con regole chiare per creare sequenze pulite e facili da capire.
L'elaborazione in tempo reale avrebbe introdotto:
I processi offline ci hanno dato:
Il compromesso è stato un piccolo ritardo tra l'ingestione dei dati e la visualizzazione, ma il vantaggio è stata la coerenza su larga scala, che i clienti apprezzano molto di più.
I risultati sono stati significativi:
Questa non è stata solo una vittoria tecnica; è stata anche una vittoria per l'esperienza utente e il fatturato.
Ordinare i valori degli attributi sembra semplice, ma diventa una vera sfida quando devi farlo per milioni di prodotti.
Combinando l'intelligenza LLM con regole chiare e controllo del merchandiser, ho trasformato un problema complesso e nascosto in un sistema pulito e scalabile.
È un promemoria che alcune delle più grandi vittorie derivano dalla risoluzione dei problemi noiosi, quelli facili da perdere ma che appaiono su ogni pagina prodotto.
\n \n \n


