1. A method of processing a current user query, comprising: training a model, said training comprising: continuously logging previous user queries; extracting a question from the continuously logged previous user queries; analyzing the extracted question to obtain at least one feature; assigning an intent to the extracted question; and adding an entry to the model and mapping the obtained feature for the extracted question to the assigned intent for the extracted question in the added entry of the model; receiving an initial portion of the current user query, wherein the initial portion includes a particular string of text; guessing an intent associated with the initial portion of the current user query while a remainder of the current user query is being received, wherein said guessing using only the initial portion further comprises: analyzing the initial portion to obtain at least one feature; comparing, using a processing device, the obtained at least one feature of the initial portion to entries in the model; selecting, using the processing device, at least one entry from the model based on the comparison; and determining the intent for the initial portion of the current user query according to an intent included in the selected entry; wherein the intent guess obtained for the initial portion according to said analyzing, said comparing, said selecting, and said determining, does not include any portion of the particular text string; and responding to the initial portion of the current user query with the intent guess.