Met vector embeddings je SEO handig automatiseren [+ 2 gratis scripts]
![Met vector embeddings je SEO handig automatiseren [+ 2 gratis scripts]](https://www.frankwatching.com/app/uploads/2024/12/shutterstock_2433486799-1-1200x400.jpg)
In de tijd van generatieve AI vergeten we nog wel eens dat we ook prima terug kunnen vallen op ‘ouderwetse’ technieken om ons werk makkelijker en sneller te maken. Een manier om je werk namelijk te automatiseren, is door gebruik te maken van vector embeddings. Handig voor als je met een websitemigratie bezig bent en in één keer een redirectbestand op wil bouwen. Of simpelweg op zoek bent naar nieuwe interne linkmogelijkheden. In dit artikel laat ik je zien wat vector embeddings zijn, waarom ze zo handig zijn en geef ik twee scripts weg om er zelf mee aan de slag te gaan.
Wat zijn vector embeddings?
Vector embeddings zijn eigenlijk een slimme manier om tekst om te zetten in getallen die een computer kan begrijpen. Stel je voor dat je twee artikelen hebt: één over ‘hoe maak je pizza’ en één over ‘de beste Italiaanse restaurants’. Voor ons mensen is het logisch dat deze artikelen met elkaar te maken hebben – ze gaan allebei over Italiaans eten. Maar een computer ziet in eerste instantie alleen maar letters en woorden, zonder die logische verbanden te snappen.
Vector embeddings lossen dit op door tekst te vertalen naar een reeks getallen (vectors). Deze getallen vertegenwoordigen niet alleen de woorden zelf, maar ook de betekenis en context ervan. Artikelen die over vergelijkbare onderwerpen gaan, krijgen vergelijkbare getallenreeksen. Hierdoor kan een computer heel snel berekenen welke teksten inhoudelijk bij elkaar horen, zelfs als ze niet precies dezelfde woorden gebruiken.
Je kunt het vergelijken met het maken van een plattegrond van al je webpagina’s, waarbij pagina’s die over vergelijkbare onderwerpen gaan, dicht bij elkaar worden geplaatst. Hoe dichter twee pagina’s bij elkaar staan, hoe meer ze inhoudelijk met elkaar te maken hebben.
Vector embeddings maken van je webpages
Om je werkzaamheden te automatiseren, zal je moeten beginnen met het omzetten van je webpagina’s naar vector embeddings. Dit kan eenvoudig via onze favoriete tool (als ik voor de SEO community mag spreken ) Screaming Frog. Sinds mei heeft Screaming Frog een mogelijkheid om externe API’s aan je crawl te koppelen. Zo heb je dus onder andere de mogelijkheid om de API van ChatGPT toe te voegen.
Naast ChatGPT heeft OpenAI ook andere modellen. Eén van deze modellen is het text-embedding-ada-002 model, dat ideaal is om tekst om te zetten naar vector embeddings. Sterker nog, Screaming Frog heeft een standaard template dat we kunnen gebruiken. Om hier gebruik van te maken volg je de volgende stappen:
- Open Screaming Frog
- Ga onder ‘configuration’ naar ‘API acces’ en kies onder ‘AI’ voor ‘OpenAI’
- Vul hier je OpenAI API key in die je hier kunt vinden (enkel voor betaalde versie van ChatGPT)
- Onder het kopje ‘prompt configuration’ kies je vervolgens voor ‘add form libary’ en ga je voor de tweede optie ‘extract embeddings form page content’
Voordat je de crawl kunt maken, dien je ook Javascript-rendering en HTML-storing aan te hebben gezet. Deze zijn te vinden onder de kopjes ‘rendering’ en ‘extraction’ in de spider-instellingen.
Vervolgens zal Screaming Frog je crawl voorzien van de output die je vanuit OpenAI krijgt. Voor webpagina’s zal dit dus een vector embedding zijn van de content op de pagina. Ideaal, want nu kun je werk gaan automatiseren.
Werk automatiseren met vector embeddings
Nu je de webpagina’s van je website als vector embeddings hebt, is het tijd om daadwerkelijk zaken te gaan automatiseren (eindelijk, I know). Deze vector embeddings geven namelijk exact weer wat de verhouding is tussen verschillende pagina’s. Hierdoor kun je deze eenvoudig gebruiken om in te schatten welke pagina’s intern naar elkaar zouden moeten linken, maar ook om tijdens een websitemigratie een redirectbestand op te maken.
Voor beide taken heb ik een Python-script geschreven, dat dit volledig automatisch voor je doet. In beide gevallen heb ik deze omgebouwd zodat je deze in een Google Colab kunt runnen. Ideaal, want zo hoef je Python niet te installeren op je laptop maar kun je dit volledig in de cloud draaien.
Interne linkmogelijkheden ontdekken
Voor het vinden van interne linkmogelijkheden heb je een Excel-bestand nodig met alle URL’s en hun vector embeddings. Het script vergelijkt vervolgens alle URL’s met elkaar. Als twee pagina’s sterk op elkaar lijken (een similarity score van 0.875 of hoger, in de praktijk heb ik gemerkt dat dit de sweetspot is maar per branche wel sterk kan verschillen), stelt het script voor om deze aan elkaar te linken.
Het handige is dat het script ook meteen controleert of er al een link tussen deze pagina’s bestaat. Is dat het geval? Dan wordt deze combinatie niet opgenomen in het Excel-bestand dat je aan het einde ontvangt. Zo voorkom je dubbel werk en krijg je alleen nieuwe linksuggesties te zien.
Redirect mapping
Vector embeddings zijn ook perfect voor het maken van redirects. Doordat je weet welke pagina’s qua inhoud op elkaar lijken, weet je bijna zeker dat je deze pagina’s aan elkaar kunt koppelen in een redirectbestand. Het werkt simpel, je uploadt een Excel-bestand met twee tabbladen – één met de oude URL’s en één met de nieuwe. Het script kijkt eerst of dezelfde URL ook op de nieuwe website bestaat. Is dat zo? Dan is een redirect natuurlijk niet nodig.
Daarna zoekt het script voor elke oude URL de beste match op de nieuwe website, gebaseerd op de similarity score van de vector embeddings. Kan het script geen goede match vinden? Dan laat het die regel leeg, zodat je zelf kunt bepalen wat de beste bestemming is.
Hopelijk brengen deze automatiseringen jou als SEO-specialist veel op.
Dit artikel is gecheckt door het SEO-panel.