Data Strategie

Recruit Holdings: tekst-naar-SQL-agent leert verborgen context lezen

dbt Blog
Recruit Holdings: tekst-naar-SQL-agent leert verborgen context lezen

Samenvatting

Recruit Holdings leert een text-to-SQL-agent verborgen webcontext lezen, zodat eventnamen in analyticsvragen beter te duiden zijn.

Text-to-SQL-agent en webcontext

Recruit Holdings ontwikkelde voor Car Sensor, een Japanse autosite, de Slack-agent Goro. Productmanagers en analisten stellen vragen in natuurlijke taal; de agent levert SQL, resultaten en inzichten. Goro beschikte al over tabeldefinities, voorbeeldqueries, dbt-modellen en een semantic layer.

Toch ging het mis bij vragen over specifieke onderdelen van de gebruikersinterface. In de eventlogs stonden vergelijkbare gebeurtenissen, zoals een tik op reserveren, het tonen van een icoon en het voltooien van een reservering. De beschikbare datastructuur gaf onvoldoende context om die gebeurtenissen betrouwbaar uit elkaar te houden.

Recruit Holdings maakt UI-context controleerbaar

Het team koos niet voor een algemeen systeemontwerp, maar voor een issue-driven aanpak. Bij elke fout leggen ze vast welke ontbrekende context het antwoord had kunnen verbeteren. Die informatie komt in een YAML-bestand met gebruikersacties, UI-elementen en de logregels die daaruit voortkomen.

Dat bestand vormt een aanvulling op het dbt-schema waar de agent al mee werkt. De aanpak maakt impliciete kennis bespreekbaar en controleerbaar. Dat is vooral relevant bij productanalytics, waar een eventnaam pas betekenis krijgt in combinatie met de plek en actie in de interface.

De context verouderde echter snel. Het automotive-team voert tientallen A/B-tests per maand uit, terwijl twee productteams dezelfde eventnaam verschillend kunnen interpreteren. Daarom moet het YAML-logontwerp voortaan vóór de release van een functie worden geschreven en beoordeeld. Front-end logging wordt uit dat bestand gegenereerd en QA-testgevallen sluiten erop aan.

Concrete takeaway voor text-to-SQL

Wie een text-to-SQL-agent bouwt, moet niet alleen tabellen en metrics documenteren. Leg ook de koppeling vast tussen UI-actie, interface-element en eventlog. Gebruik één gecontroleerd ontwerpbestand als bron voor logging en tests, en laat elke wijziging vóór release beoordelen.

Lees het volledige artikel
Meer over Data Strategie →