Slot Resolvers
Resolving natural language into business objects
What are slot resolvers?
Slot resolvers convert natural language into data types. The way that users will reference your business objects will seldom match how they're stored in business systems.
For example...
- "Tomorrow's Standup" is a
GoogleCalendarEvent
with ID =4s567d8s908f87654sa678ds
- "Jamie" is a
User
with ID =9e107d9d-372b-4ac9-b4e9-0fbccd3029ab
We purpose-built Slot Resolvers to solve this problem. Plugins built using slot resolvers will perform substantially better when deployed to production.
How do they work?
Retrieval
Slot resolvers are set up using data types. Developers specify a data type & the AI Agent will call APIs or other plugins to find records that match the data type.
Disambiguation
When the Copilot finds multiple possible matches for a business object, it presents them (with citations) so the user can pick the right one.
State Management
The underlying business object is stored in our Agentic AI memory tracker – that way you can be confident that LLMs will not corrupt or mix up any IDs from previous turns in the conversation.
Setup & Usage
Slot Resolvers get set up as part of the Slot Definition. For example, you would declare a List[User]
data type as a slot (e.g. users_to_modify
), and then reference it in a compound action like this
steps:
- action:
action_name: add_users_to_group
input_args:
user_emails: 'data.users_to_modify.$MAP(x => x.email_addr)'
Updated 11 days ago