Testing LLM topics
Summarize
Summary of Testing LLM topics
This content explains how to preview, test, and debug Virtual Agent topics that utilize large language models (LLMs) within ServiceNow’s Virtual Agent Designer. Testing can be done directly in the chat test window, which defaults to the Service Portal chat client, or in third-party messaging apps where Virtual Agent is deployed. LLM topics offer faster and easier testing compared to Natural Language Understanding (NLU) topics because they do not require retraining after updating utterances.
Show less
Testing supports multiple deployment channels including Now Assist panel, Microsoft Teams, and Slack when configured, allowing customers to test topics in their desired environments.
Testing Methods and Options
- LLM topics are tested via the Test options on the Virtual Agent Designer canvas or the Topics page.
- When testing a single topic, the "Include topic discovery" option must be selected for assistant-related functionality.
- If multiple LLM assistants are associated with a topic, you can select which assistant to test using the Assistant drop-down list.
- Incomplete or problematic topics show badges and warnings; testing such topics opens an Issues window detailing each problem with links to fix them.
- Active (published) topics can be tested via the Topics page with filtering by LLM assistant and options to include topic discovery.
- The chat test window supports user feedback on LLM responses with thumbs-up and thumbs-down icons for each utterance.
Chat Test Window Features
The chat test window provides several tabs for detailed insights during testing:
- Analyze test phrases: Displays results for topic discovery, including matching skills, Knowledge Base articles, and catalog items, leveraging Genius Results and Semantic Search if enabled.
- Modify instructions: Shows LLM user input nodes and their instructions, allowing edits to optimize conversation flow. It also highlights enforced prompts and warnings for potentially offensive content.
- Variables: Lists all conversation variables (input, script, Live Agent, and passed variables) and their current values to track conversation state.
- Edit variables: Available when testing topic blocks and custom controls to modify variable values.
- Context: Enables setting context variables that influence topic intent or live agent routing; applicable for topics, setup topics, and small talk when topic discovery is included.
- Logs: Displays processing details for the conversation.
Practical Guidance for ServiceNow Customers
- Ensure the Now Assist Topics skill is activated to access the updated UI and enhanced testing features.
- Use the Assistant drop-down to select the relevant LLM assistant when multiple assistants exist, ensuring accurate testing.
- Respond to issues indicated by badges before testing for smoother debugging and topic refinement.
- Leverage feedback icons on utterances to gather insights on conversation quality and improve topic performance.
- Use the Analyze test phrases tab to review semantic search and skill discovery results, adjusting topic descriptions or instructions to improve confidence scores.
- Modify instructions directly in the testing interface to optimize how LLM interprets user input and conversation flow without needing to republish immediately.
- Set context variables during testing to simulate different user environments or routing scenarios.
Next Steps
After testing, close the chat test window and apply insights gained to fine-tune your topic. Address low confidence ratings by updating topic metadata or instructions in LLM user input nodes to enhance accuracy and user experience.
Preview, test, and debug topics that use large language models (LLMs) in the Virtual Agent Designer chat window.
You can test your topic's functions by running your conversation in a chat test window as you work. The web (Service Portal) chat client is the default test window.
Large language model (LLM) topics are faster and easier to test compared to Natural Language Understanding (NLU) topics. For example, you don't need to retest your topic after updating utterances and retraining models as with NLU topics.
If you're using the Virtual Agent integrations with third-party messaging apps, elements in your conversation might appear differently in third-party messaging applications. Test your conversations in any third-party applications where you want to deploy Virtual Agent.
Testing your LLM topic in the chat test window
Alternatively, you can test active (published) LLM topics on the Topics page. Use the LLM Assistant filter to restrict your topics to only topics associated with that assistant, and then select Test active topics. If you don't use the LLM Assistant filter, select Test LLM assistant topics from the Test active topics drop-down list. When using the Test active topics option or sub-options from the Topics page, topic discovery is enabled, so it's not listed as an option. When testing from the Topics page, the Assistant drop-down list appears in the chat test window. You must have previously established at least the default Now Assist in Virtual Agent assistant to see the Assistant drop-down list. When a topic is associated with just one LLM assistant, the Assistant drop-down list defaults to that assistant name. If you have multiple assistants, select which assistant you want to work with using the Assistant drop-down list. For more information about creating multiple LLM assistants, see Manage LLM virtual agents on the Assistants screen.
The chat test window opens in the Now Assist in Virtual Agent chat widget. The Assistant drop-down list and Include topic discovery option might be displayed depending on where you originated the test from and if you have established any LLM assistants.
You can provide feedback to each utterance made by the LLM by selecting from the like thumbs-up icon or dislike thumbs-down icon
options that appear when you hover over an utterance. All LLM user inputs aside from the Input Collector have these feedback options.
The chat test window also displays adjoining tabs that provide details about your topic as you test it. The following tabs are available when testing LLM topics:
- Analyze test phrases - Results for topic discovery based on your input.
- Modify instructions - List of all the instrucions in the topic that are sent to the LLM. This tab is only available when testing a single topic.
- Variables - List of all the variables used in the conversation, such as input and Live Agent variables.
- Edit variables - Options for editing the variables used in this topic.
- Context - Options for specifying the context (using context variables) in which a topic is run.
- Logs - List of the processing performed.
- The Analyze test phrases, Modify instructions, Variables, and Logs tabs appear for all LLM topic types.
- The Edit variables tab appears for topic blocks and custom controls.
- The Context tab appears for topics, setup topics, or small talk topics when you select Include topic discovery.
If you run tests from the Topics page, the test window shows only the Analyze test phrases, Variables, Context (available by default, with no Include topic discovery option), and Logs tabs.
Analyze test phrases tab
When you test LLM topics, results for topic discovery appear based on your input. When testing topics associated with a primary LLM assistant, only the primary assistant's promoted topics appear. When you input a test phrase, you can see a variety of search results when Genius Results are enabled including skill (topic) discovery, Knowledge Base (KB) articles, and catalog items. Under the skills search results, a Matching badge appears next to the skill discovered, while variables and values may also be listed (such as the variable @laptop_make and the value macbook), depending on the topic. These Genius Results only appear if you’re testing a published topic and have selected the Include topic discovery option. If the Include topic discovery option appears inactive, publish the topic and select an LLM assistant on the Properties tab to work with topic discovery. A Search indexing in progress message might appear, but you can still test while the search indexing runs although topic discovery might not be updated. For more information about how Genius Results work, see Now Assist in AI Search.
Additionally, when testing active LLM assistant topics from the Topics page, you see skills results for Semantic search. Semantic search analyzes the meanings and context of your search terms and uses that information to find results with similar meanings. It improves search recall by interpreting natural language to more accurately reflect your search's intent. If semantic search is deactivated for topic discovery testing, those results are not displayed. For more information about semantic search, see Semantic vector search in AI Search.
Modify instructions tab
If your topic contains any instructions that are sent to the LLM, they’re shown in the Nodes category. The Nodes category lists LLM user input nodes on the canvas, their field names, and their contents.
You can modify the content of any of the instructions to develop optimal instructions for the conversation. If a node has Enforce user prompt active, a blue check icon and a User prompt enforced message appears. Deactivate Enforce user prompt to modify the node's instructions.
If any of your user inputs have Allow automatic slot filling activated, the input's Detail Description becomes a static field. If Allow automatic slot filling is inactive, you can define detail description using a script or data pill picker. For more information, see the Allow automatic slot filling table entry in Text user input control or any other LLM user input controls.
Variables tab
- Input variables
- Script variables
- Live Agent variables
- Variables passed between a calling topic and topic block
The following example shows the Input variables section for the grouped list control. This variable information appears similar to the static list control, but the variables are separated by each group of the grouped choice.
Edit Variables tab
When testing topic blocks and custom controls, you can edit the variables found in the nodes.
Context tab
The Context tab appears when you’re testing topics, setup topics, or small talk topics, to specify a different context for the chat. Choose a context variable from the list. The variables contain contextual information that can be used to determine topic intent or control how chats are routed to live agents. For example, you could select portal from the list of variables and enter the portal name IT Express. The Context tab is unavailable when creating test cases.
For more information about defining context variables, see Configure context variables for storing chat-related information. For more information about live agent variables that are included with Virtual Agent, see Live agent chat context variables.
Next steps
When you're done testing your topic, close the test chat window. If necessary, use the test information to adjust your topic to perform more accurately. For example, the results on the Analyze test phrases tab may return low scores or Unsure or Unknown confidence ratings. Improve scores by updating the topic description or instructions in the LLM user input nodes.