A computer-implemented method comprising: receiving a partial search query representing input provided by a user to a field of an interface for a search engine and predicting, by a complete term generator , the rest of a term entered by the user as the partial search query to generate one or more complete terms based on the partial search query; wherein the predicting step comprises communicating with a user input log and a prefix index which includes data that associates portions of terms or prefixes to complete terms, in order to predict the rest of the term entered by the user as the partial search query; in response to identifying, by a classifier , terms in the one or more complete terms that represent symptoms of one or more known medical conditions, classifying the partial search query as a symptom query; in response to determining that the partial search query is classified as a symptom query, identifying one or more medical conditions associated with the partial search query, wherein identifying further comprises identifying one or more differential diagnosis terms that are associated with a symptom of the one or more medical conditions; generating a suggested search query based at least on (i) the partial search query, (ii) one or more of the differential diagnosis terms, and (iii) one or more previously-suggested search queries that were not selected, wherein generating a suggested search query based on one or more previously-suggested search queries that were not selected comprises refraining from suggesting queries associated with medical conditions for which the user has previously failed to select a corresponding suggested search query; and providing the suggested search query in response to the partial search query, the suggested search query being provided as an auto-completion. receiving a partial search query representing input provided by a user to a field of an interface for a search engine and predicting, by a complete term generator , the rest of a term entered by the user as the partial search query to generate one or more complete terms based on the partial search query; wherein the predicting step comprises communicating with a user input log and a prefix index which includes data that associates portions of terms or prefixes to complete terms, in order to predict the rest of the term entered by the user as the partial search query; in response to identifying, by a classifier , terms in the one or more complete terms that represent symptoms of one or more known medical conditions, classifying the partial search query as a symptom query; in response to determining that the partial search query is classified as a symptom query, identifying one or more medical conditions associated with the partial search query, wherein identifying further comprises identifying one or more differential diagnosis terms that are associated with a symptom of the one or more medical conditions; generating a suggested search query based at least on (i) the partial search query, (ii) one or more of the differential diagnosis terms, and (iii) one or more previously-suggested search queries that were not selected, wherein generating a suggested search query based on one or more previously-suggested search queries that were not selected comprises refraining from suggesting queries associated with medical conditions for which the user has previously failed to select a corresponding suggested search query; and providing the suggested search query in response to the partial search query, the suggested search query being provided as an auto-completion. <EOS>