Integrate with Sentence Transformers v5.4
Hello!
Pull Request overview
- Ensure compatibility with the upcoming Sentence Transformers version
Details
Sentence Transformers v5.4 will release soon, and it will distribute the cache_dir parameter in the model_kwargs, config_kwargs, etc. This breaks with your custom Sentence Transformers module, as cache_dir=cache_dir, **model_kwargs results in 2 parameters being passed for cache_dir:
TypeError: __init__() got multiple values for keyword argument 'cache_dir'
This PR prevents this issue, while also preserving functionality for older versions.
Beyond the cache_dir fix, this also removes the prompts in the configuration: the custom Transformer module already automatically includes prompts, and so if encode_query/encode_document was used, the prompt would be prepended once via those methods and once in the custom Transformer module, resulting in too many vision tokens. Lastly, I added a modality property as required for the upcoming Sentence Transformers v5.4 release.
Feel free to merge this PR already, so it works immediately on day-0 when the new Sentence Transformers version releases.
- Tom Aarsen