Computer-implemented method for controlling a virtual assistant for an industrial plant, comprising: receiving (S10), 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 (S20), by a control unit , a model specification (Ms) using the received information request (Ir); determining (S30), by a model manager , a machine learning model (M) using the model specification (Ms), and providing the determined machine learning model (M) to the control unit ; and providing (S40), by the control unit , a response (R) to the information request (Ir) using the determined machine learning model (M); determining, by a session manger , user action information (Ia) relating to tracked actions and context information of an individual user (U); 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 (U); 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 (U); determining, by the state manager , global information (Ig) using the received service landscape information (II), 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 (R) for the user (U) 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 (I) with the recognized patterns; and predicting the information intent (I) of an information request using the recognized patterns. receiving (S10), 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 (S20), by a control unit , a model specification (Ms) using the received information request (Ir); determining (S30), by a model manager , a machine learning model (M) using the model specification (Ms), and providing the determined machine learning model (M) to the control unit ; and providing (S40), by the control unit , a response (R) to the information request (Ir) using the determined machine learning model (M); determining, by a session manger , user action information (Ia) relating to tracked actions and context information of an individual user (U); 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 (U); 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 (U); determining, by the state manager , global information (Ig) using the received service landscape information (II), 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 (R) for the user (U) 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 (I) with the recognized patterns; and predicting the information intent (I) of an information request using the recognized patterns. <EOS>