1. A method for operating a virtual assistant on an electronic device, the method comprising: receiving, at the electronic device, an audio input; monitoring the audio input to identify a first spoken user input; identifying the first spoken user input in the audio input; determining whether to respond to the first spoken user input based on contextual information associated with the first spoken user input, wherein the contextual information comprises a determined distance between a user and the electronic device when the first spoken user input was received, the determined distance being based on the first spoken user input, wherein determining whether to respond to the first spoken user input comprises calculating a likelihood score that the virtual assistant should respond to the first spoken user input based on the contextual information associated with the first spoken user input, comparing the likelihood score to a threshold value, decreasing the likelihood score in response to the distance being greater than a threshold distance, and increasing the likelihood score in response to the distance being less than the threshold distance; in response to a determination to respond to the first spoken user input: generating a response to the first spoken user input; and monitoring the audio input to identify a second spoken user input; and in response to a determination not to respond to the first spoken user input, monitoring the audio input to identify the second spoken user input without generating the response to the first spoken user input.