Yes - but not directly from the Facebook-binary full-model format – which hasn't yet saved the large internal arrays as separate files that can be mapped 1:1 into numpy arrays.
You'd want to create the FastTextKeyedVectors object in memory once, using one of the techniques mentioned, then use that Gensim's model object's own `.save()` method, to save it as a set of files on disk.
Then, when using `FastTextKeyedVectors.load()` from *that* save-path, you could use the `mmap='r'` option – which should ensure that the giant arrays (which make up most of the model's memory use) would use memory-mapping.
With memory-mapping, they'll only fully-load as they're accessed. (Given the way typical lookup or similarity operations access slots all across their arrays, there often isn't much net savings of memory or load-time via this deferral.)
But if you're reloading the same read-only vectors across multiple processes, memory-mapping lets the OS know that the separate processes can re-use the same mapped RAM – potentially saving a lot of redundant in-RAM duplication, in just that case.
- Gordon