1. A method, implemented on at least one computing device each of which has at least one processor, storage, and a communication platform connected to a network for providing query suggestions, the method comprising the steps of: receiving a prefix of a query from a user; identifying a plurality of query suggestions based on the prefix of the query, wherein each of a first group of the plurality of query suggestions includes an entity that corresponds to the prefix; computing an initial score for each of the plurality of query suggestions; adjusting the initial score of each of the first group of the plurality of query suggestions based on a first model to generate an updated score for the query suggestion, wherein the first model is a function of an adjustable parameter associated with the query suggestion, and wherein the adjustable parameter associated with the query suggestion is determined based on a category of the query suggestion and a length of the prefix; ranking the plurality of query suggestions based on the updated scores for the first group of the plurality of query suggestions; determining a quality measure, indicative of quality of the ranked plurality of query suggestions, based on interaction of the user with respect to the ranked plurality of query suggestions; and updating the first model based on the quality measure.