Je hebt geen kant-en-klare integratie nodig om een capabele chatbot voor je webshop te trainen. Met alleen website scraping - mits goed geconfigureerd - kan ChatLab gedetailleerde vragen beantwoorden over je producten, verzending, retouren en beleid.
Deze handleiding toont de aanbevolen configuratie: twee afzonderlijke trainingen (informatieve pagina's en je productdatabase) en de twee filterniveaus waarmee je ze allebei schoon houdt.
Integratie versus scraping - wat levert elk op?
- Scraping (geen integratie) - een statische momentopname van je pagina's. Ideaal voor product- beschrijvingen, specificaties, veelgestelde vragen, verzend- en retourvoorwaarden en algemene winkelinformatie. Dit kent geen actuele voorraad of bestelstatus.
- Integratie - raadpleegt je live winkel in realtime: productzoekopdrachten in je actuele catalogus, up-to-date prijzen en beschikbaarheid, en het opzoeken van bestelstatussen.
De beste resultaten bereik je door beide te combineren. Als je geen integratie kunt inschakelen, vormt een goed geconfigureerde scrape een sterke basis.
Als je winkel later wordt gekoppeld aan een ondersteunde e-commerce-integratie (WooCommerce, Shopify, PrestaShop en andere), verschijnt de actuele catalogus afzonderlijk onder Training > E-commerce catalog (E-commercecatalogus), op de tabbladen Products (Producten) en Categories (Categorieën). Die catalogus wordt gesynchroniseerd via de integratie - dit is niet hetzelfde als de gescrapete pagina's die hier worden beschreven, want dat blijft een statische momentopname.
Waar vind je de filterinstellingen?
Ga naar Training > Links, klik op Add New Training: Website (Nieuwe training toevoegen: Website) en vouw vervolgens Advanced settings (Geavanceerde instellingen) uit. Daarin vind je de uitklapbare secties die in deze handleiding worden gebruikt: URL Filtering (URL-filtering: Include only URLs that contain / Exclude URLs that contain), Query Parameters, Content Filtering (Inhoudsfiltering) en Scraping Behavior.
De twee filterniveaus (dit is het kernconcept)
ChatLab biedt twee onafhankelijke controleniveaus in de geavanceerde instellingen van een websitetraining. Ze zijn makkelijk te verwarren, dus houd ze goed uit elkaar:
- URL-filtering - welke pagina's meegaan in de training. Bepaalt welke adressen de
crawler bewaart. Stel dit in via Include only URLs that contain (Alleen URL's opnemen die bevatten) en Exclude URLs that
contain (URL's uitsluiten die bevatten) (URL-subtekenreeksen, gescheiden door puntkomma's, bijv.
/product;/produkt). - Elementfiltering - welke delen van elke bewaarde pagina inhoud worden. Wordt na de
URL-filtering toegepast, uitsluitend op de pagina's die daardoorheen zijn gekomen. Stel dit in via Include element
IDs (Element-ID's opnemen) en Exclude element IDs (Element-ID's uitsluiten) (CSS-selectors:
#idvoor ID's,.classnamevoor classes,[data-hook="description"]voor attributen, gescheiden door puntkomma's, bijv..product-description;#tab-description).
Zie het als een trechter: URL-filtering selecteert de pagina's, waarna elementfiltering elke pagina reduceert tot de waardevolle inhoud.
Bewaar minder, maar waardevollere inhoud
RAG-chatbots werken het best wanneer elk getraind tekstfragment doelgericht is. Op een productpagina is de eigen omschrijving van het product waardevol - de omliggende menu's, footers, "gerelateerde producten" en upsell-blokken zijn ruis die de zoekresultaten verwatert en trainingscredits kost. Train alleen op de productinhoud.
Twee afzonderlijke trainingen opzetten
Door je webshop op te splitsen in twee websitebronnen blijft elke bron overzichtelijk en eenvoudig af te stemmen. Elke training gebruikt zijn eigen URL-filtering (niveau 1) en elementfiltering (niveau 2).
1. Informatieve pagina's
Doel: bewaar de pagina's die je onderneming uitleggen (Over ons, Contact, Verzending, Bezorging, Retourneren, Garantie, Betaling, Privacy, Veelgestelde vragen).
- Niveau 1 - URL-filtering: geef in Exclude URLs that contain je product- en
categoriepatronen op, bijv.
/product;/products;/shop;/category;/collections. Zo blijven productpagina's buiten deze training. - Niveau 2 - elementfiltering: meestal heel beperkt hier. Gebruik eventueel Exclude element
IDs om de globale header/footer over te slaan, bijv.
header;footer;#navigation. - Train bij voorkeur via je sitemap voor een voorspelbare dekking.
2. Productdatabase
Doel: één gerichte training voor productpagina's, die alleen de eigen inhoud van elk product bevat.
- Niveau 1 - URL-filtering: geef in Include only URLs that contain uitsluitend je
productpatronen op, bijv.
/product;/products. Al het overige wordt overgeslagen. - Niveau 2 - elementfiltering: hier behoud je uitsluitend de productinhoud. Gebruik Include element IDs om het productinformatieblok te selecteren en/of Exclude element IDs om paginaranden weg te laten (header, footer, navigatie, gerelateerde producten, upsells, zijbalken). Zie de selectors per platform hieronder.
Element-ID's per platform (niveau 2 - startpunten)
Dit zijn voorbeelden van waarden voor de velden Include element IDs en Exclude element IDs (niveau 2). Het zijn CSS-selectors, gescheiden door een puntkomma. Selectors variëren per thema - controleer dit in je eigen winkel en pas ze zo nodig aan. Het principe is altijd gelijk: neem het productinformatieblok op en sluit globale randelementen en cross-sell-blokken uit.
WooCommerce
- Include element IDs:
.summary.entry-summary;.woocommerce-product-details__short-description;#tab-description - Exclude element IDs:
header;footer;.related.products;.up-sells;.cross-sells;#secondary
Shopify
- Include element IDs:
.product__info;.product-single__description;.rte - Exclude element IDs:
header;footer;.announcement-bar;.product-recommendations
PrestaShop
- Include element IDs:
.product-information;.product-description;#description - Exclude element IDs:
#header;#footer;#_desktop_top_menu;.block-categories;.featured-products;#search_filters
Magento / Adobe Commerce
- Include element IDs:
.product-info-main;.product.attribute.description;#description - Exclude element IDs:
.page-header;.page-footer;.nav-sections;.block.related;.block.upsell;.sidebar
Shoper
- Include element IDs:
.productfull;.productfull__description;#product-description - Exclude element IDs:
.header;.footer;.navbar;.mainmenu;.product-suggested;.basket
CS-Cart
- Include element IDs:
.ty-product-block;.ty-product-feature;.ty-wysiwyg-content - Exclude element IDs:
.ty-header;.ty-footer;.ty-menu;.ty-product-block__advanced-list;.ty-mainbox-title
IdoSell / IAI
- Include element IDs:
#projector_longDescription;.product_description;#detail_atributes - Exclude element IDs:
#header;#footer;#menu;.suggestedProducts;.breadcrumb
OpenCart
- Include element IDs:
#tab-description;#product .description;.product-description - Exclude element IDs:
#header;#footer;#menu;#column-left;#column-right;.related
BigCommerce
- Include element IDs:
.productView-description;.productView-details;#tab-description - Exclude element IDs:
.header;.footer;.navPages;.productCarousel;.sidebar
Shopware
- Include element IDs:
.product-detail-name;.product-detail-description;.product-detail-description-text - Exclude element IDs:
.header-main;.footer-main;.nav-main;.product-detail-cross-selling;.cms-element-product-slider
Wix Stores
- Include element IDs:
[data-hook="description"];[data-hook="product-description"];[data-hook="info-section"] - Exclude element IDs:
header;footer;[data-hook="header"];[data-hook="related-products"]
Andere platforms (osCommerce, Abicart, Selly, RedCart, AtomStore en meer)
Hetzelfde principe is van toepassing: open een productpagina, zoek het container-element waarin de productnaam, beschrijving en kenmerken staan, vul dat in bij Include element IDs en plaats de globale header, footer, navigatiemenu's, zijbalken en blokken met "bekijk ook eens" in Exclude element IDs.
Tips
- Kies in de instellingen van de bot een AI-model dat geschikt is voor redeneren binnen e-commerce.
- Train periodiek opnieuw zodat beschrijvingen actueel blijven (scraping is immers een momentopname).
- Houd informatieve en producttrainingen gescheiden, zodat je de URL- en elementfilters van beide kunt bijschaven zonder de ander te beïnvloeden.