A computer-implemented method for performing by an on-premise portion of a hybrid framework, wherein the hybrid framework comprises an on-premise portion that selectively transmits requests to, and receives responses from a plurality of cloud-hosted services, the method being for managing interactions with an artificial intelligence, AI, assistant executed on the hybrid framework, the method being executed by one or more processors of the on-premise portion and comprising: receiving, by the one or more processors, communication data from a device, the communication data comprising data input by a user of the device; determining, by the one or more processors, a context based on an extended finite state machine that defines contexts and transitions between contexts by querying an on-premise session manager for a current context, the current context being returned in response to the query; determining whether at least one cloud-hosted service of the plurality of cloud-hosted services is to be queried based on the current context, based on whether an entity, an intent, and/or an action needs to be determined to transition the context; transmitting, by the one or more processors, a service request to the at least one cloud-hosted service, the service request being provided at least partially based on masking sensitive information included in the communication data; receiving, by the one or more processors, a service response from the at least one cloud-hosted service, the service response comprising one or more of an intent, an entity and an action; determining, by the one or more processors, whether the current context is to be updated based at least on the service response, based on whether the service response includes an intent, and/or an entity that corresponds to a transition of the context; if the current context is to be updated, transitioning, by the one or more processors, between contexts, based on the intent, the entity and an action, by: if the intent is a first intent, the entity is a first entity and the action is a first action, performing a first transition; if the intent is a first intent and there is no associated entity and no associated action, performing a second transition; and if the intent is a second intent, the entity is a first entity and the action is a first action, performing a third transition; determining, by the one or more processors, at least one action that is to be performed by at least one back-end source system (108; 110) based on the transitioning between contexts; providing, by the one or more processors, a response at least partially based on an action result received from the at least one back-end source system (108; 110); and transmitting, by the one or more processors, the response to the device. receiving, by the one or more processors, communication data from a device, the communication data comprising data input by a user of the device; determining, by the one or more processors, a context based on an extended finite state machine that defines contexts and transitions between contexts by querying an on-premise session manager for a current context, the current context being returned in response to the query; determining whether at least one cloud-hosted service of the plurality of cloud-hosted services is to be queried based on the current context, based on whether an entity, an intent, and/or an action needs to be determined to transition the context; transmitting, by the one or more processors, a service request to the at least one cloud-hosted service, the service request being provided at least partially based on masking sensitive information included in the communication data; receiving, by the one or more processors, a service response from the at least one cloud-hosted service, the service response comprising one or more of an intent, an entity and an action; determining, by the one or more processors, whether the current context is to be updated based at least on the service response, based on whether the service response includes an intent, and/or an entity that corresponds to a transition of the context; if the current context is to be updated, transitioning, by the one or more processors, between contexts, based on the intent, the entity and an action, by: if the intent is a first intent, the entity is a first entity and the action is a first action, performing a first transition; if the intent is a first intent and there is no associated entity and no associated action, performing a second transition; and if the intent is a second intent, the entity is a first entity and the action is a first action, performing a third transition; if the intent is a first intent, the entity is a first entity and the action is a first action, performing a first transition; if the intent is a first intent and there is no associated entity and no associated action, performing a second transition; and if the intent is a second intent, the entity is a first entity and the action is a first action, performing a third transition; determining, by the one or more processors, at least one action that is to be performed by at least one back-end source system (108; 110) based on the transitioning between contexts; providing, by the one or more processors, a response at least partially based on an action result received from the at least one back-end source system (108; 110); and transmitting, by the one or more processors, the response to the device.