Procedures
Overzicht
Een procedure bevat instructies voor één specifieke taak. Elke procedure heeft een trigger die beschrijft wanneer deze van toepassing is en inhoud die beschrijft wat er moet gebeuren. Wanneer een gesprek overeenkomt met de trigger, laadt de agent de procedure.
Gebruik procedures wanneer je agent veel verschillende taken moet afhandelen. Een voorbeeld is een klantenserviceagent, waarbij elke procedure één type verzoek behandelt: terugbetalingen, identiteitsverificatie, accountherstel of het oplossen van verbindingsproblemen.

Proceduretypen
Er zijn twee soorten procedures:
- Vrije-vormprocedures worden geschreven als instructies in natuurlijke taal die de agent interpreteert en aanpast aan de situatie.
- Gestructureerde procedures zijn een geordende lijst met getypeerde stappen die de agent telkens op dezelfde manier uitvoert.
Je kunt beide soorten voor dezelfde agent gebruiken. De agent kiest op basis van de trigger de relevante procedure, ongeacht het type.
Procedures kunnen elkaar aanroepen. Een vrije-vormprocedure roept een andere procedure aan met een inline- verwijzing, en een gestructureerde procedure roept een andere gestructureerde procedure aan met een Subprocedure- stap. Een veelvoorkomend patroon is om open afhandeling in een vrije-vormprocedure te houden en de onderdelen die telkens op dezelfde manier moeten worden uitgevoerd over te dragen aan een gestructureerde procedure.
Een agent kan procedures, een workflow of beide hebben. Wanneer beide aanwezig zijn, is elke procedure beschikbaar vanuit elk punt in de workflow; je kunt een procedure niet beperken tot specifieke workflownodes. De meeste agents zijn gebaseerd op één van beide benaderingen, maar je kunt ze combineren.
Wanneer je procedures gebruikt
Elke agent heeft een systeemprompt. Procedures en workflows zijn twee manieren om daar structuur aan toe te voegen, en een agent kan beide gebruiken. Kies een uitgangspunt op basis van hoeveel het gesprek kan variëren.
Vrije-vormprocedures zijn de standaardkeuze. Ze zijn het snelst te schrijven, lezen als een document zodat niet-technische teams ze kunnen beheren, en de agent kan herstellen wanneer een gesprek afwijkt van het script. Kies een gestructureerde procedure wanneer de gevolgen van een overgeslagen of anders geordende stap groot zijn, zoals bij authenticatie, escalatie of een financiële transactie. Kies een workflow wanneer je routeringslogica of controle over het model per stap nodig hebt die geen van beide proceduretypen biedt.
Procedures beheren
Het dashboard is de aanbevolen manier om procedures te schrijven. Gebruik de CLI of de API om procedures programmatisch te beheren of ze te integreren in deploymenttools.
Bouwen via het dashboard
Beheren via de CLI
Beheren via de API
Open je agent in het dashboard en selecteer vervolgens Procedures. Gebruik + om een vrije-vormprocedure of gestructureerde procedure te maken. Je kunt procedures vanuit hetzelfde menu in mappen groeperen. Zie Vrije-vormprocedures en Gestructureerde procedures voor richtlijnen voor het schrijven.
Procedures per gesprek kiezen
Standaard kan elk gesprek alle procedures van de agent gebruiken, en laadt de agent een procedure pas nadat het gesprek overeenkomt met de trigger ervan. Je applicatie weet vaak al meer voordat het gesprek begint: wie de gebruiker is, in welke regio die zich bevindt of waarover die heeft gebeld. Geef procedure-ID’s door in de clientdata voor gespreksinitiatie om die kennis te gebruiken. Jij bepaalt welke procedures de agent kan gebruiken en welke procedures deze vanaf de eerste beurt volgt.
Een procedure in start_procedure_ids is al geladen wanneer de gebruiker voor het eerst spreekt, zodat de agent de LLM-aanroep die deze zou laden overslaat. Elke actieve procedure blijft bij elke beurt in de prompt, ongeacht of de agent of je applicatie deze is gestart. Een gestarte procedure die het gesprek nooit nodig heeft, voegt nog steeds de inhoud toe aan elke beurt, dus start alleen procedures die het gesprek waarschijnlijk zal gebruiken.
Procedureselectie toestaan
De override Procedures staat standaard uit. Schakel deze in voor elke agent die procedure-ID’s van de client moet accepteren.
Dashboard
CLI
SDK
Open je agent in het dashboard, selecteer het tabblad Beveiliging en schakel de override Procedures in.
Geef de ID’s door wanneer het gesprek start
Als voor de agent de override Procedures niet is ingeschakeld, of een ID ongeldig is, kan het gesprek niet worden gestart.
Haal procedure-ID’s op via Procedures weergeven. Voeg procedure_ids, start_procedure_ids of beide toe aan de clientdata voor gespreksinitiatie:
De agent start het gesprek terwijl de eerste procedure al actief is. De andere twee kan de agent nog steeds starten wanneer het gesprek overeenkomt met hun triggers.
De Python- en JavaScript-SDK’s voor gesprekken versturen geen procedure_ids of start_procedure_ids.
Stuur het initiatiebericht zelf via de
WebSocket om deze velden te gebruiken.
Voor beide velden gelden deze regels:
- Elke ID in
procedure_idsmoet bij de agent horen. Als een geselecteerde procedure subprocedures aanroept, neem dan ook de subprocedures op. - Elke ID in
start_procedure_idsmoet een vrije-vormprocedure zijn. Wanneer je ookprocedure_idsdoorgeeft, moet elke ID ook in die lijst staan. procedure_idsis alleen van toepassing op de agent waarmee het gesprek start. Het is niet van toepassing na een agentoverdracht.- Gestarte procedures tellen mee voor de vijf actieve procedures in Beperkingen. De gespreksgeschiedenis registreert elke procedure als een toolaanroep van
start_procedure.
Beperkingen
- De inhoud van een procedure is beperkt tot 50.000 tekens.
- De agent houdt de vijf meest recent gestarte procedures in context. Wanneer er meer zijn gestart in één gesprek, verdwijnen de inhoud, inline tools en kennisbankdocumenten van de oudste vrije-vormprocedures uit de prompt. Houd procedures gericht en gebruik subprocedures zodat er maar weinig tegelijk actief zijn.
- Je kunt het type van een procedure niet wijzigen nadat je deze hebt gemaakt. Maak een nieuwe procedure en werk eventuele verwijzingen ernaar bij om tussen vrije vorm en gestructureerd te converteren.
- Procedures horen bij één agent. Je kunt ze niet delen tussen agents of opslaan als resources op workspaceniveau.
- Wanneer je een agent dupliceert, worden de procedures gekopieerd in plaats van gedeeld. De kopieën krijgen nieuwe procedure-ID’s, dus verwijzingen in de gedupliceerde agent moeten die nieuwe ID’s gebruiken.
- Je kunt procedures niet beperken tot specifieke workflownodes. Wanneer een agent beide heeft, is elke procedure beschikbaar vanuit elke node.
- Gestructureerde procedures kunnen niet verwijzen naar kennisbankdocumenten.