Browse Guides

BACK TO TOP
Conversational Agents
Reading mode
Copy Link
Link Copied!
Print
Feedback
This guide is part of a collection:
<head><style> .chartjs-size-monitor { display: none !important; height: 0 !important; overflow: hidden !important; }p { margin: 0; }span.fr-emoticon.fr-emoticon-img { background-repeat: no-repeat !important; font-size: inherit; height: 1em; width: 1em; min-height: 20px; min-width: 20px; display: inline-block; margin: -0.1em 0.1em 0.1em; line-height: 1; vertical-align: middle; } span.fr-emoticon { font-weight: normal; font-family: "Apple Color Emoji", "Segoe UI Emoji", "NotoColorEmoji", "Segoe UI Symbol", "Android Emoji", "EmojiSymbols"; display: inline; line-height: 0; } blockquote { border-left: solid 2px #5e35b1; color: #5e35b1; margin-left:0; padding-left:5px;}blockquote blockquote{ border-color: #00bcd4; color: #00bcd4;}blockquote blockquote blockquote{ border-color: #43a047; color: #43a047;} table.grid{ border-collapse: collapse;} table.grid td, table.grid th { border: 1px solid #ddd;} .fr-fic.fr-dib{ display: block; margin: 5px auto;}.fr-fic.fr-dib.fr-fir{ text-align: right; margin: 5px 0 5px auto;}.fr-fic.fr-dib.fr-fil{ text-align: left; margin: 5px auto 5px 0;}.fr-fic.fr-dii{ float: none; margin: 5px auto;}.fr-fic.fr-dii.fr-fil{ float: left; margin: 5px auto;}.fr-fic.fr-dii.fr-fir{ float: right; margin: 5px auto;}img.fr-dib.fr-fir { margin-right: 0; text-align: right;}img.fr-dib.fr-fil { margin-left: 0; text-align: left;}img.fr-dib { margin: 5px auto; display: block; float: none;}img.fr-bordered { box-sizing: content-box; border: solid 5px #CCC;}img.fr-shadow { box-shadow: 10px 10px 5px 0px #cccccc;}img.fr-rounded { border-radius: 10px; -moz-border-radius: 10px; -webkit-border-radius: 10px; -moz-background-clip: padding; -webkit-background-clip: padding-box; background-clip: padding-box;}</style></head><body><p></p><p><strong>In this guide we will cover:&nbsp;</strong></p><p data-pasted="true"><strong>- What are Conversation Agents in Halo?</strong></p><p><strong>- Using Conversation Agents</strong></p><p><strong>- Creating Conversational Agents</strong></p><p><strong>- Plugging a Conversation Agent into a Chat Profile</strong></p><p><strong>- External MCP Connection</strong></p><p><br></p><p><br></p><p><strong>Related Guides:</strong></p><ul><li><strong><a data-fr-linked="true" href="https://usehalo.com/haloitsm/guides/2335" id="isPasted" target="_blank" rel="noopener noreferrer">Chat Bot and Chat Profiles</a></strong></li></ul><p><br></p><p><strong><span style="font-size: 14pt;">What are Conversation Agents in Halo?</span></strong></p><p data-pasted="true">Conversational Agents are a type of AI Agent. They leverage AI to converse with a user or agent, returning information and carrying out actions based on the user&#39;s/agent&#39;s input. Conversation Agents are primarily used in conjunction with the <a href="https://usehalo.com/haloitsm/guides/2335/" target="_blank" rel="noopener noreferrer">Chat Bot</a>, they can be plugged into a chat profile to process/direct the chat, making chat profiles much easier/quicker to set up as AI is used to dynamically determine what information the user would like based on their input, rather than having to create pre-configured steps.</p><p><br></p><p>Any tickets, actions, and knowledge base articles created by a Conversational Agent will be &quot;flagged&quot; as AI in the database under the columns: faicreated, aacreated, and kbaicreated of the respective tables. The ID of the Conversational Agent that was used to create the entity can also be identified using the following columns: fvirtualagentid, avirtualagentid, and kbvirtualagentid. This will correlate to the ID in the VirtualAgent table.</p><p><br></p><p><strong><span style="font-size: 12pt;">Types of Conversational Agents</span></strong></p><p data-pasted="true">Two subtypes of conversation agents are available, split based on the intended audience, Operations Agents and Virtual Agents:</p><ul><li>Operations Agents - Used by agents.&nbsp;</li><li>Virtual Agents - Used by users.&nbsp;</li></ul><p><br></p><p>The primary difference between these two subtypes are the system functions they each have available. Virtual Agents will have a more limited list of functions available as users will not need to complete the same range of tasks as agents. For example, Operations Agents have the system function to log quick time whereas Virtual Agents do not, as users do not need to log time.&nbsp;</p><p><br></p><p>For information on the specific functions available for each type of Conversational Agent, see our guide <a href="https://www.usehalo.com/guides/3015" target="_blank" rel="noopener noreferrer">here</a>.&nbsp;</p><p><br></p><p><strong><span style="font-size: 14pt;">Using Conversation Agents</span></strong></p><p><strong><span style="font-size: 12pt;">Out-of-the-box Agents&nbsp;</span></strong></p><p>As the Conversation Agent functionality uses AI you will need to have the AI module enabled and a default AI connection set (and connected). The Conversation Agents will still work without this enabled but functionality will be limited. To set a default connection head to Configuration &gt; AI &gt; General Settings &#39;Default AI Connection&#39;.&nbsp;</p><p><br></p><p>Hosted customers will have some pre-configured Conversational Agents in their instance already. These each have their own use cases and require minimal setup. These agents use the built in OpenAI connection (regardless of the AI connection you have configured under Configuration&gt; AI), by using them you agree to your data being sent to Halo&#39;s OpenAI instance, nothing is trained on and the data is removed after the chat ends. If using your own connection, data will be stored out with Halo. To see the Conversational Agents you have available in your Halo head to Configuration &gt; AI &gt; AI Agents &gt; Virtual Agents/Operations Agents.&nbsp;</p><p><br></p><p data-pasted="true"><strong>Halo Agent App Default Operations Agent v1&nbsp;</strong>- This Operations agent is used for agent app chats, in which an agent can ask the Operations Agent questions, for information and to carry out actions to assist them in resolving tickets.&nbsp;</p><p><br></p><p><strong>Halo Chat Default Virtual Agent v1</strong> - This virtual agent is used for end user chats, in which end users can ask the Virtual Agent questions, for information and to carry out actions to improve customer service and accessibility.</p><p><strong>&nbsp;</strong></p><p><strong>Halo Documentation Operations Agent v1</strong> - This Operations Agent is used for agent app chats, to guide Halo administrators in how to use Halo. Agents can ask this Virtual Agent questions about Halo as a platform and they will be provided with information or recommended a knowledge base article(s) to read.&nbsp;</p><p>&nbsp;</p><p>Under the configuration for each of these Agents you will see an &#39;Instructions&#39; field, which contains the prompt for the AI model to use for this Agent. The out-of-the-box Agent prompts cannot be changed, but if you would like to customise the prompt you can create your own new Conversation Agent.&nbsp;</p><p><br></p><p><strong><span style="font-size: 12pt;">Data Retention when using the default Conversational Agents</span></strong></p><p>By using any out of the box Conversational Agents (outlined above) you agree to your data being sent to Halo&#39;s OpenAI instance. Whether data is retained by OpenAI will depend on if the user using the Conversational Agent is authenticated.&nbsp;</p><p><br></p><p><strong>Authenticated Users</strong></p><p>Zero data will be retained by OpenAI for authenticated users/agents using the Conversation Agent. Users can be authenticated either by logging into the self service portal or using &quot;<a href="https://usehalo.com/haloitsm/guides/1842/#enable_user_matching" target="_blank" rel="noopener noreferrer">Embeddable Chat User Matching</a>&quot; when a chat is embedded on another site.&nbsp;</p><p><br></p><p><strong>Unauthenticated Users</strong></p><p>When unauthenticated users are using a Virtual Agent, either when users are not logged into your Halo portal, or when the chat is embedded on another site, data will be retained temporarily. OpenAI will hold this data for 30 days for usage monitoring purposes. This data will not be used to train models. This is in line with OpenAI&#39;s zero data retention policy <a href="https://developers.openai.com/api/docs/guides/your-data#data-retention-controls-for-abuse-monitoring" target="_blank" rel="noopener noreferrer">here</a>.&nbsp;</p><p><br></p><p><strong><em>Note: If you are creating your own Conversational Agent with your own connection this will not apply, data will be retained based on how your project is configured.&nbsp;</em></strong></p><p><br></p><p><span style="font-size: 14pt;"><strong>Creating Conversational Agents</strong></span></p><p>You may want to create your own Conversational Agent if you would like to customise the connection method or prompt the Agent uses.&nbsp;</p><p><br></p><p>To create a new Conversational Agent head to Configuration &gt; AI &gt; AI Agents &gt; Virtual Agents/Operations Agents &gt; New.</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImQwZDA4OGUzLWJjZmMtNDQ2NC1hNWIwLTIxYmQwOGQ1YWRjYyJ9.77kBDxPZ2bxlCZOS5-fGGlgpvgQl8nnXYtFhw4-Igxk" class="fr-fic fr-fil fr-dib" width="1830" style="width: 1832px; height: 446.865px;" height="447"></p><p><strong><span style="font-size: 10pt;">Fig 1. New Conversational agent setup screen</span></strong></p><p><br></p><p>Here, give the Agent a name and select a connection method from OpenAI, Azure OpenAI, built in OpenAI, or (from v2.244+) the Amazon Bedrock connection. Once a connection is selected an additional button will appear to &#39;Configure ... connection&#39;, select this to bring up the connection page. Here, you will need to complete the details required for connection, only once this is completed successfully will the Agent be able to use AI functionality.&nbsp;</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjA3MjI2NzFiLTVkYzYtNDc4NS04YjY5LTlhN2I1ODlkM2Q2MSJ9.D8-QzypxOHhnEEIVM3QDMmiL-eWY56F63snBlTVM-Us" class="fr-fic fr-fil fr-dib" width="932" style="width: 934px; height: 219.17px;" height="219"></p><p><strong><span style="font-size: 10pt;">Fig 2. Configure connection for Conversation Agent</span></strong></p><p><br></p><p><strong><em>Note: If connecting using Azure OpenAI you will need to be on version 2024-05-01 preview or higher.&nbsp;</em></strong></p><p><br></p><p>Once connected under the &#39;Assistant Fields&#39; section of the setup page you will need to enter the Model/Deployment you are using within the chosen AI model. Then complete the &#39;Instructions&#39; field.</p><p><br></p><p>You will also find a &quot;Temperature&quot; field in this section. The value given here will determine how focused the response will be. Higher values like 1 will make the output more random, using a more creative approach, while lower values like 0.2 will make it more focused and consistent. The default value is 1 which remains in line with behaviour before this setting was introduced. &nbsp; &nbsp;</p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjA5MWMxNDA2LTc0ZDAtNDdkOS1iZmVhLWRhNGQzNTc4YmRmNCJ9.3Xqe0HbUwKao8174qSW4An9MytIK3tCvuuJufhN7uG4" class="fr-fic fr-fil fr-dib" width="1320" style="width: 1322px; height: 393.713px;" height="394"></p><p><strong><span style="font-size: 10pt;">Fig 3. Assistant fields (for OpenAI connection)</span></strong></p><p><br></p><p>The &#39;Instructions&#39; field should contain a prompt for the AI model to use within this Conversation Agent. This should include information like: what context is the model being used in, who is using this, what tasks the model is expected to carry out, the more information you provide here, the more accurate the Agent chat will be.<span style="color: rgb(250, 197, 28);">&nbsp;</span><span style="color: rgb(0, 0, 0);">If you would like the Agent to function similarly to an out-of-the-box agent, but with some amendments, you can copy and paste the instructions from an existing agent into your new agent then make the required changes.&nbsp;</span></p><p><br></p><p><span style="color: rgb(0, 0, 0);"><em><strong>Note: The &quot;Instructions&quot; field does not have any character limit in itself, but will follow any character limit from the OpenAI model you use.</strong></em></span></p><p><br></p><p data-pasted="true"><strong><span style="font-size: 12pt;">Open AI&#39;s Deprecation of the Assistants API/Responses API</span></strong></p><p>On versions prior to v2.252, if connecting using OpenAI, you will have an additional option to choose which API to use.</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImQxM2VmNzE4LTg3MTQtNDU0NS04YzBmLWZhZTJkMDJkMjA2NiJ9.bLxN8mP5DiewrxmjynspkLawBbnUsPD8UyhAea7nupw" class="fr-fic fr-fil fr-dib" width="893" style="width: 895px; height: 593.806px;" height="594"></p><p><strong><span style="font-size: 10pt;">Fig 4. Connecting to OpenAI using the Responses API</span></strong></p><p><br></p><p data-pasted="true">Open AI are deprecating the Assistants API from August 2026, therefore new Conversational Agents should be setup using the Responses API. Existing Agents will be automatically migrated to use the Responses API closer to the deprecation date.&nbsp;</p><p><br></p><p><strong><span style="color: rgb(235, 107, 86);">If you receive any errors when using a Conversation Agent that is utilising the Assistants API, switch to the Responses API as your first point of troubleshooting as this can often resolve issues.&nbsp;</span></strong></p><p><br></p><p>If connecting using the Responses API you will have an additional option to provide a prompt ID for the Conversation Agent.</p><p><br></p><p><strong>Prompt ID -</strong> Here, enter the ID of the prompt you would like to provide the AI model when this Conversation Agent is used. This will need to be the ID of a prompt saved within your OpenAI account. The instructions and model should be stored inside the prompt, therefore when this is used you do not need to populate the &quot;Model/Deployment&quot; and &quot;Instructions&quot; field. Using a prompt will reduce the size of the request sent to OpenAI which can be more cost effective.&nbsp;</p><p><br></p><p><strong><span style="font-size: 12pt;">Allow Functions for the Conversation Agent</span></strong></p><p>Once you have configured the connection for the Conversation Agent you can set which functions the Agent can use. If you would like the Agent to be able to use all available functions enable &quot;Include all system functions&quot;. Keep in mind, different system functions are available for Operations vs Virtual Agents.&nbsp;</p><p><br></p><p>Additional custom functions can also be configured for the Agent to allow it to excecute automations, or to customise when certain system functions can be used.&nbsp;</p><p><br></p><p>For information on the available system functions and creating custom functions, for Conversational Agent, see our dedicated guide: <a href="https://www.usehalo.com/guides/3015" target="_blank" rel="noopener noreferrer">Conversational Agent Functions.&nbsp;</a></p><p><br></p><p><strong><span style="font-size: 14pt;">Plugging a Conversation Agent into a Chat Profile</span></strong></p><p>Once you are happy with the Conversation Agent you have set up you can plug this into a chat profile for your agents/users to use.&nbsp;</p><p><br></p><p>To do this head to Configuration &gt; Chat &gt; Chat profiles &gt; New &gt; Bot Flow tab. Here a new step will automatically appear, set the step type to be &#39;Virtual Agent Conversation&#39;, once selected you will be able to choose which Conversational Agent is used within this chat.&nbsp;</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjY2MjBiMGY5LWQzMzMtNGVhNC1iNGIwLWE1MjM3Yzk3MjJiMSJ9.oqQC8cFPToMQ_dpWSBCAZZfEHPv1IU_7BivQjTW6dgI" class="fr-fic fr-fil fr-dib" width="953" style="width: 955px; height: 505.81px;" height="506"></p><p><strong><span style="font-size: 10pt;">Fig 5. Configuring Chat step to use a Conversational Agent&nbsp;</span></strong></p><p><br></p><p>You will also be able to provide an additional prompt/instructions for the Conversational Agent at this step. This allows you to provide step specific prompts, supporting the use of general Conversation Agents that can be specialised per chat profile step.&nbsp;</p><p><br></p><p>You will also need to enter an &#39;AI Failure Message&#39;, this message will display to the user if the AI response fails.&nbsp;</p><p><br></p><p>You will need to specify what team the user will be transferred to if the Conversational Agent is prompted to start a live chat with a human agent. You can also specify what ticket type or template is used when the user requests to log a ticket, if the user/agent specifies a particular ticket type/template they would like to log this will override what is set here.&nbsp;</p><p><br></p><p><strong>Message Suggestions</strong> - Here, you can configure pre-set message suggestions for the user to use within a set context of the chat. These will give the user set options they can choose from, once selected the Conversational Agent will be given a set prompt. This provides your users an easy way to give the agent complex prompts.&nbsp;</p><p><br></p><ul><li>Context - This determines when the suggestions appear, &#39;viewing a ticket&#39; will only show this suggestion when the user is viewing a ticket. &#39;Anywhere else&#39; will show this suggestion at all stages of the chat.&nbsp;</li><li>Prompt text - This is the suggestion text that the user will see and can select</li><li>Message text - This is the text that will be posted into the chat, the Agent will provide a response based on this text.&nbsp;</li></ul><p>You can also configure criteria for message suggestions in the &quot;Context&quot; of &quot;Viewing a Ticket&quot;. This allows you to filter which suggestions can be used based on properties of the ticket. If configured, all criteria will need to be met for the suggestion to appear.&nbsp;</p><p><br></p><p>In the Figure 6<strong>&nbsp;</strong>example, when a user is viewing a ticket an option will appear on screen called &#39;Summarise #XXX&#39;. When selected the Conversation Agent will be asked to return a summary of the ticket ($-faultid). Another option will also appear called &quot;Suggest a resolution for this ticket&quot;, but this will only appear if set criteria is met.&nbsp;</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImExZDg5Mzk5LTQ3YjItNGUzYy05ODdiLWJhYWFkMTc3NjUyYSJ9.KoCQeGWR1OHgvb2sdYfGkrt85-sgvGkGkxrhhIUQQp4" class="fr-fic fr-fil fr-dib" width="1507" height="327"></p><p><strong><span style="font-size: 10pt;">Fig 6. Example message suggestion&nbsp;</span></strong></p><p><br></p><p data-pasted="true"><strong><span style="font-size: 12pt;">View which Chat Profiles the Agent is Used in (v2.250+)&nbsp;</span></strong></p><p>From v2.250+ an &quot;Other Uses&quot; tab is available against Conversation Agents. Here, you can view the chat profiles the Agent is used in, helping you manage/review where an Agent is being leveraged.</p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6ImRmZDYzMWE4LTg0MjgtNDc1Mi04MjkxLTIwYTA1ODc1MmI1MSJ9.OpKWuMJ7QOQ-2mVnX657Qdvn1V8bUa1_QE0iXJsZaLQ" class="fr-fic fr-fil fr-dib" width="444" style="width: 446px; height: 209.235px;" height="209"></p><p><strong><span style="font-size: 10pt;">Fig 7. Other Uses Tab against Conversation Agent</span></strong></p><p><br></p><p><br></p><p data-pasted="true"><span style="font-size: 14pt;"><strong>External MCP Connection</strong></span></p><p>Conversation Agents (using OpenAI&#39;s &quot;responses&quot; API) can connect to third-party MCP servers. This allows the AI to call external tools for other applications. For information on setting up the connection, see the guide linked <a href="https://usehalo.com/haloitsm/guides/2597" target="_blank" rel="noopener noreferrer">here</a>. &nbsp;</p><p><br></p><p>Once you have configured your connection you will be able to add it to your Conversation Agent using the &quot;External MCP Servers dropdown.</p><p><br></p><p><img src="https://halo.haloservicedesk.com/api/attachment/image?token=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjA0M2YzNzQ4LTk3NjAtNDI2MS1hM2M0LTY4MDU1NzAyZmE3MSJ9.fXBXSD_MyN7OkklisFlTS-ixgOiTkT9PoSRUDTfhWDw" class="fr-fic fr-fil fr-dib" width="833" style="width: 835px; height: 97.3313px;" height="97"></p><p data-pasted="true"><strong><span style="font-size: 10pt;">Fig 8. External MCP connection</span></strong></p><p><br></p><p></p></body>
Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.