A Copilot Studio agent needs to remember the user's language preference across multiple topics throughout a single conversation session. Which variable type should you use to store this preference?
Select an answer to reveal the explanation.
Short Explanation
Global variables are the agent's working memory for the whole conversation, so once you set the language preference, any topic can read it without passing it around. For a preference that multiple topics need to honor, use a global variable.
Full Explanation
Copilot Studio has three variable scopes: topic variables (var.), global variables (Global.), and system variables (System.). Topic variables are local to the topic where they are set — they are not accessible in other topics. Global variables persist for the entire conversation session and are accessible from any topic. System variables provide context like the user's name, channel, and conversation ID.
For a language preference that should be honored across all topics during a session, a global variable that persists for the duration of the conversation session across all topics is the correct choice. You set it in the opening topic or a dedicated preference topic and read it in any subsequent topic.
The topic variable scoped to the current topic is wrong because it is scoped to one topic only. Once the conversation moves to another topic, the preference would be lost.
The Power Platform environment variable to persist the preference permanently is wrong because environment variables are configuration values, not session state. They don't vary per user or per conversation.
The Dataverse table row that stores the user's preference by session ID is wrong for this scenario. It is technically possible for true persistence across sessions, but Dataverse involves async database writes and reads with connector overhead. For within-session persistence, a global variable is the right tool. Dataverse is appropriate for cross-session persistence, such as remembering a preference across multiple conversation sessions.
Exam scope summary: topic variable = current topic only. Global variable = entire session, all topics. Dataverse = cross-session, database persistence.