1. A method comprising: receiving, from a client, a request that includes both query data and a context vector; wherein the query data is a first set of one or more terms; wherein the context vector comprises a second set of one or more terms; wherein the query data is different from the context vector; wherein the request further includes data indicating that the first set of one or more terms is a set of one or more search terms entered by a user; wherein the request further includes data indicating that the second set of one or more terms is a set of one or more context terms representative of content being presented at the client during a time that the user entered the set of one or more search terms; in response to the request, generating, using at least the query data and the context vector, a search result comprising an aggregated ranked list of hits; wherein generating the search result includes performing a first search and a second search against a search corpus to generate, respectively, a first ranked list of hits and a second ranked list of hits; wherein the first search and the second search are each performed using search criteria and ranking criteria based on one of: a) the query data, but not the context vector; b) the context vector, but not the query data; or c) both the query data and the context vector; wherein at least one of the search criteria and the ranking criteria differs between the first search and the second search; and aggregating at least the first ranked list of hits with the second ranked list of hits; wherein the method is performed by one or more computing devices.