Add safetensor OR bin loading logic + add loading tests #73
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
#69 actually broke the loading of recent stanford-nlp models (small/jina), as they do not have bin.
That is on me, I checked the colbertv2 repository that had both safe tensor AND bin and rushed to the conclusion that all of them had both.
This PR merge old safe tensor loading and the new bin loading to be able to load both type of repository.
We first try to load safe tensors and fall back to bin if not existing.
Also added some tests for loading different types of models (base, ST base, stanford-nlp bin/safetensor and PyLate), as well as a small check that should make sure that the model is not only loaded but correctly loaded.