nothuggingfaceatall
commited on
Upload folder using huggingface_hub
Browse files- .gitattributes +1 -0
- README.md +127 -0
- adapter_config.json +29 -0
- adapter_model.safetensors +3 -0
- added_tokens.json +24 -0
- chat_template.json +3 -0
- checkpoint-1800/.gitattributes +36 -0
- checkpoint-1800/README.md +127 -0
- checkpoint-1800/adapter_config.json +29 -0
- checkpoint-1800/adapter_model.safetensors +3 -0
- checkpoint-1800/added_tokens.json +24 -0
- checkpoint-1800/chat_template.json +3 -0
- checkpoint-1800/git_hash.txt +1 -0
- checkpoint-1800/merges.txt +0 -0
- checkpoint-1800/preprocessor_config.json +29 -0
- checkpoint-1800/special_tokens_map.json +31 -0
- checkpoint-1800/tokenizer.json +3 -0
- checkpoint-1800/tokenizer_config.json +209 -0
- checkpoint-1800/training_config.yml +72 -0
- checkpoint-1800/vocab.json +0 -0
- git_hash.txt +1 -0
- merges.txt +0 -0
- preprocessor_config.json +29 -0
- results.json +1 -0
- special_tokens_map.json +31 -0
- tokenizer.json +3 -0
- tokenizer_config.json +209 -0
- training_config.yml +72 -0
- vocab.json +0 -0
.gitattributes
CHANGED
@@ -33,3 +33,4 @@ saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
|
33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
|
|
|
33 |
*.zip filter=lfs diff=lfs merge=lfs -text
|
34 |
*.zst filter=lfs diff=lfs merge=lfs -text
|
35 |
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
36 |
+
tokenizer.json filter=lfs diff=lfs merge=lfs -text
|
README.md
ADDED
@@ -0,0 +1,127 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
---
|
2 |
+
license: cc-by-nc-4.0
|
3 |
+
datasets:
|
4 |
+
- openbmb/VisRAG-Ret-Train-Synthetic-data
|
5 |
+
- openbmb/VisRAG-Ret-Train-In-domain-data
|
6 |
+
- Metric-AI/rag_docmatix_100k
|
7 |
+
- vidore/colpali_train_set
|
8 |
+
- llamaindex/vdr-multilingual-train
|
9 |
+
language:
|
10 |
+
- en
|
11 |
+
- fr
|
12 |
+
- es
|
13 |
+
- it
|
14 |
+
- de
|
15 |
+
base_model:
|
16 |
+
- Qwen/Qwen2.5-VL-3B-Instruct
|
17 |
+
tags:
|
18 |
+
- vidore
|
19 |
+
- multimodal_embedding
|
20 |
+
- multilingual_embedding
|
21 |
+
- Text-to-Visual Document (T→VD) retrieval
|
22 |
+
library_name: peft
|
23 |
+
---
|
24 |
+
# ColQwen2.5-3b-multilingual: Multilingual Visual Retriever based on Qwen2.5-VL-3B-Instruct with ColBERT strategy
|
25 |
+
|
26 |
+
### This is the base version trained on 4xA100 80GB with per_device_batch_size=128 and gradient_accumulation_steps=2 for 5 epoch.
|
27 |
+
|
28 |
+
ColQwen is a model based on a novel model architecture and training strategy based on Vision Language Models (VLMs) to efficiently index documents from their visual features.
|
29 |
+
It is a [Qwen2.5-VL-3B](https://huggingface.co/Qwen/Qwen2.5-VL-3B-Instruct) extension that generates [ColBERT](https://arxiv.org/abs/2004.12832)- style multi-vector representations of text and images.
|
30 |
+
It was introduced in the paper [ColPali: Efficient Document Retrieval with Vision Language Models](https://arxiv.org/abs/2407.01449) and first released in [this repository](https://github.com/ManuelFay/colpali)
|
31 |
+
|
32 |
+
<p align="center"><img width=800 src="https://github.com/illuin-tech/colpali/blob/main/assets/colpali_architecture.webp?raw=true"/></p>
|
33 |
+
|
34 |
+
## Version specificity
|
35 |
+
|
36 |
+
|
37 |
+
This model takes dynamic image resolutions in input and does not resize them, changing their aspect ratio as in ColPali.
|
38 |
+
Maximal resolution is set so that 768 image patches are created at most. Experiments show clear improvements with larger amounts of image patches, at the cost of memory requirements.
|
39 |
+
|
40 |
+
This version is trained with `colpali-engine==0.3.7`.
|
41 |
+
|
42 |
+
## Data
|
43 |
+
- **Synthetic data**: Selected and preprocessed from the `openbmb/VisRAG-Ret-Train-Synthetic-data` dataset.
|
44 |
+
- **In-domain VQA dataset**: Drawn from `openbmb/VisRAG-Ret-Train-In-domain-data`.
|
45 |
+
- **Docmatix dataset**: Extracted from the `Metric-AI/rag_docmatix_100k` dataset.
|
46 |
+
- **Colpali dataset**: Taken from `vidore/colpali_train_set`.
|
47 |
+
- **Multilingual dataset**: Taken from `llamaindex/vdr-multilingual-train`.
|
48 |
+
|
49 |
+
|
50 |
+
## Model Training
|
51 |
+
|
52 |
+
### Parameters
|
53 |
+
We train models use low-rank adapters ([LoRA](https://arxiv.org/abs/2106.09685))
|
54 |
+
with `alpha=128` and `r=128` on the transformer layers from the language model,
|
55 |
+
as well as the final randomly initialized projection layer, and use a `paged_adamw_8bit` optimizer.
|
56 |
+
We train on an 4xA100 GPU setup with distributed data parallelism (via accelerate), a learning rate of 2e-4 with linear decay with 1% warmup steps, batch size per device is 128, gradient accumulation steps are 2, in `bfloat16` format
|
57 |
+
|
58 |
+
## Usage
|
59 |
+
|
60 |
+
Make sure `colpali-engine` is installed from source or with a version superior to 0.3.1.
|
61 |
+
`transformers` version must be > 4.45.0.
|
62 |
+
|
63 |
+
```bash
|
64 |
+
pip install git+https://github.com/illuin-tech/colpali
|
65 |
+
```
|
66 |
+
|
67 |
+
```python
|
68 |
+
import torch
|
69 |
+
from PIL import Image
|
70 |
+
|
71 |
+
from colpali_engine.models import ColQwen2_5, ColQwen2_5_Processor
|
72 |
+
|
73 |
+
model = ColQwen2_5.from_pretrained(
|
74 |
+
"Metric-AI/colqwen2.5-3b-multilingual",
|
75 |
+
torch_dtype=torch.bfloat16,
|
76 |
+
device_map="cuda:0", # or "mps" if on Apple Silicon
|
77 |
+
).eval()
|
78 |
+
processor = ColQwen2_5_Processor.from_pretrained("Metric-AI/colqwen2.5-3b-multilingual")
|
79 |
+
|
80 |
+
# Your inputs
|
81 |
+
images = [
|
82 |
+
Image.new("RGB", (32, 32), color="white"),
|
83 |
+
Image.new("RGB", (16, 16), color="black"),
|
84 |
+
]
|
85 |
+
queries = [
|
86 |
+
"Is attention really all you need?",
|
87 |
+
"What is the amount of bananas farmed in Salvador?",
|
88 |
+
]
|
89 |
+
|
90 |
+
# Process the inputs
|
91 |
+
batch_images = processor.process_images(images).to(model.device)
|
92 |
+
batch_queries = processor.process_queries(queries).to(model.device)
|
93 |
+
|
94 |
+
# Forward pass
|
95 |
+
with torch.no_grad():
|
96 |
+
image_embeddings = model(**batch_images)
|
97 |
+
query_embeddings = model(**batch_queries)
|
98 |
+
|
99 |
+
scores = processor.score_multi_vector(query_embeddings, image_embeddings)
|
100 |
+
```
|
101 |
+
|
102 |
+
|
103 |
+
## Limitations
|
104 |
+
|
105 |
+
- **Focus**: The model primarily focuses on PDF-type documents and high-ressources languages, potentially limiting its generalization to other document types or less represented languages.
|
106 |
+
- **Support**: The model relies on multi-vector retreiving derived from the ColBERT late interaction mechanism, which may require engineering efforts to adapt to widely used vector retrieval frameworks that lack native multi-vector support.
|
107 |
+
|
108 |
+
## License
|
109 |
+
|
110 |
+
ColQwen2.5's vision language backbone model (Qwen2.5-VL) is under `apache2.0` license. The adapters attached to the model are under MIT license.
|
111 |
+
|
112 |
+
|
113 |
+
## Citation
|
114 |
+
|
115 |
+
If you use this models from this organization in your research, please cite the original paper as follows:
|
116 |
+
|
117 |
+
```bibtex
|
118 |
+
@misc{faysse2024colpaliefficientdocumentretrieval,
|
119 |
+
title={ColPali: Efficient Document Retrieval with Vision Language Models},
|
120 |
+
author={Manuel Faysse and Hugues Sibille and Tony Wu and Bilel Omrani and Gautier Viaud and Céline Hudelot and Pierre Colombo},
|
121 |
+
year={2024},
|
122 |
+
eprint={2407.01449},
|
123 |
+
archivePrefix={arXiv},
|
124 |
+
primaryClass={cs.IR},
|
125 |
+
url={https://arxiv.org/abs/2407.01449},
|
126 |
+
}
|
127 |
+
```
|
adapter_config.json
ADDED
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"alpha_pattern": {},
|
3 |
+
"auto_mapping": null,
|
4 |
+
"base_model_name_or_path": "Qwen/Qwen2.5-VL-3B-Instruct",
|
5 |
+
"bias": "none",
|
6 |
+
"eva_config": null,
|
7 |
+
"exclude_modules": null,
|
8 |
+
"fan_in_fan_out": false,
|
9 |
+
"inference_mode": true,
|
10 |
+
"init_lora_weights": "gaussian",
|
11 |
+
"layer_replication": null,
|
12 |
+
"layers_pattern": null,
|
13 |
+
"layers_to_transform": null,
|
14 |
+
"loftq_config": {},
|
15 |
+
"lora_alpha": 128,
|
16 |
+
"lora_bias": false,
|
17 |
+
"lora_dropout": 0.1,
|
18 |
+
"megatron_config": null,
|
19 |
+
"megatron_core": "megatron.core",
|
20 |
+
"modules_to_save": null,
|
21 |
+
"peft_type": "LORA",
|
22 |
+
"r": 128,
|
23 |
+
"rank_pattern": {},
|
24 |
+
"revision": null,
|
25 |
+
"target_modules": "(.*(model).*(down_proj|gate_proj|up_proj|k_proj|q_proj|v_proj|o_proj).*$|.*(custom_text_proj).*$)",
|
26 |
+
"task_type": "FEATURE_EXTRACTION",
|
27 |
+
"use_dora": false,
|
28 |
+
"use_rslora": false
|
29 |
+
}
|
adapter_model.safetensors
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:2571d83e0aefef4fc18a8d8b5d35e9c1812dfa3ed8d8c0b00c221ae3580606c1
|
3 |
+
size 959057112
|
added_tokens.json
ADDED
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"</tool_call>": 151658,
|
3 |
+
"<tool_call>": 151657,
|
4 |
+
"<|box_end|>": 151649,
|
5 |
+
"<|box_start|>": 151648,
|
6 |
+
"<|endoftext|>": 151643,
|
7 |
+
"<|file_sep|>": 151664,
|
8 |
+
"<|fim_middle|>": 151660,
|
9 |
+
"<|fim_pad|>": 151662,
|
10 |
+
"<|fim_prefix|>": 151659,
|
11 |
+
"<|fim_suffix|>": 151661,
|
12 |
+
"<|im_end|>": 151645,
|
13 |
+
"<|im_start|>": 151644,
|
14 |
+
"<|image_pad|>": 151655,
|
15 |
+
"<|object_ref_end|>": 151647,
|
16 |
+
"<|object_ref_start|>": 151646,
|
17 |
+
"<|quad_end|>": 151651,
|
18 |
+
"<|quad_start|>": 151650,
|
19 |
+
"<|repo_name|>": 151663,
|
20 |
+
"<|video_pad|>": 151656,
|
21 |
+
"<|vision_end|>": 151653,
|
22 |
+
"<|vision_pad|>": 151654,
|
23 |
+
"<|vision_start|>": 151652
|
24 |
+
}
|
chat_template.json
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"chat_template": "{% set image_count = namespace(value=0) %}{% set video_count = namespace(value=0) %}{% for message in messages %}{% if loop.first and message['role'] != 'system' %}<|im_start|>system\nYou are a helpful assistant.<|im_end|>\n{% endif %}<|im_start|>{{ message['role'] }}\n{% if message['content'] is string %}{{ message['content'] }}<|im_end|>\n{% else %}{% for content in message['content'] %}{% if content['type'] == 'image' or 'image' in content or 'image_url' in content %}{% set image_count.value = image_count.value + 1 %}{% if add_vision_id %}Picture {{ image_count.value }}: {% endif %}<|vision_start|><|image_pad|><|vision_end|>{% elif content['type'] == 'video' or 'video' in content %}{% set video_count.value = video_count.value + 1 %}{% if add_vision_id %}Video {{ video_count.value }}: {% endif %}<|vision_start|><|video_pad|><|vision_end|>{% elif 'text' in content %}{{ content['text'] }}{% endif %}{% endfor %}<|im_end|>\n{% endif %}{% endfor %}{% if add_generation_prompt %}<|im_start|>assistant\n{% endif %}"
|
3 |
+
}
|
checkpoint-1800/.gitattributes
ADDED
@@ -0,0 +1,36 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
*.7z filter=lfs diff=lfs merge=lfs -text
|
2 |
+
*.arrow filter=lfs diff=lfs merge=lfs -text
|
3 |
+
*.bin filter=lfs diff=lfs merge=lfs -text
|
4 |
+
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
5 |
+
*.ckpt filter=lfs diff=lfs merge=lfs -text
|
6 |
+
*.ftz filter=lfs diff=lfs merge=lfs -text
|
7 |
+
*.gz filter=lfs diff=lfs merge=lfs -text
|
8 |
+
*.h5 filter=lfs diff=lfs merge=lfs -text
|
9 |
+
*.joblib filter=lfs diff=lfs merge=lfs -text
|
10 |
+
*.lfs.* filter=lfs diff=lfs merge=lfs -text
|
11 |
+
*.mlmodel filter=lfs diff=lfs merge=lfs -text
|
12 |
+
*.model filter=lfs diff=lfs merge=lfs -text
|
13 |
+
*.msgpack filter=lfs diff=lfs merge=lfs -text
|
14 |
+
*.npy filter=lfs diff=lfs merge=lfs -text
|
15 |
+
*.npz filter=lfs diff=lfs merge=lfs -text
|
16 |
+
*.onnx filter=lfs diff=lfs merge=lfs -text
|
17 |
+
*.ot filter=lfs diff=lfs merge=lfs -text
|
18 |
+
*.parquet filter=lfs diff=lfs merge=lfs -text
|
19 |
+
*.pb filter=lfs diff=lfs merge=lfs -text
|
20 |
+
*.pickle filter=lfs diff=lfs merge=lfs -text
|
21 |
+
*.pkl filter=lfs diff=lfs merge=lfs -text
|
22 |
+
*.pt filter=lfs diff=lfs merge=lfs -text
|
23 |
+
*.pth filter=lfs diff=lfs merge=lfs -text
|
24 |
+
*.rar filter=lfs diff=lfs merge=lfs -text
|
25 |
+
*.safetensors filter=lfs diff=lfs merge=lfs -text
|
26 |
+
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
|
27 |
+
*.tar.* filter=lfs diff=lfs merge=lfs -text
|
28 |
+
*.tar filter=lfs diff=lfs merge=lfs -text
|
29 |
+
*.tflite filter=lfs diff=lfs merge=lfs -text
|
30 |
+
*.tgz filter=lfs diff=lfs merge=lfs -text
|
31 |
+
*.wasm filter=lfs diff=lfs merge=lfs -text
|
32 |
+
*.xz filter=lfs diff=lfs merge=lfs -text
|
33 |
+
*.zip filter=lfs diff=lfs merge=lfs -text
|
34 |
+
*.zst filter=lfs diff=lfs merge=lfs -text
|
35 |
+
*tfevents* filter=lfs diff=lfs merge=lfs -text
|
36 |
+
tokenizer.json filter=lfs diff=lfs merge=lfs -text
|
checkpoint-1800/README.md
ADDED
@@ -0,0 +1,127 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
---
|
2 |
+
license: cc-by-nc-4.0
|
3 |
+
datasets:
|
4 |
+
- openbmb/VisRAG-Ret-Train-Synthetic-data
|
5 |
+
- openbmb/VisRAG-Ret-Train-In-domain-data
|
6 |
+
- Metric-AI/rag_docmatix_100k
|
7 |
+
- vidore/colpali_train_set
|
8 |
+
- llamaindex/vdr-multilingual-train
|
9 |
+
language:
|
10 |
+
- en
|
11 |
+
- fr
|
12 |
+
- es
|
13 |
+
- it
|
14 |
+
- de
|
15 |
+
base_model:
|
16 |
+
- Qwen/Qwen2.5-VL-3B-Instruct
|
17 |
+
tags:
|
18 |
+
- vidore
|
19 |
+
- multimodal_embedding
|
20 |
+
- multilingual_embedding
|
21 |
+
- Text-to-Visual Document (T→VD) retrieval
|
22 |
+
library_name: peft
|
23 |
+
---
|
24 |
+
# ColQwen2.5-3b-multilingual: Multilingual Visual Retriever based on Qwen2.5-VL-3B-Instruct with ColBERT strategy
|
25 |
+
|
26 |
+
### This is the base version trained on 4xA100 80GB with per_device_batch_size=128 and gradient_accumulation_steps=2 for 5 epoch.
|
27 |
+
|
28 |
+
ColQwen is a model based on a novel model architecture and training strategy based on Vision Language Models (VLMs) to efficiently index documents from their visual features.
|
29 |
+
It is a [Qwen2.5-VL-3B](https://huggingface.co/Qwen/Qwen2.5-VL-3B-Instruct) extension that generates [ColBERT](https://arxiv.org/abs/2004.12832)- style multi-vector representations of text and images.
|
30 |
+
It was introduced in the paper [ColPali: Efficient Document Retrieval with Vision Language Models](https://arxiv.org/abs/2407.01449) and first released in [this repository](https://github.com/ManuelFay/colpali)
|
31 |
+
|
32 |
+
<p align="center"><img width=800 src="https://github.com/illuin-tech/colpali/blob/main/assets/colpali_architecture.webp?raw=true"/></p>
|
33 |
+
|
34 |
+
## Version specificity
|
35 |
+
|
36 |
+
|
37 |
+
This model takes dynamic image resolutions in input and does not resize them, changing their aspect ratio as in ColPali.
|
38 |
+
Maximal resolution is set so that 768 image patches are created at most. Experiments show clear improvements with larger amounts of image patches, at the cost of memory requirements.
|
39 |
+
|
40 |
+
This version is trained with `colpali-engine==0.3.7`.
|
41 |
+
|
42 |
+
## Data
|
43 |
+
- **Synthetic data**: Selected and preprocessed from the `openbmb/VisRAG-Ret-Train-Synthetic-data` dataset.
|
44 |
+
- **In-domain VQA dataset**: Drawn from `openbmb/VisRAG-Ret-Train-In-domain-data`.
|
45 |
+
- **Docmatix dataset**: Extracted from the `Metric-AI/rag_docmatix_100k` dataset.
|
46 |
+
- **Colpali dataset**: Taken from `vidore/colpali_train_set`.
|
47 |
+
- **Multilingual dataset**: Taken from `llamaindex/vdr-multilingual-train`.
|
48 |
+
|
49 |
+
|
50 |
+
## Model Training
|
51 |
+
|
52 |
+
### Parameters
|
53 |
+
We train models use low-rank adapters ([LoRA](https://arxiv.org/abs/2106.09685))
|
54 |
+
with `alpha=128` and `r=128` on the transformer layers from the language model,
|
55 |
+
as well as the final randomly initialized projection layer, and use a `paged_adamw_8bit` optimizer.
|
56 |
+
We train on an 4xA100 GPU setup with distributed data parallelism (via accelerate), a learning rate of 2e-4 with linear decay with 1% warmup steps, batch size per device is 128, gradient accumulation steps are 2, in `bfloat16` format
|
57 |
+
|
58 |
+
## Usage
|
59 |
+
|
60 |
+
Make sure `colpali-engine` is installed from source or with a version superior to 0.3.1.
|
61 |
+
`transformers` version must be > 4.45.0.
|
62 |
+
|
63 |
+
```bash
|
64 |
+
pip install git+https://github.com/illuin-tech/colpali
|
65 |
+
```
|
66 |
+
|
67 |
+
```python
|
68 |
+
import torch
|
69 |
+
from PIL import Image
|
70 |
+
|
71 |
+
from colpali_engine.models import ColQwen2_5, ColQwen2_5_Processor
|
72 |
+
|
73 |
+
model = ColQwen2_5.from_pretrained(
|
74 |
+
"Metric-AI/colqwen2.5-3b-multilingual",
|
75 |
+
torch_dtype=torch.bfloat16,
|
76 |
+
device_map="cuda:0", # or "mps" if on Apple Silicon
|
77 |
+
).eval()
|
78 |
+
processor = ColQwen2_5_Processor.from_pretrained("Metric-AI/colqwen2.5-3b-multilingual")
|
79 |
+
|
80 |
+
# Your inputs
|
81 |
+
images = [
|
82 |
+
Image.new("RGB", (32, 32), color="white"),
|
83 |
+
Image.new("RGB", (16, 16), color="black"),
|
84 |
+
]
|
85 |
+
queries = [
|
86 |
+
"Is attention really all you need?",
|
87 |
+
"What is the amount of bananas farmed in Salvador?",
|
88 |
+
]
|
89 |
+
|
90 |
+
# Process the inputs
|
91 |
+
batch_images = processor.process_images(images).to(model.device)
|
92 |
+
batch_queries = processor.process_queries(queries).to(model.device)
|
93 |
+
|
94 |
+
# Forward pass
|
95 |
+
with torch.no_grad():
|
96 |
+
image_embeddings = model(**batch_images)
|
97 |
+
query_embeddings = model(**batch_queries)
|
98 |
+
|
99 |
+
scores = processor.score_multi_vector(query_embeddings, image_embeddings)
|
100 |
+
```
|
101 |
+
|
102 |
+
|
103 |
+
## Limitations
|
104 |
+
|
105 |
+
- **Focus**: The model primarily focuses on PDF-type documents and high-ressources languages, potentially limiting its generalization to other document types or less represented languages.
|
106 |
+
- **Support**: The model relies on multi-vector retreiving derived from the ColBERT late interaction mechanism, which may require engineering efforts to adapt to widely used vector retrieval frameworks that lack native multi-vector support.
|
107 |
+
|
108 |
+
## License
|
109 |
+
|
110 |
+
ColQwen2.5's vision language backbone model (Qwen2.5-VL) is under `apache2.0` license. The adapters attached to the model are under MIT license.
|
111 |
+
|
112 |
+
|
113 |
+
## Citation
|
114 |
+
|
115 |
+
If you use this models from this organization in your research, please cite the original paper as follows:
|
116 |
+
|
117 |
+
```bibtex
|
118 |
+
@misc{faysse2024colpaliefficientdocumentretrieval,
|
119 |
+
title={ColPali: Efficient Document Retrieval with Vision Language Models},
|
120 |
+
author={Manuel Faysse and Hugues Sibille and Tony Wu and Bilel Omrani and Gautier Viaud and Céline Hudelot and Pierre Colombo},
|
121 |
+
year={2024},
|
122 |
+
eprint={2407.01449},
|
123 |
+
archivePrefix={arXiv},
|
124 |
+
primaryClass={cs.IR},
|
125 |
+
url={https://arxiv.org/abs/2407.01449},
|
126 |
+
}
|
127 |
+
```
|
checkpoint-1800/adapter_config.json
ADDED
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"alpha_pattern": {},
|
3 |
+
"auto_mapping": null,
|
4 |
+
"base_model_name_or_path": "Qwen/Qwen2.5-VL-3B-Instruct",
|
5 |
+
"bias": "none",
|
6 |
+
"eva_config": null,
|
7 |
+
"exclude_modules": null,
|
8 |
+
"fan_in_fan_out": false,
|
9 |
+
"inference_mode": true,
|
10 |
+
"init_lora_weights": "gaussian",
|
11 |
+
"layer_replication": null,
|
12 |
+
"layers_pattern": null,
|
13 |
+
"layers_to_transform": null,
|
14 |
+
"loftq_config": {},
|
15 |
+
"lora_alpha": 128,
|
16 |
+
"lora_bias": false,
|
17 |
+
"lora_dropout": 0.1,
|
18 |
+
"megatron_config": null,
|
19 |
+
"megatron_core": "megatron.core",
|
20 |
+
"modules_to_save": null,
|
21 |
+
"peft_type": "LORA",
|
22 |
+
"r": 128,
|
23 |
+
"rank_pattern": {},
|
24 |
+
"revision": null,
|
25 |
+
"target_modules": "(.*(model).*(down_proj|gate_proj|up_proj|k_proj|q_proj|v_proj|o_proj).*$|.*(custom_text_proj).*$)",
|
26 |
+
"task_type": "FEATURE_EXTRACTION",
|
27 |
+
"use_dora": false,
|
28 |
+
"use_rslora": false
|
29 |
+
}
|
checkpoint-1800/adapter_model.safetensors
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:f51b1f9f6e343dffcc47e839d0c5957fd9758f1892dc4cacf39ce8c04e2d1bde
|
3 |
+
size 959057112
|
checkpoint-1800/added_tokens.json
ADDED
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"</tool_call>": 151658,
|
3 |
+
"<tool_call>": 151657,
|
4 |
+
"<|box_end|>": 151649,
|
5 |
+
"<|box_start|>": 151648,
|
6 |
+
"<|endoftext|>": 151643,
|
7 |
+
"<|file_sep|>": 151664,
|
8 |
+
"<|fim_middle|>": 151660,
|
9 |
+
"<|fim_pad|>": 151662,
|
10 |
+
"<|fim_prefix|>": 151659,
|
11 |
+
"<|fim_suffix|>": 151661,
|
12 |
+
"<|im_end|>": 151645,
|
13 |
+
"<|im_start|>": 151644,
|
14 |
+
"<|image_pad|>": 151655,
|
15 |
+
"<|object_ref_end|>": 151647,
|
16 |
+
"<|object_ref_start|>": 151646,
|
17 |
+
"<|quad_end|>": 151651,
|
18 |
+
"<|quad_start|>": 151650,
|
19 |
+
"<|repo_name|>": 151663,
|
20 |
+
"<|video_pad|>": 151656,
|
21 |
+
"<|vision_end|>": 151653,
|
22 |
+
"<|vision_pad|>": 151654,
|
23 |
+
"<|vision_start|>": 151652
|
24 |
+
}
|
checkpoint-1800/chat_template.json
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"chat_template": "{% set image_count = namespace(value=0) %}{% set video_count = namespace(value=0) %}{% for message in messages %}{% if loop.first and message['role'] != 'system' %}<|im_start|>system\nYou are a helpful assistant.<|im_end|>\n{% endif %}<|im_start|>{{ message['role'] }}\n{% if message['content'] is string %}{{ message['content'] }}<|im_end|>\n{% else %}{% for content in message['content'] %}{% if content['type'] == 'image' or 'image' in content or 'image_url' in content %}{% set image_count.value = image_count.value + 1 %}{% if add_vision_id %}Picture {{ image_count.value }}: {% endif %}<|vision_start|><|image_pad|><|vision_end|>{% elif content['type'] == 'video' or 'video' in content %}{% set video_count.value = video_count.value + 1 %}{% if add_vision_id %}Video {{ video_count.value }}: {% endif %}<|vision_start|><|video_pad|><|vision_end|>{% elif 'text' in content %}{{ content['text'] }}{% endif %}{% endfor %}<|im_end|>\n{% endif %}{% endfor %}{% if add_generation_prompt %}<|im_start|>assistant\n{% endif %}"
|
3 |
+
}
|
checkpoint-1800/git_hash.txt
ADDED
@@ -0,0 +1 @@
|
|
|
|
|
1 |
+
59e94a92790b67bd60507608c3115a2e48f83a07
|
checkpoint-1800/merges.txt
ADDED
The diff for this file is too large to render.
See raw diff
|
|
checkpoint-1800/preprocessor_config.json
ADDED
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"do_convert_rgb": true,
|
3 |
+
"do_normalize": true,
|
4 |
+
"do_rescale": true,
|
5 |
+
"do_resize": true,
|
6 |
+
"image_mean": [
|
7 |
+
0.48145466,
|
8 |
+
0.4578275,
|
9 |
+
0.40821073
|
10 |
+
],
|
11 |
+
"image_processor_type": "Qwen2_5_VLImageProcessor",
|
12 |
+
"image_std": [
|
13 |
+
0.26862954,
|
14 |
+
0.26130258,
|
15 |
+
0.27577711
|
16 |
+
],
|
17 |
+
"max_pixels": 12845056,
|
18 |
+
"merge_size": 2,
|
19 |
+
"min_pixels": 3136,
|
20 |
+
"patch_size": 14,
|
21 |
+
"processor_class": "ColQwen2_5Processor",
|
22 |
+
"resample": 3,
|
23 |
+
"rescale_factor": 0.00392156862745098,
|
24 |
+
"size": {
|
25 |
+
"max_pixels": 12845056,
|
26 |
+
"min_pixels": 3136
|
27 |
+
},
|
28 |
+
"temporal_patch_size": 2
|
29 |
+
}
|
checkpoint-1800/special_tokens_map.json
ADDED
@@ -0,0 +1,31 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"additional_special_tokens": [
|
3 |
+
"<|im_start|>",
|
4 |
+
"<|im_end|>",
|
5 |
+
"<|object_ref_start|>",
|
6 |
+
"<|object_ref_end|>",
|
7 |
+
"<|box_start|>",
|
8 |
+
"<|box_end|>",
|
9 |
+
"<|quad_start|>",
|
10 |
+
"<|quad_end|>",
|
11 |
+
"<|vision_start|>",
|
12 |
+
"<|vision_end|>",
|
13 |
+
"<|vision_pad|>",
|
14 |
+
"<|image_pad|>",
|
15 |
+
"<|video_pad|>"
|
16 |
+
],
|
17 |
+
"eos_token": {
|
18 |
+
"content": "<|im_end|>",
|
19 |
+
"lstrip": false,
|
20 |
+
"normalized": false,
|
21 |
+
"rstrip": false,
|
22 |
+
"single_word": false
|
23 |
+
},
|
24 |
+
"pad_token": {
|
25 |
+
"content": "<|endoftext|>",
|
26 |
+
"lstrip": false,
|
27 |
+
"normalized": false,
|
28 |
+
"rstrip": false,
|
29 |
+
"single_word": false
|
30 |
+
}
|
31 |
+
}
|
checkpoint-1800/tokenizer.json
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:9c5ae00e602b8860cbd784ba82a8aa14e8feecec692e7076590d014d7b7fdafa
|
3 |
+
size 11421896
|
checkpoint-1800/tokenizer_config.json
ADDED
@@ -0,0 +1,209 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"add_bos_token": false,
|
3 |
+
"add_prefix_space": false,
|
4 |
+
"added_tokens_decoder": {
|
5 |
+
"151643": {
|
6 |
+
"content": "<|endoftext|>",
|
7 |
+
"lstrip": false,
|
8 |
+
"normalized": false,
|
9 |
+
"rstrip": false,
|
10 |
+
"single_word": false,
|
11 |
+
"special": true
|
12 |
+
},
|
13 |
+
"151644": {
|
14 |
+
"content": "<|im_start|>",
|
15 |
+
"lstrip": false,
|
16 |
+
"normalized": false,
|
17 |
+
"rstrip": false,
|
18 |
+
"single_word": false,
|
19 |
+
"special": true
|
20 |
+
},
|
21 |
+
"151645": {
|
22 |
+
"content": "<|im_end|>",
|
23 |
+
"lstrip": false,
|
24 |
+
"normalized": false,
|
25 |
+
"rstrip": false,
|
26 |
+
"single_word": false,
|
27 |
+
"special": true
|
28 |
+
},
|
29 |
+
"151646": {
|
30 |
+
"content": "<|object_ref_start|>",
|
31 |
+
"lstrip": false,
|
32 |
+
"normalized": false,
|
33 |
+
"rstrip": false,
|
34 |
+
"single_word": false,
|
35 |
+
"special": true
|
36 |
+
},
|
37 |
+
"151647": {
|
38 |
+
"content": "<|object_ref_end|>",
|
39 |
+
"lstrip": false,
|
40 |
+
"normalized": false,
|
41 |
+
"rstrip": false,
|
42 |
+
"single_word": false,
|
43 |
+
"special": true
|
44 |
+
},
|
45 |
+
"151648": {
|
46 |
+
"content": "<|box_start|>",
|
47 |
+
"lstrip": false,
|
48 |
+
"normalized": false,
|
49 |
+
"rstrip": false,
|
50 |
+
"single_word": false,
|
51 |
+
"special": true
|
52 |
+
},
|
53 |
+
"151649": {
|
54 |
+
"content": "<|box_end|>",
|
55 |
+
"lstrip": false,
|
56 |
+
"normalized": false,
|
57 |
+
"rstrip": false,
|
58 |
+
"single_word": false,
|
59 |
+
"special": true
|
60 |
+
},
|
61 |
+
"151650": {
|
62 |
+
"content": "<|quad_start|>",
|
63 |
+
"lstrip": false,
|
64 |
+
"normalized": false,
|
65 |
+
"rstrip": false,
|
66 |
+
"single_word": false,
|
67 |
+
"special": true
|
68 |
+
},
|
69 |
+
"151651": {
|
70 |
+
"content": "<|quad_end|>",
|
71 |
+
"lstrip": false,
|
72 |
+
"normalized": false,
|
73 |
+
"rstrip": false,
|
74 |
+
"single_word": false,
|
75 |
+
"special": true
|
76 |
+
},
|
77 |
+
"151652": {
|
78 |
+
"content": "<|vision_start|>",
|
79 |
+
"lstrip": false,
|
80 |
+
"normalized": false,
|
81 |
+
"rstrip": false,
|
82 |
+
"single_word": false,
|
83 |
+
"special": true
|
84 |
+
},
|
85 |
+
"151653": {
|
86 |
+
"content": "<|vision_end|>",
|
87 |
+
"lstrip": false,
|
88 |
+
"normalized": false,
|
89 |
+
"rstrip": false,
|
90 |
+
"single_word": false,
|
91 |
+
"special": true
|
92 |
+
},
|
93 |
+
"151654": {
|
94 |
+
"content": "<|vision_pad|>",
|
95 |
+
"lstrip": false,
|
96 |
+
"normalized": false,
|
97 |
+
"rstrip": false,
|
98 |
+
"single_word": false,
|
99 |
+
"special": true
|
100 |
+
},
|
101 |
+
"151655": {
|
102 |
+
"content": "<|image_pad|>",
|
103 |
+
"lstrip": false,
|
104 |
+
"normalized": false,
|
105 |
+
"rstrip": false,
|
106 |
+
"single_word": false,
|
107 |
+
"special": true
|
108 |
+
},
|
109 |
+
"151656": {
|
110 |
+
"content": "<|video_pad|>",
|
111 |
+
"lstrip": false,
|
112 |
+
"normalized": false,
|
113 |
+
"rstrip": false,
|
114 |
+
"single_word": false,
|
115 |
+
"special": true
|
116 |
+
},
|
117 |
+
"151657": {
|
118 |
+
"content": "<tool_call>",
|
119 |
+
"lstrip": false,
|
120 |
+
"normalized": false,
|
121 |
+
"rstrip": false,
|
122 |
+
"single_word": false,
|
123 |
+
"special": false
|
124 |
+
},
|
125 |
+
"151658": {
|
126 |
+
"content": "</tool_call>",
|
127 |
+
"lstrip": false,
|
128 |
+
"normalized": false,
|
129 |
+
"rstrip": false,
|
130 |
+
"single_word": false,
|
131 |
+
"special": false
|
132 |
+
},
|
133 |
+
"151659": {
|
134 |
+
"content": "<|fim_prefix|>",
|
135 |
+
"lstrip": false,
|
136 |
+
"normalized": false,
|
137 |
+
"rstrip": false,
|
138 |
+
"single_word": false,
|
139 |
+
"special": false
|
140 |
+
},
|
141 |
+
"151660": {
|
142 |
+
"content": "<|fim_middle|>",
|
143 |
+
"lstrip": false,
|
144 |
+
"normalized": false,
|
145 |
+
"rstrip": false,
|
146 |
+
"single_word": false,
|
147 |
+
"special": false
|
148 |
+
},
|
149 |
+
"151661": {
|
150 |
+
"content": "<|fim_suffix|>",
|
151 |
+
"lstrip": false,
|
152 |
+
"normalized": false,
|
153 |
+
"rstrip": false,
|
154 |
+
"single_word": false,
|
155 |
+
"special": false
|
156 |
+
},
|
157 |
+
"151662": {
|
158 |
+
"content": "<|fim_pad|>",
|
159 |
+
"lstrip": false,
|
160 |
+
"normalized": false,
|
161 |
+
"rstrip": false,
|
162 |
+
"single_word": false,
|
163 |
+
"special": false
|
164 |
+
},
|
165 |
+
"151663": {
|
166 |
+
"content": "<|repo_name|>",
|
167 |
+
"lstrip": false,
|
168 |
+
"normalized": false,
|
169 |
+
"rstrip": false,
|
170 |
+
"single_word": false,
|
171 |
+
"special": false
|
172 |
+
},
|
173 |
+
"151664": {
|
174 |
+
"content": "<|file_sep|>",
|
175 |
+
"lstrip": false,
|
176 |
+
"normalized": false,
|
177 |
+
"rstrip": false,
|
178 |
+
"single_word": false,
|
179 |
+
"special": false
|
180 |
+
}
|
181 |
+
},
|
182 |
+
"additional_special_tokens": [
|
183 |
+
"<|im_start|>",
|
184 |
+
"<|im_end|>",
|
185 |
+
"<|object_ref_start|>",
|
186 |
+
"<|object_ref_end|>",
|
187 |
+
"<|box_start|>",
|
188 |
+
"<|box_end|>",
|
189 |
+
"<|quad_start|>",
|
190 |
+
"<|quad_end|>",
|
191 |
+
"<|vision_start|>",
|
192 |
+
"<|vision_end|>",
|
193 |
+
"<|vision_pad|>",
|
194 |
+
"<|image_pad|>",
|
195 |
+
"<|video_pad|>"
|
196 |
+
],
|
197 |
+
"bos_token": null,
|
198 |
+
"chat_template": "{%- if tools %}\n {{- '<|im_start|>system\\n' }}\n {%- if messages[0]['role'] == 'system' %}\n {{- messages[0]['content'] }}\n {%- else %}\n {{- 'You are a helpful assistant.' }}\n {%- endif %}\n {{- \"\\n\\n# Tools\\n\\nYou may call one or more functions to assist with the user query.\\n\\nYou are provided with function signatures within <tools></tools> XML tags:\\n<tools>\" }}\n {%- for tool in tools %}\n {{- \"\\n\" }}\n {{- tool | tojson }}\n {%- endfor %}\n {{- \"\\n</tools>\\n\\nFor each function call, return a json object with function name and arguments within <tool_call></tool_call> XML tags:\\n<tool_call>\\n{\\\"name\\\": <function-name>, \\\"arguments\\\": <args-json-object>}\\n</tool_call><|im_end|>\\n\" }}\n{%- else %}\n {%- if messages[0]['role'] == 'system' %}\n {{- '<|im_start|>system\\n' + messages[0]['content'] + '<|im_end|>\\n' }}\n {%- else %}\n {{- '<|im_start|>system\\nYou are a helpful assistant.<|im_end|>\\n' }}\n {%- endif %}\n{%- endif %}\n{%- for message in messages %}\n {%- if (message.role == \"user\") or (message.role == \"system\" and not loop.first) or (message.role == \"assistant\" and not message.tool_calls) %}\n {{- '<|im_start|>' + message.role + '\\n' + message.content + '<|im_end|>' + '\\n' }}\n {%- elif message.role == \"assistant\" %}\n {{- '<|im_start|>' + message.role }}\n {%- if message.content %}\n {{- '\\n' + message.content }}\n {%- endif %}\n {%- for tool_call in message.tool_calls %}\n {%- if tool_call.function is defined %}\n {%- set tool_call = tool_call.function %}\n {%- endif %}\n {{- '\\n<tool_call>\\n{\"name\": \"' }}\n {{- tool_call.name }}\n {{- '\", \"arguments\": ' }}\n {{- tool_call.arguments | tojson }}\n {{- '}\\n</tool_call>' }}\n {%- endfor %}\n {{- '<|im_end|>\\n' }}\n {%- elif message.role == \"tool\" %}\n {%- if (loop.index0 == 0) or (messages[loop.index0 - 1].role != \"tool\") %}\n {{- '<|im_start|>user' }}\n {%- endif %}\n {{- '\\n<tool_response>\\n' }}\n {{- message.content }}\n {{- '\\n</tool_response>' }}\n {%- if loop.last or (messages[loop.index0 + 1].role != \"tool\") %}\n {{- '<|im_end|>\\n' }}\n {%- endif %}\n {%- endif %}\n{%- endfor %}\n{%- if add_generation_prompt %}\n {{- '<|im_start|>assistant\\n' }}\n{%- endif %}\n",
|
199 |
+
"clean_up_tokenization_spaces": false,
|
200 |
+
"eos_token": "<|im_end|>",
|
201 |
+
"errors": "replace",
|
202 |
+
"extra_special_tokens": {},
|
203 |
+
"model_max_length": 131072,
|
204 |
+
"pad_token": "<|endoftext|>",
|
205 |
+
"processor_class": "ColQwen2_5Processor",
|
206 |
+
"split_special_tokens": false,
|
207 |
+
"tokenizer_class": "Qwen2Tokenizer",
|
208 |
+
"unk_token": null
|
209 |
+
}
|
checkpoint-1800/training_config.yml
ADDED
@@ -0,0 +1,72 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
config:
|
2 |
+
(): colpali_engine.trainer.colmodel_training.ColModelTrainingConfig
|
3 |
+
output_dir: !path ../../../models/colqwen2_5-3b-mixed-multiL-5ep-l-128
|
4 |
+
processor:
|
5 |
+
(): colpali_engine.utils.transformers_wrappers.AllPurposeWrapper
|
6 |
+
class_to_instanciate: !ext colpali_engine.models.ColQwen2_5Processor
|
7 |
+
pretrained_model_name_or_path: "Qwen/Qwen2.5-VL-3B-Instruct" # "./models/paligemma-3b-mix-448"
|
8 |
+
# num_image_tokens: 2048
|
9 |
+
# max_length: 50
|
10 |
+
|
11 |
+
model:
|
12 |
+
(): colpali_engine.utils.transformers_wrappers.AllPurposeWrapper
|
13 |
+
class_to_instanciate: !ext colpali_engine.models.ColQwen2_5
|
14 |
+
pretrained_model_name_or_path: "Qwen/Qwen2.5-VL-3B-Instruct"
|
15 |
+
torch_dtype: !ext torch.bfloat16
|
16 |
+
use_cache: false
|
17 |
+
attn_implementation: "flash_attention_2"
|
18 |
+
# device_map: "auto"
|
19 |
+
# quantization_config:
|
20 |
+
# (): transformers.BitsAndBytesConfig
|
21 |
+
# load_in_4bit: true
|
22 |
+
# bnb_4bit_quant_type: "nf4"
|
23 |
+
# bnb_4bit_compute_dtype: "bfloat16"
|
24 |
+
# bnb_4bit_use_double_quant: true
|
25 |
+
|
26 |
+
dataset_loading_func: !ext colpali_engine.utils.dataset_transformation.load_mixed_multiL_train_set
|
27 |
+
eval_dataset_loader: !import ../data/test_data.yaml
|
28 |
+
|
29 |
+
# max_length: 50
|
30 |
+
run_eval: true
|
31 |
+
loss_func:
|
32 |
+
(): colpali_engine.loss.late_interaction_losses.ColbertPairwiseCELoss
|
33 |
+
tr_args:
|
34 |
+
(): transformers.training_args.TrainingArguments
|
35 |
+
output_dir: null
|
36 |
+
overwrite_output_dir: true
|
37 |
+
num_train_epochs: 1
|
38 |
+
per_device_train_batch_size: 128
|
39 |
+
gradient_checkpointing: true
|
40 |
+
gradient_checkpointing_kwargs: { "use_reentrant": false }
|
41 |
+
# gradient_checkpointing: true
|
42 |
+
# 6 x 8 gpus = 48 batch size
|
43 |
+
gradient_accumulation_steps: 2
|
44 |
+
per_device_eval_batch_size: 32
|
45 |
+
eval_strategy: "steps"
|
46 |
+
dataloader_num_workers: 8
|
47 |
+
# bf16: true
|
48 |
+
save_steps: 100
|
49 |
+
logging_steps: 1
|
50 |
+
eval_steps: 180
|
51 |
+
warmup_steps: 19
|
52 |
+
learning_rate: 2e-4
|
53 |
+
save_total_limit: 15
|
54 |
+
resume_from_checkpoint: false
|
55 |
+
optim: "paged_adamw_8bit"
|
56 |
+
# wandb logging
|
57 |
+
# wandb_project: "dolma"
|
58 |
+
run_name: "colqwen2_5-3b-mixed-multiL-5ep-l-128"
|
59 |
+
report_to: wandb
|
60 |
+
|
61 |
+
|
62 |
+
peft_config:
|
63 |
+
(): peft.LoraConfig
|
64 |
+
r: 128
|
65 |
+
lora_alpha: 128
|
66 |
+
lora_dropout: 0.1
|
67 |
+
init_lora_weights: "gaussian"
|
68 |
+
bias: "none"
|
69 |
+
task_type: "FEATURE_EXTRACTION"
|
70 |
+
target_modules: '(.*(model).*(down_proj|gate_proj|up_proj|k_proj|q_proj|v_proj|o_proj).*$|.*(custom_text_proj).*$)'
|
71 |
+
# target_modules: '(.*(language_model).*(down_proj|gate_proj|up_proj|k_proj|q_proj|v_proj|o_proj).*$|.*(custom_text_proj).*$)'
|
72 |
+
|
checkpoint-1800/vocab.json
ADDED
The diff for this file is too large to render.
See raw diff
|
|
git_hash.txt
ADDED
@@ -0,0 +1 @@
|
|
|
|
|
1 |
+
59e94a92790b67bd60507608c3115a2e48f83a07
|
merges.txt
ADDED
The diff for this file is too large to render.
See raw diff
|
|
preprocessor_config.json
ADDED
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"do_convert_rgb": true,
|
3 |
+
"do_normalize": true,
|
4 |
+
"do_rescale": true,
|
5 |
+
"do_resize": true,
|
6 |
+
"image_mean": [
|
7 |
+
0.48145466,
|
8 |
+
0.4578275,
|
9 |
+
0.40821073
|
10 |
+
],
|
11 |
+
"image_processor_type": "Qwen2_5_VLImageProcessor",
|
12 |
+
"image_std": [
|
13 |
+
0.26862954,
|
14 |
+
0.26130258,
|
15 |
+
0.27577711
|
16 |
+
],
|
17 |
+
"max_pixels": 12845056,
|
18 |
+
"merge_size": 2,
|
19 |
+
"min_pixels": 3136,
|
20 |
+
"patch_size": 14,
|
21 |
+
"processor_class": "ColQwen2_5Processor",
|
22 |
+
"resample": 3,
|
23 |
+
"rescale_factor": 0.00392156862745098,
|
24 |
+
"size": {
|
25 |
+
"max_pixels": 12845056,
|
26 |
+
"min_pixels": 3136
|
27 |
+
},
|
28 |
+
"temporal_patch_size": 2
|
29 |
+
}
|
results.json
ADDED
@@ -0,0 +1 @@
|
|
|
|
|
1 |
+
{"arxivqa_test_subsampled": {"ndcg_at_1": 0.86, "ndcg_at_3": 0.89602, "ndcg_at_5": 0.90738, "ndcg_at_10": 0.91247, "ndcg_at_20": 0.91649, "ndcg_at_100": 0.91954, "ndcg_at_1000": 0.9201, "map_at_1": 0.86, "map_at_3": 0.88767, "map_at_5": 0.89387, "map_at_10": 0.89592, "map_at_20": 0.89701, "map_at_100": 0.89746, "map_at_1000": 0.89748, "recall_at_1": 0.86, "recall_at_3": 0.92, "recall_at_5": 0.948, "recall_at_10": 0.964, "recall_at_20": 0.98, "recall_at_100": 0.996, "recall_at_1000": 1.0, "precision_at_1": 0.86, "precision_at_3": 0.30667, "precision_at_5": 0.1896, "precision_at_10": 0.0964, "precision_at_20": 0.049, "precision_at_100": 0.00996, "precision_at_1000": 0.001, "mrr_at_1": 0.86, "mrr_at_3": 0.8889999999999999, "mrr_at_5": 0.8934999999999997, "mrr_at_10": 0.8961936507936505, "mrr_at_20": 0.8972816403754481, "mrr_at_100": 0.8977296741827361, "mrr_at_1000": 0.8977586086890899, "naucs_at_1_max": 0.722793404461687, "naucs_at_1_std": -0.038146044062629184, "naucs_at_1_diff1": 0.9546556741028124, "naucs_at_3_max": 0.7859710550887037, "naucs_at_3_std": 0.01360877684407265, "naucs_at_3_diff1": 0.9129901960784345, "naucs_at_5_max": 0.8335667600373489, "naucs_at_5_std": 0.04666738490267592, "naucs_at_5_diff1": 0.9340120663650082, "naucs_at_10_max": 0.8512553169415892, "naucs_at_10_std": 0.07505965349101841, "naucs_at_10_diff1": 0.9192084241103815, "naucs_at_20_max": 0.9738562091503187, "naucs_at_20_std": 0.3808590102707724, "naucs_at_20_diff1": 0.9084967320261399, "naucs_at_100_max": 1.0, "naucs_at_100_std": 1.0, "naucs_at_100_diff1": 0.8692810457516423, "naucs_at_1000_max": 1.0, "naucs_at_1000_std": 1.0, "naucs_at_1000_diff1": 1.0}, "docvqa_test_subsampled": {"ndcg_at_1": 0.55654, "ndcg_at_3": 0.63486, "ndcg_at_5": 0.65355, "ndcg_at_10": 0.66767, "ndcg_at_20": 0.68004, "ndcg_at_100": 0.69372, "ndcg_at_1000": 0.70593, "map_at_1": 0.55654, "map_at_3": 0.61456, "map_at_5": 0.62465, "map_at_10": 0.63035, "map_at_20": 0.63377, "map_at_100": 0.63572, "map_at_1000": 0.63622, "recall_at_1": 0.55654, "recall_at_3": 0.69401, "recall_at_5": 0.74058, "recall_at_10": 0.78492, "recall_at_20": 0.8337, "recall_at_100": 0.90687, "recall_at_1000": 1.0, "precision_at_1": 0.55654, "precision_at_3": 0.23134, "precision_at_5": 0.14812, "precision_at_10": 0.07849, "precision_at_20": 0.04169, "precision_at_100": 0.00907, "precision_at_1000": 0.001, "mrr_at_1": 0.5565410199556541, "mrr_at_3": 0.6127124907612713, "mrr_at_5": 0.6236881005173688, "mrr_at_10": 0.6300408263822898, "mrr_at_20": 0.6333156432311732, "mrr_at_100": 0.6353411227279873, "mrr_at_1000": 0.6358054759704315, "naucs_at_1_max": 0.5257722632439136, "naucs_at_1_std": 0.10050303275375208, "naucs_at_1_diff1": 0.8849570154601619, "naucs_at_3_max": 0.4612022712381768, "naucs_at_3_std": 0.15996734473763619, "naucs_at_3_diff1": 0.7968064775356001, "naucs_at_5_max": 0.4464095203043038, "naucs_at_5_std": 0.32716928956958097, "naucs_at_5_diff1": 0.7844569699129116, "naucs_at_10_max": 0.37102681160936635, "naucs_at_10_std": 0.44024504471037584, "naucs_at_10_diff1": 0.7856507094113239, "naucs_at_20_max": 0.3234215889454963, "naucs_at_20_std": 0.4899776595937942, "naucs_at_20_diff1": 0.7677297231158269, "naucs_at_100_max": 0.15381107905278507, "naucs_at_100_std": 0.8716361071120375, "naucs_at_100_diff1": 0.7936512540332907, "naucs_at_1000_max": 1.0, "naucs_at_1000_std": 1.0, "naucs_at_1000_diff1": 1.0}, "infovqa_test_subsampled": {"ndcg_at_1": 0.89069, "ndcg_at_3": 0.92332, "ndcg_at_5": 0.92933, "ndcg_at_10": 0.93387, "ndcg_at_20": 0.93494, "ndcg_at_100": 0.93797, "ndcg_at_1000": 0.93875, "map_at_1": 0.89069, "map_at_3": 0.91565, "map_at_5": 0.9191, "map_at_10": 0.92094, "map_at_20": 0.92126, "map_at_100": 0.92169, "map_at_1000": 0.92171, "recall_at_1": 0.89069, "recall_at_3": 0.94534, "recall_at_5": 0.95951, "recall_at_10": 0.97368, "recall_at_20": 0.97773, "recall_at_100": 0.99393, "recall_at_1000": 1.0, "precision_at_1": 0.89069, "precision_at_3": 0.31511, "precision_at_5": 0.1919, "precision_at_10": 0.09737, "precision_at_20": 0.04889, "precision_at_100": 0.00994, "precision_at_1000": 0.001, "mrr_at_1": 0.8906882591093117, "mrr_at_3": 0.9153171390013495, "mrr_at_5": 0.9191632928475032, "mrr_at_10": 0.9206750851487693, "mrr_at_20": 0.920994064415117, "mrr_at_100": 0.9214189037498206, "mrr_at_1000": 0.9214460799655682, "naucs_at_1_max": 0.6266617765209551, "naucs_at_1_std": -0.19467734849749174, "naucs_at_1_diff1": 0.9490969427703365, "naucs_at_3_max": 0.7646193541044001, "naucs_at_3_std": -0.049253260481305516, "naucs_at_3_diff1": 0.9441833971070621, "naucs_at_5_max": 0.8436958283279918, "naucs_at_5_std": 0.11750221148894235, "naucs_at_5_diff1": 0.9469328268926711, "naucs_at_10_max": 0.8223529961696429, "naucs_at_10_std": 0.1964949763377099, "naucs_at_10_diff1": 0.9284044609167826, "naucs_at_20_max": 0.8964958869122784, "naucs_at_20_std": 0.4419658243478526, "naucs_at_20_diff1": 0.927259949634811, "naucs_at_100_max": 0.9564661819784259, "naucs_at_100_std": 0.39174816052979483, "naucs_at_100_diff1": 0.9564661819784259, "naucs_at_1000_max": 1.0, "naucs_at_1000_std": 1.0, "naucs_at_1000_diff1": 1.0}, "tabfquad_test_subsampled": {"ndcg_at_1": 0.86071, "ndcg_at_3": 0.89133, "ndcg_at_5": 0.89594, "ndcg_at_10": 0.90153, "ndcg_at_20": 0.90908, "ndcg_at_100": 0.91536, "ndcg_at_1000": 0.91536, "map_at_1": 0.86071, "map_at_3": 0.88452, "map_at_5": 0.8872, "map_at_10": 0.8894, "map_at_20": 0.89164, "map_at_100": 0.89262, "map_at_1000": 0.89262, "recall_at_1": 0.86071, "recall_at_3": 0.91071, "recall_at_5": 0.92143, "recall_at_10": 0.93929, "recall_at_20": 0.96786, "recall_at_100": 1.0, "recall_at_1000": 1.0, "precision_at_1": 0.86071, "precision_at_3": 0.30357, "precision_at_5": 0.18429, "precision_at_10": 0.09393, "precision_at_20": 0.04839, "precision_at_100": 0.01, "precision_at_1000": 0.001, "mrr_at_1": 0.8571428571428571, "mrr_at_3": 0.8839285714285714, "mrr_at_5": 0.8864285714285713, "mrr_at_10": 0.8889172335600906, "mrr_at_20": 0.890549232513518, "mrr_at_100": 0.8915407957626755, "mrr_at_1000": 0.8915407957626755, "naucs_at_1_max": 0.565388152825077, "naucs_at_1_std": 0.40889656715304873, "naucs_at_1_diff1": 0.8467772005269835, "naucs_at_3_max": 0.6566573295985063, "naucs_at_3_std": 0.5545284780578894, "naucs_at_3_diff1": 0.8447245564892628, "naucs_at_5_max": 0.6497113997114, "naucs_at_5_std": 0.5355869620575493, "naucs_at_5_diff1": 0.8421186656480768, "naucs_at_10_max": 0.7744548799912124, "naucs_at_10_std": 0.6476080628329782, "naucs_at_10_diff1": 0.8545888943812839, "naucs_at_20_max": 0.8451602863367568, "naucs_at_20_std": 0.7453574022201472, "naucs_at_20_diff1": 0.8306359580869404, "naucs_at_100_max": 1.0, "naucs_at_100_std": 1.0, "naucs_at_100_diff1": 1.0, "naucs_at_1000_max": NaN, "naucs_at_1000_std": NaN, "naucs_at_1000_diff1": NaN}, "tatdqa_test": {"ndcg_at_1": 0.68955, "ndcg_at_3": 0.78416, "ndcg_at_5": 0.80618, "ndcg_at_10": 0.81969, "ndcg_at_20": 0.82389, "ndcg_at_100": 0.82898, "ndcg_at_1000": 0.83022, "map_at_1": 0.68955, "map_at_3": 0.76063, "map_at_5": 0.773, "map_at_10": 0.77866, "map_at_20": 0.77984, "map_at_100": 0.7805, "map_at_1000": 0.78056, "recall_at_1": 0.68955, "recall_at_3": 0.85237, "recall_at_5": 0.90522, "recall_at_10": 0.94654, "recall_at_20": 0.96294, "recall_at_100": 0.99089, "recall_at_1000": 1.0, "precision_at_1": 0.68955, "precision_at_3": 0.28412, "precision_at_5": 0.18104, "precision_at_10": 0.09465, "precision_at_20": 0.04815, "precision_at_100": 0.00991, "precision_at_1000": 0.001, "mrr_at_1": 0.6816524908869988, "mrr_at_3": 0.7562778452814904, "mrr_at_5": 0.7686715269339816, "mrr_at_10": 0.7745462786167524, "mrr_at_20": 0.7758200056081633, "mrr_at_100": 0.7764618378499478, "mrr_at_1000": 0.7765242843809894, "naucs_at_1_max": 0.24837787265702854, "naucs_at_1_std": -0.19241555267499547, "naucs_at_1_diff1": 0.8236282079241498, "naucs_at_3_max": 0.24346304749013487, "naucs_at_3_std": -0.18927905384673094, "naucs_at_3_diff1": 0.7202539222925216, "naucs_at_5_max": 0.2964781524481732, "naucs_at_5_std": -0.07115963375478136, "naucs_at_5_diff1": 0.6729800878199006, "naucs_at_10_max": 0.4000649649660007, "naucs_at_10_std": 0.18029921295145243, "naucs_at_10_diff1": 0.6525400665529622, "naucs_at_20_max": 0.4809424079608138, "naucs_at_20_std": 0.28896008671282786, "naucs_at_20_diff1": 0.6872334498348703, "naucs_at_100_max": 0.4792973536271862, "naucs_at_100_std": 0.42059668900329966, "naucs_at_100_diff1": 0.6931508305328492, "naucs_at_1000_max": NaN, "naucs_at_1000_std": NaN, "naucs_at_1000_diff1": NaN}, "shiftproject_test": {"ndcg_at_1": 0.73, "ndcg_at_3": 0.84202, "ndcg_at_5": 0.85837, "ndcg_at_10": 0.86769, "ndcg_at_20": 0.86769, "ndcg_at_100": 0.86945, "ndcg_at_1000": 0.86945, "map_at_1": 0.73, "map_at_3": 0.815, "map_at_5": 0.824, "map_at_10": 0.82761, "map_at_20": 0.82761, "map_at_100": 0.82781, "map_at_1000": 0.82781, "recall_at_1": 0.73, "recall_at_3": 0.92, "recall_at_5": 0.96, "recall_at_10": 0.99, "recall_at_20": 0.99, "recall_at_100": 1.0, "recall_at_1000": 1.0, "precision_at_1": 0.73, "precision_at_3": 0.30667, "precision_at_5": 0.192, "precision_at_10": 0.099, "precision_at_20": 0.0495, "precision_at_100": 0.01, "precision_at_1000": 0.001, "mrr_at_1": 0.73, "mrr_at_3": 0.82, "mrr_at_5": 0.8320000000000001, "mrr_at_10": 0.8344999999999999, "mrr_at_20": 0.8344999999999999, "mrr_at_100": 0.8346960784313725, "mrr_at_1000": 0.8346960784313725, "naucs_at_1_max": -0.029605457154652116, "naucs_at_1_std": -0.4257209695492341, "naucs_at_1_diff1": 0.8361870687452088, "naucs_at_3_max": 0.3197945845004683, "naucs_at_3_std": -0.3085901027077499, "naucs_at_3_diff1": 0.7829131652661058, "naucs_at_5_max": 0.6050420168067251, "naucs_at_5_std": -0.029178338001862987, "naucs_at_5_diff1": 0.8651960784313721, "naucs_at_10_max": 0.7222222222222276, "naucs_at_10_std": 0.35807656395891135, "naucs_at_10_diff1": 0.8692810457516413, "naucs_at_20_max": 0.7222222222222276, "naucs_at_20_std": 0.35807656395891135, "naucs_at_20_diff1": 0.8692810457516413, "naucs_at_100_max": NaN, "naucs_at_100_std": NaN, "naucs_at_100_diff1": NaN, "naucs_at_1000_max": NaN, "naucs_at_1000_std": NaN, "naucs_at_1000_diff1": NaN}, "syntheticDocQA_artificial_intelligence_test": {"ndcg_at_1": 0.99, "ndcg_at_3": 0.99, "ndcg_at_5": 0.99431, "ndcg_at_10": 0.99431, "ndcg_at_20": 0.99431, "ndcg_at_100": 0.99431, "ndcg_at_1000": 0.99431, "map_at_1": 0.99, "map_at_3": 0.99, "map_at_5": 0.9925, "map_at_10": 0.9925, "map_at_20": 0.9925, "map_at_100": 0.9925, "map_at_1000": 0.9925, "recall_at_1": 0.99, "recall_at_3": 0.99, "recall_at_5": 1.0, "recall_at_10": 1.0, "recall_at_20": 1.0, "recall_at_100": 1.0, "recall_at_1000": 1.0, "precision_at_1": 0.99, "precision_at_3": 0.33, "precision_at_5": 0.2, "precision_at_10": 0.1, "precision_at_20": 0.05, "precision_at_100": 0.01, "precision_at_1000": 0.001, "mrr_at_1": 0.99, "mrr_at_3": 0.99, "mrr_at_5": 0.9925, "mrr_at_10": 0.9925, "mrr_at_20": 0.9925, "mrr_at_100": 0.9925, "mrr_at_1000": 0.9925, "naucs_at_1_max": 1.0, "naucs_at_1_std": 0.8692810457516276, "naucs_at_1_diff1": 0.8692810457516276, "naucs_at_3_max": 1.0, "naucs_at_3_std": 0.8692810457516356, "naucs_at_3_diff1": 0.8692810457516356, "naucs_at_5_max": 1.0, "naucs_at_5_std": 1.0, "naucs_at_5_diff1": 1.0, "naucs_at_10_max": 1.0, "naucs_at_10_std": 1.0, "naucs_at_10_diff1": 1.0, "naucs_at_20_max": 1.0, "naucs_at_20_std": 1.0, "naucs_at_20_diff1": 1.0, "naucs_at_100_max": NaN, "naucs_at_100_std": NaN, "naucs_at_100_diff1": NaN, "naucs_at_1000_max": NaN, "naucs_at_1000_std": NaN, "naucs_at_1000_diff1": NaN}, "syntheticDocQA_energy_test": {"ndcg_at_1": 0.94, "ndcg_at_3": 0.95631, "ndcg_at_5": 0.96448, "ndcg_at_10": 0.96448, "ndcg_at_20": 0.96448, "ndcg_at_100": 0.96645, "ndcg_at_1000": 0.96645, "map_at_1": 0.94, "map_at_3": 0.95167, "map_at_5": 0.95617, "map_at_10": 0.95617, "map_at_20": 0.95617, "map_at_100": 0.95647, "map_at_1000": 0.95647, "recall_at_1": 0.94, "recall_at_3": 0.97, "recall_at_5": 0.99, "recall_at_10": 0.99, "recall_at_20": 0.99, "recall_at_100": 1.0, "recall_at_1000": 1.0, "precision_at_1": 0.94, "precision_at_3": 0.32333, "precision_at_5": 0.198, "precision_at_10": 0.099, "precision_at_20": 0.0495, "precision_at_100": 0.01, "precision_at_1000": 0.001, "mrr_at_1": 0.95, "mrr_at_3": 0.9583333333333335, "mrr_at_5": 0.9628333333333334, "mrr_at_10": 0.9628333333333334, "mrr_at_20": 0.9628333333333334, "mrr_at_100": 0.9631458333333335, "mrr_at_1000": 0.9631458333333335, "naucs_at_1_max": 0.6098661686896992, "naucs_at_1_std": -0.6484593837534979, "naucs_at_1_diff1": 0.9782135076252712, "naucs_at_3_max": 0.7587924058512326, "naucs_at_3_std": -0.7791783380018689, "naucs_at_3_diff1": 1.0, "naucs_at_5_max": 1.0, "naucs_at_5_std": -1.1517273576097316, "naucs_at_5_diff1": 1.0, "naucs_at_10_max": 1.0, "naucs_at_10_std": -1.1517273576097316, "naucs_at_10_diff1": 1.0, "naucs_at_20_max": 1.0, "naucs_at_20_std": -1.1517273576097316, "naucs_at_20_diff1": 1.0, "naucs_at_100_max": NaN, "naucs_at_100_std": NaN, "naucs_at_100_diff1": NaN, "naucs_at_1000_max": NaN, "naucs_at_1000_std": NaN, "naucs_at_1000_diff1": NaN}, "syntheticDocQA_government_reports_test": {"ndcg_at_1": 0.92, "ndcg_at_3": 0.96917, "ndcg_at_5": 0.96917, "ndcg_at_10": 0.96917, "ndcg_at_20": 0.96917, "ndcg_at_100": 0.96917, "ndcg_at_1000": 0.96917, "map_at_1": 0.92, "map_at_3": 0.95833, "map_at_5": 0.95833, "map_at_10": 0.95833, "map_at_20": 0.95833, "map_at_100": 0.95833, "map_at_1000": 0.95833, "recall_at_1": 0.92, "recall_at_3": 1.0, "recall_at_5": 1.0, "recall_at_10": 1.0, "recall_at_20": 1.0, "recall_at_100": 1.0, "recall_at_1000": 1.0, "precision_at_1": 0.92, "precision_at_3": 0.33333, "precision_at_5": 0.2, "precision_at_10": 0.1, "precision_at_20": 0.05, "precision_at_100": 0.01, "precision_at_1000": 0.001, "mrr_at_1": 0.95, "mrr_at_3": 0.9733333333333333, "mrr_at_5": 0.9733333333333333, "mrr_at_10": 0.9733333333333333, "mrr_at_20": 0.9733333333333333, "mrr_at_100": 0.9733333333333333, "mrr_at_1000": 0.9733333333333333, "naucs_at_1_max": 0.4804505135387461, "naucs_at_1_std": 0.05508870214752533, "naucs_at_1_diff1": 0.8952497665732956, "naucs_at_3_max": 1.0, "naucs_at_3_std": 1.0, "naucs_at_3_diff1": 1.0, "naucs_at_5_max": 1.0, "naucs_at_5_std": 1.0, "naucs_at_5_diff1": 1.0, "naucs_at_10_max": 1.0, "naucs_at_10_std": 1.0, "naucs_at_10_diff1": 1.0, "naucs_at_20_max": 1.0, "naucs_at_20_std": 1.0, "naucs_at_20_diff1": 1.0, "naucs_at_100_max": NaN, "naucs_at_100_std": NaN, "naucs_at_100_diff1": NaN, "naucs_at_1000_max": NaN, "naucs_at_1000_std": NaN, "naucs_at_1000_diff1": NaN}, "syntheticDocQA_healthcare_industry_test": {"ndcg_at_1": 0.96, "ndcg_at_3": 0.98393, "ndcg_at_5": 0.98393, "ndcg_at_10": 0.98393, "ndcg_at_20": 0.98393, "ndcg_at_100": 0.98393, "ndcg_at_1000": 0.98393, "map_at_1": 0.96, "map_at_3": 0.97833, "map_at_5": 0.97833, "map_at_10": 0.97833, "map_at_20": 0.97833, "map_at_100": 0.97833, "map_at_1000": 0.97833, "recall_at_1": 0.96, "recall_at_3": 1.0, "recall_at_5": 1.0, "recall_at_10": 1.0, "recall_at_20": 1.0, "recall_at_100": 1.0, "recall_at_1000": 1.0, "precision_at_1": 0.96, "precision_at_3": 0.33333, "precision_at_5": 0.2, "precision_at_10": 0.1, "precision_at_20": 0.05, "precision_at_100": 0.01, "precision_at_1000": 0.001, "mrr_at_1": 0.97, "mrr_at_3": 0.9833333333333334, "mrr_at_5": 0.9833333333333334, "mrr_at_10": 0.9833333333333334, "mrr_at_20": 0.9833333333333334, "mrr_at_100": 0.9833333333333334, "mrr_at_1000": 0.9833333333333334, "naucs_at_1_max": 0.74439775910364, "naucs_at_1_std": -0.053688141923436454, "naucs_at_1_diff1": 0.96732026143791, "naucs_at_3_max": 1.0, "naucs_at_3_std": 1.0, "naucs_at_3_diff1": 1.0, "naucs_at_5_max": 1.0, "naucs_at_5_std": 1.0, "naucs_at_5_diff1": 1.0, "naucs_at_10_max": 1.0, "naucs_at_10_std": 1.0, "naucs_at_10_diff1": 1.0, "naucs_at_20_max": 1.0, "naucs_at_20_std": 1.0, "naucs_at_20_diff1": 1.0, "naucs_at_100_max": NaN, "naucs_at_100_std": NaN, "naucs_at_100_diff1": NaN, "naucs_at_1000_max": NaN, "naucs_at_1000_std": NaN, "naucs_at_1000_diff1": NaN}}
|
special_tokens_map.json
ADDED
@@ -0,0 +1,31 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"additional_special_tokens": [
|
3 |
+
"<|im_start|>",
|
4 |
+
"<|im_end|>",
|
5 |
+
"<|object_ref_start|>",
|
6 |
+
"<|object_ref_end|>",
|
7 |
+
"<|box_start|>",
|
8 |
+
"<|box_end|>",
|
9 |
+
"<|quad_start|>",
|
10 |
+
"<|quad_end|>",
|
11 |
+
"<|vision_start|>",
|
12 |
+
"<|vision_end|>",
|
13 |
+
"<|vision_pad|>",
|
14 |
+
"<|image_pad|>",
|
15 |
+
"<|video_pad|>"
|
16 |
+
],
|
17 |
+
"eos_token": {
|
18 |
+
"content": "<|im_end|>",
|
19 |
+
"lstrip": false,
|
20 |
+
"normalized": false,
|
21 |
+
"rstrip": false,
|
22 |
+
"single_word": false
|
23 |
+
},
|
24 |
+
"pad_token": {
|
25 |
+
"content": "<|endoftext|>",
|
26 |
+
"lstrip": false,
|
27 |
+
"normalized": false,
|
28 |
+
"rstrip": false,
|
29 |
+
"single_word": false
|
30 |
+
}
|
31 |
+
}
|
tokenizer.json
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:9c5ae00e602b8860cbd784ba82a8aa14e8feecec692e7076590d014d7b7fdafa
|
3 |
+
size 11421896
|
tokenizer_config.json
ADDED
@@ -0,0 +1,209 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"add_bos_token": false,
|
3 |
+
"add_prefix_space": false,
|
4 |
+
"added_tokens_decoder": {
|
5 |
+
"151643": {
|
6 |
+
"content": "<|endoftext|>",
|
7 |
+
"lstrip": false,
|
8 |
+
"normalized": false,
|
9 |
+
"rstrip": false,
|
10 |
+
"single_word": false,
|
11 |
+
"special": true
|
12 |
+
},
|
13 |
+
"151644": {
|
14 |
+
"content": "<|im_start|>",
|
15 |
+
"lstrip": false,
|
16 |
+
"normalized": false,
|
17 |
+
"rstrip": false,
|
18 |
+
"single_word": false,
|
19 |
+
"special": true
|
20 |
+
},
|
21 |
+
"151645": {
|
22 |
+
"content": "<|im_end|>",
|
23 |
+
"lstrip": false,
|
24 |
+
"normalized": false,
|
25 |
+
"rstrip": false,
|
26 |
+
"single_word": false,
|
27 |
+
"special": true
|
28 |
+
},
|
29 |
+
"151646": {
|
30 |
+
"content": "<|object_ref_start|>",
|
31 |
+
"lstrip": false,
|
32 |
+
"normalized": false,
|
33 |
+
"rstrip": false,
|
34 |
+
"single_word": false,
|
35 |
+
"special": true
|
36 |
+
},
|
37 |
+
"151647": {
|
38 |
+
"content": "<|object_ref_end|>",
|
39 |
+
"lstrip": false,
|
40 |
+
"normalized": false,
|
41 |
+
"rstrip": false,
|
42 |
+
"single_word": false,
|
43 |
+
"special": true
|
44 |
+
},
|
45 |
+
"151648": {
|
46 |
+
"content": "<|box_start|>",
|
47 |
+
"lstrip": false,
|
48 |
+
"normalized": false,
|
49 |
+
"rstrip": false,
|
50 |
+
"single_word": false,
|
51 |
+
"special": true
|
52 |
+
},
|
53 |
+
"151649": {
|
54 |
+
"content": "<|box_end|>",
|
55 |
+
"lstrip": false,
|
56 |
+
"normalized": false,
|
57 |
+
"rstrip": false,
|
58 |
+
"single_word": false,
|
59 |
+
"special": true
|
60 |
+
},
|
61 |
+
"151650": {
|
62 |
+
"content": "<|quad_start|>",
|
63 |
+
"lstrip": false,
|
64 |
+
"normalized": false,
|
65 |
+
"rstrip": false,
|
66 |
+
"single_word": false,
|
67 |
+
"special": true
|
68 |
+
},
|
69 |
+
"151651": {
|
70 |
+
"content": "<|quad_end|>",
|
71 |
+
"lstrip": false,
|
72 |
+
"normalized": false,
|
73 |
+
"rstrip": false,
|
74 |
+
"single_word": false,
|
75 |
+
"special": true
|
76 |
+
},
|
77 |
+
"151652": {
|
78 |
+
"content": "<|vision_start|>",
|
79 |
+
"lstrip": false,
|
80 |
+
"normalized": false,
|
81 |
+
"rstrip": false,
|
82 |
+
"single_word": false,
|
83 |
+
"special": true
|
84 |
+
},
|
85 |
+
"151653": {
|
86 |
+
"content": "<|vision_end|>",
|
87 |
+
"lstrip": false,
|
88 |
+
"normalized": false,
|
89 |
+
"rstrip": false,
|
90 |
+
"single_word": false,
|
91 |
+
"special": true
|
92 |
+
},
|
93 |
+
"151654": {
|
94 |
+
"content": "<|vision_pad|>",
|
95 |
+
"lstrip": false,
|
96 |
+
"normalized": false,
|
97 |
+
"rstrip": false,
|
98 |
+
"single_word": false,
|
99 |
+
"special": true
|
100 |
+
},
|
101 |
+
"151655": {
|
102 |
+
"content": "<|image_pad|>",
|
103 |
+
"lstrip": false,
|
104 |
+
"normalized": false,
|
105 |
+
"rstrip": false,
|
106 |
+
"single_word": false,
|
107 |
+
"special": true
|
108 |
+
},
|
109 |
+
"151656": {
|
110 |
+
"content": "<|video_pad|>",
|
111 |
+
"lstrip": false,
|
112 |
+
"normalized": false,
|
113 |
+
"rstrip": false,
|
114 |
+
"single_word": false,
|
115 |
+
"special": true
|
116 |
+
},
|
117 |
+
"151657": {
|
118 |
+
"content": "<tool_call>",
|
119 |
+
"lstrip": false,
|
120 |
+
"normalized": false,
|
121 |
+
"rstrip": false,
|
122 |
+
"single_word": false,
|
123 |
+
"special": false
|
124 |
+
},
|
125 |
+
"151658": {
|
126 |
+
"content": "</tool_call>",
|
127 |
+
"lstrip": false,
|
128 |
+
"normalized": false,
|
129 |
+
"rstrip": false,
|
130 |
+
"single_word": false,
|
131 |
+
"special": false
|
132 |
+
},
|
133 |
+
"151659": {
|
134 |
+
"content": "<|fim_prefix|>",
|
135 |
+
"lstrip": false,
|
136 |
+
"normalized": false,
|
137 |
+
"rstrip": false,
|
138 |
+
"single_word": false,
|
139 |
+
"special": false
|
140 |
+
},
|
141 |
+
"151660": {
|
142 |
+
"content": "<|fim_middle|>",
|
143 |
+
"lstrip": false,
|
144 |
+
"normalized": false,
|
145 |
+
"rstrip": false,
|
146 |
+
"single_word": false,
|
147 |
+
"special": false
|
148 |
+
},
|
149 |
+
"151661": {
|
150 |
+
"content": "<|fim_suffix|>",
|
151 |
+
"lstrip": false,
|
152 |
+
"normalized": false,
|
153 |
+
"rstrip": false,
|
154 |
+
"single_word": false,
|
155 |
+
"special": false
|
156 |
+
},
|
157 |
+
"151662": {
|
158 |
+
"content": "<|fim_pad|>",
|
159 |
+
"lstrip": false,
|
160 |
+
"normalized": false,
|
161 |
+
"rstrip": false,
|
162 |
+
"single_word": false,
|
163 |
+
"special": false
|
164 |
+
},
|
165 |
+
"151663": {
|
166 |
+
"content": "<|repo_name|>",
|
167 |
+
"lstrip": false,
|
168 |
+
"normalized": false,
|
169 |
+
"rstrip": false,
|
170 |
+
"single_word": false,
|
171 |
+
"special": false
|
172 |
+
},
|
173 |
+
"151664": {
|
174 |
+
"content": "<|file_sep|>",
|
175 |
+
"lstrip": false,
|
176 |
+
"normalized": false,
|
177 |
+
"rstrip": false,
|
178 |
+
"single_word": false,
|
179 |
+
"special": false
|
180 |
+
}
|
181 |
+
},
|
182 |
+
"additional_special_tokens": [
|
183 |
+
"<|im_start|>",
|
184 |
+
"<|im_end|>",
|
185 |
+
"<|object_ref_start|>",
|
186 |
+
"<|object_ref_end|>",
|
187 |
+
"<|box_start|>",
|
188 |
+
"<|box_end|>",
|
189 |
+
"<|quad_start|>",
|
190 |
+
"<|quad_end|>",
|
191 |
+
"<|vision_start|>",
|
192 |
+
"<|vision_end|>",
|
193 |
+
"<|vision_pad|>",
|
194 |
+
"<|image_pad|>",
|
195 |
+
"<|video_pad|>"
|
196 |
+
],
|
197 |
+
"bos_token": null,
|
198 |
+
"chat_template": "{%- if tools %}\n {{- '<|im_start|>system\\n' }}\n {%- if messages[0]['role'] == 'system' %}\n {{- messages[0]['content'] }}\n {%- else %}\n {{- 'You are a helpful assistant.' }}\n {%- endif %}\n {{- \"\\n\\n# Tools\\n\\nYou may call one or more functions to assist with the user query.\\n\\nYou are provided with function signatures within <tools></tools> XML tags:\\n<tools>\" }}\n {%- for tool in tools %}\n {{- \"\\n\" }}\n {{- tool | tojson }}\n {%- endfor %}\n {{- \"\\n</tools>\\n\\nFor each function call, return a json object with function name and arguments within <tool_call></tool_call> XML tags:\\n<tool_call>\\n{\\\"name\\\": <function-name>, \\\"arguments\\\": <args-json-object>}\\n</tool_call><|im_end|>\\n\" }}\n{%- else %}\n {%- if messages[0]['role'] == 'system' %}\n {{- '<|im_start|>system\\n' + messages[0]['content'] + '<|im_end|>\\n' }}\n {%- else %}\n {{- '<|im_start|>system\\nYou are a helpful assistant.<|im_end|>\\n' }}\n {%- endif %}\n{%- endif %}\n{%- for message in messages %}\n {%- if (message.role == \"user\") or (message.role == \"system\" and not loop.first) or (message.role == \"assistant\" and not message.tool_calls) %}\n {{- '<|im_start|>' + message.role + '\\n' + message.content + '<|im_end|>' + '\\n' }}\n {%- elif message.role == \"assistant\" %}\n {{- '<|im_start|>' + message.role }}\n {%- if message.content %}\n {{- '\\n' + message.content }}\n {%- endif %}\n {%- for tool_call in message.tool_calls %}\n {%- if tool_call.function is defined %}\n {%- set tool_call = tool_call.function %}\n {%- endif %}\n {{- '\\n<tool_call>\\n{\"name\": \"' }}\n {{- tool_call.name }}\n {{- '\", \"arguments\": ' }}\n {{- tool_call.arguments | tojson }}\n {{- '}\\n</tool_call>' }}\n {%- endfor %}\n {{- '<|im_end|>\\n' }}\n {%- elif message.role == \"tool\" %}\n {%- if (loop.index0 == 0) or (messages[loop.index0 - 1].role != \"tool\") %}\n {{- '<|im_start|>user' }}\n {%- endif %}\n {{- '\\n<tool_response>\\n' }}\n {{- message.content }}\n {{- '\\n</tool_response>' }}\n {%- if loop.last or (messages[loop.index0 + 1].role != \"tool\") %}\n {{- '<|im_end|>\\n' }}\n {%- endif %}\n {%- endif %}\n{%- endfor %}\n{%- if add_generation_prompt %}\n {{- '<|im_start|>assistant\\n' }}\n{%- endif %}\n",
|
199 |
+
"clean_up_tokenization_spaces": false,
|
200 |
+
"eos_token": "<|im_end|>",
|
201 |
+
"errors": "replace",
|
202 |
+
"extra_special_tokens": {},
|
203 |
+
"model_max_length": 131072,
|
204 |
+
"pad_token": "<|endoftext|>",
|
205 |
+
"processor_class": "ColQwen2_5Processor",
|
206 |
+
"split_special_tokens": false,
|
207 |
+
"tokenizer_class": "Qwen2Tokenizer",
|
208 |
+
"unk_token": null
|
209 |
+
}
|
training_config.yml
ADDED
@@ -0,0 +1,72 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
config:
|
2 |
+
(): colpali_engine.trainer.colmodel_training.ColModelTrainingConfig
|
3 |
+
output_dir: !path ../../../models/colqwen2_5-3b-mixed-multiL-5ep-l-128
|
4 |
+
processor:
|
5 |
+
(): colpali_engine.utils.transformers_wrappers.AllPurposeWrapper
|
6 |
+
class_to_instanciate: !ext colpali_engine.models.ColQwen2_5Processor
|
7 |
+
pretrained_model_name_or_path: "Qwen/Qwen2.5-VL-3B-Instruct" # "./models/paligemma-3b-mix-448"
|
8 |
+
# num_image_tokens: 2048
|
9 |
+
# max_length: 50
|
10 |
+
|
11 |
+
model:
|
12 |
+
(): colpali_engine.utils.transformers_wrappers.AllPurposeWrapper
|
13 |
+
class_to_instanciate: !ext colpali_engine.models.ColQwen2_5
|
14 |
+
pretrained_model_name_or_path: "Qwen/Qwen2.5-VL-3B-Instruct"
|
15 |
+
torch_dtype: !ext torch.bfloat16
|
16 |
+
use_cache: false
|
17 |
+
attn_implementation: "flash_attention_2"
|
18 |
+
# device_map: "auto"
|
19 |
+
# quantization_config:
|
20 |
+
# (): transformers.BitsAndBytesConfig
|
21 |
+
# load_in_4bit: true
|
22 |
+
# bnb_4bit_quant_type: "nf4"
|
23 |
+
# bnb_4bit_compute_dtype: "bfloat16"
|
24 |
+
# bnb_4bit_use_double_quant: true
|
25 |
+
|
26 |
+
dataset_loading_func: !ext colpali_engine.utils.dataset_transformation.load_mixed_multiL_train_set
|
27 |
+
eval_dataset_loader: !import ../data/test_data.yaml
|
28 |
+
|
29 |
+
# max_length: 50
|
30 |
+
run_eval: true
|
31 |
+
loss_func:
|
32 |
+
(): colpali_engine.loss.late_interaction_losses.ColbertPairwiseCELoss
|
33 |
+
tr_args:
|
34 |
+
(): transformers.training_args.TrainingArguments
|
35 |
+
output_dir: null
|
36 |
+
overwrite_output_dir: true
|
37 |
+
num_train_epochs: 1
|
38 |
+
per_device_train_batch_size: 128
|
39 |
+
gradient_checkpointing: true
|
40 |
+
gradient_checkpointing_kwargs: { "use_reentrant": false }
|
41 |
+
# gradient_checkpointing: true
|
42 |
+
# 6 x 8 gpus = 48 batch size
|
43 |
+
gradient_accumulation_steps: 2
|
44 |
+
per_device_eval_batch_size: 32
|
45 |
+
eval_strategy: "steps"
|
46 |
+
dataloader_num_workers: 8
|
47 |
+
# bf16: true
|
48 |
+
save_steps: 100
|
49 |
+
logging_steps: 1
|
50 |
+
eval_steps: 180
|
51 |
+
warmup_steps: 19
|
52 |
+
learning_rate: 2e-4
|
53 |
+
save_total_limit: 15
|
54 |
+
resume_from_checkpoint: false
|
55 |
+
optim: "paged_adamw_8bit"
|
56 |
+
# wandb logging
|
57 |
+
# wandb_project: "dolma"
|
58 |
+
run_name: "colqwen2_5-3b-mixed-multiL-5ep-l-128"
|
59 |
+
report_to: wandb
|
60 |
+
|
61 |
+
|
62 |
+
peft_config:
|
63 |
+
(): peft.LoraConfig
|
64 |
+
r: 128
|
65 |
+
lora_alpha: 128
|
66 |
+
lora_dropout: 0.1
|
67 |
+
init_lora_weights: "gaussian"
|
68 |
+
bias: "none"
|
69 |
+
task_type: "FEATURE_EXTRACTION"
|
70 |
+
target_modules: '(.*(model).*(down_proj|gate_proj|up_proj|k_proj|q_proj|v_proj|o_proj).*$|.*(custom_text_proj).*$)'
|
71 |
+
# target_modules: '(.*(language_model).*(down_proj|gate_proj|up_proj|k_proj|q_proj|v_proj|o_proj).*$|.*(custom_text_proj).*$)'
|
72 |
+
|
vocab.json
ADDED
The diff for this file is too large to render.
See raw diff
|
|