A computing device having adaptable image search, the computing device comprising: non-volatile memory configured to store a plurality of image recognition models, each image recognition model including text descriptions and at least one of the following: an image recognition algorithm, an optical character recognition algorithm, and a keyword matching algorithm; an image recognition program executed by a processor of the computing device and configured to: receive a query from a user, the query comprising text that is typed or converted from speech; receive a target image within which a search based on the query is to be performed; rank the image recognition models according to a confidence level for performing the search based on the query within the target image, the confidence level being determined based on at least a comparison between the query and respective text descriptions of the image recognition models; determine whether the confidence level of any of the image recognition models is above a confidence threshold for performing the search locally on the processor of the computing device; and upon determining that at least one confidence level of the image recognition models is above the confidence threshold, select at least one of the image recognition models whose confidence level is above the confidence threshold; perform the search based on the query within the target image for a target region of the target image using the at least one selected image recognition model locally on the processor; and return a search result to the user. non-volatile memory configured to store a plurality of image recognition models, each image recognition model including text descriptions and at least one of the following: an image recognition algorithm, an optical character recognition algorithm, and a keyword matching algorithm; an image recognition program executed by a processor of the computing device and configured to: receive a query from a user, the query comprising text that is typed or converted from speech; receive a target image within which a search based on the query is to be performed; rank the image recognition models according to a confidence level for performing the search based on the query within the target image, the confidence level being determined based on at least a comparison between the query and respective text descriptions of the image recognition models; determine whether the confidence level of any of the image recognition models is above a confidence threshold for performing the search locally on the processor of the computing device; and upon determining that at least one confidence level of the image recognition models is above the confidence threshold, select at least one of the image recognition models whose confidence level is above the confidence threshold; perform the search based on the query within the target image for a target region of the target image using the at least one selected image recognition model locally on the processor; and return a search result to the user. receive a query from a user, the query comprising text that is typed or converted from speech; receive a target image within which a search based on the query is to be performed; rank the image recognition models according to a confidence level for performing the search based on the query within the target image, the confidence level being determined based on at least a comparison between the query and respective text descriptions of the image recognition models; determine whether the confidence level of any of the image recognition models is above a confidence threshold for performing the search locally on the processor of the computing device; and upon determining that at least one confidence level of the image recognition models is above the confidence threshold, select at least one of the image recognition models whose confidence level is above the confidence threshold; perform the search based on the query within the target image for a target region of the target image using the at least one selected image recognition model locally on the processor; and return a search result to the user. select at least one of the image recognition models whose confidence level is above the confidence threshold; perform the search based on the query within the target image for a target region of the target image using the at least one selected image recognition model locally on the processor; and return a search result to the user.