This page provides an overview of the functionality provided by the Sofi Virtual Agent.

The Sofi Virtual Agent engages with customers through an multi-channel conversational interaction to resolve issues without human intervention. Tight integration with ServiceNow, enables personalised, data-driven conversational flows that include the ability to update ServiceNow records and initiate automations.


Sofi Virtual Agent for ServiceNow Service Portal

Sofi Virtual Agent also can be accessed from other channels such as Slack and Skype for Business.


Sofi Virtual Agent Slack Integration

There are three key concepts that are used within the Sofi Virtual Agent:

  • Natural Language Understanding,
  • Dialog Flows, and
  • Actions.

These are all configured using the Dialog Manager

Natural Language Understanding

Language Understanding allows Sofi to understand what a person wants in their own words. Sofi uses machine learning to allow Sofi to receive user input in natural language and extract meaning from it. Sofi breaks down natural language input (Utterances) into Intents and Entities.


An intent represents actions the user wants to perform. The intent is a purpose or goal expressed in a user's input, such as reseting a password, applying for leave, or requesting access. In Sofi you define Entry Points that relate to an intent and then define the actions that but be taken for that intent.


An utterance is text input from the user that Sofi needs to understand. It may be a sentence, like "I need to reset my password", or a fragment of a sentence, like "Password" or "Salesforce password issue." Utterances aren't always well-formed, and there can be many utterance variations for a particular intent.


An entity represents detailed information that is relevant in the utterance. For example, in the utterance "Reset my salesforce password", "Salesforce" is a application for which the password reset is required. By recognising and labelling entities that are mentioned in the user’s utterance, Sofi helps you choose the specific action to take to answer a user's request.

The NLU aspects of Sofi are configured using the Dialog Manager as an integral part of a conversational flow design.

Visit NLU Model for more information.

Dialog Flows

Dialog flows are a core component of the Sofi Virtual Agent. They define how Sofi converses with the user when an intent is identified. Dialog flows are configured within the Dialog Manager.


Sofi Dialog Manager

The three key constructs of a Dialog Flow are Entry Points, Topics and Actions.

Entry Points

An Entry Point element has a one to one relationship to an intent. Whilst an entry point always occurs at the beginning of a flow, they can also occur at any point within a flow where a more explicit Intent (typically containing entities) signifies and alternative entry into the flow.


Topic elements are the work horse of the conversational interaction between the user and Sofi. They typically pose a question and take action based on the users response. Branches of topics are configured to wait for a natural language response from a user. They work in a similar way to entry points in that there is a mapping between an Intent (of that Branch) and the utterances that the user can enter.


Action elements are used to perform interactions other than standard question / response interactions. They are often used to integrate with external systems - typically, but not exclusively ServiceNow. For example an action can be configured to Log a Ticket (create a record in ServiceNow) or perform a lookup of a table of data within ServiceNow (eg user or location). Another typical example of an Action is to display information such as a specific form or knowledge articles or perform a search and display the results.

Visit Dialog Manager for more information.

What’s Next