Een RAG (Retrieval Augmented Generation) vraag maken
Last updated: March 26, 2026
HackerRank Projects for RAG stelt je in staat om realistische, projectgebaseerde vragen te maken om de vaardigheden van kandidaten te beoordelen in het implementeren van Retrieval-Augmented Generation (RAG) systemen. Deze functie helpt je kandidaten te identificeren met sterke vaardigheden in het ophalen van relevante informatie, het integreren ervan met generatieve AI-modellen en het optimaliseren van de nauwkeurigheid van de antwoorden.
Met deze mogelijkheid kun je vooraf gedefinieerde RAG-beoordelingen gebruiken die belangrijke vaardigheden evalueren zoals:
Gegevens ophalen en indexeren (bijvoorbeeld met vector databases)
Fijn afstemmen
Evaluatie van gegenereerde outputs
Daarnaast kun je aangepaste RAG-gebaseerde vragen maken, waarmee je ze kunt afstemmen op het beoordelen van kandidaten op specifieke technieken voor ophalen, aanvulling en antwoordgeneratie die relevant zijn voor jouw gebruikssituatie.
Stappen om een RAG-vraag te maken
Klik op het Library-tabblad op de startpagina en klik op de knop Vraag maken.
In het dialoogvenster Vraagtype selecteren, onder Projecten, selecteer Generative AI, zoals hieronder weergegeven.

Stap 1: Omgeving
In het tabblad Omgeving kun je RAG selecteren. Je kunt over het info-icoon zweven voor meer informatie.
Klik op de knop Volgende om door te gaan naar de volgende stappen.
Stap 2: Projectinstelling
Er zijn drie stappen bij het instellen van een project:
Project selecteren
Zodra de IDE is geladen, kunt u uw vraagproject instellen met een van de volgende opties:
Een Zip uploaden: Deze optie stelt u in staat om een vraag te maken door het projectbestand in ZIP-formaat te uploaden. De bestandsgrootte kan tot 5MB zijn.
Clone from Github: Deze optie laat u een project klonen vanuit uw privé- of openbare Git-repository. Nadat u de Git-optie hebt geselecteerd, moet u een link naar uw repositorybron opgeven. Als de repository privé is, heeft de IDE toestemming nodig om ermee te verbinden met behulp van een eenmalige token. We slaan uw GitHub-inloggegevens op geen enkel moment op in ons systeem.
Gebruik voorbeeldproject: Wanneer u deze optie kiest, wordt een standaard voorbeeldprojectvraag toegevoegd aan de IDE. U kunt dit voorbeeldproject gebruiken om uw vraag te bouwen.
Opmerking: Gebruik geen voorbeeldprojecten in een test. Deze projecten zijn alleen bedoeld als voorbeeldprojecten, niet om de vaardigheden van kandidaten te beoordelen.
IDE- en gegevensbroninstelling
Bij het instellen van een Retrieval-Augmented Generation (RAG) vraag moet u een gegevensbron definiëren waaruit het model informatie kan ophalen. U kunt kiezen tussen:
Bestandsgebaseerde opslag
Database (DB) opslag

Bestanden uploaden als gegevensbron
Het platform stelt u in staat om gegevensbestanden te uploaden en beheren via de gebruikersinterface. Deze bestanden zijn toegankelijk in de IDE voor verdere bewerking en verwerking.
Optie 1: Verwijs naar een bestaand bestandspad in je project. Het systeem toont de token telling en grootte limiet.
Optie 2: Upload een nieuw gegevensbestand apart via de UI. Het bestand wordt opgeslagen in S3 of de IDE (zoals bepaald door ontwikkeling).
Bestandsgrootte Limieten:
Maximale bestandsgrootte: 500MB (of op basis van tokenlimieten).
Niet-tekstbestanden: Alleen de grootte limiet wordt afgedwongen.
Geüploade bestanden worden opgeslagen in een toegewijde "data" map en toegevoegd aan .gitignore om onnodige versiecontrole te voorkomen.
Tokenberekening en Waarschuwingen:
Zodra een bestand is geüpload, wordt de token telling en de bijbehorende beperkingen weergegeven.
Als de tokenlimiet wordt overschreden, kan ratelimiting van toepassing zijn vanwege grotere embeddings.
Een database gebruiken als gegevensbron
Je kunt gestructureerde gegevens uploaden als .db of .sql bestanden voor op database gebaseerde opslag. Hiermee kun je je gegevens efficiënt beheren en opvragen binnen het project.
Upload een .db of .sql bestand direct.
Dezelfde beperkingen als bij bestand uploads gelden (grootte en tokenlimieten).
Grote database-embeddings kunnen ratelimits activeren.
Beperkingen en voorwaarden voor gegevensbronnen
Verzoeklimiet: 30 verzoeken per minuut
Tokenlimieten:
Standaardlimiet: 3.000 tokens per minuut
Embedding model: 30.000 tokens per minuut
Gelijktijdige verzoeken: Tot 5 gelijktijdige verzoeken
Het opzetten van een efficiënte gegevensbron zorgt ervoor dat je RAG-model optimaal functioneert en binnen deze limieten blijft.
IDE-instelling
Bij het bouwen van een project kan een gebruiker configureren welke opdracht wordt uitgevoerd wanneer op bepaalde menu-items in de IDE wordt geklikt. Installatie is zo'n opdracht.
Hier kun je de IDE configureren om specifieke opdrachten uit te voeren die moeten worden getriggerd voor het project wanneer op de knop wordt geklikt. Deze opdracht wordt bewaard voor de kandidaten, dat wil zeggen, de kandidaten zien dezelfde opdrachtuitvoering wanneer ze de vraag gebruiken.
Hetzelfde geldt voor Run en Test.
Standaard Open Bestanden
Je kunt instellen welke bestanden in het project standaard worden geopend voor de kandidaten wanneer ze aan het project werken.
Je kunt meerdere bestanden specificeren, en alle genoemde bestanden worden geopend in de IDE.
Alleen-lezen Bestanden
Vraagmakers kunnen alleen-lezen bestanden instellen in het project die de kandidaten niet mogen bewerken. Dit kunnen testgevalbestanden of readme-bestanden zijn. Geef het pad naar deze bestanden hier op.
Score-instellingen
U krijgt de optie om te kiezen tussen automatische scorebepaling of niet. Selecteer Ja of Nee op basis van uw voorkeur.
Als u automatische scorebepaling inschakelt, scoret HackerRank de oplossing van een kandidaat op basis van de pass- en fail-status van de eenheidstestresultaten die in het XML-bestand worden gegenereerd. Het scorecommando moet het XML-bestand genereren met testgevallen in Junit-, XUnit- of TAP-formaat. Geef unieke namen als u meerdere XML-bestanden hebt die gebruikt moeten worden. De XML-bestanden worden geparseerd om een lijst met testgevallen te genereren en een score voor de kandidaat te produceren. Alle testgevallen krijgen standaard gelijke weging.
Definieer Scorecommando: Het scorecommando moet het XML-bestand genereren met testgevalresultaten.
Uitvoermap voor score-instellingen: Geef de lijst met paden naar XML-bestanden die worden gegenereerd wanneer het 'Scorecommando' wordt uitgevoerd. HackerRank voert het scorecommando uit om een score te genereren, zoekt naar deze score-uitvoerbestanden en parseert deze bestanden. Als er geen bestanden worden vermeld, wordt de score-uitvoer van het scorecommando gebruikt voor de score; voor meerdere XML-bestanden, geef unieke namen.
Verborgen bestanden: In deze instelling kunt u een lijst met testgevalbestanden opgeven die verborgen zijn voor de kandidaat terwijl ze de vraag oplossen. Deze verborgen testgevallen genereren echter nog steeds de score van de kandidaat zodra ze hun oplossing indienen.
Validatie
Als de validatie mislukt, gebruik dan de informatie die de validatieresultaten bieden om het project te corrigeren.
Stel dat de validatie faalt bij een stap die wordt uitgevoerd nadat een server is gemaakt (bijvoorbeeld validaties van scorecommando). In dat geval krijgt u een extra link genaamd 'open debug console'. U kunt de server openen en het scorecommando debuggen in de live omgeving. De debugconsole is 30 minuten beschikbaar, en wijzigingen die hier worden aangebracht, worden niet opgeslagen in het oorspronkelijke project.
Als u een Full Stack-vraag bewerkt over het wijzigen van bestaande bestanden, kunt u 'terugzetten naar de laatst gevalideerde versie', wat de bestandsstructuur terugzet naar de laatste geldige staat. Evenzo kunt u 'De laatst opgeslagen mapstructuur downloaden.'
Netwerkindicator
Je kunt de Netwerkindicator binnen de IDE controleren om ervoor te zorgen dat je geen problemen ondervindt bij het maken van een projectvraag.
Geblokkeerde Domeinen Indicator
Als je project domeinen op de zwarte lijst heeft staan, zal de IDE je hierover informeren.
Je kunt klikken op Geblokkeerde Domeinen Bekijken om de domein-URL's te controleren.
Stap 3: Vraaggegevens
Op het tabblad Vraaggegevens geef je het volgende op:
Vraagnaam: Naam je vraag en zorg dat de vraagnaam geen hint geeft over de oplossing van het probleem.
Score: Hoewel je elke score kunt toewijzen die je wilt voor de vragen die je maakt, gebruiken we bepaalde normen om scores toe te wijzen aan de nuttige vragen.
Tags (Optioneel): Tags zijn woorden of zinnen die helpen bij de doorzoekbaarheid en organisatie van je vragen. Je kunt de bestaande tags toevoegen of nieuwe tags maken. Stel het moeilijkheidsniveau voor je vraag in door de tags te associëren als Gemakkelijk, Medium of Moeilijk. Alternatief kun je aangepaste tags koppelen om je vraag te identificeren op complexiteit of niveau. Selecteer de tags uit de dropdownlijst of voeg je aangepaste tag toe.
Wanneer je je vragen bekijkt in de Bibliotheek, worden de bijbehorende tags voor elke vraag aangegeven. Je kunt deze tags gebruiken om kandidaatrapporten en prestatiegrafieken te genereren. Raadpleeg Tags toewijzen aan vraag voor meer informatie.
Probleembeschrijving: Bij het beschrijven van de probleemstelling, zorg dat de vraag duidelijk en gedetailleerd is. Je kunt ook tabellen, grafieken of bijlagen gebruiken om de duidelijkheid te vergroten.
Software-instructies: Dit optionele veld bevat informatie over pakketten en softwareversies die nodig zijn om de vraag op te lossen. Wanneer het leeg wordt gelaten, worden standaard platforminstructies gebruikt.
Interviewergidsen: Interviewergidsen zijn voor latere referentie. Je kunt een rubric opnemen over het scoren van de vragen of oplossingen schrijven voor de problemen in deze sectie. Je team kan deze gebruiken bij het evalueren van de test. Ze zijn alleen zichtbaar voor jouw team en jou; kandidaten kunnen deze notities niet bekijken. Deze stap is optioneel.
Het toevoegen van een relevant referentiebestand in deze secties kan je probleembeschrijving en interviewergidsen ondersteunen. Voor meer informatie, raadpleeg Een bestand toevoegen aan een probleem.
Je kunt de kandidaatpreview bekijken nadat je de vraag hebt gemaakt om te begrijpen hoe de vraag wordt gepresenteerd in een test.
Opmerking: De vragen die je maakt, worden opgeslagen in de HackerRank-bibliotheek onder de sectie "Mijn bedrijfsvragen".