1. A method of recognizing an utterance, comprising: transmitting context data associated with a first device to a second device; receiving from the second device a first speech recognition model, wherein the first speech recognition model is a subset of a second speech recognition model present at the second device, and wherein the first speech recognition model is based on the context data; determining whether the utterance can be recognized at the first device based on the first speech recognition model; if the utterance cannot be recognized at the first device, sending at least a portion of the utterance to the second device; and if the utterance can be recognized at the first device, performing an action associated with the recognized utterance.