> Why do they need to pickle the analyze function? This problem didn't occur when I used my 30-line-implementation.

Well, maybe you could change it back to batch up docs and have each job construct its own analyser... Otherwise, yes, for good or bad, `Parallel` requires everything to be picklable. But here that means adding complexity to what was quite clean with a bunch of lambdas :(