1. A method for controlling the response to spoken language input, comprising: receiving user data from a device; receiving a first spoken language input from the device; identifying tags within the first spoken language input; searching a knowledge base framework based on the tags and the user data, wherein the knowledge base framework is a database that includes a plurality of entities, attributes, and relationships between the entities and the attributes; identifying entities, attributes, and relationship within the knowledge base framework that match at least one of the tags and the user data; identifying at least one interconnected item within the knowledge base framework that did not match any of the tags and the user data to form at least one inferred item; creating a state graph based on a portion of the knowledge base framework that includes any matched entities, matched attributes, identified relationships, and the at least one inferred item, and based on the tags, wherein the state graph is created at least in part by transforming the portion of the knowledge base framework into a probabilistic model graph by replacing the identified relationships with weighted connections and by assigning a confidence indicator to each node of the state graph; determining at least one goal based on the state graph; and sending instructions to perform an action to the device based on the at least one goal, the weighted connections, and the confidence indicators.