Abstract: A method for providing speech recognition to a user on a mobile device are provided, the method comprising: 1) receiving, by a processor, audio data; 2) processing the audio data, by a speech recognition engine, to determine one or more corresponding text, wherein the processing comprises querying a local language model and a local acoustic model; and 3) displaying the one or more corresponding text on a screen of the mobile device.