It’s gets much larger (there’s the potion-multilingual-128M model, distilled from bge-m3 which has like 100 languages), so it gets to ~120m range for the lookup table (4x smaller if you’d do int8 quantization, so you could get to to 30-35mb).
A few years ago I wrote a post about implementing tf-idf in 150 lines of python. The data source it relied on was removed (turns out Yahoo! isn't as relevant anymore).