Computer-implemented method for controlling a virtual assistant for an industrial plant, comprising: receiving, by an input interface, an information request (Ir), wherein the information request (Ir) comprises at least one request for receiving information about at least part of the industrial plant; determining, by a control unit, a model specification (Ms) using the received information request (Ir); determining, by a model manager, a machine learning model using the model specification (Ms), and providing the determined machine learning model to the control unit; and providing, by the control unit, a response to the information request (Ir) using the determined machine learning model; determining, by a session manger, user action information (Ia) relating to tracked actions and context information of an individual user; determining, by the session manager, individual user information (Iu) using the received user action information (Ia), wherein determining individual user information (Iu) comprises tracking actions and context information of the user; requesting, by a state manager, service landscape information (Il) from a service landscape based on the individual user information (Iu), wherein the service landscape relates to a structure of the industrial plant in a section relevant to the user; determining, by the state manager, global information (Ig) using the received service landscape information, wherein the global information (Ig) comprises information about ongoing processes, workflows, tasks and actions of the industrial plant; determining, by the session manager, the response for the user using the global information (Ig); collecting user actions over a period of time; analyzing the user actions, thereby recognizing patterns of user actions; associating information intent with the recognized patterns; and predicting the information intent of an information request using the recognized patterns. receiving, by an input interface, an information request (Ir), wherein the information request (Ir) comprises at least one request for receiving information about at least part of the industrial plant; determining, by a control unit, a model specification (Ms) using the received information request (Ir); determining, by a model manager, a machine learning model using the model specification (Ms), and providing the determined machine learning model to the control unit; and providing, by the control unit, a response to the information request (Ir) using the determined machine learning model; determining, by a session manger, user action information (Ia) relating to tracked actions and context information of an individual user; determining, by the session manager, individual user information (Iu) using the received user action information (Ia), wherein determining individual user information (Iu) comprises tracking actions and context information of the user; requesting, by a state manager, service landscape information (Il) from a service landscape based on the individual user information (Iu), wherein the service landscape relates to a structure of the industrial plant in a section relevant to the user; determining, by the state manager, global information (Ig) using the received service landscape information, wherein the global information (Ig) comprises information about ongoing processes, workflows, tasks and actions of the industrial plant; determining, by the session manager, the response for the user using the global information (Ig); collecting user actions over a period of time; analyzing the user actions, thereby recognizing patterns of user actions; associating information intent with the recognized patterns; and predicting the information intent of an information request using the recognized patterns.