For scientific search experiments, you may like to consider using PyTerrier (which facilitates comparing multiple search model types - (sparse) vector space model; Boolean model; Binary Probabilistic Model; Support Vector Learning-to-Rank model; Divergence from Randomness model; (dense)embedding ranked retrieval models etc.).