Multiple distance types in same index?

I think I know that the answer is “no” but just wanted confirmation / suggestions on how I could solve this problem.

Suppose I have some data that is of the following format:

{
  md5 : xxxx, #unique id
  float_vector: xxxxxx,
  binary_vector: xxxx,
  other_data : { 
     .....
   }
}

I would like to be able to do a knn query either using Euclidean distance on the float vector or Hamming distance on the binary vector.

Based on the docs, I don’t think this is possible as the distance type is per-index. So what might be a way to solve this? For example, would I ingest the main data in one index, the md5/float_vector in another index and md5/binary_vector in a third index. Then to do the search I do it in the appropriate index and then look up full records in the original index?