Slot Fillers - Cognigy Documentation
Slot Fillers
Slot Fillers let you monitor every user input for specific Slot matches and store them in the Context object. This way, if an answer is already provided, the AI Agent skips the corresponding question in the Question Node. For example, if a user says
I'm flying from San Francisco on United and the AI Agent asks
What city are you departing from? — this question would be redundant and create a poor user experience. Instead, Slot Fillers ensure that only missing information is requested.
Key Benefits
- Collecting and Remembering Information. With Slot Fillers, all required data is gathered and retained throughout the conversation, reducing errors and making conversations with the AI Agent smoother and more natural.
- Handling Different Input Types. Slot Fillers accept various formats, for example, dates and numbers, making it flexible for user inputs.
To learn more about the benefits of using Slot Fillers and how they work, watch this video:
Cognigy.AI Developer Training #4: Using Slot Fillers to make conversations flow naturally
Restrictions
- Slot Fillers fail when multiple values share the same Slot type, making it impossible to distinguish between them. For example,
I'm flying from SFO to ORD on United. The AI Agent can’t distinguish between departure airport and arrival airport because both matchairport_code. To avoid this restriction, you can:- Create separate Slot Fillers for each value:
Departure Airport— use a Context Key, for example,departure_city.Arrival Airport— use a Context Key, for example,arrival_city.
- Modify the Flow to ask distinct questions for each Slot instead of extracting both from a single user input.
- Create separate Slot Fillers for each value:
Working with Slot Fillers
- GUI
- API
You can create, edit, and delete Slot Fillers in NLU > Slot Fillers in the Flow editor.
You can create, edit, and delete Slot Fillers by using Cognigy.AI API. To capture and store Slot matches, ensure you specify the Slot Filler in your Question Node by selecting the Slot question type, then activate the Skip if answer exists in Context option in the Node.
Slot Filler Settings
Required Fields
| Field | Description | Example |
|---|---|---|
| Name | The display name of the Slot Filler, used for identification. | Departure Airport Slot |
| Type | Defines the type of input expected. You can select from the following Slot types: - Slot – a Lexicon Slot. Make sure a Lexicon is attached and that this Slot is included in it. - Regular Expression – a Regex Slot. - Intent – extracts values based on recognized Intents. Useful when Slot filling is tied to Intent classification. - System Slot – predefined Slot types that automatically extract common entity types such as dates, numbers, temperatures, and more. |
- |
| Slot Name | This parameter appears if the Slot type is selected. Specifies which Slot this Filler is associated with. | airport_code, date, name |
| Regular Expression | This parameter appears if the Regular Expression type is selected. Enter the regular expression to extract specific patterns from user input. Regex expressions must start and end with /. Flags like g for global matching aren’t supported. Example: /^\d{3}-\d{3}-\d{4}$/. |
|
| Context Key | The variable name used to store the extracted value in the Context object. | departure_city, arrival_date |
Optional Fields
| Field | Description | Example |
|---|---|---|
| Additional Validation | Allows extra validation rules to ensure correct formatting or values. | Ensure date format is YYYY-MM-DD. |
| Result Location | Determines where to extract the Slot value from. By default, the Slot value is extracted from the user input. You can set a CognigyScript expression in this parameter to override the detected Slot value with a value from the Input, Context, or Profile objects. | {{input.bookingReference}} |
| Store result in Context | Stores the extracted value in the Context object. | "departure_city": "SFO". |
| Store result in Contact Profile | Stores the extracted value in the Contact Profile for future interactions. | Store “preferred_airline” for returning users. |
| Store Detailed Results | Stores metadata about the extracted Slot, for example, confidence scores. | Confidence score of 0.92 for ` |