--- title: Creating a Virtual Agent topic description: Use Assistant Designer Asset library to create and modify Virtual Agent topics \(conversations\). Build your topic to meet a specific objective or goal, such as fulfilling a user's request or helping a user complete a task. locale: en-US canonical_url: https://www.servicenow.com/docs/r/australia/conversational-interfaces/virtual-agent/create-virtual-agent-topic.html release: australia product: Virtual Agent classification: virtual-agent topic_type: task last_updated: "2026-03-12" reading_time_minutes: 10 keywords: [Create, Virtual Agent, topic, Assistant, designer, Asset, library, conversations, LLM, NLU, Large language model, Natural Language Understanding] breadcrumb: [Getting started with the Asset library in Assistant Designer, Build and deploy, Virtual Agent, Conversational Interfaces] --- # Creating a Virtual Agent topic Use Assistant Designer Asset library to create and modify Virtual Agent topics \(conversations\). Build your topic to meet a specific objective or goal, such as fulfilling a user's request or helping a user complete a task. ## Before you begin \[Omitted video\] Description: Assistant Designer LLM topic authoring video Do the following: - Review [Getting started with the Asset library in Assistant Designer](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/conversation-designer-virtual-agent.md). - Configure Virtual Agent settings. For example, if you're creating large language model \(LLM\) topics, turn on ServiceNow Otto in Virtual Agent. For more information, see [Configuring assistants overview](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/now-assist-in-virtual-agent/configure-now-assist-va.md). If you're creating Natural Language Understanding \(NLU\) topics, configure NLU settings. For more information, see [Configure Natural Language Understanding in Virtual Agent](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/configure-nlu-settings.md). - Plan your conversation before you begin. For more information, see [Designing a Virtual Agent topic](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/design-va-topic.md). - Verify that you're in the appropriate application scope before you create or update a topic. For example, if you're creating ITSM topics, verify that you're in the **ITSM Virtual Agent Conversations** scope \(and not the scope for the ITSM NLU Model for Virtual Agent Conversations\). For details, see [Change the application scope for Virtual Agent Designer topics](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/change-application-scope-vad.md). Role required: virtual\_agent\_admin or admin ## About this task The topic is in the Inactive state until you publish it. Publishing a topic changes the topic state to Active and automatically deploys the topic to your Virtual Agent clients. The Large Language Model \(LLM\) topic type is faster and easier to set up compared to using Natural Language Understanding. You don't have to select NLU intents or train NLU models for your virtual agent. For more information, see [LLM topic discovery in Virtual Agent](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/va-llm.md). When NLU is enabled, the Set up Natural Language Understanding \(NLU\) section is displayed in the Topic Properties page. You can use this section to specify the associated NLU model and intent for the topic. You can also optionally specify keywords that Virtual Agent can use as a fallback if NLU doesn't return a matching intent and topic. For more information, see [Natural Language Understanding \(NLU\) topic discovery in Virtual Agent](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/va-NLU.md). ## Procedure 1. Navigate to **All** > **Conversational Interfaces** > **Assistant Designer**. 2. Select the **Asset library** tab. 3. Set the topic discovery toggle switch to **LLM** or **NLU/keyword** depending on the type of topic you're creating. 4. Select the type of topic. - For LLM topics: 1. Select **Create Asset**. \[Omitted image "vad-home-2.png"\] Alt text: Select Create asset to create a new LLM asset on the Assistant Designer Asset library page 2. From the Create asset window, select **Topic**. **Important:** Selecting any of the other topics in the window will open the create flow in the respective application. - For NLU/Keyword topics, select **Create topic**. \[Omitted image "vad-home-nlu.png"\] Alt text: Assistant Designer Asset library set to NLU/Keyword view, with NLU/Keyword selection switch and Create topic button highlighted. 5. On the form, fill in the fields. For a description of the field values, see [Create a topic form](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/vad-topic-creation-form.md). 6. On the topic creation form, select **Create**. 7. On the **Flow** tab, build the conversation flow.
| Flow steps | Description |
|---|---|
| Add controls | To create the topic flow: 1. Select the controls for user inputs, bot responses, or utilities from the palette and drop them onto the canvas. When you add a control to the canvas, it becomes a node in the conversation flow. 2. For each node, complete the corresponding property sheet. In the topic header bar, select **Save**. The topic header bar displays a `Saving in progress...` message. The toast message `Successfully saved your topic` appears in the lower-right corner afterward for 4 seconds, and can be closed by selecting the **X** in the message. For details about each control and the corresponding properties that you define, see [User inputs](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/va-user-inputs.md), [Bot responses](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/va-bot-responses.md), and [Utilities](https://raw.githubusercontent.com/ServiceNow/ServiceNowDocs/australia/markdown/australia/conversational-interfaces/virtual-agent/va-utilities.md). As you add controls, watch for a yellow warning badge or a red error badge in the corner of the control. The number on the badge indicates the number of issues in that control, such as missing mandatory information in the property sheet. \(Highlighting a badge or the "Incomplete" banner at the top of the property sheet details the items in need of correction.\) |
| Move a node | Select the node, drag it to the new location in the flow, and Select **Save**. |
| Delete a node | Select the **X** in the upper right corner of the node. In the topic header bar, select **Save**. The topic header bar displays a `Saving in progress...` message. The toast message `Successfully saved your topic` appears in the lower-right corner afterward for 4 seconds, and can be closed by selecting the **X** in the message. **Note:** You can't delete a node that has a script variable used by subsequent JavaScript expressions in the flow. Also, you can delete a decision node only when it has a single branch. |