v9.13.0
neuml/txtaiv9.13.0Aug 27, 2026by davidmezzetti
AI Summary
This release introduces LEMUR learned multi-vector retrieval, expands late-interaction retrieval capabilities, and refactors the MUVERA algorithm to use Torch. It also includes improvements to pooling methods and various bug fixes.
Key Highlights
- Addition of LEMUR: Learned Multi-Vector Retrieval
- Configurable mean centering for late pooling
- Max pooling feature added
- MUVERA algorithm converted from NumPy to Torch
New Features
- LEMUR learned multi-vector retrieval
- Configurable mean centering for late pooling
- Max pooling
Full Release Notes
**This release adds LEMUR learned multi-vector retrieval, expands late-interaction retrieval capabilities, and includes improvements to MUVERA and pooling along with a number of bug fixes.** See below for full details on the new features, improvements and bug fixes. New Features -------------------------- - Add LEMUR: Learned Multi-Vector Retrieval (#1024, #1164, #1169, #1170, #1171, #1172, #1190, #1194, #1196) @morgan-coded - Add configurable mean centering to late pooling (#1168) @morgan-coded - Add max pooling (#1185, #1186) @Aryan-Pardeshi Improvements -------------------------- - Convert MUVERA algorithm from NumPy to Torch (#1167, #1178) @Aryan-Pardeshi - Refactor late encoding logic to cleanup logic paths (#1180) - Add safeopen validation to retrieve task output (#1181) - Clamp default Faiss nprobe to nlist (#1203, #1206) @morgan-coded Bug Fixes -------------------------- - fix: create default agent tools on first use (#1174, #1175) @LHMQ878 - Latest version of docling causing Windows build errors (#1176) - fix(muvera): consume true token rows instead of batch-padded ones (#1177) @Anai-Guo - Fix OpenAI chat message selection (#1182, #1183) @FU-max-boop - PoolingFactory.method raises KeyError on a pooling config without pooling_mode_mean_tokens (#1187) @Aryan-Pardeshi - fix: rank CrossEncoder by a fixed label, not top-1 position (#1189, #1195) @St4r4x - Fix KeyError resolving a pooling method from a partial config (#1192) @arose26 - Fix WordVectors.index() silently dropping the checkpoint argument (#1197, #1198) @AmirF194 - fix(ann): exclude deleted rows from quantized numpy search results (#1201) @serhiizghama - fix(scoring): keep count() accurate when an id is deleted more than once (#1202) @sainikhiljuluri - Fix safetensors numpy/torch submodule imports (#1204, #1205) @Evhye38496 - Index zero and False values in the tabular pipeline (#1207) @devYRPauli