Use a knowledge agent in a chatbot
Add a knowledge agent to your chatbot using the Agent connector element in the chatbot editor.
The agent handles end user questions by retrieving answers from connected knowledge sources.
Before you begin
Before you add a knowledge agent to a chatbot, make sure of the following:
- Create a knowledge agent and connect knowledge sources.
- Have a chatbot ready in the chatbot editor.
How it works
The knowledge agent works in a chatbot as follows:
- The chatbot captures the end user's message in an attribute.
- The Agent connector element passes the message to the knowledge agent.
- The knowledge agent generates a response based on the message, agent configuration, and connected knowledge sources.
- The chatbot receives the response and sends it to the end user.
Save the end user's message
Before the Agent connector element can process a question, the chatbot needs to capture the end user's message in an attribute. Use one of the following options:
- Use the predefined attribute
lastReceivedTextMessage, which captures the last message sent by the end user. - Use the Save user response element to save the message in a standard attribute.
Add the Agent connector element
Add the Agent connector element to a dialog in your chatbot. You can select only one knowledge agent per element, but you can add multiple Agent connector elements across dialogs.
The Agent connector has three tabs: Request, Response, and Fallback.
Request tab [#request-tab-add-the-agent-connector-element]
In the Request tab, complete the following fields:
| Field | Description |
|---|---|
| AI agent | Select the knowledge agent from the list. |
| Version | Select the agent version to use. |
| User message | Define a value or select an attribute that contains the end user's message. The chatbot passes this value to the knowledge agent. |
| Agent context (optional) | Select an attribute to pass as additional context to the agent. To create an attribute, select Create new attribute. |
Create an attribute [#create-an-attribute-request-tab]
To create an attribute for the agent context:
- In Agent context, select Create new attribute.
- Enter a Name for the attribute. The system sets the Type to JSON.
- (Optional) Enter a Default value.
- Select the Scope:
- Chatbot: The attribute value persists across all dialogs in the chatbot.
- Dialog: The attribute value resets when the conversation moves to a different dialog.
- (Optional) Select Available to agents to make the attribute visible to live agents in Inbox.
- (Optional) Select Sensitive data to hide the attribute value in Chatbots and Inbox.
- Select Save.
Response tab [#response-tab-add-the-agent-connector-element]
In the Response tab, complete the following fields:
| Field | Description |
|---|---|
| Response code (optional) | Select an attribute to save the HTTP response code. |
| Response body attributes | Extract values from the response body. Select Show response code JSON schema to view the response structure. Then, select Add attribute to map a JSON path to an attribute. Use $.content to extract the response from the agent. |
| Timeout | Set the maximum time to wait for a response before the fallback triggers. The minimum value is 1 second and the maximum value is 60 seconds. |
Fallback tab [#fallback-tab-add-the-agent-connector-element]
In the Fallback tab, complete the following fields:
| Field | Description |
|---|---|
| Fallback action | Select the action to take when the fallback triggers. Go to dialog routes the end user to a different dialog. Connect to agent transfers the conversation to a live agent in Inbox. |
| Dialog | Select the dialog to route to. |
| Fallback message (optional) | Enter a message to send to the end user when the fallback triggers. |
| Link preview | Enable to show a preview for links in the fallback message. |
| Use also for API failures | Enable to apply the fallback for API failures in addition to timeout failures. |
Send the response to the end user
Use a Text element and add the attribute where you saved the knowledge agent response. This is the attribute that you mapped to $.content in the Response tab.
If the knowledge agent does not respond within the timeout, the chatbot follows the action that you set in the Fallback tab instead.
Create a conversational experience
To create a more advanced conversational flow, route the conversation back to the knowledge agent after each response:
- After the knowledge agent responds, send the response in a Text element.
- In a follow-up dialog, capture the next end user input.
- Use the GenAI Intent Detection element to determine where to route the conversation.
- Route the conversation back to the dialog with the Agent connector element for a continuous, conversational experience.
Was this page helpful?