🎉 We're excited to announce the release of txtai 9.0 🎉
If you like txtai, please remember to give it a ⭐!
9.0 adds first class support for sparse vector models (i.e. SPLADE), late interaction models (i.e. ColBERT), fixed dimensional encoding (i.e. MUVERA) and reranking pipelines.
There are also plenty of improvements and bug fixes!
New Features
- Add sparse vector scoring (#924)
- Add IVFFlat indexing for sparse vectors (#929)
- Add pgsparse scoring (#930)
- Add support for Inference-Free Splade (#934)
- Add support for late interaction models (#945, #954)
- Add ability to merge late interaction vectors into fixed dimensional MUVERA vectors (#952)
- Add Reranker pipeline (#960)
- Add what's new in txtai 9.0 notebook (#956)
- Add example notebook for Medical RAG Research with txtai (#921)
Improvements
- Add parameter to strip thinking tags from LLM outputs (#920)
- Update default Embeddings parameters (#925)
- Update sentence transformers pool call to use v5.0 features (#927)
- Improve hybrid scoring algorithm (#931)
- Pass kwargs to msgpack serializer (#932)
- Refactor ANN and Vectors packages into sparse + dense (#935)
- Refactor dense-only calls to accept sparse data (#936)
- Add checkpoint recovery to scoring and subindexes (#937)
- Modify pgvector ann index to build after data load (#938)
- Limit pgsparse input vectors to 1000 non-zero elements (#939)
- Change default sparse vector model (#940)
- Require sparse keyword/vector scores to be greater than 0 (#941)
- IVFSparse Improvements (#943)
- Change sparse vector normalization logic (#946)
- Change default behavior for pickle serialization (#949)
- Update similarity pipeline to support late interaction models (#953)
- Update benchmark scripts to support Similarity pipeline (#955)
- Update benchmarks script to support similarity and reranking pipelines (#961)
Bug Fixes
- Remove onnxxmltools workaround (#916)
- Textractor extracting text twice in versions >8.5.0 (#919)
- Update test to workaround HF Hub HTTP 429 issues (#926)
- Workaround issue with latest version of llama-cpp-python (#928)
- Ensure scores returned from scoring module are floats and not NumPy values (#933)
- Modify LiteLLM path detection logic (#947)
- Add build script workaround for LiteLLM issue (#957)
- Workaround build issue with latest version of Chonkie (#962)
- Update tests with exponential http backoff to work around constant HF Hub 429 errors (#963)