I have a search input field with a requery function bound to the ng-change.
As of angular 1.3 this is way easier to accomplish, using ngModelOptions:
Syntax: {debounce: Miliseconds}