15. A method, comprising: training, by at least one computing device, a plurality of first machine learning models with a plurality of communications between a plurality of users and a plurality of service clients, each of the plurality of communications linked to an action implemented by at least one of the plurality of service clients; training, by the at least one computing device, at least one second machine learning model to recognize an intended action of a user based at least in part on a set of selections of user intents by individual ones of a plurality of service representatives; determining, by the at least one computing device, an intent corresponding to a natural language input received via a client device by: providing, by the at least one computing device, the natural language input and context data associated with the client device to the trained plurality of first machine learning models to generate a plurality of outputs, each of the plurality of outputs corresponding to a respective one of a plurality of possible intents; and selecting, by the at least one computing device, the intent from the plurality of possible intents based at least in part on an application of the trained at least one second machine learning model to the plurality of outputs of the trained first plurality of machine learning models and at least one predefined rule to the plurality of outputs of the trained first plurality of machine learning models; determining, by the at least one computing device, a first state in a workflow progression based at least in part on the intent and the context data; changing, by the at least one computing device, the workflow progression from the first state to a second state based at least in part on the intent and the context data; and providing, by the at least one computing device, a response to the natural language input to the client device, wherein the response is based at least in part on the second state in the workflow progression.
15. A method, comprising: training, by at least one computing device, a plurality of first machine learning models with a plurality of communications between a plurality of users and a plurality of service clients, each of the plurality of communications linked to an action implemented by at least one of the plurality of service clients; training, by the at least one computing device, at least one second machine learning model to recognize an intended action of a user based at least in part on a set of selections of user intents by individual ones of a plurality of service representatives; determining, by the at least one computing device, an intent corresponding to a natural language input received via a client device by: providing, by the at least one computing device, the natural language input and context data associated with the client device to the trained plurality of first machine learning models to generate a plurality of outputs, each of the plurality of outputs corresponding to a respective one of a plurality of possible intents; and selecting, by the at least one computing device, the intent from the plurality of possible intents based at least in part on an application of the trained at least one second machine learning model to the plurality of outputs of the trained first plurality of machine learning models and at least one predefined rule to the plurality of outputs of the trained first plurality of machine learning models; determining, by the at least one computing device, a first state in a workflow progression based at least in part on the intent and the context data; changing, by the at least one computing device, the workflow progression from the first state to a second state based at least in part on the intent and the context data; and providing, by the at least one computing device, a response to the natural language input to the client device, wherein the response is based at least in part on the second state in the workflow progression. 20. The method of claim 15 , wherein the at least one predefined rule restricts the plurality of outputs provided as inputs to the second machine learning model based at least in part on a current state in the workflow progression, the context data, or a comparison of the plurality of outputs to at least one threshold.