I found that the Typeahead worked better with 2 adjustments (note my data set is almost 50,000 documents):
1. Set Autocomplete to 'off' for the typeahead field. Since autocomplete (like in Chome) give the choices but selecting them doesn't trigger the keyup event.
2. I found using the startKey, instead of the key, on the view datasource seemed to work better for the scope variable that contains the type ahead value.
I am still having issues where if you type fast the typeahead it doesn't use the whole typed text. Example type 'smith' fast it seem to use 's' or 'sm'. Type slow and the typeahead seem to work well. I assume this isn't specific to your design but a more general issue.