Releases: illuin-tech/colpali
Releases · illuin-tech/colpali
ColQwen3.5 and transformers ModernVBERT
What's Changed
- Prepare CHANGELOG for release 0.3.14 by @ManuelFay in #394
- chore(deps): bump actions/download-artifact from 7 to 8 by @dependabot[bot] in #396
- chore(deps): bump actions/upload-artifact from 6 to 7 by @dependabot[bot] in #395
- Add ColQwen3.5 and BiQwen3.5 model support by @athrael-soju in #400
- update modernvbert modeling by @paultltc in #404
Full Changelog: v0.3.14...v0.3.15
0.3.14: transformers 5
[0.3.14] - 2026-02-24
Added
- Add ColQwen3 and BiQwen3 support (model + processor).
- Add regression tests for
ColPaliProcessorto validate Transformers v5 modality registration and fallback loading behavior when a processor bundle is incomplete.
Changed
- Bump runtime compatibility to
transformers>=5.0.0,<6.0.0,peft>=0.18.0,<0.19.0, andaccelerate>=1.1.0,<2.0.0and atest torch. - Update supported Python versions to
>=3.10,<3.15and align CI workflows to Python 3.10–3.14. - Update all affected processor subclasses (
Qwen2/Qwen2.5/Qwen3,Gemma3,Idefics3,ModernVBert,Qwen2.5 Omni) to explicit__init__modality signatures required by Transformers v5ProcessorMixin.
Fixed
- Fix ColPali/PaliGemma model loading under Transformers v5 by adapting wrapper internals to new module layout and tied-weights expectations.
- Fix ColPali processor loading for checkpoints without a complete processor bundle by explicitly falling back to
AutoImageProcessor+AutoTokenizer. - Fix ColPali collator image token id lookup to use
convert_tokens_to_ids, compatible with Transformers v5 tokenizer backend changes. - Fix test collection on Python 3.14 by making
testsan explicit package (tests/__init__.py). - Fix CI formatting failure by applying
ruff formatto updated ColPali processing tests. - Fix ColQwen2 and ColQwen2.5 initialization across Transformers versions by resolving hidden size from either
config.hidden_sizeorconfig.text_config.hidden_size. - Call
post_init()in ColIdefics3 and ColModernVBert to align model initialization with Transformers v5 expectations. - Improve
VisualRetrieverCollatorimage token id resolution by preferring processor-levelimage_token_idwhen available. - Fix ColQwen2 and ColQwen2.5 LoRA checkpoint key remapping for
custom_text_proj(base_model.model.*-> model keys) to avoid missing/unexpected adapter keys at load time. - Fix ColPali LoRA adapter key remapping for
custom_text_proj(base_model.model.*-> model keys) and ignore expected missingmodel.lm_head.weightduring load. - Fix ColModernVBert LoRA adapter key remapping for
custom_text_proj(base_model.model.*-> model keys) to avoid missing/unexpected adapter keys at load time. - Fix ColQwen2.5-Omni LoRA adapter key remapping for
custom_text_proj(base_model.model.*-> model keys) to avoid missing/unexpected adapter keys at load time. - Fix ColQwen3 LoRA adapter key remapping for
custom_text_proj(base_model.model.*-> model keys) to avoid missing/unexpected adapter keys at load time. - Fix ColGemma3 LoRA adapter key remapping for
custom_text_proj(base_model.model.*-> model keys) to avoid missing/unexpected adapter keys at load time. - Ensure adapter loading remains robust across Transformers v5 base-load and PEFT adapter-load code paths, preventing silent fallback to randomly initialized projection adapters in retrieval models.
Tests
- Cover ColQwen3 processing and modeling with slow integration tests.
- Run targeted non-slow processing tests for Gemma3, Idefics3, ModernVBert, Qwen2, Qwen2.5 and Qwen3 after the Transformers v5 processor-signature migration.
- Run slow ColPali model-loading and query-forward integration tests under Transformers v5 to validate end-to-end loading behavior.
- Expand adapter checkpoint key remapping regression tests to cover ColPali, ColGemma3, ColQwen2, ColQwen2.5, ColQwen3, ColQwen2.5-Omni and ColModernVBert, including registry-backed conversion checks where needed.
v0.3.13: ModernVBert
[0.3.13] - 2025-11-15
Added
- Add ModernVBERT to the list of supported models
Fixed
- Fix multi hard negatives training
- Fix multi dataset sampling in order to weight probability of being picked by the size of the dataset
Changed
- Bump transformer, torch and peft support
v0.3.12
[0.3.12] - 2025-07-16
Added
- Video processing for ColQwen-Omni
Fixed
- Fixed loading of PaliGemma and ColPali checkpoints (bug introduced in transformers 4.52)
- Fixed loading of SmolVLM (Idefics3) processors that didn't transmit image_seq_len (bug introduced in transformers 4.52)
v0.3.11
[0.3.11] - 2025-07-04
Added
- Added BiIdefics3 modeling and processor.
- [Breaking] (minor) Remove support for context-augmented queries and images
- Uniform processor docstring
- Update the collator to align with the new function signatures
- Add a
process_textmethod to replace theprocess_queryone. We keep support of the last one for the moment, but we'll deprecate it later - Introduce the ColPaliEngineDataset and Corpus class. This is to delegate all data loading to a standard format before training. The concept is for users to override the dataset class if needed for their specific usecases.
- Added smooth_max option to loss functions
- Added weighted in_batch terms for losses with hard negatives
- Added an option to filter out (presumably) false negatives during online training
- Added a training script in pure torch without the HF trainer
- Added a sampler to train with multiple datasets at once, with each batch coming from the same source. (experimental, might still need testing on multi-GPU)
- Adds score normalization to LI models (diving by token length) for betetr performance with CE loss
- Add experimental PLAID support
Changed
- Stops pooling queries between GPUs and instead pools only documents, enabling training with way bigger batch sizes. We recomment training with accelerate launch now.
- Updated loss functions for better abstractions and coherence between the various loss functions. Small speedups and less memory requirements.
v0.3.10: minor updates & dependency bumps
[0.3.10] - 2025-04-18
Added
- Add
LambdaTokenPoolerto allow for custom token pooling functions. - Added training losses with negatives to InfoNCE type losses
Changed
- Fix similarity map helpers for ColQwen2 and ColQwen2.5.
- [Breaking] (minor) Remove support for Idefics2-based models.
- Disable multithreading in
HierarchicalTokenPoolerifnum_workersis not provided or is 1. - [Breaking] (minor) Make
pool_factoran argument ofpool_embeddingsinstead of aHierarchicalTokenPoolerclass attribute - Bump dependencies for transformers, torch, peft, pillow, accelerate, etc...
v0.3.9
Added
- Allow user to pass custom textual context for passage inference
- Add ColQwen2.5 support and BiQwen2.5 support
- Add support for token pooling with
HierarchicalTokenPooler. - Allow user to specify the maximum number of image tokens in the resized images in
ColQwen2ProcessorandColQwen2_5_Processor.
Changed
- Warn about evaluation being different from Vidore, and do not store results to prevent confusion.
- Remove duplicate resize code in
ColQwen2ProcessorandColQwen2_5_Processor. - Simplify sequence padding for pixel values in
ColQwen2ProcessorandColQwen2_5_Processor. - Remove deprecated evaluation (
CustomRetrievalEvaluator) from trainer - Refactor the collator classes
- Make
processorinput compulsory inColModelTrainingConfig - Make
BaseVisualRetrieverProcessorinherit fromProcessorMixin - Remove unused
tokenizerfield fromColModelTrainingConfig - Bump transformers to
4.50.0and torch to2.6.0to keep up with the latest versions. Note that this leads to errors on mps until transformers 4.50.4 is released.
v0.3.8
v0.3.7
v0.3.6
Description
Loosen default dependencies, but keep stricter dep ranges for the train dependency group.
Features
Added
- Add expected scores in ColPali E2E test
Changed
- Loosen package dependencies
Full Changelog: v0.3.5...v0.3.6