ctrltokyo commited on
Commit
b723c73
·
verified ·
1 Parent(s): 0038b20

Upload Reason-Code-ModernColBERT (first ColBERT for code search)

Browse files
1_Dense/config.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"in_features": 768, "out_features": 128, "bias": false, "activation_function": "torch.nn.modules.linear.Identity"}
1_Dense/model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:504ddaaa8aed73f7ff94a676be8cac9fbeabc2cc82545e2d4ec7f6088ac29c69
3
+ size 393304
README.md ADDED
@@ -0,0 +1,554 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ tags:
3
+ - ColBERT
4
+ - PyLate
5
+ - sentence-transformers
6
+ - sentence-similarity
7
+ - feature-extraction
8
+ - generated_from_trainer
9
+ - dataset_size:9959
10
+ - loss:CachedContrastive
11
+ pipeline_tag: sentence-similarity
12
+ library_name: PyLate
13
+ ---
14
+
15
+ # PyLate
16
+
17
+ This is a [PyLate](https://github.com/lightonai/pylate) model trained. It maps sentences & paragraphs to sequences of 128-dimensional dense vectors and can be used for semantic textual similarity using the MaxSim operator.
18
+
19
+ ## Model Details
20
+
21
+ ### Model Description
22
+ - **Model Type:** PyLate model
23
+ <!-- - **Base model:** [Unknown](https://huggingface.co/unknown) -->
24
+ - **Document Length:** 512 tokens
25
+ - **Query Length:** 128 tokens
26
+ - **Output Dimensionality:** 128 tokens
27
+ - **Similarity Function:** MaxSim
28
+ <!-- - **Training Dataset:** Unknown -->
29
+ <!-- - **Language:** Unknown -->
30
+ <!-- - **License:** Unknown -->
31
+
32
+ ### Model Sources
33
+
34
+ - **Documentation:** [PyLate Documentation](https://lightonai.github.io/pylate/)
35
+ - **Repository:** [PyLate on GitHub](https://github.com/lightonai/pylate)
36
+ - **Hugging Face:** [PyLate models on Hugging Face](https://huggingface.co/models?library=PyLate)
37
+
38
+ ### Full Model Architecture
39
+
40
+ ```
41
+ ColBERT(
42
+ (0): Transformer({'max_seq_length': 127, 'do_lower_case': False}) with Transformer model: ModernBertModel
43
+ (1): Dense({'in_features': 768, 'out_features': 128, 'bias': False, 'activation_function': 'torch.nn.modules.linear.Identity'})
44
+ )
45
+ ```
46
+
47
+ ## Usage
48
+ First install the PyLate library:
49
+
50
+ ```bash
51
+ pip install -U pylate
52
+ ```
53
+
54
+ ### Retrieval
55
+
56
+ PyLate provides a streamlined interface to index and retrieve documents using ColBERT models. The index leverages the Voyager HNSW index to efficiently handle document embeddings and enable fast retrieval.
57
+
58
+ #### Indexing documents
59
+
60
+ First, load the ColBERT model and initialize the Voyager index, then encode and index your documents:
61
+
62
+ ```python
63
+ from pylate import indexes, models, retrieve
64
+
65
+ # Step 1: Load the ColBERT model
66
+ model = models.ColBERT(
67
+ model_name_or_path=pylate_model_id,
68
+ )
69
+
70
+ # Step 2: Initialize the Voyager index
71
+ index = indexes.Voyager(
72
+ index_folder="pylate-index",
73
+ index_name="index",
74
+ override=True, # This overwrites the existing index if any
75
+ )
76
+
77
+ # Step 3: Encode the documents
78
+ documents_ids = ["1", "2", "3"]
79
+ documents = ["document 1 text", "document 2 text", "document 3 text"]
80
+
81
+ documents_embeddings = model.encode(
82
+ documents,
83
+ batch_size=32,
84
+ is_query=False, # Ensure that it is set to False to indicate that these are documents, not queries
85
+ show_progress_bar=True,
86
+ )
87
+
88
+ # Step 4: Add document embeddings to the index by providing embeddings and corresponding ids
89
+ index.add_documents(
90
+ documents_ids=documents_ids,
91
+ documents_embeddings=documents_embeddings,
92
+ )
93
+ ```
94
+
95
+ Note that you do not have to recreate the index and encode the documents every time. Once you have created an index and added the documents, you can re-use the index later by loading it:
96
+
97
+ ```python
98
+ # To load an index, simply instantiate it with the correct folder/name and without overriding it
99
+ index = indexes.Voyager(
100
+ index_folder="pylate-index",
101
+ index_name="index",
102
+ )
103
+ ```
104
+
105
+ #### Retrieving top-k documents for queries
106
+
107
+ Once the documents are indexed, you can retrieve the top-k most relevant documents for a given set of queries.
108
+ To do so, initialize the ColBERT retriever with the index you want to search in, encode the queries and then retrieve the top-k documents to get the top matches ids and relevance scores:
109
+
110
+ ```python
111
+ # Step 1: Initialize the ColBERT retriever
112
+ retriever = retrieve.ColBERT(index=index)
113
+
114
+ # Step 2: Encode the queries
115
+ queries_embeddings = model.encode(
116
+ ["query for document 3", "query for document 1"],
117
+ batch_size=32,
118
+ is_query=True, # # Ensure that it is set to False to indicate that these are queries
119
+ show_progress_bar=True,
120
+ )
121
+
122
+ # Step 3: Retrieve top-k documents
123
+ scores = retriever.retrieve(
124
+ queries_embeddings=queries_embeddings,
125
+ k=10, # Retrieve the top 10 matches for each query
126
+ )
127
+ ```
128
+
129
+ ### Reranking
130
+ If you only want to use the ColBERT model to perform reranking on top of your first-stage retrieval pipeline without building an index, you can simply use rank function and pass the queries and documents to rerank:
131
+
132
+ ```python
133
+ from pylate import rank, models
134
+
135
+ queries = [
136
+ "query A",
137
+ "query B",
138
+ ]
139
+
140
+ documents = [
141
+ ["document A", "document B"],
142
+ ["document 1", "document C", "document B"],
143
+ ]
144
+
145
+ documents_ids = [
146
+ [1, 2],
147
+ [1, 3, 2],
148
+ ]
149
+
150
+ model = models.ColBERT(
151
+ model_name_or_path=pylate_model_id,
152
+ )
153
+
154
+ queries_embeddings = model.encode(
155
+ queries,
156
+ is_query=True,
157
+ )
158
+
159
+ documents_embeddings = model.encode(
160
+ documents,
161
+ is_query=False,
162
+ )
163
+
164
+ reranked_documents = rank.rerank(
165
+ documents_ids=documents_ids,
166
+ queries_embeddings=queries_embeddings,
167
+ documents_embeddings=documents_embeddings,
168
+ )
169
+ ```
170
+
171
+ <!--
172
+ ### Direct Usage (Transformers)
173
+
174
+ <details><summary>Click to see the direct usage in Transformers</summary>
175
+
176
+ </details>
177
+ -->
178
+
179
+ <!--
180
+ ### Downstream Usage (Sentence Transformers)
181
+
182
+ You can finetune this model on your own dataset.
183
+
184
+ <details><summary>Click to expand</summary>
185
+
186
+ </details>
187
+ -->
188
+
189
+ <!--
190
+ ### Out-of-Scope Use
191
+
192
+ *List how the model may foreseeably be misused and address what users ought not to do with the model.*
193
+ -->
194
+
195
+ <!--
196
+ ## Bias, Risks and Limitations
197
+
198
+ *What are the known or foreseeable issues stemming from this model? You could also flag here known failure cases or weaknesses of the model.*
199
+ -->
200
+
201
+ <!--
202
+ ### Recommendations
203
+
204
+ *What are recommendations with respect to the foreseeable issues? For example, filtering explicit content.*
205
+ -->
206
+
207
+ ## Training Details
208
+
209
+ ### Training Dataset
210
+
211
+ #### Unnamed Dataset
212
+
213
+
214
+ * Size: 9,959 training samples
215
+ * Columns: <code>query</code>, <code>positive</code>, and <code>negative</code>
216
+ * Approximate statistics based on the first 1000 samples:
217
+ | | query | positive | negative |
218
+ |:--------|:-------------------------------------------------------------------------------------|:-------------------------------------------------------------------------------------|:-----------------------------------------------------------------------------------|
219
+ | type | string | string | string |
220
+ | details | <ul><li>min: 128 tokens</li><li>mean: 128.0 tokens</li><li>max: 128 tokens</li></ul> | <ul><li>min: 32 tokens</li><li>mean: 108.34 tokens</li><li>max: 128 tokens</li></ul> | <ul><li>min: 6 tokens</li><li>mean: 79.95 tokens</li><li>max: 128 tokens</li></ul> |
221
+ * Samples:
222
+ | query | positive | negative |
223
+ |:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
224
+ | <code>Here is the step-by-step reasoning to identify the correct code solution for reading an OVF descriptor file with robust error handling.<br><br>### 1. Identify the Kind of Code<br>The code required is a **Python utility function** (or a small script) that performs **file I/O operations**. Specifically, it needs to:<br>* Accept a file path as an input argument.<br>* Attempt to open and read the contents of a file (likely a text-based XML or text file, as OVF descriptors are XML).<br>* Implement **exception handling** to gracefully manage scenarios where the file does not exist or cannot be read due to permissions or corruption.<br>* Return the file content (string) or a parsed object (if XML parsing is included), or raise a specific, user-friendly error.<br><br>### 2. Relevant Programming Concepts & Patterns<br>* **File I/O and Context Managers**: The code must use the `with open(...)` statement. This ensures the file handle is properly closed even if an error occurs during reading, preventing resource leak...</code> | <code>def get_ovf_descriptor(ovf_path):<br> if path.exists(ovf_path):<br> with open(ovf_path, 'r') as f:<br> try:<br> ovfd = f.read()<br> f.close()<br> return ovfd<br> except:<br> print "Could not read file: %s" % ovf_path<br> exit(1)</code> | <code>def read_vnf_descriptor(vnfd_id, vnf_vendor, vnf_version):<br> if _catalog_backend is not None:<br> return _catalog_backend.read_vnf_descriptor(vnfd_id, vnf_vendor,<br> vnf_version)<br> return None</code> |
225
+ | <code>Here is the step-by-step reasoning to identify the correct code solution for adding a custom 'Settings' link to the WordPress plugin action links.<br><br>### 1. What kind of code would answer this query?<br>The solution requires **PHP code** specifically designed for **WordPress plugin development**. It will not be a JavaScript snippet or a CSS style. The code must be a function that hooks into the WordPress plugin management system, likely using the `plugin_action_links_{plugin_basename}` filter.<br><br>### 2. Relevant Programming Concepts, Patterns, and Algorithms<br>* **WordPress Hooks (Filters):** The core mechanism is the `apply_filters()` system. Specifically, the dynamic filter `plugin_action_links_{plugin_basename}` allows developers to modify the array of action links (Activate, Deactivate, Edit, Delete, Settings) for a specific plugin.<br>* **Array Manipulation:** The action links are stored as an associative array where the key is the link text (or ID) and the value is the URL. The code must...</code> | <code>public<br> function plugin_add_settings_link(<br> $links<br> ) {<br> $settings_link_html = '<a href="' . esc_url( self::get_settings_url() ) . '">' . __( 'Settings', 'link-linkid' ) . '</a>';<br> array_unshift( $links, $settings_link_html );<br><br> return $links;<br> }</code> | <code>function plugin_settings_link( $links){ <br> $settings_link = '<a href="options-general.php?page=esbs-plugin-settings">Settings</a>'; <br> array_unshift($links, $settings_link); <br> return $links; <br> }</code> |
226
+ | <code>### Reasoning Chain<br><br>1. **Identify the Goal**: The user wants to parse a JSON Web Token (JWT) in Go specifically to read the payload (claims) *without* performing the cryptographic signature verification. This is often needed for debugging, logging, or when the token is trusted from a different source (e.g., a trusted internal service) and signature validation is handled elsewhere.<br><br>2. **Analyze the JWT Structure**: A JWT consists of three parts: `header.payload.signature`. The `payload` is a JSON object containing the claims. To extract claims without verification, we need to:<br> * Decode the Base64URL-encoded payload.<br> * Unmarshal the JSON into a Go struct or `map[string]interface{}`.<br> * **Crucially**, skip the step where the library checks the signature against the provided key.<br><br>3. **Select the Library**: The standard library for JWT in Go is `github.com/golang-jwt/jwt/v5` (or the older `v4`). The older `jwt-go` library is deprecated.<br><br>4. **Determine the Implementa...</code> | <code>func ParseInsecure(token string, audience []string) (*SVID, error) {<br> return parse(token, audience, func(tok *jwt.JSONWebToken, td spiffeid.TrustDomain) (map[string]interface{}, error) {<br> // Obtain the token claims insecurely, i.e. without signature verification<br> claimsMap := make(map[string]interface{})<br> if err := tok.UnsafeClaimsWithoutVerification(&claimsMap); err != nil {<br> return nil, jwtsvidErr.New("unable to get claims from token: %v", err)<br> }<br><br> return claimsMap, nil<br> })<br>}</code> | <code>func ParseAndValidate(token string, bundles jwtbundle.Source, audience []string) (*SVID, error) {<br> return parse(token, audience, func(tok *jwt.JSONWebToken, trustDomain spiffeid.TrustDomain) (map[string]interface{}, error) {<br> // Obtain the key ID from the header<br> keyID := tok.Headers[0].KeyID<br> if keyID == "" {<br> return nil, jwtsvidErr.New("token header missing key id")<br> }<br><br> // Get JWT Bundle<br> bundle, err := bundles.GetJWTBundleForTrustDomain(trustDomain)<br> if err != nil {<br> return nil, jwtsvidErr.New("no bundle found for trust domain %q", trustDomain)<br> }<br><br> // Find JWT authority using the key ID from the token header<br> authority, ok := bundle.FindJWTAuthority(keyID)<br> if !ok {<br> return nil, jwtsvidErr.New("no JWT authority %q found for trust domain %q", keyID, trustDomain)<br> }<br><br> // Obtain and verify the token claims using the obtained JWT authority<br> claimsMap := make(map[string]interface{})<br> if err := tok.Claims(authority, &claimsMap); err != nil {<br> return nil, jwtsvidEr...</code> |
227
+ * Loss: <code>pylate.losses.cached_contrastive.CachedContrastive</code>
228
+
229
+ ### Training Hyperparameters
230
+ #### Non-Default Hyperparameters
231
+
232
+ - `per_device_train_batch_size`: 256
233
+ - `per_device_eval_batch_size`: 256
234
+ - `learning_rate`: 5e-06
235
+ - `warmup_ratio`: 0.05
236
+ - `bf16`: True
237
+ - `tf32`: True
238
+ - `dataloader_num_workers`: 8
239
+ - `dataloader_prefetch_factor`: 4
240
+ - `dataloader_persistent_workers`: True
241
+
242
+ #### All Hyperparameters
243
+ <details><summary>Click to expand</summary>
244
+
245
+ - `overwrite_output_dir`: False
246
+ - `do_predict`: False
247
+ - `eval_strategy`: no
248
+ - `prediction_loss_only`: True
249
+ - `per_device_train_batch_size`: 256
250
+ - `per_device_eval_batch_size`: 256
251
+ - `per_gpu_train_batch_size`: None
252
+ - `per_gpu_eval_batch_size`: None
253
+ - `gradient_accumulation_steps`: 1
254
+ - `eval_accumulation_steps`: None
255
+ - `torch_empty_cache_steps`: None
256
+ - `learning_rate`: 5e-06
257
+ - `weight_decay`: 0.0
258
+ - `adam_beta1`: 0.9
259
+ - `adam_beta2`: 0.999
260
+ - `adam_epsilon`: 1e-08
261
+ - `max_grad_norm`: 1.0
262
+ - `num_train_epochs`: 3
263
+ - `max_steps`: -1
264
+ - `lr_scheduler_type`: linear
265
+ - `lr_scheduler_kwargs`: {}
266
+ - `warmup_ratio`: 0.05
267
+ - `warmup_steps`: 0
268
+ - `log_level`: passive
269
+ - `log_level_replica`: warning
270
+ - `log_on_each_node`: True
271
+ - `logging_nan_inf_filter`: True
272
+ - `save_safetensors`: True
273
+ - `save_on_each_node`: False
274
+ - `save_only_model`: False
275
+ - `restore_callback_states_from_checkpoint`: False
276
+ - `no_cuda`: False
277
+ - `use_cpu`: False
278
+ - `use_mps_device`: False
279
+ - `seed`: 42
280
+ - `data_seed`: None
281
+ - `jit_mode_eval`: False
282
+ - `use_ipex`: False
283
+ - `bf16`: True
284
+ - `fp16`: False
285
+ - `fp16_opt_level`: O1
286
+ - `half_precision_backend`: auto
287
+ - `bf16_full_eval`: False
288
+ - `fp16_full_eval`: False
289
+ - `tf32`: True
290
+ - `local_rank`: 0
291
+ - `ddp_backend`: None
292
+ - `tpu_num_cores`: None
293
+ - `tpu_metrics_debug`: False
294
+ - `debug`: []
295
+ - `dataloader_drop_last`: False
296
+ - `dataloader_num_workers`: 8
297
+ - `dataloader_prefetch_factor`: 4
298
+ - `past_index`: -1
299
+ - `disable_tqdm`: False
300
+ - `remove_unused_columns`: True
301
+ - `label_names`: None
302
+ - `load_best_model_at_end`: False
303
+ - `ignore_data_skip`: False
304
+ - `fsdp`: []
305
+ - `fsdp_min_num_params`: 0
306
+ - `fsdp_config`: {'min_num_params': 0, 'xla': False, 'xla_fsdp_v2': False, 'xla_fsdp_grad_ckpt': False}
307
+ - `fsdp_transformer_layer_cls_to_wrap`: None
308
+ - `accelerator_config`: {'split_batches': False, 'dispatch_batches': None, 'even_batches': True, 'use_seedable_sampler': True, 'non_blocking': False, 'gradient_accumulation_kwargs': None}
309
+ - `deepspeed`: None
310
+ - `label_smoothing_factor`: 0.0
311
+ - `optim`: adamw_torch
312
+ - `optim_args`: None
313
+ - `adafactor`: False
314
+ - `group_by_length`: False
315
+ - `length_column_name`: length
316
+ - `ddp_find_unused_parameters`: None
317
+ - `ddp_bucket_cap_mb`: None
318
+ - `ddp_broadcast_buffers`: False
319
+ - `dataloader_pin_memory`: True
320
+ - `dataloader_persistent_workers`: True
321
+ - `skip_memory_metrics`: True
322
+ - `use_legacy_prediction_loop`: False
323
+ - `push_to_hub`: False
324
+ - `resume_from_checkpoint`: None
325
+ - `hub_model_id`: None
326
+ - `hub_strategy`: every_save
327
+ - `hub_private_repo`: None
328
+ - `hub_always_push`: False
329
+ - `gradient_checkpointing`: False
330
+ - `gradient_checkpointing_kwargs`: None
331
+ - `include_inputs_for_metrics`: False
332
+ - `include_for_metrics`: []
333
+ - `eval_do_concat_batches`: True
334
+ - `fp16_backend`: auto
335
+ - `push_to_hub_model_id`: None
336
+ - `push_to_hub_organization`: None
337
+ - `mp_parameters`:
338
+ - `auto_find_batch_size`: False
339
+ - `full_determinism`: False
340
+ - `torchdynamo`: None
341
+ - `ray_scope`: last
342
+ - `ddp_timeout`: 1800
343
+ - `torch_compile`: False
344
+ - `torch_compile_backend`: None
345
+ - `torch_compile_mode`: None
346
+ - `dispatch_batches`: None
347
+ - `split_batches`: None
348
+ - `include_tokens_per_second`: False
349
+ - `include_num_input_tokens_seen`: False
350
+ - `neftune_noise_alpha`: None
351
+ - `optim_target_modules`: None
352
+ - `batch_eval_metrics`: False
353
+ - `eval_on_start`: False
354
+ - `use_liger_kernel`: False
355
+ - `eval_use_gather_object`: False
356
+ - `average_tokens_across_devices`: False
357
+ - `prompts`: None
358
+ - `batch_sampler`: batch_sampler
359
+ - `multi_dataset_batch_sampler`: proportional
360
+
361
+ </details>
362
+
363
+ ### Training Logs
364
+ <details><summary>Click to expand</summary>
365
+
366
+ | Epoch | Step | Training Loss |
367
+ |:------:|:----:|:-------------:|
368
+ | 0.0256 | 1 | 2.3632 |
369
+ | 0.0513 | 2 | 2.3367 |
370
+ | 0.0769 | 3 | 2.448 |
371
+ | 0.1026 | 4 | 2.4189 |
372
+ | 0.1282 | 5 | 2.1217 |
373
+ | 0.1538 | 6 | 2.1491 |
374
+ | 0.1795 | 7 | 1.9582 |
375
+ | 0.2051 | 8 | 1.9204 |
376
+ | 0.2308 | 9 | 1.6757 |
377
+ | 0.2564 | 10 | 1.4951 |
378
+ | 0.2821 | 11 | 1.3773 |
379
+ | 0.3077 | 12 | 1.1778 |
380
+ | 0.3333 | 13 | 1.088 |
381
+ | 0.3590 | 14 | 1.0256 |
382
+ | 0.3846 | 15 | 1.0174 |
383
+ | 0.4103 | 16 | 0.8424 |
384
+ | 0.4359 | 17 | 0.9435 |
385
+ | 0.4615 | 18 | 0.854 |
386
+ | 0.4872 | 19 | 0.8846 |
387
+ | 0.5128 | 20 | 0.9211 |
388
+ | 0.5385 | 21 | 0.7185 |
389
+ | 0.5641 | 22 | 0.8183 |
390
+ | 0.5897 | 23 | 0.7488 |
391
+ | 0.6154 | 24 | 0.696 |
392
+ | 0.6410 | 25 | 0.6371 |
393
+ | 0.6667 | 26 | 0.6456 |
394
+ | 0.6923 | 27 | 0.6259 |
395
+ | 0.7179 | 28 | 0.5277 |
396
+ | 0.7436 | 29 | 0.7078 |
397
+ | 0.7692 | 30 | 0.7901 |
398
+ | 0.7949 | 31 | 0.6332 |
399
+ | 0.8205 | 32 | 0.4658 |
400
+ | 0.8462 | 33 | 0.6804 |
401
+ | 0.8718 | 34 | 0.6232 |
402
+ | 0.8974 | 35 | 0.611 |
403
+ | 0.9231 | 36 | 0.6147 |
404
+ | 0.9487 | 37 | 0.5991 |
405
+ | 0.9744 | 38 | 0.6732 |
406
+ | 1.0 | 39 | 0.5281 |
407
+ | 1.0256 | 40 | 0.5556 |
408
+ | 1.0513 | 41 | 0.4985 |
409
+ | 1.0769 | 42 | 0.5527 |
410
+ | 1.1026 | 43 | 0.4919 |
411
+ | 1.1282 | 44 | 0.5443 |
412
+ | 1.1538 | 45 | 0.6086 |
413
+ | 1.1795 | 46 | 0.5949 |
414
+ | 1.2051 | 47 | 0.5734 |
415
+ | 1.2308 | 48 | 0.6677 |
416
+ | 1.2564 | 49 | 0.5189 |
417
+ | 1.2821 | 50 | 0.666 |
418
+ | 1.3077 | 51 | 0.4927 |
419
+ | 1.3333 | 52 | 0.5356 |
420
+ | 1.3590 | 53 | 0.5792 |
421
+ | 1.3846 | 54 | 0.4162 |
422
+ | 1.4103 | 55 | 0.5923 |
423
+ | 1.4359 | 56 | 0.4905 |
424
+ | 1.4615 | 57 | 0.4645 |
425
+ | 1.4872 | 58 | 0.7121 |
426
+ | 1.5128 | 59 | 0.5809 |
427
+ | 1.5385 | 60 | 0.4401 |
428
+ | 1.5641 | 61 | 0.458 |
429
+ | 1.5897 | 62 | 0.4659 |
430
+ | 1.6154 | 63 | 0.5638 |
431
+ | 1.6410 | 64 | 0.4875 |
432
+ | 1.6667 | 65 | 0.4903 |
433
+ | 1.6923 | 66 | 0.5373 |
434
+ | 1.7179 | 67 | 0.3934 |
435
+ | 1.7436 | 68 | 0.5693 |
436
+ | 1.7692 | 69 | 0.4524 |
437
+ | 1.7949 | 70 | 0.4949 |
438
+ | 1.8205 | 71 | 0.466 |
439
+ | 1.8462 | 72 | 0.4837 |
440
+ | 1.8718 | 73 | 0.5391 |
441
+ | 1.8974 | 74 | 0.5266 |
442
+ | 1.9231 | 75 | 0.4747 |
443
+ | 1.9487 | 76 | 0.4502 |
444
+ | 1.9744 | 77 | 0.5449 |
445
+ | 2.0 | 78 | 0.4349 |
446
+ | 2.0256 | 79 | 0.4566 |
447
+ | 2.0513 | 80 | 0.482 |
448
+ | 2.0769 | 81 | 0.5553 |
449
+ | 2.1026 | 82 | 0.4606 |
450
+ | 2.1282 | 83 | 0.4938 |
451
+ | 2.1538 | 84 | 0.4303 |
452
+ | 2.1795 | 85 | 0.4068 |
453
+ | 2.2051 | 86 | 0.4398 |
454
+ | 2.2308 | 87 | 0.4359 |
455
+ | 2.2564 | 88 | 0.4599 |
456
+ | 2.2821 | 89 | 0.4835 |
457
+ | 2.3077 | 90 | 0.404 |
458
+ | 2.3333 | 91 | 0.5046 |
459
+ | 2.3590 | 92 | 0.4678 |
460
+ | 2.3846 | 93 | 0.3891 |
461
+ | 2.4103 | 94 | 0.435 |
462
+ | 2.4359 | 95 | 0.5688 |
463
+ | 2.4615 | 96 | 0.4319 |
464
+ | 2.4872 | 97 | 0.4667 |
465
+ | 2.5128 | 98 | 0.5857 |
466
+ | 2.5385 | 99 | 0.5194 |
467
+ | 2.5641 | 100 | 0.4741 |
468
+ | 2.5897 | 101 | 0.5226 |
469
+ | 2.6154 | 102 | 0.4168 |
470
+ | 2.6410 | 103 | 0.4488 |
471
+ | 2.6667 | 104 | 0.4922 |
472
+ | 2.6923 | 105 | 0.4309 |
473
+ | 2.7179 | 106 | 0.4832 |
474
+ | 2.7436 | 107 | 0.4496 |
475
+ | 2.7692 | 108 | 0.5548 |
476
+ | 2.7949 | 109 | 0.4355 |
477
+ | 2.8205 | 110 | 0.4305 |
478
+ | 2.8462 | 111 | 0.3955 |
479
+ | 2.8718 | 112 | 0.2876 |
480
+ | 2.8974 | 113 | 0.4263 |
481
+ | 2.9231 | 114 | 0.4874 |
482
+ | 2.9487 | 115 | 0.4602 |
483
+ | 2.9744 | 116 | 0.4725 |
484
+ | 3.0 | 117 | 0.5401 |
485
+
486
+ </details>
487
+
488
+ ### Framework Versions
489
+ - Python: 3.12.3
490
+ - Sentence Transformers: 4.0.2
491
+ - PyLate: 1.2.0
492
+ - Transformers: 4.48.2
493
+ - PyTorch: 2.10.0a0+a36e1d39eb.nv26.01.42222806
494
+ - Accelerate: 1.13.0
495
+ - Datasets: 4.4.2
496
+ - Tokenizers: 0.21.4
497
+
498
+
499
+ ## Citation
500
+
501
+ ### BibTeX
502
+
503
+ #### Sentence Transformers
504
+ ```bibtex
505
+ @inproceedings{reimers-2019-sentence-bert,
506
+ title = "Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks",
507
+ author = "Reimers, Nils and Gurevych, Iryna",
508
+ booktitle = "Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing",
509
+ month = "11",
510
+ year = "2019",
511
+ publisher = "Association for Computational Linguistics",
512
+ url = "https://arxiv.org/abs/1908.10084"
513
+ }
514
+ ```
515
+
516
+ #### PyLate
517
+ ```bibtex
518
+ @misc{PyLate,
519
+ title={PyLate: Flexible Training and Retrieval for Late Interaction Models},
520
+ author={Chaffin, Antoine and Sourty, Raphaël},
521
+ url={https://github.com/lightonai/pylate},
522
+ year={2024}
523
+ }
524
+ ```
525
+
526
+ #### CachedContrastive
527
+ ```bibtex
528
+ @misc{gao2021scaling,
529
+ title={Scaling Deep Contrastive Learning Batch Size under Memory Limited Setup},
530
+ author={Luyu Gao and Yunyi Zhang and Jiawei Han and Jamie Callan},
531
+ year={2021},
532
+ eprint={2101.06983},
533
+ archivePrefix={arXiv},
534
+ primaryClass={cs.LG}
535
+ }
536
+ ```
537
+
538
+ <!--
539
+ ## Glossary
540
+
541
+ *Clearly define terms in order to be accessible across audiences.*
542
+ -->
543
+
544
+ <!--
545
+ ## Model Card Authors
546
+
547
+ *Lists the people who create the model card, providing recognition and accountability for the detailed work that goes into its construction.*
548
+ -->
549
+
550
+ <!--
551
+ ## Model Card Contact
552
+
553
+ *Provides a way for people who have updates to the Model Card, suggestions, or questions, to contact the Model Card authors.*
554
+ -->
config.json ADDED
@@ -0,0 +1,47 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_name_or_path": "output/Reason-Code-ModernColBERT/stage1/final",
3
+ "architectures": [
4
+ "ModernBertModel"
5
+ ],
6
+ "attention_bias": false,
7
+ "attention_dropout": 0.0,
8
+ "bos_token_id": 50281,
9
+ "classifier_activation": "gelu",
10
+ "classifier_bias": false,
11
+ "classifier_dropout": 0.0,
12
+ "classifier_pooling": "mean",
13
+ "cls_token_id": 50281,
14
+ "decoder_bias": true,
15
+ "deterministic_flash_attn": false,
16
+ "embedding_dropout": 0.0,
17
+ "eos_token_id": 50282,
18
+ "global_attn_every_n_layers": 3,
19
+ "global_rope_theta": 160000.0,
20
+ "gradient_checkpointing": false,
21
+ "hidden_activation": "gelu",
22
+ "hidden_size": 768,
23
+ "initializer_cutoff_factor": 2.0,
24
+ "initializer_range": 0.02,
25
+ "intermediate_size": 1152,
26
+ "layer_norm_eps": 1e-05,
27
+ "local_attention": 128,
28
+ "local_rope_theta": 10000.0,
29
+ "max_position_embeddings": 8192,
30
+ "mlp_bias": false,
31
+ "mlp_dropout": 0.0,
32
+ "model_type": "modernbert",
33
+ "norm_bias": false,
34
+ "norm_eps": 1e-05,
35
+ "num_attention_heads": 12,
36
+ "num_hidden_layers": 22,
37
+ "pad_token_id": 50283,
38
+ "position_embedding_type": "absolute",
39
+ "reference_compile": false,
40
+ "repad_logits_with_grad": false,
41
+ "sep_token_id": 50282,
42
+ "sparse_pred_ignore_index": -100,
43
+ "sparse_prediction": false,
44
+ "torch_dtype": "float32",
45
+ "transformers_version": "4.48.2",
46
+ "vocab_size": 50370
47
+ }
config_sentence_transformers.json ADDED
@@ -0,0 +1,17 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "__version__": {
3
+ "sentence_transformers": "4.0.2",
4
+ "transformers": "4.48.2",
5
+ "pytorch": "2.10.0a0+a36e1d39eb.nv26.01.42222806"
6
+ },
7
+ "prompts": {},
8
+ "default_prompt_name": null,
9
+ "similarity_fn_name": "MaxSim",
10
+ "query_prefix": "[Q] ",
11
+ "document_prefix": "[D] ",
12
+ "query_length": 128,
13
+ "document_length": 512,
14
+ "attend_to_expansion_tokens": false,
15
+ "skiplist_words": [],
16
+ "do_query_expansion": false
17
+ }
model.safetensors ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3f7c79911f4d1e55347a228dfb5eaae0af913c0a19cbe0f5f0bde55a38749743
3
+ size 596076280
modules.json ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ [
2
+ {
3
+ "idx": 0,
4
+ "name": "0",
5
+ "path": "",
6
+ "type": "sentence_transformers.models.Transformer"
7
+ },
8
+ {
9
+ "idx": 1,
10
+ "name": "1",
11
+ "path": "1_Dense",
12
+ "type": "pylate.models.Dense.Dense"
13
+ }
14
+ ]
sentence_bert_config.json ADDED
@@ -0,0 +1,4 @@
 
 
 
 
 
1
+ {
2
+ "max_seq_length": 127,
3
+ "do_lower_case": false
4
+ }
special_tokens_map.json ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "cls_token": {
3
+ "content": "[CLS]",
4
+ "lstrip": false,
5
+ "normalized": false,
6
+ "rstrip": false,
7
+ "single_word": false
8
+ },
9
+ "mask_token": {
10
+ "content": "[MASK]",
11
+ "lstrip": true,
12
+ "normalized": false,
13
+ "rstrip": false,
14
+ "single_word": false
15
+ },
16
+ "pad_token": "[MASK]",
17
+ "sep_token": {
18
+ "content": "[SEP]",
19
+ "lstrip": false,
20
+ "normalized": false,
21
+ "rstrip": false,
22
+ "single_word": false
23
+ },
24
+ "unk_token": {
25
+ "content": "[UNK]",
26
+ "lstrip": false,
27
+ "normalized": false,
28
+ "rstrip": false,
29
+ "single_word": false
30
+ }
31
+ }
tokenizer.json ADDED
The diff for this file is too large to render. See raw diff
 
tokenizer_config.json ADDED
@@ -0,0 +1,968 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "added_tokens_decoder": {
3
+ "0": {
4
+ "content": "|||IP_ADDRESS|||",
5
+ "lstrip": false,
6
+ "normalized": true,
7
+ "rstrip": false,
8
+ "single_word": false,
9
+ "special": false
10
+ },
11
+ "1": {
12
+ "content": "<|padding|>",
13
+ "lstrip": false,
14
+ "normalized": false,
15
+ "rstrip": false,
16
+ "single_word": false,
17
+ "special": true
18
+ },
19
+ "50254": {
20
+ "content": " ",
21
+ "lstrip": false,
22
+ "normalized": true,
23
+ "rstrip": false,
24
+ "single_word": false,
25
+ "special": false
26
+ },
27
+ "50255": {
28
+ "content": " ",
29
+ "lstrip": false,
30
+ "normalized": true,
31
+ "rstrip": false,
32
+ "single_word": false,
33
+ "special": false
34
+ },
35
+ "50256": {
36
+ "content": " ",
37
+ "lstrip": false,
38
+ "normalized": true,
39
+ "rstrip": false,
40
+ "single_word": false,
41
+ "special": false
42
+ },
43
+ "50257": {
44
+ "content": " ",
45
+ "lstrip": false,
46
+ "normalized": true,
47
+ "rstrip": false,
48
+ "single_word": false,
49
+ "special": false
50
+ },
51
+ "50258": {
52
+ "content": " ",
53
+ "lstrip": false,
54
+ "normalized": true,
55
+ "rstrip": false,
56
+ "single_word": false,
57
+ "special": false
58
+ },
59
+ "50259": {
60
+ "content": " ",
61
+ "lstrip": false,
62
+ "normalized": true,
63
+ "rstrip": false,
64
+ "single_word": false,
65
+ "special": false
66
+ },
67
+ "50260": {
68
+ "content": " ",
69
+ "lstrip": false,
70
+ "normalized": true,
71
+ "rstrip": false,
72
+ "single_word": false,
73
+ "special": false
74
+ },
75
+ "50261": {
76
+ "content": " ",
77
+ "lstrip": false,
78
+ "normalized": true,
79
+ "rstrip": false,
80
+ "single_word": false,
81
+ "special": false
82
+ },
83
+ "50262": {
84
+ "content": " ",
85
+ "lstrip": false,
86
+ "normalized": true,
87
+ "rstrip": false,
88
+ "single_word": false,
89
+ "special": false
90
+ },
91
+ "50263": {
92
+ "content": " ",
93
+ "lstrip": false,
94
+ "normalized": true,
95
+ "rstrip": false,
96
+ "single_word": false,
97
+ "special": false
98
+ },
99
+ "50264": {
100
+ "content": " ",
101
+ "lstrip": false,
102
+ "normalized": true,
103
+ "rstrip": false,
104
+ "single_word": false,
105
+ "special": false
106
+ },
107
+ "50265": {
108
+ "content": " ",
109
+ "lstrip": false,
110
+ "normalized": true,
111
+ "rstrip": false,
112
+ "single_word": false,
113
+ "special": false
114
+ },
115
+ "50266": {
116
+ "content": " ",
117
+ "lstrip": false,
118
+ "normalized": true,
119
+ "rstrip": false,
120
+ "single_word": false,
121
+ "special": false
122
+ },
123
+ "50267": {
124
+ "content": " ",
125
+ "lstrip": false,
126
+ "normalized": true,
127
+ "rstrip": false,
128
+ "single_word": false,
129
+ "special": false
130
+ },
131
+ "50268": {
132
+ "content": " ",
133
+ "lstrip": false,
134
+ "normalized": true,
135
+ "rstrip": false,
136
+ "single_word": false,
137
+ "special": false
138
+ },
139
+ "50269": {
140
+ "content": " ",
141
+ "lstrip": false,
142
+ "normalized": true,
143
+ "rstrip": false,
144
+ "single_word": false,
145
+ "special": false
146
+ },
147
+ "50270": {
148
+ "content": " ",
149
+ "lstrip": false,
150
+ "normalized": true,
151
+ "rstrip": false,
152
+ "single_word": false,
153
+ "special": false
154
+ },
155
+ "50271": {
156
+ "content": " ",
157
+ "lstrip": false,
158
+ "normalized": true,
159
+ "rstrip": false,
160
+ "single_word": false,
161
+ "special": false
162
+ },
163
+ "50272": {
164
+ "content": " ",
165
+ "lstrip": false,
166
+ "normalized": true,
167
+ "rstrip": false,
168
+ "single_word": false,
169
+ "special": false
170
+ },
171
+ "50273": {
172
+ "content": " ",
173
+ "lstrip": false,
174
+ "normalized": true,
175
+ "rstrip": false,
176
+ "single_word": false,
177
+ "special": false
178
+ },
179
+ "50274": {
180
+ "content": " ",
181
+ "lstrip": false,
182
+ "normalized": true,
183
+ "rstrip": false,
184
+ "single_word": false,
185
+ "special": false
186
+ },
187
+ "50275": {
188
+ "content": " ",
189
+ "lstrip": false,
190
+ "normalized": true,
191
+ "rstrip": false,
192
+ "single_word": false,
193
+ "special": false
194
+ },
195
+ "50276": {
196
+ "content": " ",
197
+ "lstrip": false,
198
+ "normalized": true,
199
+ "rstrip": false,
200
+ "single_word": false,
201
+ "special": false
202
+ },
203
+ "50277": {
204
+ "content": "|||EMAIL_ADDRESS|||",
205
+ "lstrip": false,
206
+ "normalized": true,
207
+ "rstrip": false,
208
+ "single_word": false,
209
+ "special": false
210
+ },
211
+ "50278": {
212
+ "content": "|||PHONE_NUMBER|||",
213
+ "lstrip": false,
214
+ "normalized": true,
215
+ "rstrip": false,
216
+ "single_word": false,
217
+ "special": false
218
+ },
219
+ "50279": {
220
+ "content": "<|endoftext|>",
221
+ "lstrip": false,
222
+ "normalized": false,
223
+ "rstrip": false,
224
+ "single_word": false,
225
+ "special": true
226
+ },
227
+ "50280": {
228
+ "content": "[UNK]",
229
+ "lstrip": false,
230
+ "normalized": false,
231
+ "rstrip": false,
232
+ "single_word": false,
233
+ "special": true
234
+ },
235
+ "50281": {
236
+ "content": "[CLS]",
237
+ "lstrip": false,
238
+ "normalized": false,
239
+ "rstrip": false,
240
+ "single_word": false,
241
+ "special": true
242
+ },
243
+ "50282": {
244
+ "content": "[SEP]",
245
+ "lstrip": false,
246
+ "normalized": false,
247
+ "rstrip": false,
248
+ "single_word": false,
249
+ "special": true
250
+ },
251
+ "50283": {
252
+ "content": "[PAD]",
253
+ "lstrip": false,
254
+ "normalized": false,
255
+ "rstrip": false,
256
+ "single_word": false,
257
+ "special": true
258
+ },
259
+ "50284": {
260
+ "content": "[MASK]",
261
+ "lstrip": true,
262
+ "normalized": false,
263
+ "rstrip": false,
264
+ "single_word": false,
265
+ "special": true
266
+ },
267
+ "50285": {
268
+ "content": "[unused0]",
269
+ "lstrip": false,
270
+ "normalized": true,
271
+ "rstrip": false,
272
+ "single_word": false,
273
+ "special": false
274
+ },
275
+ "50286": {
276
+ "content": "[unused1]",
277
+ "lstrip": false,
278
+ "normalized": true,
279
+ "rstrip": false,
280
+ "single_word": false,
281
+ "special": false
282
+ },
283
+ "50287": {
284
+ "content": "[unused2]",
285
+ "lstrip": false,
286
+ "normalized": true,
287
+ "rstrip": false,
288
+ "single_word": false,
289
+ "special": false
290
+ },
291
+ "50288": {
292
+ "content": "[unused3]",
293
+ "lstrip": false,
294
+ "normalized": true,
295
+ "rstrip": false,
296
+ "single_word": false,
297
+ "special": false
298
+ },
299
+ "50289": {
300
+ "content": "[unused4]",
301
+ "lstrip": false,
302
+ "normalized": true,
303
+ "rstrip": false,
304
+ "single_word": false,
305
+ "special": false
306
+ },
307
+ "50290": {
308
+ "content": "[unused5]",
309
+ "lstrip": false,
310
+ "normalized": true,
311
+ "rstrip": false,
312
+ "single_word": false,
313
+ "special": false
314
+ },
315
+ "50291": {
316
+ "content": "[unused6]",
317
+ "lstrip": false,
318
+ "normalized": true,
319
+ "rstrip": false,
320
+ "single_word": false,
321
+ "special": false
322
+ },
323
+ "50292": {
324
+ "content": "[unused7]",
325
+ "lstrip": false,
326
+ "normalized": true,
327
+ "rstrip": false,
328
+ "single_word": false,
329
+ "special": false
330
+ },
331
+ "50293": {
332
+ "content": "[unused8]",
333
+ "lstrip": false,
334
+ "normalized": true,
335
+ "rstrip": false,
336
+ "single_word": false,
337
+ "special": false
338
+ },
339
+ "50294": {
340
+ "content": "[unused9]",
341
+ "lstrip": false,
342
+ "normalized": true,
343
+ "rstrip": false,
344
+ "single_word": false,
345
+ "special": false
346
+ },
347
+ "50295": {
348
+ "content": "[unused10]",
349
+ "lstrip": false,
350
+ "normalized": true,
351
+ "rstrip": false,
352
+ "single_word": false,
353
+ "special": false
354
+ },
355
+ "50296": {
356
+ "content": "[unused11]",
357
+ "lstrip": false,
358
+ "normalized": true,
359
+ "rstrip": false,
360
+ "single_word": false,
361
+ "special": false
362
+ },
363
+ "50297": {
364
+ "content": "[unused12]",
365
+ "lstrip": false,
366
+ "normalized": true,
367
+ "rstrip": false,
368
+ "single_word": false,
369
+ "special": false
370
+ },
371
+ "50298": {
372
+ "content": "[unused13]",
373
+ "lstrip": false,
374
+ "normalized": true,
375
+ "rstrip": false,
376
+ "single_word": false,
377
+ "special": false
378
+ },
379
+ "50299": {
380
+ "content": "[unused14]",
381
+ "lstrip": false,
382
+ "normalized": true,
383
+ "rstrip": false,
384
+ "single_word": false,
385
+ "special": false
386
+ },
387
+ "50300": {
388
+ "content": "[unused15]",
389
+ "lstrip": false,
390
+ "normalized": true,
391
+ "rstrip": false,
392
+ "single_word": false,
393
+ "special": false
394
+ },
395
+ "50301": {
396
+ "content": "[unused16]",
397
+ "lstrip": false,
398
+ "normalized": true,
399
+ "rstrip": false,
400
+ "single_word": false,
401
+ "special": false
402
+ },
403
+ "50302": {
404
+ "content": "[unused17]",
405
+ "lstrip": false,
406
+ "normalized": true,
407
+ "rstrip": false,
408
+ "single_word": false,
409
+ "special": false
410
+ },
411
+ "50303": {
412
+ "content": "[unused18]",
413
+ "lstrip": false,
414
+ "normalized": true,
415
+ "rstrip": false,
416
+ "single_word": false,
417
+ "special": false
418
+ },
419
+ "50304": {
420
+ "content": "[unused19]",
421
+ "lstrip": false,
422
+ "normalized": true,
423
+ "rstrip": false,
424
+ "single_word": false,
425
+ "special": false
426
+ },
427
+ "50305": {
428
+ "content": "[unused20]",
429
+ "lstrip": false,
430
+ "normalized": true,
431
+ "rstrip": false,
432
+ "single_word": false,
433
+ "special": false
434
+ },
435
+ "50306": {
436
+ "content": "[unused21]",
437
+ "lstrip": false,
438
+ "normalized": true,
439
+ "rstrip": false,
440
+ "single_word": false,
441
+ "special": false
442
+ },
443
+ "50307": {
444
+ "content": "[unused22]",
445
+ "lstrip": false,
446
+ "normalized": true,
447
+ "rstrip": false,
448
+ "single_word": false,
449
+ "special": false
450
+ },
451
+ "50308": {
452
+ "content": "[unused23]",
453
+ "lstrip": false,
454
+ "normalized": true,
455
+ "rstrip": false,
456
+ "single_word": false,
457
+ "special": false
458
+ },
459
+ "50309": {
460
+ "content": "[unused24]",
461
+ "lstrip": false,
462
+ "normalized": true,
463
+ "rstrip": false,
464
+ "single_word": false,
465
+ "special": false
466
+ },
467
+ "50310": {
468
+ "content": "[unused25]",
469
+ "lstrip": false,
470
+ "normalized": true,
471
+ "rstrip": false,
472
+ "single_word": false,
473
+ "special": false
474
+ },
475
+ "50311": {
476
+ "content": "[unused26]",
477
+ "lstrip": false,
478
+ "normalized": true,
479
+ "rstrip": false,
480
+ "single_word": false,
481
+ "special": false
482
+ },
483
+ "50312": {
484
+ "content": "[unused27]",
485
+ "lstrip": false,
486
+ "normalized": true,
487
+ "rstrip": false,
488
+ "single_word": false,
489
+ "special": false
490
+ },
491
+ "50313": {
492
+ "content": "[unused28]",
493
+ "lstrip": false,
494
+ "normalized": true,
495
+ "rstrip": false,
496
+ "single_word": false,
497
+ "special": false
498
+ },
499
+ "50314": {
500
+ "content": "[unused29]",
501
+ "lstrip": false,
502
+ "normalized": true,
503
+ "rstrip": false,
504
+ "single_word": false,
505
+ "special": false
506
+ },
507
+ "50315": {
508
+ "content": "[unused30]",
509
+ "lstrip": false,
510
+ "normalized": true,
511
+ "rstrip": false,
512
+ "single_word": false,
513
+ "special": false
514
+ },
515
+ "50316": {
516
+ "content": "[unused31]",
517
+ "lstrip": false,
518
+ "normalized": true,
519
+ "rstrip": false,
520
+ "single_word": false,
521
+ "special": false
522
+ },
523
+ "50317": {
524
+ "content": "[unused32]",
525
+ "lstrip": false,
526
+ "normalized": true,
527
+ "rstrip": false,
528
+ "single_word": false,
529
+ "special": false
530
+ },
531
+ "50318": {
532
+ "content": "[unused33]",
533
+ "lstrip": false,
534
+ "normalized": true,
535
+ "rstrip": false,
536
+ "single_word": false,
537
+ "special": false
538
+ },
539
+ "50319": {
540
+ "content": "[unused34]",
541
+ "lstrip": false,
542
+ "normalized": true,
543
+ "rstrip": false,
544
+ "single_word": false,
545
+ "special": false
546
+ },
547
+ "50320": {
548
+ "content": "[unused35]",
549
+ "lstrip": false,
550
+ "normalized": true,
551
+ "rstrip": false,
552
+ "single_word": false,
553
+ "special": false
554
+ },
555
+ "50321": {
556
+ "content": "[unused36]",
557
+ "lstrip": false,
558
+ "normalized": true,
559
+ "rstrip": false,
560
+ "single_word": false,
561
+ "special": false
562
+ },
563
+ "50322": {
564
+ "content": "[unused37]",
565
+ "lstrip": false,
566
+ "normalized": true,
567
+ "rstrip": false,
568
+ "single_word": false,
569
+ "special": false
570
+ },
571
+ "50323": {
572
+ "content": "[unused38]",
573
+ "lstrip": false,
574
+ "normalized": true,
575
+ "rstrip": false,
576
+ "single_word": false,
577
+ "special": false
578
+ },
579
+ "50324": {
580
+ "content": "[unused39]",
581
+ "lstrip": false,
582
+ "normalized": true,
583
+ "rstrip": false,
584
+ "single_word": false,
585
+ "special": false
586
+ },
587
+ "50325": {
588
+ "content": "[unused40]",
589
+ "lstrip": false,
590
+ "normalized": true,
591
+ "rstrip": false,
592
+ "single_word": false,
593
+ "special": false
594
+ },
595
+ "50326": {
596
+ "content": "[unused41]",
597
+ "lstrip": false,
598
+ "normalized": true,
599
+ "rstrip": false,
600
+ "single_word": false,
601
+ "special": false
602
+ },
603
+ "50327": {
604
+ "content": "[unused42]",
605
+ "lstrip": false,
606
+ "normalized": true,
607
+ "rstrip": false,
608
+ "single_word": false,
609
+ "special": false
610
+ },
611
+ "50328": {
612
+ "content": "[unused43]",
613
+ "lstrip": false,
614
+ "normalized": true,
615
+ "rstrip": false,
616
+ "single_word": false,
617
+ "special": false
618
+ },
619
+ "50329": {
620
+ "content": "[unused44]",
621
+ "lstrip": false,
622
+ "normalized": true,
623
+ "rstrip": false,
624
+ "single_word": false,
625
+ "special": false
626
+ },
627
+ "50330": {
628
+ "content": "[unused45]",
629
+ "lstrip": false,
630
+ "normalized": true,
631
+ "rstrip": false,
632
+ "single_word": false,
633
+ "special": false
634
+ },
635
+ "50331": {
636
+ "content": "[unused46]",
637
+ "lstrip": false,
638
+ "normalized": true,
639
+ "rstrip": false,
640
+ "single_word": false,
641
+ "special": false
642
+ },
643
+ "50332": {
644
+ "content": "[unused47]",
645
+ "lstrip": false,
646
+ "normalized": true,
647
+ "rstrip": false,
648
+ "single_word": false,
649
+ "special": false
650
+ },
651
+ "50333": {
652
+ "content": "[unused48]",
653
+ "lstrip": false,
654
+ "normalized": true,
655
+ "rstrip": false,
656
+ "single_word": false,
657
+ "special": false
658
+ },
659
+ "50334": {
660
+ "content": "[unused49]",
661
+ "lstrip": false,
662
+ "normalized": true,
663
+ "rstrip": false,
664
+ "single_word": false,
665
+ "special": false
666
+ },
667
+ "50335": {
668
+ "content": "[unused50]",
669
+ "lstrip": false,
670
+ "normalized": true,
671
+ "rstrip": false,
672
+ "single_word": false,
673
+ "special": false
674
+ },
675
+ "50336": {
676
+ "content": "[unused51]",
677
+ "lstrip": false,
678
+ "normalized": true,
679
+ "rstrip": false,
680
+ "single_word": false,
681
+ "special": false
682
+ },
683
+ "50337": {
684
+ "content": "[unused52]",
685
+ "lstrip": false,
686
+ "normalized": true,
687
+ "rstrip": false,
688
+ "single_word": false,
689
+ "special": false
690
+ },
691
+ "50338": {
692
+ "content": "[unused53]",
693
+ "lstrip": false,
694
+ "normalized": true,
695
+ "rstrip": false,
696
+ "single_word": false,
697
+ "special": false
698
+ },
699
+ "50339": {
700
+ "content": "[unused54]",
701
+ "lstrip": false,
702
+ "normalized": true,
703
+ "rstrip": false,
704
+ "single_word": false,
705
+ "special": false
706
+ },
707
+ "50340": {
708
+ "content": "[unused55]",
709
+ "lstrip": false,
710
+ "normalized": true,
711
+ "rstrip": false,
712
+ "single_word": false,
713
+ "special": false
714
+ },
715
+ "50341": {
716
+ "content": "[unused56]",
717
+ "lstrip": false,
718
+ "normalized": true,
719
+ "rstrip": false,
720
+ "single_word": false,
721
+ "special": false
722
+ },
723
+ "50342": {
724
+ "content": "[unused57]",
725
+ "lstrip": false,
726
+ "normalized": true,
727
+ "rstrip": false,
728
+ "single_word": false,
729
+ "special": false
730
+ },
731
+ "50343": {
732
+ "content": "[unused58]",
733
+ "lstrip": false,
734
+ "normalized": true,
735
+ "rstrip": false,
736
+ "single_word": false,
737
+ "special": false
738
+ },
739
+ "50344": {
740
+ "content": "[unused59]",
741
+ "lstrip": false,
742
+ "normalized": true,
743
+ "rstrip": false,
744
+ "single_word": false,
745
+ "special": false
746
+ },
747
+ "50345": {
748
+ "content": "[unused60]",
749
+ "lstrip": false,
750
+ "normalized": true,
751
+ "rstrip": false,
752
+ "single_word": false,
753
+ "special": false
754
+ },
755
+ "50346": {
756
+ "content": "[unused61]",
757
+ "lstrip": false,
758
+ "normalized": true,
759
+ "rstrip": false,
760
+ "single_word": false,
761
+ "special": false
762
+ },
763
+ "50347": {
764
+ "content": "[unused62]",
765
+ "lstrip": false,
766
+ "normalized": true,
767
+ "rstrip": false,
768
+ "single_word": false,
769
+ "special": false
770
+ },
771
+ "50348": {
772
+ "content": "[unused63]",
773
+ "lstrip": false,
774
+ "normalized": true,
775
+ "rstrip": false,
776
+ "single_word": false,
777
+ "special": false
778
+ },
779
+ "50349": {
780
+ "content": "[unused64]",
781
+ "lstrip": false,
782
+ "normalized": true,
783
+ "rstrip": false,
784
+ "single_word": false,
785
+ "special": false
786
+ },
787
+ "50350": {
788
+ "content": "[unused65]",
789
+ "lstrip": false,
790
+ "normalized": true,
791
+ "rstrip": false,
792
+ "single_word": false,
793
+ "special": false
794
+ },
795
+ "50351": {
796
+ "content": "[unused66]",
797
+ "lstrip": false,
798
+ "normalized": true,
799
+ "rstrip": false,
800
+ "single_word": false,
801
+ "special": false
802
+ },
803
+ "50352": {
804
+ "content": "[unused67]",
805
+ "lstrip": false,
806
+ "normalized": true,
807
+ "rstrip": false,
808
+ "single_word": false,
809
+ "special": false
810
+ },
811
+ "50353": {
812
+ "content": "[unused68]",
813
+ "lstrip": false,
814
+ "normalized": true,
815
+ "rstrip": false,
816
+ "single_word": false,
817
+ "special": false
818
+ },
819
+ "50354": {
820
+ "content": "[unused69]",
821
+ "lstrip": false,
822
+ "normalized": true,
823
+ "rstrip": false,
824
+ "single_word": false,
825
+ "special": false
826
+ },
827
+ "50355": {
828
+ "content": "[unused70]",
829
+ "lstrip": false,
830
+ "normalized": true,
831
+ "rstrip": false,
832
+ "single_word": false,
833
+ "special": false
834
+ },
835
+ "50356": {
836
+ "content": "[unused71]",
837
+ "lstrip": false,
838
+ "normalized": true,
839
+ "rstrip": false,
840
+ "single_word": false,
841
+ "special": false
842
+ },
843
+ "50357": {
844
+ "content": "[unused72]",
845
+ "lstrip": false,
846
+ "normalized": true,
847
+ "rstrip": false,
848
+ "single_word": false,
849
+ "special": false
850
+ },
851
+ "50358": {
852
+ "content": "[unused73]",
853
+ "lstrip": false,
854
+ "normalized": true,
855
+ "rstrip": false,
856
+ "single_word": false,
857
+ "special": false
858
+ },
859
+ "50359": {
860
+ "content": "[unused74]",
861
+ "lstrip": false,
862
+ "normalized": true,
863
+ "rstrip": false,
864
+ "single_word": false,
865
+ "special": false
866
+ },
867
+ "50360": {
868
+ "content": "[unused75]",
869
+ "lstrip": false,
870
+ "normalized": true,
871
+ "rstrip": false,
872
+ "single_word": false,
873
+ "special": false
874
+ },
875
+ "50361": {
876
+ "content": "[unused76]",
877
+ "lstrip": false,
878
+ "normalized": true,
879
+ "rstrip": false,
880
+ "single_word": false,
881
+ "special": false
882
+ },
883
+ "50362": {
884
+ "content": "[unused77]",
885
+ "lstrip": false,
886
+ "normalized": true,
887
+ "rstrip": false,
888
+ "single_word": false,
889
+ "special": false
890
+ },
891
+ "50363": {
892
+ "content": "[unused78]",
893
+ "lstrip": false,
894
+ "normalized": true,
895
+ "rstrip": false,
896
+ "single_word": false,
897
+ "special": false
898
+ },
899
+ "50364": {
900
+ "content": "[unused79]",
901
+ "lstrip": false,
902
+ "normalized": true,
903
+ "rstrip": false,
904
+ "single_word": false,
905
+ "special": false
906
+ },
907
+ "50365": {
908
+ "content": "[unused80]",
909
+ "lstrip": false,
910
+ "normalized": true,
911
+ "rstrip": false,
912
+ "single_word": false,
913
+ "special": false
914
+ },
915
+ "50366": {
916
+ "content": "[unused81]",
917
+ "lstrip": false,
918
+ "normalized": true,
919
+ "rstrip": false,
920
+ "single_word": false,
921
+ "special": false
922
+ },
923
+ "50367": {
924
+ "content": "[unused82]",
925
+ "lstrip": false,
926
+ "normalized": true,
927
+ "rstrip": false,
928
+ "single_word": false,
929
+ "special": false
930
+ },
931
+ "50368": {
932
+ "content": "[Q] ",
933
+ "lstrip": false,
934
+ "normalized": true,
935
+ "rstrip": false,
936
+ "single_word": false,
937
+ "special": false
938
+ },
939
+ "50369": {
940
+ "content": "[D] ",
941
+ "lstrip": false,
942
+ "normalized": true,
943
+ "rstrip": false,
944
+ "single_word": false,
945
+ "special": false
946
+ }
947
+ },
948
+ "clean_up_tokenization_spaces": true,
949
+ "cls_token": "[CLS]",
950
+ "extra_special_tokens": {},
951
+ "mask_token": "[MASK]",
952
+ "max_length": 299,
953
+ "model_input_names": [
954
+ "input_ids",
955
+ "attention_mask"
956
+ ],
957
+ "model_max_length": 127,
958
+ "pad_to_multiple_of": null,
959
+ "pad_token": "[MASK]",
960
+ "pad_token_type_id": 0,
961
+ "padding_side": "right",
962
+ "sep_token": "[SEP]",
963
+ "stride": 0,
964
+ "tokenizer_class": "PreTrainedTokenizerFast",
965
+ "truncation_side": "right",
966
+ "truncation_strategy": "longest_first",
967
+ "unk_token": "[UNK]"
968
+ }