I still think this is the most useful python library I've ever made and I'm kind of sad it hasn't found its audience (probably because I need to make more compelling examples) https://github.com/aparrish/simpleneighbors
(it's a simplified wrapper for approximate nearest neighbor lookups that obviates the need to use or even think about e.g. annoy or scipy.kdtree)
@aparrish I hadn't seen it before, but I will definitely use it now, because I too have written those helper functions for annoy far too many times
This is how scipy.spatial came to be, you know. I got sick of people asking on the scipy mailing list how to find nearest neighbors, so I looked up a state-of-the-art approximate nearest neighbors algorithm and implemented it in scipy.spatial.kdtree. Fortunately for everyone it's been reimplemented in a much better way.
You might try submitting a pull request to scipy, they don't usually mind better interfaces.
@anne that's a good idea! I hadn't even considered making a pull request. hmm.