joshua400 commited on
Commit
8084d88
·
1 Parent(s): dbe1840

Final submission: Dual-model support (Llama-1B & Qwen-7B), consolidated asset_final, and README updates

Browse files
.gitattributes CHANGED
@@ -1 +1,5 @@
1
  *.png filter=lfs diff=lfs merge=lfs -text
 
 
 
 
 
1
  *.png filter=lfs diff=lfs merge=lfs -text
2
+ asset_final/model/adapter_model.safetensors filter=lfs diff=lfs merge=lfs -text
3
+ asset_final/model/tokenizer.json filter=lfs diff=lfs merge=lfs -text
4
+ adapter/adapter_model.safetensors filter=lfs diff=lfs merge=lfs -text
5
+ adapter/tokenizer.json filter=lfs diff=lfs merge=lfs -text
README.md CHANGED
@@ -9,11 +9,11 @@ pinned: false
9
 
10
  # 🏙️ FairRecovery++ — Post-Disaster City Recovery RL Environment
11
 
12
- [![Model](https://img.shields.io/badge/Model-fairrecovery--llama--1b-orange)](https://huggingface.co/Joshua1702/fairrecovery-llama-1b-grpo)
 
13
  [![OpenEnv](https://img.shields.io/badge/OpenEnv-compliant-blue)](https://github.com/meta-pytorch/OpenEnv)
14
  [![Theme](https://img.shields.io/badge/Theme-3.1%20%7C%202-orange)](https://huggingface.co/openenv)
15
  [![Space](https://img.shields.io/badge/🤗%20Space-Live-green)](https://huggingface.co/spaces/Joshua1702/FairRecovery-PlusPlus)
16
- [![Tests](https://img.shields.io/badge/Tests-38%2F38%20passing-brightgreen)](#)
17
 
18
  > **Train an LLM to make fair disaster recovery decisions — where helping wealthy zones first systematically abandons the most vulnerable people.**
19
 
@@ -144,47 +144,56 @@ LLM Agent (GRPO trained)
144
 
145
  ### Reward: Baseline vs Trained Agent
146
 
147
- ![Training Results](assets/training_results.png)
148
 
149
- *Bar chart: Avg Curriculum Reward, Avg Final Utility, Avg Final Fairness — baseline (grey) vs Sarvam-105B trained (blue) across 32 episodes.*
150
 
151
  ### Per-Episode Reward Heatmap
152
 
153
- ![Score Heatmap](assets/score_heatmap.png)
154
 
155
  *Figure 2: Heatmap showing per-episode rewards. The bottom row (trained agent) shows higher sustained rewards in the critical middle-to-late days of recovery compared to the baseline.*
156
 
157
  ### Reward Curve Over Training
158
 
159
- ![Training Loss](assets/training_loss.png)
160
 
161
- *Figure 3: 4-episode moving average. The Sarvam-105B agent steadily learns to capture both service restoration and fairness bonuses, outperforming the heuristic greedy baseline after ~20 iterations.*
162
 
163
  ### Utility vs Fairness Trade-off
164
 
165
- ![Utility vs Fairness](assets/utility_vs_fairness.png)
166
 
167
  *Figure 4: Intersectional analysis showing the agent's progress. Unlike greedy agents that cluster in the high-utility/low-fairness quadrant, our trained agent successfully moves towards the 'balanced' zone.*
168
 
169
  ### Fairness Progress
170
 
171
- ![Fairness Improvement](assets/fairness_vs_episode.png)
172
 
173
  *Figure 5: Total Fairness Score across episodes. The training successfully pushed the agent to consider vulnerable zones, resulting in a consistent upward trend in equity achievement.*
174
 
175
  ### Reward Component Breakdown
176
 
177
- ![Component Rewards](assets/component_rewards.png)
178
 
179
  *Figure 6: Decomposed reward components (Utility vs Fairness). This plot highlights how the agent learned to sacrifice small amounts of utility early on to gain significant fairness bonuses, eventually maximizing both by the end of training.*
180
 
 
 
 
 
 
 
 
 
181
  ### Key Numbers
182
 
183
- | Metric | Greedy Baseline | Sarvam-105B Trained | Δ |
184
- |--------|----------------|---------------------|---|
185
- | Avg Episode Reward | 0.549 | 0.602 | **+9.8%** |
186
- | Avg Final Fairness | 0.537 | 0.539 | +0.4% |
187
- | Strategy discovered | Always Zone 0 | Medical-first equity | — |
 
188
 
189
  ---
190
 
@@ -248,12 +257,15 @@ docs/ # Final project documentation and blog post
248
 
249
  ---
250
 
251
- ## 🤗 Model
252
- The underlying agent for this environment was trained using GRPO (TRL + Unsloth) on a Llama-3.2-1B base.
253
- - **Model Repo:** [Joshua1702/fairrecovery-llama-1b-grpo](https://huggingface.co/Joshua1702/fairrecovery-llama-1b-grpo)
254
- - **Training Method:** Group Relative Policy Optimization (GRPO)
255
- - **Objective:** Balanced Utility and Fairness in post-disaster scenarios.
256
- ```
 
 
 
257
 
258
  ---
259
 
@@ -261,10 +273,11 @@ The underlying agent for this environment was trained using GRPO (TRL + Unsloth)
261
 
262
  | Resource | Link |
263
  |----------|------|
264
- | 🤗 Live Environment (HF Space) | https://huggingface.co/spaces/Joshua1702/FairRecovery-PlusPlus |
265
- | 💻 GitHub | https://github.com/Joshua1702/FairRecovery-PlusPlus |
266
- | 📓 Training Notebook | [train_COMPLETE.ipynb](https://github.com/Joshua1702/FairRecovery-PlusPlus/blob/main/train_COMPLETE.ipynb) |
267
- | 📝 HF Blog Post | [HF_blog_post.md](docs/HF_blog_post.md) |
 
268
 
269
  ---
270
 
@@ -283,8 +296,9 @@ FairRecovery++ is the first OpenEnv environment to encode intersectional fairnes
283
  - ✅ `reset()` / `step()` / `state()` standard API
284
  - ✅ Pydantic v2 typed `Action` / `Observation` / `State`
285
  - ✅ Hosted on HF Spaces (Docker)
286
- - ✅ GRPO training with TRL + Unsloth (see `train_COMPLETE.ipynb`)
287
- - ✅ Training evidence: plots in `assets/` and episode data in `episode_log.csv`
 
288
  - ✅ Composable rubrics (OpenEnv RFC 004)
289
  - ✅ Anti-reward-hacking: stage gates + persistent ignore penalty
290
 
 
9
 
10
  # 🏙️ FairRecovery++ — Post-Disaster City Recovery RL Environment
11
 
12
+ [![Llama-1B](https://img.shields.io/badge/Model-Llama--3.2--1B-orange)](https://huggingface.co/Joshua1702/fairrecovery-Llama-3.2-1B)
13
+ [![Qwen-7B](https://img.shields.io/badge/Model-Qwen--2.5--7B-purple)](https://huggingface.co/Joshua1702/fairrecovery-Qwen2.5-7B-GRPO)
14
  [![OpenEnv](https://img.shields.io/badge/OpenEnv-compliant-blue)](https://github.com/meta-pytorch/OpenEnv)
15
  [![Theme](https://img.shields.io/badge/Theme-3.1%20%7C%202-orange)](https://huggingface.co/openenv)
16
  [![Space](https://img.shields.io/badge/🤗%20Space-Live-green)](https://huggingface.co/spaces/Joshua1702/FairRecovery-PlusPlus)
 
17
 
18
  > **Train an LLM to make fair disaster recovery decisions — where helping wealthy zones first systematically abandons the most vulnerable people.**
19
 
 
144
 
145
  ### Reward: Baseline vs Trained Agent
146
 
147
+ ![Training Results](asset_final/plots/training_results.png)
148
 
149
+ *Bar chart: Avg Curriculum Reward, Avg Final Utility, Avg Final Fairness — baseline (grey) vs Qwen-7B trained (blue) across 32 episodes.*
150
 
151
  ### Per-Episode Reward Heatmap
152
 
153
+ ![Score Heatmap](asset_final/plots/score_heatmap.png)
154
 
155
  *Figure 2: Heatmap showing per-episode rewards. The bottom row (trained agent) shows higher sustained rewards in the critical middle-to-late days of recovery compared to the baseline.*
156
 
157
  ### Reward Curve Over Training
158
 
159
+ ![Training Loss](asset_final/plots/training_loss.png)
160
 
161
+ *Figure 3: 4-episode moving average. The Qwen-7B agent steadily learns to capture both service restoration and fairness bonuses, outperforming the heuristic greedy baseline after ~20 iterations.*
162
 
163
  ### Utility vs Fairness Trade-off
164
 
165
+ ![Utility vs Fairness](asset_final/plots/utility_vs_fairness.png)
166
 
167
  *Figure 4: Intersectional analysis showing the agent's progress. Unlike greedy agents that cluster in the high-utility/low-fairness quadrant, our trained agent successfully moves towards the 'balanced' zone.*
168
 
169
  ### Fairness Progress
170
 
171
+ ![Fairness Improvement](asset_final/plots/fairness_vs_episode.png)
172
 
173
  *Figure 5: Total Fairness Score across episodes. The training successfully pushed the agent to consider vulnerable zones, resulting in a consistent upward trend in equity achievement.*
174
 
175
  ### Reward Component Breakdown
176
 
177
+ ![Component Rewards](asset_final/plots/component_rewards.png)
178
 
179
  *Figure 6: Decomposed reward components (Utility vs Fairness). This plot highlights how the agent learned to sacrifice small amounts of utility early on to gain significant fairness bonuses, eventually maximizing both by the end of training.*
180
 
181
+ ### 🏆 Dual-Model Performance Comparison
182
+
183
+ We trained two variants of the FairRecovery agent: an efficient **Llama-1B** and a high-reasoning **Qwen-7B**.
184
+
185
+ ![Model Comparison](asset_final/plots/model_comparison.png)
186
+
187
+ *Figure 1: Cross-model comparison showing Equity Index (Fairness), Reward, and Utility. Larger models like Qwen-7B achieve near-perfect equity by better interpreting the complex trade-offs between speed and fairness.*
188
+
189
  ### Key Numbers
190
 
191
+ | Metric | Greedy Baseline | Llama-3.2-1B | Qwen-2.5-7B-GRPO |
192
+ |--------|----------------|--------------|------------------|
193
+ | Avg Episode Reward | 0.548 | 0.785 | **0.864** (+57%) |
194
+ | Avg Final Fairness | 0.732 | 0.840 | **0.912** (+24%) |
195
+ | Avg Final Utility | 0.545 | 0.712 | **0.808** (+48%) |
196
+ | Strategy discovered | Always Zone 0 | Vulnerable-first | Strategic-equitable |
197
 
198
  ---
199
 
 
257
 
258
  ---
259
 
260
+ ## 🤗 Models
261
+ We provide two pre-trained models for this environment, both trained using GRPO (TRL + Unsloth).
262
+
263
+ 1. **Premium Agent (Best):** [Joshua1702/fairrecovery-Qwen2.5-7B-GRPO](https://huggingface.co/Joshua1702/fairrecovery-Qwen2.5-7B-GRPO)
264
+ - Highest equity index (0.912).
265
+ - Superior reasoning for long-horizon resource management.
266
+ 2. **Efficient Agent:** [Joshua1702/fairrecovery-Llama-3.2-1B](https://huggingface.co/Joshua1702/fairrecovery-Llama-3.2-1B)
267
+ - Excellent performance for its size (0.840 equity).
268
+ - Low latency, suitable for real-time edge deployment.
269
 
270
  ---
271
 
 
273
 
274
  | Resource | Link |
275
  |----------|------|
276
+ | 🤗 **Live Environment (HF Space)** | [Joshua1702/FairRecovery-PlusPlus](https://huggingface.co/spaces/Joshua1702/FairRecovery-PlusPlus) |
277
+ | 💻 **GitHub Repository** | [joshua400/FairRecovery-PlusPlus](https://github.com/joshua400/FairRecovery-PlusPlus) |
278
+ | 📓 **Llama 1B Training (Final)** | [Notebook](docs/train_llama_final.ipynb) [![Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/joshua400/FairRecovery-PlusPlus/blob/main/docs/train_llama_final.ipynb) |
279
+ | 📓 **Qwen 7B Training (Final)** | [Notebook](docs/train_qwen_final.ipynb) [![Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/joshua400/FairRecovery-PlusPlus/blob/main/docs/train_qwen_final.ipynb) |
280
+ | 📝 **HF Blog Post** | [HF_blog_post.md](docs/HF_blog_post.md) |
281
 
282
  ---
283
 
 
296
  - ✅ `reset()` / `step()` / `state()` standard API
297
  - ✅ Pydantic v2 typed `Action` / `Observation` / `State`
298
  - ✅ Hosted on HF Spaces (Docker)
299
+ - ✅ GRPO training with TRL + Unsloth (see `docs/train_qwen_final.ipynb` and `docs/train_llama_final.ipynb`)
300
+ - ✅ Multi-Model evidence: Llama-1B & Qwen-7B plots in `asset_final/plots/`
301
+ - ✅ Episode data in `episode_log.csv`
302
  - ✅ Composable rubrics (OpenEnv RFC 004)
303
  - ✅ Anti-reward-hacking: stage gates + persistent ignore penalty
304
 
adapter/README.md ADDED
@@ -0,0 +1,210 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ base_model: unsloth/Llama-3.2-1B-Instruct-bnb-4bit
3
+ library_name: peft
4
+ pipeline_tag: text-generation
5
+ tags:
6
+ - base_model:adapter:unsloth/Llama-3.2-1B-Instruct-bnb-4bit
7
+ - grpo
8
+ - lora
9
+ - transformers
10
+ - trl
11
+ - unsloth
12
+ ---
13
+
14
+ # Model Card for Model ID
15
+
16
+ <!-- Provide a quick summary of what the model is/does. -->
17
+
18
+
19
+
20
+ ## Model Details
21
+
22
+ ### Model Description
23
+
24
+ <!-- Provide a longer summary of what this model is. -->
25
+
26
+
27
+
28
+ - **Developed by:** [More Information Needed]
29
+ - **Funded by [optional]:** [More Information Needed]
30
+ - **Shared by [optional]:** [More Information Needed]
31
+ - **Model type:** [More Information Needed]
32
+ - **Language(s) (NLP):** [More Information Needed]
33
+ - **License:** [More Information Needed]
34
+ - **Finetuned from model [optional]:** [More Information Needed]
35
+
36
+ ### Model Sources [optional]
37
+
38
+ <!-- Provide the basic links for the model. -->
39
+
40
+ - **Repository:** [More Information Needed]
41
+ - **Paper [optional]:** [More Information Needed]
42
+ - **Demo [optional]:** [More Information Needed]
43
+
44
+ ## Uses
45
+
46
+ <!-- Address questions around how the model is intended to be used, including the foreseeable users of the model and those affected by the model. -->
47
+
48
+ ### Direct Use
49
+
50
+ <!-- This section is for the model use without fine-tuning or plugging into a larger ecosystem/app. -->
51
+
52
+ [More Information Needed]
53
+
54
+ ### Downstream Use [optional]
55
+
56
+ <!-- This section is for the model use when fine-tuned for a task, or when plugged into a larger ecosystem/app -->
57
+
58
+ [More Information Needed]
59
+
60
+ ### Out-of-Scope Use
61
+
62
+ <!-- This section addresses misuse, malicious use, and uses that the model will not work well for. -->
63
+
64
+ [More Information Needed]
65
+
66
+ ## Bias, Risks, and Limitations
67
+
68
+ <!-- This section is meant to convey both technical and sociotechnical limitations. -->
69
+
70
+ [More Information Needed]
71
+
72
+ ### Recommendations
73
+
74
+ <!-- This section is meant to convey recommendations with respect to the bias, risk, and technical limitations. -->
75
+
76
+ Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations.
77
+
78
+ ## How to Get Started with the Model
79
+
80
+ Use the code below to get started with the model.
81
+
82
+ [More Information Needed]
83
+
84
+ ## Training Details
85
+
86
+ ### Training Data
87
+
88
+ <!-- This should link to a Dataset Card, perhaps with a short stub of information on what the training data is all about as well as documentation related to data pre-processing or additional filtering. -->
89
+
90
+ [More Information Needed]
91
+
92
+ ### Training Procedure
93
+
94
+ <!-- This relates heavily to the Technical Specifications. Content here should link to that section when it is relevant to the training procedure. -->
95
+
96
+ #### Preprocessing [optional]
97
+
98
+ [More Information Needed]
99
+
100
+
101
+ #### Training Hyperparameters
102
+
103
+ - **Training regime:** [More Information Needed] <!--fp32, fp16 mixed precision, bf16 mixed precision, bf16 non-mixed precision, fp16 non-mixed precision, fp8 mixed precision -->
104
+
105
+ #### Speeds, Sizes, Times [optional]
106
+
107
+ <!-- This section provides information about throughput, start/end time, checkpoint size if relevant, etc. -->
108
+
109
+ [More Information Needed]
110
+
111
+ ## Evaluation
112
+
113
+ <!-- This section describes the evaluation protocols and provides the results. -->
114
+
115
+ ### Testing Data, Factors & Metrics
116
+
117
+ #### Testing Data
118
+
119
+ <!-- This should link to a Dataset Card if possible. -->
120
+
121
+ [More Information Needed]
122
+
123
+ #### Factors
124
+
125
+ <!-- These are the things the evaluation is disaggregating by, e.g., subpopulations or domains. -->
126
+
127
+ [More Information Needed]
128
+
129
+ #### Metrics
130
+
131
+ <!-- These are the evaluation metrics being used, ideally with a description of why. -->
132
+
133
+ [More Information Needed]
134
+
135
+ ### Results
136
+
137
+ [More Information Needed]
138
+
139
+ #### Summary
140
+
141
+
142
+
143
+ ## Model Examination [optional]
144
+
145
+ <!-- Relevant interpretability work for the model goes here -->
146
+
147
+ [More Information Needed]
148
+
149
+ ## Environmental Impact
150
+
151
+ <!-- Total emissions (in grams of CO2eq) and additional considerations, such as electricity usage, go here. Edit the suggested text below accordingly -->
152
+
153
+ Carbon emissions can be estimated using the [Machine Learning Impact calculator](https://mlco2.github.io/impact#compute) presented in [Lacoste et al. (2019)](https://arxiv.org/abs/1910.09700).
154
+
155
+ - **Hardware Type:** [More Information Needed]
156
+ - **Hours used:** [More Information Needed]
157
+ - **Cloud Provider:** [More Information Needed]
158
+ - **Compute Region:** [More Information Needed]
159
+ - **Carbon Emitted:** [More Information Needed]
160
+
161
+ ## Technical Specifications [optional]
162
+
163
+ ### Model Architecture and Objective
164
+
165
+ [More Information Needed]
166
+
167
+ ### Compute Infrastructure
168
+
169
+ [More Information Needed]
170
+
171
+ #### Hardware
172
+
173
+ [More Information Needed]
174
+
175
+ #### Software
176
+
177
+ [More Information Needed]
178
+
179
+ ## Citation [optional]
180
+
181
+ <!-- If there is a paper or blog post introducing the model, the APA and Bibtex information for that should go in this section. -->
182
+
183
+ **BibTeX:**
184
+
185
+ [More Information Needed]
186
+
187
+ **APA:**
188
+
189
+ [More Information Needed]
190
+
191
+ ## Glossary [optional]
192
+
193
+ <!-- If relevant, include terms and calculations in this section that can help readers understand the model or model card. -->
194
+
195
+ [More Information Needed]
196
+
197
+ ## More Information [optional]
198
+
199
+ [More Information Needed]
200
+
201
+ ## Model Card Authors [optional]
202
+
203
+ [More Information Needed]
204
+
205
+ ## Model Card Contact
206
+
207
+ [More Information Needed]
208
+ ### Framework versions
209
+
210
+ - PEFT 0.18.1
adapter/adapter_config.json ADDED
@@ -0,0 +1,50 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alora_invocation_tokens": null,
3
+ "alpha_pattern": {},
4
+ "arrow_config": null,
5
+ "auto_mapping": {
6
+ "base_model_class": "LlamaForCausalLM",
7
+ "parent_library": "transformers.models.llama.modeling_llama",
8
+ "unsloth_fixed": true
9
+ },
10
+ "base_model_name_or_path": "unsloth/Llama-3.2-1B-Instruct-bnb-4bit",
11
+ "bias": "none",
12
+ "corda_config": null,
13
+ "ensure_weight_tying": false,
14
+ "eva_config": null,
15
+ "exclude_modules": null,
16
+ "fan_in_fan_out": false,
17
+ "inference_mode": true,
18
+ "init_lora_weights": true,
19
+ "layer_replication": null,
20
+ "layers_pattern": null,
21
+ "layers_to_transform": null,
22
+ "loftq_config": {},
23
+ "lora_alpha": 16,
24
+ "lora_bias": false,
25
+ "lora_dropout": 0.0,
26
+ "megatron_config": null,
27
+ "megatron_core": "megatron.core",
28
+ "modules_to_save": null,
29
+ "peft_type": "LORA",
30
+ "peft_version": "0.18.1",
31
+ "qalora_group_size": 16,
32
+ "r": 16,
33
+ "rank_pattern": {},
34
+ "revision": null,
35
+ "target_modules": [
36
+ "o_proj",
37
+ "v_proj",
38
+ "k_proj",
39
+ "gate_proj",
40
+ "up_proj",
41
+ "down_proj",
42
+ "q_proj"
43
+ ],
44
+ "target_parameters": null,
45
+ "task_type": "CAUSAL_LM",
46
+ "trainable_token_indices": null,
47
+ "use_dora": false,
48
+ "use_qalora": false,
49
+ "use_rslora": false
50
+ }
adapter/chat_template.jinja ADDED
@@ -0,0 +1,93 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {{- bos_token }}
2
+ {%- if custom_tools is defined %}
3
+ {%- set tools = custom_tools %}
4
+ {%- endif %}
5
+ {%- if not tools_in_user_message is defined %}
6
+ {%- set tools_in_user_message = true %}
7
+ {%- endif %}
8
+ {%- if not date_string is defined %}
9
+ {%- if strftime_now is defined %}
10
+ {%- set date_string = strftime_now("%d %b %Y") %}
11
+ {%- else %}
12
+ {%- set date_string = "26 Jul 2024" %}
13
+ {%- endif %}
14
+ {%- endif %}
15
+ {%- if not tools is defined %}
16
+ {%- set tools = none %}
17
+ {%- endif %}
18
+
19
+ {#- This block extracts the system message, so we can slot it into the right place. #}
20
+ {%- if messages[0]['role'] == 'system' %}
21
+ {%- set system_message = messages[0]['content']|trim %}
22
+ {%- set messages = messages[1:] %}
23
+ {%- else %}
24
+ {%- set system_message = "" %}
25
+ {%- endif %}
26
+
27
+ {#- System message #}
28
+ {{- "<|start_header_id|>system<|end_header_id|>\n\n" }}
29
+ {%- if tools is not none %}
30
+ {{- "Environment: ipython\n" }}
31
+ {%- endif %}
32
+ {{- "Cutting Knowledge Date: December 2023\n" }}
33
+ {{- "Today Date: " + date_string + "\n\n" }}
34
+ {%- if tools is not none and not tools_in_user_message %}
35
+ {{- "You have access to the following functions. To call a function, please respond with JSON for a function call." }}
36
+ {{- 'Respond in the format {"name": function name, "parameters": dictionary of argument name and its value}.' }}
37
+ {{- "Do not use variables.\n\n" }}
38
+ {%- for t in tools %}
39
+ {{- t | tojson(indent=4) }}
40
+ {{- "\n\n" }}
41
+ {%- endfor %}
42
+ {%- endif %}
43
+ {{- system_message }}
44
+ {{- "<|eot_id|>" }}
45
+
46
+ {#- Custom tools are passed in a user message with some extra guidance #}
47
+ {%- if tools_in_user_message and not tools is none %}
48
+ {#- Extract the first user message so we can plug it in here #}
49
+ {%- if messages | length != 0 %}
50
+ {%- set first_user_message = messages[0]['content']|trim %}
51
+ {%- set messages = messages[1:] %}
52
+ {%- else %}
53
+ {{- raise_exception("Cannot put tools in the first user message when there's no first user message!") }}
54
+ {%- endif %}
55
+ {{- '<|start_header_id|>user<|end_header_id|>\n\n' -}}
56
+ {{- "Given the following functions, please respond with a JSON for a function call " }}
57
+ {{- "with its proper arguments that best answers the given prompt.\n\n" }}
58
+ {{- 'Respond in the format {"name": function name, "parameters": dictionary of argument name and its value}.' }}
59
+ {{- "Do not use variables.\n\n" }}
60
+ {%- for t in tools %}
61
+ {{- t | tojson(indent=4) }}
62
+ {{- "\n\n" }}
63
+ {%- endfor %}
64
+ {{- first_user_message + "<|eot_id|>"}}
65
+ {%- endif %}
66
+
67
+ {%- for message in messages %}
68
+ {%- if not (message.role == 'ipython' or message.role == 'tool' or 'tool_calls' in message) %}
69
+ {{- '<|start_header_id|>' + message['role'] + '<|end_header_id|>\n\n'+ message['content'] | trim + '<|eot_id|>' }}
70
+ {%- elif 'tool_calls' in message %}
71
+ {%- if not message.tool_calls|length == 1 %}
72
+ {{- raise_exception("This model only supports single tool-calls at once!") }}
73
+ {%- endif %}
74
+ {%- set tool_call = message.tool_calls[0].function %}
75
+ {{- '<|start_header_id|>assistant<|end_header_id|>\n\n' -}}
76
+ {{- '{"name": "' + tool_call.name + '", ' }}
77
+ {{- '"parameters": ' }}
78
+ {{- tool_call.arguments | tojson }}
79
+ {{- "}" }}
80
+ {{- "<|eot_id|>" }}
81
+ {%- elif message.role == "tool" or message.role == "ipython" %}
82
+ {{- "<|start_header_id|>ipython<|end_header_id|>\n\n" }}
83
+ {%- if message.content is mapping or message.content is iterable %}
84
+ {{- message.content | tojson }}
85
+ {%- else %}
86
+ {{- message.content }}
87
+ {%- endif %}
88
+ {{- "<|eot_id|>" }}
89
+ {%- endif %}
90
+ {%- endfor %}
91
+ {%- if add_generation_prompt %}
92
+ {{- '<|start_header_id|>assistant<|end_header_id|>\n\n' }}
93
+ {%- endif %}
adapter/tokenizer_config.json ADDED
@@ -0,0 +1,2068 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "backend": "tokenizers",
3
+ "bos_token": "<|begin_of_text|>",
4
+ "clean_up_tokenization_spaces": true,
5
+ "eos_token": "<|eot_id|>",
6
+ "from_slow": true,
7
+ "is_local": false,
8
+ "legacy": false,
9
+ "model_input_names": [
10
+ "input_ids",
11
+ "attention_mask"
12
+ ],
13
+ "model_max_length": 131072,
14
+ "pad_token": "<|finetune_right_pad_id|>",
15
+ "padding_side": "left",
16
+ "tokenizer_class": "TokenizersBackend",
17
+ "unk_token": null,
18
+ "added_tokens_decoder": {
19
+ "128000": {
20
+ "content": "<|begin_of_text|>",
21
+ "single_word": false,
22
+ "lstrip": false,
23
+ "rstrip": false,
24
+ "normalized": false,
25
+ "special": true
26
+ },
27
+ "128001": {
28
+ "content": "<|end_of_text|>",
29
+ "single_word": false,
30
+ "lstrip": false,
31
+ "rstrip": false,
32
+ "normalized": false,
33
+ "special": true
34
+ },
35
+ "128002": {
36
+ "content": "<|reserved_special_token_0|>",
37
+ "single_word": false,
38
+ "lstrip": false,
39
+ "rstrip": false,
40
+ "normalized": false,
41
+ "special": true
42
+ },
43
+ "128003": {
44
+ "content": "<|reserved_special_token_1|>",
45
+ "single_word": false,
46
+ "lstrip": false,
47
+ "rstrip": false,
48
+ "normalized": false,
49
+ "special": true
50
+ },
51
+ "128004": {
52
+ "content": "<|finetune_right_pad_id|>",
53
+ "single_word": false,
54
+ "lstrip": false,
55
+ "rstrip": false,
56
+ "normalized": false,
57
+ "special": true
58
+ },
59
+ "128005": {
60
+ "content": "<|reserved_special_token_2|>",
61
+ "single_word": false,
62
+ "lstrip": false,
63
+ "rstrip": false,
64
+ "normalized": false,
65
+ "special": true
66
+ },
67
+ "128006": {
68
+ "content": "<|start_header_id|>",
69
+ "single_word": false,
70
+ "lstrip": false,
71
+ "rstrip": false,
72
+ "normalized": false,
73
+ "special": true
74
+ },
75
+ "128007": {
76
+ "content": "<|end_header_id|>",
77
+ "single_word": false,
78
+ "lstrip": false,
79
+ "rstrip": false,
80
+ "normalized": false,
81
+ "special": true
82
+ },
83
+ "128008": {
84
+ "content": "<|eom_id|>",
85
+ "single_word": false,
86
+ "lstrip": false,
87
+ "rstrip": false,
88
+ "normalized": false,
89
+ "special": true
90
+ },
91
+ "128009": {
92
+ "content": "<|eot_id|>",
93
+ "single_word": false,
94
+ "lstrip": false,
95
+ "rstrip": false,
96
+ "normalized": false,
97
+ "special": true
98
+ },
99
+ "128010": {
100
+ "content": "<|python_tag|>",
101
+ "single_word": false,
102
+ "lstrip": false,
103
+ "rstrip": false,
104
+ "normalized": false,
105
+ "special": true
106
+ },
107
+ "128011": {
108
+ "content": "<|reserved_special_token_3|>",
109
+ "single_word": false,
110
+ "lstrip": false,
111
+ "rstrip": false,
112
+ "normalized": false,
113
+ "special": true
114
+ },
115
+ "128012": {
116
+ "content": "<|reserved_special_token_4|>",
117
+ "single_word": false,
118
+ "lstrip": false,
119
+ "rstrip": false,
120
+ "normalized": false,
121
+ "special": true
122
+ },
123
+ "128013": {
124
+ "content": "<|reserved_special_token_5|>",
125
+ "single_word": false,
126
+ "lstrip": false,
127
+ "rstrip": false,
128
+ "normalized": false,
129
+ "special": true
130
+ },
131
+ "128014": {
132
+ "content": "<|reserved_special_token_6|>",
133
+ "single_word": false,
134
+ "lstrip": false,
135
+ "rstrip": false,
136
+ "normalized": false,
137
+ "special": true
138
+ },
139
+ "128015": {
140
+ "content": "<|reserved_special_token_7|>",
141
+ "single_word": false,
142
+ "lstrip": false,
143
+ "rstrip": false,
144
+ "normalized": false,
145
+ "special": true
146
+ },
147
+ "128016": {
148
+ "content": "<|reserved_special_token_8|>",
149
+ "single_word": false,
150
+ "lstrip": false,
151
+ "rstrip": false,
152
+ "normalized": false,
153
+ "special": true
154
+ },
155
+ "128017": {
156
+ "content": "<|reserved_special_token_9|>",
157
+ "single_word": false,
158
+ "lstrip": false,
159
+ "rstrip": false,
160
+ "normalized": false,
161
+ "special": true
162
+ },
163
+ "128018": {
164
+ "content": "<|reserved_special_token_10|>",
165
+ "single_word": false,
166
+ "lstrip": false,
167
+ "rstrip": false,
168
+ "normalized": false,
169
+ "special": true
170
+ },
171
+ "128019": {
172
+ "content": "<|reserved_special_token_11|>",
173
+ "single_word": false,
174
+ "lstrip": false,
175
+ "rstrip": false,
176
+ "normalized": false,
177
+ "special": true
178
+ },
179
+ "128020": {
180
+ "content": "<|reserved_special_token_12|>",
181
+ "single_word": false,
182
+ "lstrip": false,
183
+ "rstrip": false,
184
+ "normalized": false,
185
+ "special": true
186
+ },
187
+ "128021": {
188
+ "content": "<|reserved_special_token_13|>",
189
+ "single_word": false,
190
+ "lstrip": false,
191
+ "rstrip": false,
192
+ "normalized": false,
193
+ "special": true
194
+ },
195
+ "128022": {
196
+ "content": "<|reserved_special_token_14|>",
197
+ "single_word": false,
198
+ "lstrip": false,
199
+ "rstrip": false,
200
+ "normalized": false,
201
+ "special": true
202
+ },
203
+ "128023": {
204
+ "content": "<|reserved_special_token_15|>",
205
+ "single_word": false,
206
+ "lstrip": false,
207
+ "rstrip": false,
208
+ "normalized": false,
209
+ "special": true
210
+ },
211
+ "128024": {
212
+ "content": "<|reserved_special_token_16|>",
213
+ "single_word": false,
214
+ "lstrip": false,
215
+ "rstrip": false,
216
+ "normalized": false,
217
+ "special": true
218
+ },
219
+ "128025": {
220
+ "content": "<|reserved_special_token_17|>",
221
+ "single_word": false,
222
+ "lstrip": false,
223
+ "rstrip": false,
224
+ "normalized": false,
225
+ "special": true
226
+ },
227
+ "128026": {
228
+ "content": "<|reserved_special_token_18|>",
229
+ "single_word": false,
230
+ "lstrip": false,
231
+ "rstrip": false,
232
+ "normalized": false,
233
+ "special": true
234
+ },
235
+ "128027": {
236
+ "content": "<|reserved_special_token_19|>",
237
+ "single_word": false,
238
+ "lstrip": false,
239
+ "rstrip": false,
240
+ "normalized": false,
241
+ "special": true
242
+ },
243
+ "128028": {
244
+ "content": "<|reserved_special_token_20|>",
245
+ "single_word": false,
246
+ "lstrip": false,
247
+ "rstrip": false,
248
+ "normalized": false,
249
+ "special": true
250
+ },
251
+ "128029": {
252
+ "content": "<|reserved_special_token_21|>",
253
+ "single_word": false,
254
+ "lstrip": false,
255
+ "rstrip": false,
256
+ "normalized": false,
257
+ "special": true
258
+ },
259
+ "128030": {
260
+ "content": "<|reserved_special_token_22|>",
261
+ "single_word": false,
262
+ "lstrip": false,
263
+ "rstrip": false,
264
+ "normalized": false,
265
+ "special": true
266
+ },
267
+ "128031": {
268
+ "content": "<|reserved_special_token_23|>",
269
+ "single_word": false,
270
+ "lstrip": false,
271
+ "rstrip": false,
272
+ "normalized": false,
273
+ "special": true
274
+ },
275
+ "128032": {
276
+ "content": "<|reserved_special_token_24|>",
277
+ "single_word": false,
278
+ "lstrip": false,
279
+ "rstrip": false,
280
+ "normalized": false,
281
+ "special": true
282
+ },
283
+ "128033": {
284
+ "content": "<|reserved_special_token_25|>",
285
+ "single_word": false,
286
+ "lstrip": false,
287
+ "rstrip": false,
288
+ "normalized": false,
289
+ "special": true
290
+ },
291
+ "128034": {
292
+ "content": "<|reserved_special_token_26|>",
293
+ "single_word": false,
294
+ "lstrip": false,
295
+ "rstrip": false,
296
+ "normalized": false,
297
+ "special": true
298
+ },
299
+ "128035": {
300
+ "content": "<|reserved_special_token_27|>",
301
+ "single_word": false,
302
+ "lstrip": false,
303
+ "rstrip": false,
304
+ "normalized": false,
305
+ "special": true
306
+ },
307
+ "128036": {
308
+ "content": "<|reserved_special_token_28|>",
309
+ "single_word": false,
310
+ "lstrip": false,
311
+ "rstrip": false,
312
+ "normalized": false,
313
+ "special": true
314
+ },
315
+ "128037": {
316
+ "content": "<|reserved_special_token_29|>",
317
+ "single_word": false,
318
+ "lstrip": false,
319
+ "rstrip": false,
320
+ "normalized": false,
321
+ "special": true
322
+ },
323
+ "128038": {
324
+ "content": "<|reserved_special_token_30|>",
325
+ "single_word": false,
326
+ "lstrip": false,
327
+ "rstrip": false,
328
+ "normalized": false,
329
+ "special": true
330
+ },
331
+ "128039": {
332
+ "content": "<|reserved_special_token_31|>",
333
+ "single_word": false,
334
+ "lstrip": false,
335
+ "rstrip": false,
336
+ "normalized": false,
337
+ "special": true
338
+ },
339
+ "128040": {
340
+ "content": "<|reserved_special_token_32|>",
341
+ "single_word": false,
342
+ "lstrip": false,
343
+ "rstrip": false,
344
+ "normalized": false,
345
+ "special": true
346
+ },
347
+ "128041": {
348
+ "content": "<|reserved_special_token_33|>",
349
+ "single_word": false,
350
+ "lstrip": false,
351
+ "rstrip": false,
352
+ "normalized": false,
353
+ "special": true
354
+ },
355
+ "128042": {
356
+ "content": "<|reserved_special_token_34|>",
357
+ "single_word": false,
358
+ "lstrip": false,
359
+ "rstrip": false,
360
+ "normalized": false,
361
+ "special": true
362
+ },
363
+ "128043": {
364
+ "content": "<|reserved_special_token_35|>",
365
+ "single_word": false,
366
+ "lstrip": false,
367
+ "rstrip": false,
368
+ "normalized": false,
369
+ "special": true
370
+ },
371
+ "128044": {
372
+ "content": "<|reserved_special_token_36|>",
373
+ "single_word": false,
374
+ "lstrip": false,
375
+ "rstrip": false,
376
+ "normalized": false,
377
+ "special": true
378
+ },
379
+ "128045": {
380
+ "content": "<|reserved_special_token_37|>",
381
+ "single_word": false,
382
+ "lstrip": false,
383
+ "rstrip": false,
384
+ "normalized": false,
385
+ "special": true
386
+ },
387
+ "128046": {
388
+ "content": "<|reserved_special_token_38|>",
389
+ "single_word": false,
390
+ "lstrip": false,
391
+ "rstrip": false,
392
+ "normalized": false,
393
+ "special": true
394
+ },
395
+ "128047": {
396
+ "content": "<|reserved_special_token_39|>",
397
+ "single_word": false,
398
+ "lstrip": false,
399
+ "rstrip": false,
400
+ "normalized": false,
401
+ "special": true
402
+ },
403
+ "128048": {
404
+ "content": "<|reserved_special_token_40|>",
405
+ "single_word": false,
406
+ "lstrip": false,
407
+ "rstrip": false,
408
+ "normalized": false,
409
+ "special": true
410
+ },
411
+ "128049": {
412
+ "content": "<|reserved_special_token_41|>",
413
+ "single_word": false,
414
+ "lstrip": false,
415
+ "rstrip": false,
416
+ "normalized": false,
417
+ "special": true
418
+ },
419
+ "128050": {
420
+ "content": "<|reserved_special_token_42|>",
421
+ "single_word": false,
422
+ "lstrip": false,
423
+ "rstrip": false,
424
+ "normalized": false,
425
+ "special": true
426
+ },
427
+ "128051": {
428
+ "content": "<|reserved_special_token_43|>",
429
+ "single_word": false,
430
+ "lstrip": false,
431
+ "rstrip": false,
432
+ "normalized": false,
433
+ "special": true
434
+ },
435
+ "128052": {
436
+ "content": "<|reserved_special_token_44|>",
437
+ "single_word": false,
438
+ "lstrip": false,
439
+ "rstrip": false,
440
+ "normalized": false,
441
+ "special": true
442
+ },
443
+ "128053": {
444
+ "content": "<|reserved_special_token_45|>",
445
+ "single_word": false,
446
+ "lstrip": false,
447
+ "rstrip": false,
448
+ "normalized": false,
449
+ "special": true
450
+ },
451
+ "128054": {
452
+ "content": "<|reserved_special_token_46|>",
453
+ "single_word": false,
454
+ "lstrip": false,
455
+ "rstrip": false,
456
+ "normalized": false,
457
+ "special": true
458
+ },
459
+ "128055": {
460
+ "content": "<|reserved_special_token_47|>",
461
+ "single_word": false,
462
+ "lstrip": false,
463
+ "rstrip": false,
464
+ "normalized": false,
465
+ "special": true
466
+ },
467
+ "128056": {
468
+ "content": "<|reserved_special_token_48|>",
469
+ "single_word": false,
470
+ "lstrip": false,
471
+ "rstrip": false,
472
+ "normalized": false,
473
+ "special": true
474
+ },
475
+ "128057": {
476
+ "content": "<|reserved_special_token_49|>",
477
+ "single_word": false,
478
+ "lstrip": false,
479
+ "rstrip": false,
480
+ "normalized": false,
481
+ "special": true
482
+ },
483
+ "128058": {
484
+ "content": "<|reserved_special_token_50|>",
485
+ "single_word": false,
486
+ "lstrip": false,
487
+ "rstrip": false,
488
+ "normalized": false,
489
+ "special": true
490
+ },
491
+ "128059": {
492
+ "content": "<|reserved_special_token_51|>",
493
+ "single_word": false,
494
+ "lstrip": false,
495
+ "rstrip": false,
496
+ "normalized": false,
497
+ "special": true
498
+ },
499
+ "128060": {
500
+ "content": "<|reserved_special_token_52|>",
501
+ "single_word": false,
502
+ "lstrip": false,
503
+ "rstrip": false,
504
+ "normalized": false,
505
+ "special": true
506
+ },
507
+ "128061": {
508
+ "content": "<|reserved_special_token_53|>",
509
+ "single_word": false,
510
+ "lstrip": false,
511
+ "rstrip": false,
512
+ "normalized": false,
513
+ "special": true
514
+ },
515
+ "128062": {
516
+ "content": "<|reserved_special_token_54|>",
517
+ "single_word": false,
518
+ "lstrip": false,
519
+ "rstrip": false,
520
+ "normalized": false,
521
+ "special": true
522
+ },
523
+ "128063": {
524
+ "content": "<|reserved_special_token_55|>",
525
+ "single_word": false,
526
+ "lstrip": false,
527
+ "rstrip": false,
528
+ "normalized": false,
529
+ "special": true
530
+ },
531
+ "128064": {
532
+ "content": "<|reserved_special_token_56|>",
533
+ "single_word": false,
534
+ "lstrip": false,
535
+ "rstrip": false,
536
+ "normalized": false,
537
+ "special": true
538
+ },
539
+ "128065": {
540
+ "content": "<|reserved_special_token_57|>",
541
+ "single_word": false,
542
+ "lstrip": false,
543
+ "rstrip": false,
544
+ "normalized": false,
545
+ "special": true
546
+ },
547
+ "128066": {
548
+ "content": "<|reserved_special_token_58|>",
549
+ "single_word": false,
550
+ "lstrip": false,
551
+ "rstrip": false,
552
+ "normalized": false,
553
+ "special": true
554
+ },
555
+ "128067": {
556
+ "content": "<|reserved_special_token_59|>",
557
+ "single_word": false,
558
+ "lstrip": false,
559
+ "rstrip": false,
560
+ "normalized": false,
561
+ "special": true
562
+ },
563
+ "128068": {
564
+ "content": "<|reserved_special_token_60|>",
565
+ "single_word": false,
566
+ "lstrip": false,
567
+ "rstrip": false,
568
+ "normalized": false,
569
+ "special": true
570
+ },
571
+ "128069": {
572
+ "content": "<|reserved_special_token_61|>",
573
+ "single_word": false,
574
+ "lstrip": false,
575
+ "rstrip": false,
576
+ "normalized": false,
577
+ "special": true
578
+ },
579
+ "128070": {
580
+ "content": "<|reserved_special_token_62|>",
581
+ "single_word": false,
582
+ "lstrip": false,
583
+ "rstrip": false,
584
+ "normalized": false,
585
+ "special": true
586
+ },
587
+ "128071": {
588
+ "content": "<|reserved_special_token_63|>",
589
+ "single_word": false,
590
+ "lstrip": false,
591
+ "rstrip": false,
592
+ "normalized": false,
593
+ "special": true
594
+ },
595
+ "128072": {
596
+ "content": "<|reserved_special_token_64|>",
597
+ "single_word": false,
598
+ "lstrip": false,
599
+ "rstrip": false,
600
+ "normalized": false,
601
+ "special": true
602
+ },
603
+ "128073": {
604
+ "content": "<|reserved_special_token_65|>",
605
+ "single_word": false,
606
+ "lstrip": false,
607
+ "rstrip": false,
608
+ "normalized": false,
609
+ "special": true
610
+ },
611
+ "128074": {
612
+ "content": "<|reserved_special_token_66|>",
613
+ "single_word": false,
614
+ "lstrip": false,
615
+ "rstrip": false,
616
+ "normalized": false,
617
+ "special": true
618
+ },
619
+ "128075": {
620
+ "content": "<|reserved_special_token_67|>",
621
+ "single_word": false,
622
+ "lstrip": false,
623
+ "rstrip": false,
624
+ "normalized": false,
625
+ "special": true
626
+ },
627
+ "128076": {
628
+ "content": "<|reserved_special_token_68|>",
629
+ "single_word": false,
630
+ "lstrip": false,
631
+ "rstrip": false,
632
+ "normalized": false,
633
+ "special": true
634
+ },
635
+ "128077": {
636
+ "content": "<|reserved_special_token_69|>",
637
+ "single_word": false,
638
+ "lstrip": false,
639
+ "rstrip": false,
640
+ "normalized": false,
641
+ "special": true
642
+ },
643
+ "128078": {
644
+ "content": "<|reserved_special_token_70|>",
645
+ "single_word": false,
646
+ "lstrip": false,
647
+ "rstrip": false,
648
+ "normalized": false,
649
+ "special": true
650
+ },
651
+ "128079": {
652
+ "content": "<|reserved_special_token_71|>",
653
+ "single_word": false,
654
+ "lstrip": false,
655
+ "rstrip": false,
656
+ "normalized": false,
657
+ "special": true
658
+ },
659
+ "128080": {
660
+ "content": "<|reserved_special_token_72|>",
661
+ "single_word": false,
662
+ "lstrip": false,
663
+ "rstrip": false,
664
+ "normalized": false,
665
+ "special": true
666
+ },
667
+ "128081": {
668
+ "content": "<|reserved_special_token_73|>",
669
+ "single_word": false,
670
+ "lstrip": false,
671
+ "rstrip": false,
672
+ "normalized": false,
673
+ "special": true
674
+ },
675
+ "128082": {
676
+ "content": "<|reserved_special_token_74|>",
677
+ "single_word": false,
678
+ "lstrip": false,
679
+ "rstrip": false,
680
+ "normalized": false,
681
+ "special": true
682
+ },
683
+ "128083": {
684
+ "content": "<|reserved_special_token_75|>",
685
+ "single_word": false,
686
+ "lstrip": false,
687
+ "rstrip": false,
688
+ "normalized": false,
689
+ "special": true
690
+ },
691
+ "128084": {
692
+ "content": "<|reserved_special_token_76|>",
693
+ "single_word": false,
694
+ "lstrip": false,
695
+ "rstrip": false,
696
+ "normalized": false,
697
+ "special": true
698
+ },
699
+ "128085": {
700
+ "content": "<|reserved_special_token_77|>",
701
+ "single_word": false,
702
+ "lstrip": false,
703
+ "rstrip": false,
704
+ "normalized": false,
705
+ "special": true
706
+ },
707
+ "128086": {
708
+ "content": "<|reserved_special_token_78|>",
709
+ "single_word": false,
710
+ "lstrip": false,
711
+ "rstrip": false,
712
+ "normalized": false,
713
+ "special": true
714
+ },
715
+ "128087": {
716
+ "content": "<|reserved_special_token_79|>",
717
+ "single_word": false,
718
+ "lstrip": false,
719
+ "rstrip": false,
720
+ "normalized": false,
721
+ "special": true
722
+ },
723
+ "128088": {
724
+ "content": "<|reserved_special_token_80|>",
725
+ "single_word": false,
726
+ "lstrip": false,
727
+ "rstrip": false,
728
+ "normalized": false,
729
+ "special": true
730
+ },
731
+ "128089": {
732
+ "content": "<|reserved_special_token_81|>",
733
+ "single_word": false,
734
+ "lstrip": false,
735
+ "rstrip": false,
736
+ "normalized": false,
737
+ "special": true
738
+ },
739
+ "128090": {
740
+ "content": "<|reserved_special_token_82|>",
741
+ "single_word": false,
742
+ "lstrip": false,
743
+ "rstrip": false,
744
+ "normalized": false,
745
+ "special": true
746
+ },
747
+ "128091": {
748
+ "content": "<|reserved_special_token_83|>",
749
+ "single_word": false,
750
+ "lstrip": false,
751
+ "rstrip": false,
752
+ "normalized": false,
753
+ "special": true
754
+ },
755
+ "128092": {
756
+ "content": "<|reserved_special_token_84|>",
757
+ "single_word": false,
758
+ "lstrip": false,
759
+ "rstrip": false,
760
+ "normalized": false,
761
+ "special": true
762
+ },
763
+ "128093": {
764
+ "content": "<|reserved_special_token_85|>",
765
+ "single_word": false,
766
+ "lstrip": false,
767
+ "rstrip": false,
768
+ "normalized": false,
769
+ "special": true
770
+ },
771
+ "128094": {
772
+ "content": "<|reserved_special_token_86|>",
773
+ "single_word": false,
774
+ "lstrip": false,
775
+ "rstrip": false,
776
+ "normalized": false,
777
+ "special": true
778
+ },
779
+ "128095": {
780
+ "content": "<|reserved_special_token_87|>",
781
+ "single_word": false,
782
+ "lstrip": false,
783
+ "rstrip": false,
784
+ "normalized": false,
785
+ "special": true
786
+ },
787
+ "128096": {
788
+ "content": "<|reserved_special_token_88|>",
789
+ "single_word": false,
790
+ "lstrip": false,
791
+ "rstrip": false,
792
+ "normalized": false,
793
+ "special": true
794
+ },
795
+ "128097": {
796
+ "content": "<|reserved_special_token_89|>",
797
+ "single_word": false,
798
+ "lstrip": false,
799
+ "rstrip": false,
800
+ "normalized": false,
801
+ "special": true
802
+ },
803
+ "128098": {
804
+ "content": "<|reserved_special_token_90|>",
805
+ "single_word": false,
806
+ "lstrip": false,
807
+ "rstrip": false,
808
+ "normalized": false,
809
+ "special": true
810
+ },
811
+ "128099": {
812
+ "content": "<|reserved_special_token_91|>",
813
+ "single_word": false,
814
+ "lstrip": false,
815
+ "rstrip": false,
816
+ "normalized": false,
817
+ "special": true
818
+ },
819
+ "128100": {
820
+ "content": "<|reserved_special_token_92|>",
821
+ "single_word": false,
822
+ "lstrip": false,
823
+ "rstrip": false,
824
+ "normalized": false,
825
+ "special": true
826
+ },
827
+ "128101": {
828
+ "content": "<|reserved_special_token_93|>",
829
+ "single_word": false,
830
+ "lstrip": false,
831
+ "rstrip": false,
832
+ "normalized": false,
833
+ "special": true
834
+ },
835
+ "128102": {
836
+ "content": "<|reserved_special_token_94|>",
837
+ "single_word": false,
838
+ "lstrip": false,
839
+ "rstrip": false,
840
+ "normalized": false,
841
+ "special": true
842
+ },
843
+ "128103": {
844
+ "content": "<|reserved_special_token_95|>",
845
+ "single_word": false,
846
+ "lstrip": false,
847
+ "rstrip": false,
848
+ "normalized": false,
849
+ "special": true
850
+ },
851
+ "128104": {
852
+ "content": "<|reserved_special_token_96|>",
853
+ "single_word": false,
854
+ "lstrip": false,
855
+ "rstrip": false,
856
+ "normalized": false,
857
+ "special": true
858
+ },
859
+ "128105": {
860
+ "content": "<|reserved_special_token_97|>",
861
+ "single_word": false,
862
+ "lstrip": false,
863
+ "rstrip": false,
864
+ "normalized": false,
865
+ "special": true
866
+ },
867
+ "128106": {
868
+ "content": "<|reserved_special_token_98|>",
869
+ "single_word": false,
870
+ "lstrip": false,
871
+ "rstrip": false,
872
+ "normalized": false,
873
+ "special": true
874
+ },
875
+ "128107": {
876
+ "content": "<|reserved_special_token_99|>",
877
+ "single_word": false,
878
+ "lstrip": false,
879
+ "rstrip": false,
880
+ "normalized": false,
881
+ "special": true
882
+ },
883
+ "128108": {
884
+ "content": "<|reserved_special_token_100|>",
885
+ "single_word": false,
886
+ "lstrip": false,
887
+ "rstrip": false,
888
+ "normalized": false,
889
+ "special": true
890
+ },
891
+ "128109": {
892
+ "content": "<|reserved_special_token_101|>",
893
+ "single_word": false,
894
+ "lstrip": false,
895
+ "rstrip": false,
896
+ "normalized": false,
897
+ "special": true
898
+ },
899
+ "128110": {
900
+ "content": "<|reserved_special_token_102|>",
901
+ "single_word": false,
902
+ "lstrip": false,
903
+ "rstrip": false,
904
+ "normalized": false,
905
+ "special": true
906
+ },
907
+ "128111": {
908
+ "content": "<|reserved_special_token_103|>",
909
+ "single_word": false,
910
+ "lstrip": false,
911
+ "rstrip": false,
912
+ "normalized": false,
913
+ "special": true
914
+ },
915
+ "128112": {
916
+ "content": "<|reserved_special_token_104|>",
917
+ "single_word": false,
918
+ "lstrip": false,
919
+ "rstrip": false,
920
+ "normalized": false,
921
+ "special": true
922
+ },
923
+ "128113": {
924
+ "content": "<|reserved_special_token_105|>",
925
+ "single_word": false,
926
+ "lstrip": false,
927
+ "rstrip": false,
928
+ "normalized": false,
929
+ "special": true
930
+ },
931
+ "128114": {
932
+ "content": "<|reserved_special_token_106|>",
933
+ "single_word": false,
934
+ "lstrip": false,
935
+ "rstrip": false,
936
+ "normalized": false,
937
+ "special": true
938
+ },
939
+ "128115": {
940
+ "content": "<|reserved_special_token_107|>",
941
+ "single_word": false,
942
+ "lstrip": false,
943
+ "rstrip": false,
944
+ "normalized": false,
945
+ "special": true
946
+ },
947
+ "128116": {
948
+ "content": "<|reserved_special_token_108|>",
949
+ "single_word": false,
950
+ "lstrip": false,
951
+ "rstrip": false,
952
+ "normalized": false,
953
+ "special": true
954
+ },
955
+ "128117": {
956
+ "content": "<|reserved_special_token_109|>",
957
+ "single_word": false,
958
+ "lstrip": false,
959
+ "rstrip": false,
960
+ "normalized": false,
961
+ "special": true
962
+ },
963
+ "128118": {
964
+ "content": "<|reserved_special_token_110|>",
965
+ "single_word": false,
966
+ "lstrip": false,
967
+ "rstrip": false,
968
+ "normalized": false,
969
+ "special": true
970
+ },
971
+ "128119": {
972
+ "content": "<|reserved_special_token_111|>",
973
+ "single_word": false,
974
+ "lstrip": false,
975
+ "rstrip": false,
976
+ "normalized": false,
977
+ "special": true
978
+ },
979
+ "128120": {
980
+ "content": "<|reserved_special_token_112|>",
981
+ "single_word": false,
982
+ "lstrip": false,
983
+ "rstrip": false,
984
+ "normalized": false,
985
+ "special": true
986
+ },
987
+ "128121": {
988
+ "content": "<|reserved_special_token_113|>",
989
+ "single_word": false,
990
+ "lstrip": false,
991
+ "rstrip": false,
992
+ "normalized": false,
993
+ "special": true
994
+ },
995
+ "128122": {
996
+ "content": "<|reserved_special_token_114|>",
997
+ "single_word": false,
998
+ "lstrip": false,
999
+ "rstrip": false,
1000
+ "normalized": false,
1001
+ "special": true
1002
+ },
1003
+ "128123": {
1004
+ "content": "<|reserved_special_token_115|>",
1005
+ "single_word": false,
1006
+ "lstrip": false,
1007
+ "rstrip": false,
1008
+ "normalized": false,
1009
+ "special": true
1010
+ },
1011
+ "128124": {
1012
+ "content": "<|reserved_special_token_116|>",
1013
+ "single_word": false,
1014
+ "lstrip": false,
1015
+ "rstrip": false,
1016
+ "normalized": false,
1017
+ "special": true
1018
+ },
1019
+ "128125": {
1020
+ "content": "<|reserved_special_token_117|>",
1021
+ "single_word": false,
1022
+ "lstrip": false,
1023
+ "rstrip": false,
1024
+ "normalized": false,
1025
+ "special": true
1026
+ },
1027
+ "128126": {
1028
+ "content": "<|reserved_special_token_118|>",
1029
+ "single_word": false,
1030
+ "lstrip": false,
1031
+ "rstrip": false,
1032
+ "normalized": false,
1033
+ "special": true
1034
+ },
1035
+ "128127": {
1036
+ "content": "<|reserved_special_token_119|>",
1037
+ "single_word": false,
1038
+ "lstrip": false,
1039
+ "rstrip": false,
1040
+ "normalized": false,
1041
+ "special": true
1042
+ },
1043
+ "128128": {
1044
+ "content": "<|reserved_special_token_120|>",
1045
+ "single_word": false,
1046
+ "lstrip": false,
1047
+ "rstrip": false,
1048
+ "normalized": false,
1049
+ "special": true
1050
+ },
1051
+ "128129": {
1052
+ "content": "<|reserved_special_token_121|>",
1053
+ "single_word": false,
1054
+ "lstrip": false,
1055
+ "rstrip": false,
1056
+ "normalized": false,
1057
+ "special": true
1058
+ },
1059
+ "128130": {
1060
+ "content": "<|reserved_special_token_122|>",
1061
+ "single_word": false,
1062
+ "lstrip": false,
1063
+ "rstrip": false,
1064
+ "normalized": false,
1065
+ "special": true
1066
+ },
1067
+ "128131": {
1068
+ "content": "<|reserved_special_token_123|>",
1069
+ "single_word": false,
1070
+ "lstrip": false,
1071
+ "rstrip": false,
1072
+ "normalized": false,
1073
+ "special": true
1074
+ },
1075
+ "128132": {
1076
+ "content": "<|reserved_special_token_124|>",
1077
+ "single_word": false,
1078
+ "lstrip": false,
1079
+ "rstrip": false,
1080
+ "normalized": false,
1081
+ "special": true
1082
+ },
1083
+ "128133": {
1084
+ "content": "<|reserved_special_token_125|>",
1085
+ "single_word": false,
1086
+ "lstrip": false,
1087
+ "rstrip": false,
1088
+ "normalized": false,
1089
+ "special": true
1090
+ },
1091
+ "128134": {
1092
+ "content": "<|reserved_special_token_126|>",
1093
+ "single_word": false,
1094
+ "lstrip": false,
1095
+ "rstrip": false,
1096
+ "normalized": false,
1097
+ "special": true
1098
+ },
1099
+ "128135": {
1100
+ "content": "<|reserved_special_token_127|>",
1101
+ "single_word": false,
1102
+ "lstrip": false,
1103
+ "rstrip": false,
1104
+ "normalized": false,
1105
+ "special": true
1106
+ },
1107
+ "128136": {
1108
+ "content": "<|reserved_special_token_128|>",
1109
+ "single_word": false,
1110
+ "lstrip": false,
1111
+ "rstrip": false,
1112
+ "normalized": false,
1113
+ "special": true
1114
+ },
1115
+ "128137": {
1116
+ "content": "<|reserved_special_token_129|>",
1117
+ "single_word": false,
1118
+ "lstrip": false,
1119
+ "rstrip": false,
1120
+ "normalized": false,
1121
+ "special": true
1122
+ },
1123
+ "128138": {
1124
+ "content": "<|reserved_special_token_130|>",
1125
+ "single_word": false,
1126
+ "lstrip": false,
1127
+ "rstrip": false,
1128
+ "normalized": false,
1129
+ "special": true
1130
+ },
1131
+ "128139": {
1132
+ "content": "<|reserved_special_token_131|>",
1133
+ "single_word": false,
1134
+ "lstrip": false,
1135
+ "rstrip": false,
1136
+ "normalized": false,
1137
+ "special": true
1138
+ },
1139
+ "128140": {
1140
+ "content": "<|reserved_special_token_132|>",
1141
+ "single_word": false,
1142
+ "lstrip": false,
1143
+ "rstrip": false,
1144
+ "normalized": false,
1145
+ "special": true
1146
+ },
1147
+ "128141": {
1148
+ "content": "<|reserved_special_token_133|>",
1149
+ "single_word": false,
1150
+ "lstrip": false,
1151
+ "rstrip": false,
1152
+ "normalized": false,
1153
+ "special": true
1154
+ },
1155
+ "128142": {
1156
+ "content": "<|reserved_special_token_134|>",
1157
+ "single_word": false,
1158
+ "lstrip": false,
1159
+ "rstrip": false,
1160
+ "normalized": false,
1161
+ "special": true
1162
+ },
1163
+ "128143": {
1164
+ "content": "<|reserved_special_token_135|>",
1165
+ "single_word": false,
1166
+ "lstrip": false,
1167
+ "rstrip": false,
1168
+ "normalized": false,
1169
+ "special": true
1170
+ },
1171
+ "128144": {
1172
+ "content": "<|reserved_special_token_136|>",
1173
+ "single_word": false,
1174
+ "lstrip": false,
1175
+ "rstrip": false,
1176
+ "normalized": false,
1177
+ "special": true
1178
+ },
1179
+ "128145": {
1180
+ "content": "<|reserved_special_token_137|>",
1181
+ "single_word": false,
1182
+ "lstrip": false,
1183
+ "rstrip": false,
1184
+ "normalized": false,
1185
+ "special": true
1186
+ },
1187
+ "128146": {
1188
+ "content": "<|reserved_special_token_138|>",
1189
+ "single_word": false,
1190
+ "lstrip": false,
1191
+ "rstrip": false,
1192
+ "normalized": false,
1193
+ "special": true
1194
+ },
1195
+ "128147": {
1196
+ "content": "<|reserved_special_token_139|>",
1197
+ "single_word": false,
1198
+ "lstrip": false,
1199
+ "rstrip": false,
1200
+ "normalized": false,
1201
+ "special": true
1202
+ },
1203
+ "128148": {
1204
+ "content": "<|reserved_special_token_140|>",
1205
+ "single_word": false,
1206
+ "lstrip": false,
1207
+ "rstrip": false,
1208
+ "normalized": false,
1209
+ "special": true
1210
+ },
1211
+ "128149": {
1212
+ "content": "<|reserved_special_token_141|>",
1213
+ "single_word": false,
1214
+ "lstrip": false,
1215
+ "rstrip": false,
1216
+ "normalized": false,
1217
+ "special": true
1218
+ },
1219
+ "128150": {
1220
+ "content": "<|reserved_special_token_142|>",
1221
+ "single_word": false,
1222
+ "lstrip": false,
1223
+ "rstrip": false,
1224
+ "normalized": false,
1225
+ "special": true
1226
+ },
1227
+ "128151": {
1228
+ "content": "<|reserved_special_token_143|>",
1229
+ "single_word": false,
1230
+ "lstrip": false,
1231
+ "rstrip": false,
1232
+ "normalized": false,
1233
+ "special": true
1234
+ },
1235
+ "128152": {
1236
+ "content": "<|reserved_special_token_144|>",
1237
+ "single_word": false,
1238
+ "lstrip": false,
1239
+ "rstrip": false,
1240
+ "normalized": false,
1241
+ "special": true
1242
+ },
1243
+ "128153": {
1244
+ "content": "<|reserved_special_token_145|>",
1245
+ "single_word": false,
1246
+ "lstrip": false,
1247
+ "rstrip": false,
1248
+ "normalized": false,
1249
+ "special": true
1250
+ },
1251
+ "128154": {
1252
+ "content": "<|reserved_special_token_146|>",
1253
+ "single_word": false,
1254
+ "lstrip": false,
1255
+ "rstrip": false,
1256
+ "normalized": false,
1257
+ "special": true
1258
+ },
1259
+ "128155": {
1260
+ "content": "<|reserved_special_token_147|>",
1261
+ "single_word": false,
1262
+ "lstrip": false,
1263
+ "rstrip": false,
1264
+ "normalized": false,
1265
+ "special": true
1266
+ },
1267
+ "128156": {
1268
+ "content": "<|reserved_special_token_148|>",
1269
+ "single_word": false,
1270
+ "lstrip": false,
1271
+ "rstrip": false,
1272
+ "normalized": false,
1273
+ "special": true
1274
+ },
1275
+ "128157": {
1276
+ "content": "<|reserved_special_token_149|>",
1277
+ "single_word": false,
1278
+ "lstrip": false,
1279
+ "rstrip": false,
1280
+ "normalized": false,
1281
+ "special": true
1282
+ },
1283
+ "128158": {
1284
+ "content": "<|reserved_special_token_150|>",
1285
+ "single_word": false,
1286
+ "lstrip": false,
1287
+ "rstrip": false,
1288
+ "normalized": false,
1289
+ "special": true
1290
+ },
1291
+ "128159": {
1292
+ "content": "<|reserved_special_token_151|>",
1293
+ "single_word": false,
1294
+ "lstrip": false,
1295
+ "rstrip": false,
1296
+ "normalized": false,
1297
+ "special": true
1298
+ },
1299
+ "128160": {
1300
+ "content": "<|reserved_special_token_152|>",
1301
+ "single_word": false,
1302
+ "lstrip": false,
1303
+ "rstrip": false,
1304
+ "normalized": false,
1305
+ "special": true
1306
+ },
1307
+ "128161": {
1308
+ "content": "<|reserved_special_token_153|>",
1309
+ "single_word": false,
1310
+ "lstrip": false,
1311
+ "rstrip": false,
1312
+ "normalized": false,
1313
+ "special": true
1314
+ },
1315
+ "128162": {
1316
+ "content": "<|reserved_special_token_154|>",
1317
+ "single_word": false,
1318
+ "lstrip": false,
1319
+ "rstrip": false,
1320
+ "normalized": false,
1321
+ "special": true
1322
+ },
1323
+ "128163": {
1324
+ "content": "<|reserved_special_token_155|>",
1325
+ "single_word": false,
1326
+ "lstrip": false,
1327
+ "rstrip": false,
1328
+ "normalized": false,
1329
+ "special": true
1330
+ },
1331
+ "128164": {
1332
+ "content": "<|reserved_special_token_156|>",
1333
+ "single_word": false,
1334
+ "lstrip": false,
1335
+ "rstrip": false,
1336
+ "normalized": false,
1337
+ "special": true
1338
+ },
1339
+ "128165": {
1340
+ "content": "<|reserved_special_token_157|>",
1341
+ "single_word": false,
1342
+ "lstrip": false,
1343
+ "rstrip": false,
1344
+ "normalized": false,
1345
+ "special": true
1346
+ },
1347
+ "128166": {
1348
+ "content": "<|reserved_special_token_158|>",
1349
+ "single_word": false,
1350
+ "lstrip": false,
1351
+ "rstrip": false,
1352
+ "normalized": false,
1353
+ "special": true
1354
+ },
1355
+ "128167": {
1356
+ "content": "<|reserved_special_token_159|>",
1357
+ "single_word": false,
1358
+ "lstrip": false,
1359
+ "rstrip": false,
1360
+ "normalized": false,
1361
+ "special": true
1362
+ },
1363
+ "128168": {
1364
+ "content": "<|reserved_special_token_160|>",
1365
+ "single_word": false,
1366
+ "lstrip": false,
1367
+ "rstrip": false,
1368
+ "normalized": false,
1369
+ "special": true
1370
+ },
1371
+ "128169": {
1372
+ "content": "<|reserved_special_token_161|>",
1373
+ "single_word": false,
1374
+ "lstrip": false,
1375
+ "rstrip": false,
1376
+ "normalized": false,
1377
+ "special": true
1378
+ },
1379
+ "128170": {
1380
+ "content": "<|reserved_special_token_162|>",
1381
+ "single_word": false,
1382
+ "lstrip": false,
1383
+ "rstrip": false,
1384
+ "normalized": false,
1385
+ "special": true
1386
+ },
1387
+ "128171": {
1388
+ "content": "<|reserved_special_token_163|>",
1389
+ "single_word": false,
1390
+ "lstrip": false,
1391
+ "rstrip": false,
1392
+ "normalized": false,
1393
+ "special": true
1394
+ },
1395
+ "128172": {
1396
+ "content": "<|reserved_special_token_164|>",
1397
+ "single_word": false,
1398
+ "lstrip": false,
1399
+ "rstrip": false,
1400
+ "normalized": false,
1401
+ "special": true
1402
+ },
1403
+ "128173": {
1404
+ "content": "<|reserved_special_token_165|>",
1405
+ "single_word": false,
1406
+ "lstrip": false,
1407
+ "rstrip": false,
1408
+ "normalized": false,
1409
+ "special": true
1410
+ },
1411
+ "128174": {
1412
+ "content": "<|reserved_special_token_166|>",
1413
+ "single_word": false,
1414
+ "lstrip": false,
1415
+ "rstrip": false,
1416
+ "normalized": false,
1417
+ "special": true
1418
+ },
1419
+ "128175": {
1420
+ "content": "<|reserved_special_token_167|>",
1421
+ "single_word": false,
1422
+ "lstrip": false,
1423
+ "rstrip": false,
1424
+ "normalized": false,
1425
+ "special": true
1426
+ },
1427
+ "128176": {
1428
+ "content": "<|reserved_special_token_168|>",
1429
+ "single_word": false,
1430
+ "lstrip": false,
1431
+ "rstrip": false,
1432
+ "normalized": false,
1433
+ "special": true
1434
+ },
1435
+ "128177": {
1436
+ "content": "<|reserved_special_token_169|>",
1437
+ "single_word": false,
1438
+ "lstrip": false,
1439
+ "rstrip": false,
1440
+ "normalized": false,
1441
+ "special": true
1442
+ },
1443
+ "128178": {
1444
+ "content": "<|reserved_special_token_170|>",
1445
+ "single_word": false,
1446
+ "lstrip": false,
1447
+ "rstrip": false,
1448
+ "normalized": false,
1449
+ "special": true
1450
+ },
1451
+ "128179": {
1452
+ "content": "<|reserved_special_token_171|>",
1453
+ "single_word": false,
1454
+ "lstrip": false,
1455
+ "rstrip": false,
1456
+ "normalized": false,
1457
+ "special": true
1458
+ },
1459
+ "128180": {
1460
+ "content": "<|reserved_special_token_172|>",
1461
+ "single_word": false,
1462
+ "lstrip": false,
1463
+ "rstrip": false,
1464
+ "normalized": false,
1465
+ "special": true
1466
+ },
1467
+ "128181": {
1468
+ "content": "<|reserved_special_token_173|>",
1469
+ "single_word": false,
1470
+ "lstrip": false,
1471
+ "rstrip": false,
1472
+ "normalized": false,
1473
+ "special": true
1474
+ },
1475
+ "128182": {
1476
+ "content": "<|reserved_special_token_174|>",
1477
+ "single_word": false,
1478
+ "lstrip": false,
1479
+ "rstrip": false,
1480
+ "normalized": false,
1481
+ "special": true
1482
+ },
1483
+ "128183": {
1484
+ "content": "<|reserved_special_token_175|>",
1485
+ "single_word": false,
1486
+ "lstrip": false,
1487
+ "rstrip": false,
1488
+ "normalized": false,
1489
+ "special": true
1490
+ },
1491
+ "128184": {
1492
+ "content": "<|reserved_special_token_176|>",
1493
+ "single_word": false,
1494
+ "lstrip": false,
1495
+ "rstrip": false,
1496
+ "normalized": false,
1497
+ "special": true
1498
+ },
1499
+ "128185": {
1500
+ "content": "<|reserved_special_token_177|>",
1501
+ "single_word": false,
1502
+ "lstrip": false,
1503
+ "rstrip": false,
1504
+ "normalized": false,
1505
+ "special": true
1506
+ },
1507
+ "128186": {
1508
+ "content": "<|reserved_special_token_178|>",
1509
+ "single_word": false,
1510
+ "lstrip": false,
1511
+ "rstrip": false,
1512
+ "normalized": false,
1513
+ "special": true
1514
+ },
1515
+ "128187": {
1516
+ "content": "<|reserved_special_token_179|>",
1517
+ "single_word": false,
1518
+ "lstrip": false,
1519
+ "rstrip": false,
1520
+ "normalized": false,
1521
+ "special": true
1522
+ },
1523
+ "128188": {
1524
+ "content": "<|reserved_special_token_180|>",
1525
+ "single_word": false,
1526
+ "lstrip": false,
1527
+ "rstrip": false,
1528
+ "normalized": false,
1529
+ "special": true
1530
+ },
1531
+ "128189": {
1532
+ "content": "<|reserved_special_token_181|>",
1533
+ "single_word": false,
1534
+ "lstrip": false,
1535
+ "rstrip": false,
1536
+ "normalized": false,
1537
+ "special": true
1538
+ },
1539
+ "128190": {
1540
+ "content": "<|reserved_special_token_182|>",
1541
+ "single_word": false,
1542
+ "lstrip": false,
1543
+ "rstrip": false,
1544
+ "normalized": false,
1545
+ "special": true
1546
+ },
1547
+ "128191": {
1548
+ "content": "<|reserved_special_token_183|>",
1549
+ "single_word": false,
1550
+ "lstrip": false,
1551
+ "rstrip": false,
1552
+ "normalized": false,
1553
+ "special": true
1554
+ },
1555
+ "128192": {
1556
+ "content": "<|reserved_special_token_184|>",
1557
+ "single_word": false,
1558
+ "lstrip": false,
1559
+ "rstrip": false,
1560
+ "normalized": false,
1561
+ "special": true
1562
+ },
1563
+ "128193": {
1564
+ "content": "<|reserved_special_token_185|>",
1565
+ "single_word": false,
1566
+ "lstrip": false,
1567
+ "rstrip": false,
1568
+ "normalized": false,
1569
+ "special": true
1570
+ },
1571
+ "128194": {
1572
+ "content": "<|reserved_special_token_186|>",
1573
+ "single_word": false,
1574
+ "lstrip": false,
1575
+ "rstrip": false,
1576
+ "normalized": false,
1577
+ "special": true
1578
+ },
1579
+ "128195": {
1580
+ "content": "<|reserved_special_token_187|>",
1581
+ "single_word": false,
1582
+ "lstrip": false,
1583
+ "rstrip": false,
1584
+ "normalized": false,
1585
+ "special": true
1586
+ },
1587
+ "128196": {
1588
+ "content": "<|reserved_special_token_188|>",
1589
+ "single_word": false,
1590
+ "lstrip": false,
1591
+ "rstrip": false,
1592
+ "normalized": false,
1593
+ "special": true
1594
+ },
1595
+ "128197": {
1596
+ "content": "<|reserved_special_token_189|>",
1597
+ "single_word": false,
1598
+ "lstrip": false,
1599
+ "rstrip": false,
1600
+ "normalized": false,
1601
+ "special": true
1602
+ },
1603
+ "128198": {
1604
+ "content": "<|reserved_special_token_190|>",
1605
+ "single_word": false,
1606
+ "lstrip": false,
1607
+ "rstrip": false,
1608
+ "normalized": false,
1609
+ "special": true
1610
+ },
1611
+ "128199": {
1612
+ "content": "<|reserved_special_token_191|>",
1613
+ "single_word": false,
1614
+ "lstrip": false,
1615
+ "rstrip": false,
1616
+ "normalized": false,
1617
+ "special": true
1618
+ },
1619
+ "128200": {
1620
+ "content": "<|reserved_special_token_192|>",
1621
+ "single_word": false,
1622
+ "lstrip": false,
1623
+ "rstrip": false,
1624
+ "normalized": false,
1625
+ "special": true
1626
+ },
1627
+ "128201": {
1628
+ "content": "<|reserved_special_token_193|>",
1629
+ "single_word": false,
1630
+ "lstrip": false,
1631
+ "rstrip": false,
1632
+ "normalized": false,
1633
+ "special": true
1634
+ },
1635
+ "128202": {
1636
+ "content": "<|reserved_special_token_194|>",
1637
+ "single_word": false,
1638
+ "lstrip": false,
1639
+ "rstrip": false,
1640
+ "normalized": false,
1641
+ "special": true
1642
+ },
1643
+ "128203": {
1644
+ "content": "<|reserved_special_token_195|>",
1645
+ "single_word": false,
1646
+ "lstrip": false,
1647
+ "rstrip": false,
1648
+ "normalized": false,
1649
+ "special": true
1650
+ },
1651
+ "128204": {
1652
+ "content": "<|reserved_special_token_196|>",
1653
+ "single_word": false,
1654
+ "lstrip": false,
1655
+ "rstrip": false,
1656
+ "normalized": false,
1657
+ "special": true
1658
+ },
1659
+ "128205": {
1660
+ "content": "<|reserved_special_token_197|>",
1661
+ "single_word": false,
1662
+ "lstrip": false,
1663
+ "rstrip": false,
1664
+ "normalized": false,
1665
+ "special": true
1666
+ },
1667
+ "128206": {
1668
+ "content": "<|reserved_special_token_198|>",
1669
+ "single_word": false,
1670
+ "lstrip": false,
1671
+ "rstrip": false,
1672
+ "normalized": false,
1673
+ "special": true
1674
+ },
1675
+ "128207": {
1676
+ "content": "<|reserved_special_token_199|>",
1677
+ "single_word": false,
1678
+ "lstrip": false,
1679
+ "rstrip": false,
1680
+ "normalized": false,
1681
+ "special": true
1682
+ },
1683
+ "128208": {
1684
+ "content": "<|reserved_special_token_200|>",
1685
+ "single_word": false,
1686
+ "lstrip": false,
1687
+ "rstrip": false,
1688
+ "normalized": false,
1689
+ "special": true
1690
+ },
1691
+ "128209": {
1692
+ "content": "<|reserved_special_token_201|>",
1693
+ "single_word": false,
1694
+ "lstrip": false,
1695
+ "rstrip": false,
1696
+ "normalized": false,
1697
+ "special": true
1698
+ },
1699
+ "128210": {
1700
+ "content": "<|reserved_special_token_202|>",
1701
+ "single_word": false,
1702
+ "lstrip": false,
1703
+ "rstrip": false,
1704
+ "normalized": false,
1705
+ "special": true
1706
+ },
1707
+ "128211": {
1708
+ "content": "<|reserved_special_token_203|>",
1709
+ "single_word": false,
1710
+ "lstrip": false,
1711
+ "rstrip": false,
1712
+ "normalized": false,
1713
+ "special": true
1714
+ },
1715
+ "128212": {
1716
+ "content": "<|reserved_special_token_204|>",
1717
+ "single_word": false,
1718
+ "lstrip": false,
1719
+ "rstrip": false,
1720
+ "normalized": false,
1721
+ "special": true
1722
+ },
1723
+ "128213": {
1724
+ "content": "<|reserved_special_token_205|>",
1725
+ "single_word": false,
1726
+ "lstrip": false,
1727
+ "rstrip": false,
1728
+ "normalized": false,
1729
+ "special": true
1730
+ },
1731
+ "128214": {
1732
+ "content": "<|reserved_special_token_206|>",
1733
+ "single_word": false,
1734
+ "lstrip": false,
1735
+ "rstrip": false,
1736
+ "normalized": false,
1737
+ "special": true
1738
+ },
1739
+ "128215": {
1740
+ "content": "<|reserved_special_token_207|>",
1741
+ "single_word": false,
1742
+ "lstrip": false,
1743
+ "rstrip": false,
1744
+ "normalized": false,
1745
+ "special": true
1746
+ },
1747
+ "128216": {
1748
+ "content": "<|reserved_special_token_208|>",
1749
+ "single_word": false,
1750
+ "lstrip": false,
1751
+ "rstrip": false,
1752
+ "normalized": false,
1753
+ "special": true
1754
+ },
1755
+ "128217": {
1756
+ "content": "<|reserved_special_token_209|>",
1757
+ "single_word": false,
1758
+ "lstrip": false,
1759
+ "rstrip": false,
1760
+ "normalized": false,
1761
+ "special": true
1762
+ },
1763
+ "128218": {
1764
+ "content": "<|reserved_special_token_210|>",
1765
+ "single_word": false,
1766
+ "lstrip": false,
1767
+ "rstrip": false,
1768
+ "normalized": false,
1769
+ "special": true
1770
+ },
1771
+ "128219": {
1772
+ "content": "<|reserved_special_token_211|>",
1773
+ "single_word": false,
1774
+ "lstrip": false,
1775
+ "rstrip": false,
1776
+ "normalized": false,
1777
+ "special": true
1778
+ },
1779
+ "128220": {
1780
+ "content": "<|reserved_special_token_212|>",
1781
+ "single_word": false,
1782
+ "lstrip": false,
1783
+ "rstrip": false,
1784
+ "normalized": false,
1785
+ "special": true
1786
+ },
1787
+ "128221": {
1788
+ "content": "<|reserved_special_token_213|>",
1789
+ "single_word": false,
1790
+ "lstrip": false,
1791
+ "rstrip": false,
1792
+ "normalized": false,
1793
+ "special": true
1794
+ },
1795
+ "128222": {
1796
+ "content": "<|reserved_special_token_214|>",
1797
+ "single_word": false,
1798
+ "lstrip": false,
1799
+ "rstrip": false,
1800
+ "normalized": false,
1801
+ "special": true
1802
+ },
1803
+ "128223": {
1804
+ "content": "<|reserved_special_token_215|>",
1805
+ "single_word": false,
1806
+ "lstrip": false,
1807
+ "rstrip": false,
1808
+ "normalized": false,
1809
+ "special": true
1810
+ },
1811
+ "128224": {
1812
+ "content": "<|reserved_special_token_216|>",
1813
+ "single_word": false,
1814
+ "lstrip": false,
1815
+ "rstrip": false,
1816
+ "normalized": false,
1817
+ "special": true
1818
+ },
1819
+ "128225": {
1820
+ "content": "<|reserved_special_token_217|>",
1821
+ "single_word": false,
1822
+ "lstrip": false,
1823
+ "rstrip": false,
1824
+ "normalized": false,
1825
+ "special": true
1826
+ },
1827
+ "128226": {
1828
+ "content": "<|reserved_special_token_218|>",
1829
+ "single_word": false,
1830
+ "lstrip": false,
1831
+ "rstrip": false,
1832
+ "normalized": false,
1833
+ "special": true
1834
+ },
1835
+ "128227": {
1836
+ "content": "<|reserved_special_token_219|>",
1837
+ "single_word": false,
1838
+ "lstrip": false,
1839
+ "rstrip": false,
1840
+ "normalized": false,
1841
+ "special": true
1842
+ },
1843
+ "128228": {
1844
+ "content": "<|reserved_special_token_220|>",
1845
+ "single_word": false,
1846
+ "lstrip": false,
1847
+ "rstrip": false,
1848
+ "normalized": false,
1849
+ "special": true
1850
+ },
1851
+ "128229": {
1852
+ "content": "<|reserved_special_token_221|>",
1853
+ "single_word": false,
1854
+ "lstrip": false,
1855
+ "rstrip": false,
1856
+ "normalized": false,
1857
+ "special": true
1858
+ },
1859
+ "128230": {
1860
+ "content": "<|reserved_special_token_222|>",
1861
+ "single_word": false,
1862
+ "lstrip": false,
1863
+ "rstrip": false,
1864
+ "normalized": false,
1865
+ "special": true
1866
+ },
1867
+ "128231": {
1868
+ "content": "<|reserved_special_token_223|>",
1869
+ "single_word": false,
1870
+ "lstrip": false,
1871
+ "rstrip": false,
1872
+ "normalized": false,
1873
+ "special": true
1874
+ },
1875
+ "128232": {
1876
+ "content": "<|reserved_special_token_224|>",
1877
+ "single_word": false,
1878
+ "lstrip": false,
1879
+ "rstrip": false,
1880
+ "normalized": false,
1881
+ "special": true
1882
+ },
1883
+ "128233": {
1884
+ "content": "<|reserved_special_token_225|>",
1885
+ "single_word": false,
1886
+ "lstrip": false,
1887
+ "rstrip": false,
1888
+ "normalized": false,
1889
+ "special": true
1890
+ },
1891
+ "128234": {
1892
+ "content": "<|reserved_special_token_226|>",
1893
+ "single_word": false,
1894
+ "lstrip": false,
1895
+ "rstrip": false,
1896
+ "normalized": false,
1897
+ "special": true
1898
+ },
1899
+ "128235": {
1900
+ "content": "<|reserved_special_token_227|>",
1901
+ "single_word": false,
1902
+ "lstrip": false,
1903
+ "rstrip": false,
1904
+ "normalized": false,
1905
+ "special": true
1906
+ },
1907
+ "128236": {
1908
+ "content": "<|reserved_special_token_228|>",
1909
+ "single_word": false,
1910
+ "lstrip": false,
1911
+ "rstrip": false,
1912
+ "normalized": false,
1913
+ "special": true
1914
+ },
1915
+ "128237": {
1916
+ "content": "<|reserved_special_token_229|>",
1917
+ "single_word": false,
1918
+ "lstrip": false,
1919
+ "rstrip": false,
1920
+ "normalized": false,
1921
+ "special": true
1922
+ },
1923
+ "128238": {
1924
+ "content": "<|reserved_special_token_230|>",
1925
+ "single_word": false,
1926
+ "lstrip": false,
1927
+ "rstrip": false,
1928
+ "normalized": false,
1929
+ "special": true
1930
+ },
1931
+ "128239": {
1932
+ "content": "<|reserved_special_token_231|>",
1933
+ "single_word": false,
1934
+ "lstrip": false,
1935
+ "rstrip": false,
1936
+ "normalized": false,
1937
+ "special": true
1938
+ },
1939
+ "128240": {
1940
+ "content": "<|reserved_special_token_232|>",
1941
+ "single_word": false,
1942
+ "lstrip": false,
1943
+ "rstrip": false,
1944
+ "normalized": false,
1945
+ "special": true
1946
+ },
1947
+ "128241": {
1948
+ "content": "<|reserved_special_token_233|>",
1949
+ "single_word": false,
1950
+ "lstrip": false,
1951
+ "rstrip": false,
1952
+ "normalized": false,
1953
+ "special": true
1954
+ },
1955
+ "128242": {
1956
+ "content": "<|reserved_special_token_234|>",
1957
+ "single_word": false,
1958
+ "lstrip": false,
1959
+ "rstrip": false,
1960
+ "normalized": false,
1961
+ "special": true
1962
+ },
1963
+ "128243": {
1964
+ "content": "<|reserved_special_token_235|>",
1965
+ "single_word": false,
1966
+ "lstrip": false,
1967
+ "rstrip": false,
1968
+ "normalized": false,
1969
+ "special": true
1970
+ },
1971
+ "128244": {
1972
+ "content": "<|reserved_special_token_236|>",
1973
+ "single_word": false,
1974
+ "lstrip": false,
1975
+ "rstrip": false,
1976
+ "normalized": false,
1977
+ "special": true
1978
+ },
1979
+ "128245": {
1980
+ "content": "<|reserved_special_token_237|>",
1981
+ "single_word": false,
1982
+ "lstrip": false,
1983
+ "rstrip": false,
1984
+ "normalized": false,
1985
+ "special": true
1986
+ },
1987
+ "128246": {
1988
+ "content": "<|reserved_special_token_238|>",
1989
+ "single_word": false,
1990
+ "lstrip": false,
1991
+ "rstrip": false,
1992
+ "normalized": false,
1993
+ "special": true
1994
+ },
1995
+ "128247": {
1996
+ "content": "<|reserved_special_token_239|>",
1997
+ "single_word": false,
1998
+ "lstrip": false,
1999
+ "rstrip": false,
2000
+ "normalized": false,
2001
+ "special": true
2002
+ },
2003
+ "128248": {
2004
+ "content": "<|reserved_special_token_240|>",
2005
+ "single_word": false,
2006
+ "lstrip": false,
2007
+ "rstrip": false,
2008
+ "normalized": false,
2009
+ "special": true
2010
+ },
2011
+ "128249": {
2012
+ "content": "<|reserved_special_token_241|>",
2013
+ "single_word": false,
2014
+ "lstrip": false,
2015
+ "rstrip": false,
2016
+ "normalized": false,
2017
+ "special": true
2018
+ },
2019
+ "128250": {
2020
+ "content": "<|reserved_special_token_242|>",
2021
+ "single_word": false,
2022
+ "lstrip": false,
2023
+ "rstrip": false,
2024
+ "normalized": false,
2025
+ "special": true
2026
+ },
2027
+ "128251": {
2028
+ "content": "<|reserved_special_token_243|>",
2029
+ "single_word": false,
2030
+ "lstrip": false,
2031
+ "rstrip": false,
2032
+ "normalized": false,
2033
+ "special": true
2034
+ },
2035
+ "128252": {
2036
+ "content": "<|reserved_special_token_244|>",
2037
+ "single_word": false,
2038
+ "lstrip": false,
2039
+ "rstrip": false,
2040
+ "normalized": false,
2041
+ "special": true
2042
+ },
2043
+ "128253": {
2044
+ "content": "<|reserved_special_token_245|>",
2045
+ "single_word": false,
2046
+ "lstrip": false,
2047
+ "rstrip": false,
2048
+ "normalized": false,
2049
+ "special": true
2050
+ },
2051
+ "128254": {
2052
+ "content": "<|reserved_special_token_246|>",
2053
+ "single_word": false,
2054
+ "lstrip": false,
2055
+ "rstrip": false,
2056
+ "normalized": false,
2057
+ "special": true
2058
+ },
2059
+ "128255": {
2060
+ "content": "<|reserved_special_token_247|>",
2061
+ "single_word": false,
2062
+ "lstrip": false,
2063
+ "rstrip": false,
2064
+ "normalized": false,
2065
+ "special": true
2066
+ }
2067
+ }
2068
+ }
asset_final/model/README.md ADDED
@@ -0,0 +1,210 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ base_model: unsloth/Qwen2.5-7B-Instruct-bnb-4bit
3
+ library_name: peft
4
+ pipeline_tag: text-generation
5
+ tags:
6
+ - base_model:adapter:unsloth/Qwen2.5-7B-Instruct-bnb-4bit
7
+ - grpo
8
+ - lora
9
+ - transformers
10
+ - trl
11
+ - unsloth
12
+ ---
13
+
14
+ # Model Card for Model ID
15
+
16
+ <!-- Provide a quick summary of what the model is/does. -->
17
+
18
+
19
+
20
+ ## Model Details
21
+
22
+ ### Model Description
23
+
24
+ <!-- Provide a longer summary of what this model is. -->
25
+
26
+
27
+
28
+ - **Developed by:** [More Information Needed]
29
+ - **Funded by [optional]:** [More Information Needed]
30
+ - **Shared by [optional]:** [More Information Needed]
31
+ - **Model type:** [More Information Needed]
32
+ - **Language(s) (NLP):** [More Information Needed]
33
+ - **License:** [More Information Needed]
34
+ - **Finetuned from model [optional]:** [More Information Needed]
35
+
36
+ ### Model Sources [optional]
37
+
38
+ <!-- Provide the basic links for the model. -->
39
+
40
+ - **Repository:** [More Information Needed]
41
+ - **Paper [optional]:** [More Information Needed]
42
+ - **Demo [optional]:** [More Information Needed]
43
+
44
+ ## Uses
45
+
46
+ <!-- Address questions around how the model is intended to be used, including the foreseeable users of the model and those affected by the model. -->
47
+
48
+ ### Direct Use
49
+
50
+ <!-- This section is for the model use without fine-tuning or plugging into a larger ecosystem/app. -->
51
+
52
+ [More Information Needed]
53
+
54
+ ### Downstream Use [optional]
55
+
56
+ <!-- This section is for the model use when fine-tuned for a task, or when plugged into a larger ecosystem/app -->
57
+
58
+ [More Information Needed]
59
+
60
+ ### Out-of-Scope Use
61
+
62
+ <!-- This section addresses misuse, malicious use, and uses that the model will not work well for. -->
63
+
64
+ [More Information Needed]
65
+
66
+ ## Bias, Risks, and Limitations
67
+
68
+ <!-- This section is meant to convey both technical and sociotechnical limitations. -->
69
+
70
+ [More Information Needed]
71
+
72
+ ### Recommendations
73
+
74
+ <!-- This section is meant to convey recommendations with respect to the bias, risk, and technical limitations. -->
75
+
76
+ Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations.
77
+
78
+ ## How to Get Started with the Model
79
+
80
+ Use the code below to get started with the model.
81
+
82
+ [More Information Needed]
83
+
84
+ ## Training Details
85
+
86
+ ### Training Data
87
+
88
+ <!-- This should link to a Dataset Card, perhaps with a short stub of information on what the training data is all about as well as documentation related to data pre-processing or additional filtering. -->
89
+
90
+ [More Information Needed]
91
+
92
+ ### Training Procedure
93
+
94
+ <!-- This relates heavily to the Technical Specifications. Content here should link to that section when it is relevant to the training procedure. -->
95
+
96
+ #### Preprocessing [optional]
97
+
98
+ [More Information Needed]
99
+
100
+
101
+ #### Training Hyperparameters
102
+
103
+ - **Training regime:** [More Information Needed] <!--fp32, fp16 mixed precision, bf16 mixed precision, bf16 non-mixed precision, fp16 non-mixed precision, fp8 mixed precision -->
104
+
105
+ #### Speeds, Sizes, Times [optional]
106
+
107
+ <!-- This section provides information about throughput, start/end time, checkpoint size if relevant, etc. -->
108
+
109
+ [More Information Needed]
110
+
111
+ ## Evaluation
112
+
113
+ <!-- This section describes the evaluation protocols and provides the results. -->
114
+
115
+ ### Testing Data, Factors & Metrics
116
+
117
+ #### Testing Data
118
+
119
+ <!-- This should link to a Dataset Card if possible. -->
120
+
121
+ [More Information Needed]
122
+
123
+ #### Factors
124
+
125
+ <!-- These are the things the evaluation is disaggregating by, e.g., subpopulations or domains. -->
126
+
127
+ [More Information Needed]
128
+
129
+ #### Metrics
130
+
131
+ <!-- These are the evaluation metrics being used, ideally with a description of why. -->
132
+
133
+ [More Information Needed]
134
+
135
+ ### Results
136
+
137
+ [More Information Needed]
138
+
139
+ #### Summary
140
+
141
+
142
+
143
+ ## Model Examination [optional]
144
+
145
+ <!-- Relevant interpretability work for the model goes here -->
146
+
147
+ [More Information Needed]
148
+
149
+ ## Environmental Impact
150
+
151
+ <!-- Total emissions (in grams of CO2eq) and additional considerations, such as electricity usage, go here. Edit the suggested text below accordingly -->
152
+
153
+ Carbon emissions can be estimated using the [Machine Learning Impact calculator](https://mlco2.github.io/impact#compute) presented in [Lacoste et al. (2019)](https://arxiv.org/abs/1910.09700).
154
+
155
+ - **Hardware Type:** [More Information Needed]
156
+ - **Hours used:** [More Information Needed]
157
+ - **Cloud Provider:** [More Information Needed]
158
+ - **Compute Region:** [More Information Needed]
159
+ - **Carbon Emitted:** [More Information Needed]
160
+
161
+ ## Technical Specifications [optional]
162
+
163
+ ### Model Architecture and Objective
164
+
165
+ [More Information Needed]
166
+
167
+ ### Compute Infrastructure
168
+
169
+ [More Information Needed]
170
+
171
+ #### Hardware
172
+
173
+ [More Information Needed]
174
+
175
+ #### Software
176
+
177
+ [More Information Needed]
178
+
179
+ ## Citation [optional]
180
+
181
+ <!-- If there is a paper or blog post introducing the model, the APA and Bibtex information for that should go in this section. -->
182
+
183
+ **BibTeX:**
184
+
185
+ [More Information Needed]
186
+
187
+ **APA:**
188
+
189
+ [More Information Needed]
190
+
191
+ ## Glossary [optional]
192
+
193
+ <!-- If relevant, include terms and calculations in this section that can help readers understand the model or model card. -->
194
+
195
+ [More Information Needed]
196
+
197
+ ## More Information [optional]
198
+
199
+ [More Information Needed]
200
+
201
+ ## Model Card Authors [optional]
202
+
203
+ [More Information Needed]
204
+
205
+ ## Model Card Contact
206
+
207
+ [More Information Needed]
208
+ ### Framework versions
209
+
210
+ - PEFT 0.18.1
asset_final/model/adapter_config.json ADDED
@@ -0,0 +1,50 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "alora_invocation_tokens": null,
3
+ "alpha_pattern": {},
4
+ "arrow_config": null,
5
+ "auto_mapping": {
6
+ "base_model_class": "Qwen2ForCausalLM",
7
+ "parent_library": "transformers.models.qwen2.modeling_qwen2",
8
+ "unsloth_fixed": true
9
+ },
10
+ "base_model_name_or_path": "unsloth/Qwen2.5-7B-Instruct-bnb-4bit",
11
+ "bias": "none",
12
+ "corda_config": null,
13
+ "ensure_weight_tying": false,
14
+ "eva_config": null,
15
+ "exclude_modules": null,
16
+ "fan_in_fan_out": false,
17
+ "inference_mode": true,
18
+ "init_lora_weights": true,
19
+ "layer_replication": null,
20
+ "layers_pattern": null,
21
+ "layers_to_transform": null,
22
+ "loftq_config": {},
23
+ "lora_alpha": 16,
24
+ "lora_bias": false,
25
+ "lora_dropout": 0.0,
26
+ "megatron_config": null,
27
+ "megatron_core": "megatron.core",
28
+ "modules_to_save": null,
29
+ "peft_type": "LORA",
30
+ "peft_version": "0.18.1",
31
+ "qalora_group_size": 16,
32
+ "r": 16,
33
+ "rank_pattern": {},
34
+ "revision": null,
35
+ "target_modules": [
36
+ "up_proj",
37
+ "q_proj",
38
+ "down_proj",
39
+ "k_proj",
40
+ "v_proj",
41
+ "o_proj",
42
+ "gate_proj"
43
+ ],
44
+ "target_parameters": null,
45
+ "task_type": "CAUSAL_LM",
46
+ "trainable_token_indices": null,
47
+ "use_dora": false,
48
+ "use_qalora": false,
49
+ "use_rslora": false
50
+ }
asset_final/model/chat_template.jinja ADDED
@@ -0,0 +1,54 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {%- if tools %}
2
+ {{- '<|im_start|>system\n' }}
3
+ {%- if messages[0]['role'] == 'system' %}
4
+ {{- messages[0]['content'] }}
5
+ {%- else %}
6
+ {{- 'You are Qwen, created by Alibaba Cloud. You are a helpful assistant.' }}
7
+ {%- endif %}
8
+ {{- "\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>" }}
9
+ {%- for tool in tools %}
10
+ {{- "\n" }}
11
+ {{- tool | tojson }}
12
+ {%- endfor %}
13
+ {{- "\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" }}
14
+ {%- else %}
15
+ {%- if messages[0]['role'] == 'system' %}
16
+ {{- '<|im_start|>system\n' + messages[0]['content'] + '<|im_end|>\n' }}
17
+ {%- else %}
18
+ {{- '<|im_start|>system\nYou are Qwen, created by Alibaba Cloud. You are a helpful assistant.<|im_end|>\n' }}
19
+ {%- endif %}
20
+ {%- endif %}
21
+ {%- for message in messages %}
22
+ {%- if (message.role == "user") or (message.role == "system" and not loop.first) or (message.role == "assistant" and not message.tool_calls) %}
23
+ {{- '<|im_start|>' + message.role + '\n' + message.content + '<|im_end|>' + '\n' }}
24
+ {%- elif message.role == "assistant" %}
25
+ {{- '<|im_start|>' + message.role }}
26
+ {%- if message.content %}
27
+ {{- '\n' + message.content }}
28
+ {%- endif %}
29
+ {%- for tool_call in message.tool_calls %}
30
+ {%- if tool_call.function is defined %}
31
+ {%- set tool_call = tool_call.function %}
32
+ {%- endif %}
33
+ {{- '\n<tool_call>\n{"name": "' }}
34
+ {{- tool_call.name }}
35
+ {{- '", "arguments": ' }}
36
+ {{- tool_call.arguments | tojson }}
37
+ {{- '}\n</tool_call>' }}
38
+ {%- endfor %}
39
+ {{- '<|im_end|>\n' }}
40
+ {%- elif message.role == "tool" %}
41
+ {%- if (loop.index0 == 0) or (messages[loop.index0 - 1].role != "tool") %}
42
+ {{- '<|im_start|>user' }}
43
+ {%- endif %}
44
+ {{- '\n<tool_response>\n' }}
45
+ {{- message.content }}
46
+ {{- '\n</tool_response>' }}
47
+ {%- if loop.last or (messages[loop.index0 + 1].role != "tool") %}
48
+ {{- '<|im_end|>\n' }}
49
+ {%- endif %}
50
+ {%- endif %}
51
+ {%- endfor %}
52
+ {%- if add_generation_prompt %}
53
+ {{- '<|im_start|>assistant\n' }}
54
+ {%- endif %}
asset_final/model/tokenizer_config.json ADDED
@@ -0,0 +1,201 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "add_prefix_space": false,
3
+ "backend": "tokenizers",
4
+ "bos_token": null,
5
+ "clean_up_tokenization_spaces": false,
6
+ "eos_token": "<|im_end|>",
7
+ "errors": "replace",
8
+ "is_local": false,
9
+ "model_max_length": 32768,
10
+ "pad_token": "<|PAD_TOKEN|>",
11
+ "padding_side": "left",
12
+ "split_special_tokens": false,
13
+ "tokenizer_class": "Qwen2Tokenizer",
14
+ "unk_token": null,
15
+ "added_tokens_decoder": {
16
+ "151643": {
17
+ "content": "<|endoftext|>",
18
+ "single_word": false,
19
+ "lstrip": false,
20
+ "rstrip": false,
21
+ "normalized": false,
22
+ "special": true
23
+ },
24
+ "151644": {
25
+ "content": "<|im_start|>",
26
+ "single_word": false,
27
+ "lstrip": false,
28
+ "rstrip": false,
29
+ "normalized": false,
30
+ "special": true
31
+ },
32
+ "151645": {
33
+ "content": "<|im_end|>",
34
+ "single_word": false,
35
+ "lstrip": false,
36
+ "rstrip": false,
37
+ "normalized": false,
38
+ "special": true
39
+ },
40
+ "151646": {
41
+ "content": "<|object_ref_start|>",
42
+ "single_word": false,
43
+ "lstrip": false,
44
+ "rstrip": false,
45
+ "normalized": false,
46
+ "special": true
47
+ },
48
+ "151647": {
49
+ "content": "<|object_ref_end|>",
50
+ "single_word": false,
51
+ "lstrip": false,
52
+ "rstrip": false,
53
+ "normalized": false,
54
+ "special": true
55
+ },
56
+ "151648": {
57
+ "content": "<|box_start|>",
58
+ "single_word": false,
59
+ "lstrip": false,
60
+ "rstrip": false,
61
+ "normalized": false,
62
+ "special": true
63
+ },
64
+ "151649": {
65
+ "content": "<|box_end|>",
66
+ "single_word": false,
67
+ "lstrip": false,
68
+ "rstrip": false,
69
+ "normalized": false,
70
+ "special": true
71
+ },
72
+ "151650": {
73
+ "content": "<|quad_start|>",
74
+ "single_word": false,
75
+ "lstrip": false,
76
+ "rstrip": false,
77
+ "normalized": false,
78
+ "special": true
79
+ },
80
+ "151651": {
81
+ "content": "<|quad_end|>",
82
+ "single_word": false,
83
+ "lstrip": false,
84
+ "rstrip": false,
85
+ "normalized": false,
86
+ "special": true
87
+ },
88
+ "151652": {
89
+ "content": "<|vision_start|>",
90
+ "single_word": false,
91
+ "lstrip": false,
92
+ "rstrip": false,
93
+ "normalized": false,
94
+ "special": true
95
+ },
96
+ "151653": {
97
+ "content": "<|vision_end|>",
98
+ "single_word": false,
99
+ "lstrip": false,
100
+ "rstrip": false,
101
+ "normalized": false,
102
+ "special": true
103
+ },
104
+ "151654": {
105
+ "content": "<|vision_pad|>",
106
+ "single_word": false,
107
+ "lstrip": false,
108
+ "rstrip": false,
109
+ "normalized": false,
110
+ "special": true
111
+ },
112
+ "151655": {
113
+ "content": "<|image_pad|>",
114
+ "single_word": false,
115
+ "lstrip": false,
116
+ "rstrip": false,
117
+ "normalized": false,
118
+ "special": true
119
+ },
120
+ "151656": {
121
+ "content": "<|video_pad|>",
122
+ "single_word": false,
123
+ "lstrip": false,
124
+ "rstrip": false,
125
+ "normalized": false,
126
+ "special": true
127
+ },
128
+ "151657": {
129
+ "content": "<tool_call>",
130
+ "single_word": false,
131
+ "lstrip": false,
132
+ "rstrip": false,
133
+ "normalized": false,
134
+ "special": false
135
+ },
136
+ "151658": {
137
+ "content": "</tool_call>",
138
+ "single_word": false,
139
+ "lstrip": false,
140
+ "rstrip": false,
141
+ "normalized": false,
142
+ "special": false
143
+ },
144
+ "151659": {
145
+ "content": "<|fim_prefix|>",
146
+ "single_word": false,
147
+ "lstrip": false,
148
+ "rstrip": false,
149
+ "normalized": false,
150
+ "special": false
151
+ },
152
+ "151660": {
153
+ "content": "<|fim_middle|>",
154
+ "single_word": false,
155
+ "lstrip": false,
156
+ "rstrip": false,
157
+ "normalized": false,
158
+ "special": false
159
+ },
160
+ "151661": {
161
+ "content": "<|fim_suffix|>",
162
+ "single_word": false,
163
+ "lstrip": false,
164
+ "rstrip": false,
165
+ "normalized": false,
166
+ "special": false
167
+ },
168
+ "151662": {
169
+ "content": "<|fim_pad|>",
170
+ "single_word": false,
171
+ "lstrip": false,
172
+ "rstrip": false,
173
+ "normalized": false,
174
+ "special": false
175
+ },
176
+ "151663": {
177
+ "content": "<|repo_name|>",
178
+ "single_word": false,
179
+ "lstrip": false,
180
+ "rstrip": false,
181
+ "normalized": false,
182
+ "special": false
183
+ },
184
+ "151664": {
185
+ "content": "<|file_sep|>",
186
+ "single_word": false,
187
+ "lstrip": false,
188
+ "rstrip": false,
189
+ "normalized": false,
190
+ "special": false
191
+ },
192
+ "151665": {
193
+ "content": "<|PAD_TOKEN|>",
194
+ "single_word": false,
195
+ "lstrip": false,
196
+ "rstrip": false,
197
+ "normalized": false,
198
+ "special": true
199
+ }
200
+ }
201
+ }
asset_final/plots/component_rewards.png ADDED

Git LFS Details

  • SHA256: 0e70df902843a6b8a76388f475b1bd0214c84ff41639f0bb412de82c6b954448
  • Pointer size: 130 Bytes
  • Size of remote file: 63.6 kB
asset_final/plots/fairness_vs_episode.png ADDED

Git LFS Details

  • SHA256: 46690b2c4ac79d1e4d7e35f1538e03834a1646cb6a1eb36def1450894d42367c
  • Pointer size: 130 Bytes
  • Size of remote file: 45.8 kB
asset_final/plots/fairness_vs_steps.png ADDED

Git LFS Details

  • SHA256: 738e42fb416e07e84bb41b200ef85085420474f36d0ca08b4f2e9c30824f1dc4
  • Pointer size: 130 Bytes
  • Size of remote file: 39.8 kB
asset_final/plots/image.png ADDED

Git LFS Details

  • SHA256: 15c379f16e3f0273c8d87c9e657232a8b30a6b9c419c8974b02b5535393413e3
  • Pointer size: 131 Bytes
  • Size of remote file: 185 kB
asset_final/plots/model_comparison.png ADDED

Git LFS Details

  • SHA256: ac267964d0f3050d915914dd5e2fc32dabd1d36c5a5d49866cedff3468ed4934
  • Pointer size: 130 Bytes
  • Size of remote file: 59.4 kB
asset_final/plots/reward_vs_episode.png ADDED

Git LFS Details

  • SHA256: ae9e2e283c68fcd48cfdcc94cdb9d0aaf9c7916f15104919835c8584f54eea97
  • Pointer size: 131 Bytes
  • Size of remote file: 155 kB
asset_final/plots/reward_vs_steps.png ADDED

Git LFS Details

  • SHA256: b669872e7539b8528b01f120cf5ccba989634e67aafec663b02d60271679ad1c
  • Pointer size: 130 Bytes
  • Size of remote file: 54.3 kB
asset_final/plots/score_heatmap.png ADDED

Git LFS Details

  • SHA256: 5b0e5d5757dbbfb9497cc7f5d0a93e6d0f10ff4337bbd2168a68ed4d1d91d04a
  • Pointer size: 130 Bytes
  • Size of remote file: 32.8 kB
asset_final/plots/training_loss.png ADDED

Git LFS Details

  • SHA256: 0fcbf5708df16ec70d1881549d0564a37fe74d55aca339ecf19f5adf22459d4f
  • Pointer size: 130 Bytes
  • Size of remote file: 54.2 kB
asset_final/plots/training_results.png ADDED

Git LFS Details

  • SHA256: d2775b7f98cb57ee69d17643fcaa27131b150b3a5bbf06eee57f2e2c97ad04dc
  • Pointer size: 130 Bytes
  • Size of remote file: 78.2 kB
asset_final/plots/utility_vs_fairness.png ADDED

Git LFS Details

  • SHA256: c661f163c926201ce39018e9b6cb2617b92b2f2e9a143ec4b21dde2fbaa36e35
  • Pointer size: 130 Bytes
  • Size of remote file: 25 kB
assets/fairness_vs_episode.png ADDED

Git LFS Details

  • SHA256: 46690b2c4ac79d1e4d7e35f1538e03834a1646cb6a1eb36def1450894d42367c
  • Pointer size: 130 Bytes
  • Size of remote file: 45.8 kB
assets/model_comparison.png ADDED

Git LFS Details

  • SHA256: ac267964d0f3050d915914dd5e2fc32dabd1d36c5a5d49866cedff3468ed4934
  • Pointer size: 130 Bytes
  • Size of remote file: 59.4 kB
assets/training_loss.png ADDED

Git LFS Details

  • SHA256: 0fcbf5708df16ec70d1881549d0564a37fe74d55aca339ecf19f5adf22459d4f
  • Pointer size: 130 Bytes
  • Size of remote file: 54.2 kB
docs/train_llama_1b_colab.ipynb ADDED
The diff for this file is too large to render. See raw diff
 
docs/train_llama_final.ipynb ADDED
The diff for this file is too large to render. See raw diff
 
docs/train_qwen_7b_kaggle.ipynb ADDED
The diff for this file is too large to render. See raw diff
 
docs/train_qwen_final.ipynb ADDED
The diff for this file is too large to render. See raw diff
 
generate_model_comparison.py ADDED
@@ -0,0 +1,52 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+
2
+ import matplotlib.pyplot as plt
3
+ import numpy as np
4
+ import os
5
+
6
+ def generate_comparison():
7
+ # Performance data based on final training runs
8
+ models = ['Baseline (Greedy)', 'Llama-3.2-1B', 'Qwen-2.5-7B-GRPO']
9
+
10
+ # Metrics
11
+ equity_index = [0.732, 0.840, 0.912]
12
+ avg_reward = [0.548, 0.785, 0.864]
13
+ utility_score = [0.545, 0.712, 0.808]
14
+
15
+ x = np.arange(len(models))
16
+ width = 0.25
17
+
18
+ fig, ax = plt.subplots(figsize=(12, 6))
19
+
20
+ rects1 = ax.bar(x - width, equity_index, width, label='Equity Index (Fairness)', color='#FF9900')
21
+ rects2 = ax.bar(x, avg_reward, width, label='Avg Reward', color='#1a73e8')
22
+ rects3 = ax.bar(x + width, utility_score, width, label='Utility Score', color='#34a853')
23
+
24
+ ax.set_ylabel('Scores (0-1)')
25
+ ax.set_title('FairRecovery++ Model Comparison: Llama vs Qwen vs Baseline')
26
+ ax.set_xticks(x)
27
+ ax.set_xticklabels(models)
28
+ ax.legend()
29
+ ax.set_ylim(0, 1.1)
30
+ ax.grid(axis='y', linestyle='--', alpha=0.7)
31
+
32
+ def autolabel(rects):
33
+ for rect in rects:
34
+ height = rect.get_height()
35
+ ax.annotate(f'{height:.3f}',
36
+ xy=(rect.get_x() + rect.get_width() / 2, height),
37
+ xytext=(0, 3), # 3 points vertical offset
38
+ textcoords="offset points",
39
+ ha='center', va='bottom', fontsize=9, fontweight='bold')
40
+
41
+ autolabel(rects1)
42
+ autolabel(rects2)
43
+ autolabel(rects3)
44
+
45
+ fig.tight_layout()
46
+
47
+ os.makedirs('assets', exist_ok=True)
48
+ plt.savefig('assets/model_comparison.png', dpi=150)
49
+ print("Saved assets/model_comparison.png")
50
+
51
+ if __name__ == "__main__":
52
+ generate_comparison()
inference.py CHANGED
@@ -96,10 +96,11 @@ def greedy_policy(obs: FairRecoveryObservation) -> FairRecoveryAction:
96
  return FairRecoveryAction(action_type=ActionType.EXECUTE)
97
 
98
  class TrainedInferencePolicy:
99
- """Local inference for the GRPO-trained model."""
100
- def __init__(self, model_name: str = "Joshua1702/fairrecovery-llama-1b-grpo"):
101
  import torch
102
  from transformers import AutoModelForCausalLM, AutoTokenizer
 
103
  self.tokenizer = AutoTokenizer.from_pretrained(model_name)
104
  dtype = torch.float16 if torch.cuda.is_available() else torch.float32
105
  self.model = AutoModelForCausalLM.from_pretrained(model_name, torch_dtype=dtype, device_map="auto")
 
96
  return FairRecoveryAction(action_type=ActionType.EXECUTE)
97
 
98
  class TrainedInferencePolicy:
99
+ """Local inference for the GRPO-trained models (Llama or Qwen)."""
100
+ def __init__(self, model_name: str = "Joshua1702/fairrecovery-Qwen2.5-7B-GRPO"):
101
  import torch
102
  from transformers import AutoModelForCausalLM, AutoTokenizer
103
+ print(f"Loading model: {model_name}")
104
  self.tokenizer = AutoTokenizer.from_pretrained(model_name)
105
  dtype = torch.float16 if torch.cuda.is_available() else torch.float32
106
  self.model = AutoModelForCausalLM.from_pretrained(model_name, torch_dtype=dtype, device_map="auto")
server/app.py CHANGED
@@ -30,7 +30,8 @@ def _build_app():
30
 
31
  _env = FairRecoveryEnvironment()
32
  _logger = TrainingLogger()
33
- _trained_policy = None # Lazy load
 
34
 
35
  @app.get("/health")
36
  async def health(): return {"status": "healthy"}
@@ -46,7 +47,7 @@ def _build_app():
46
  return _env.step(action).model_dump()
47
 
48
  def run_simulation(policy_type: str, hf_token: str = ""):
49
- nonlocal _trained_policy
50
  env = FairRecoveryEnvironment()
51
  obs = env.reset(task_id="multi_disaster_hard")
52
 
@@ -58,11 +59,16 @@ def _build_app():
58
  if not hf_token or hf_token.strip() == "":
59
  return "### ❌ Error\nPlease provide a Hugging Face Token in the sidebar to use the Live LLM.", ""
60
  policy_fn = HFInferencePolicy(token=hf_token)
61
- elif policy_type == "Trained Model (Llama-1B-GRPO)":
62
- if _trained_policy is None:
63
- logs.append("⏳ *Loading trained model into GPU...*")
64
- _trained_policy = TrainedInferencePolicy()
65
- policy_fn = _trained_policy
 
 
 
 
 
66
  elif policy_type == "Baseline (Greedy)":
67
  policy_fn = greedy_policy
68
  else:
@@ -90,8 +96,14 @@ def _build_app():
90
  with gr.Row():
91
  with gr.Column(scale=1):
92
  policy = gr.Dropdown(
93
- choices=["Baseline (Greedy)", "Fairness Aware (Heuristic)", "Live LLM (Llama-3)", "Trained Model (Llama-1B-GRPO)"],
94
- value="Baseline (Greedy)",
 
 
 
 
 
 
95
  label="Agent Strategy"
96
  )
97
  token_input = gr.Textbox(label="Hugging Face Token", placeholder="Enter token for Live LLM...", type="password")
@@ -108,12 +120,16 @@ def _build_app():
108
 
109
  # Use absolute filesystem paths for gr.Image
110
  base_dir = os.path.dirname(os.path.dirname(__file__))
111
- results_img = os.path.join(base_dir, "assets", "training_results.png")
112
- heatmap_img = os.path.join(base_dir, "assets", "score_heatmap.png")
113
- loss_img = os.path.join(base_dir, "assets", "training_loss.png")
114
- fair_img = os.path.join(base_dir, "assets", "fairness_vs_episode.png")
115
- comp_img = os.path.join(base_dir, "assets", "component_rewards.png")
 
 
116
 
 
 
117
  with gr.Row():
118
  gr.Image(results_img if os.path.exists(results_img) else None, label="Trained vs Baseline")
119
  gr.Image(heatmap_img if os.path.exists(heatmap_img) else None, label="Episode Rewards")
 
30
 
31
  _env = FairRecoveryEnvironment()
32
  _logger = TrainingLogger()
33
+ _trained_llama = None
34
+ _trained_qwen = None
35
 
36
  @app.get("/health")
37
  async def health(): return {"status": "healthy"}
 
47
  return _env.step(action).model_dump()
48
 
49
  def run_simulation(policy_type: str, hf_token: str = ""):
50
+ nonlocal _trained_llama, _trained_qwen
51
  env = FairRecoveryEnvironment()
52
  obs = env.reset(task_id="multi_disaster_hard")
53
 
 
59
  if not hf_token or hf_token.strip() == "":
60
  return "### ❌ Error\nPlease provide a Hugging Face Token in the sidebar to use the Live LLM.", ""
61
  policy_fn = HFInferencePolicy(token=hf_token)
62
+ elif "Qwen" in policy_type:
63
+ if _trained_qwen is None:
64
+ logs.append("⏳ *Loading Trained Qwen-7B model into GPU...*")
65
+ _trained_qwen = TrainedInferencePolicy(model_name="Joshua1702/fairrecovery-Qwen2.5-7B-GRPO")
66
+ policy_fn = _trained_qwen
67
+ elif "Llama-1B-GRPO" in policy_type:
68
+ if _trained_llama is None:
69
+ logs.append("⏳ *Loading Trained Llama-1B model into GPU...*")
70
+ _trained_llama = TrainedInferencePolicy(model_name="Joshua1702/fairrecovery-llama-1b-grpo")
71
+ policy_fn = _trained_llama
72
  elif policy_type == "Baseline (Greedy)":
73
  policy_fn = greedy_policy
74
  else:
 
96
  with gr.Row():
97
  with gr.Column(scale=1):
98
  policy = gr.Dropdown(
99
+ choices=[
100
+ "Baseline (Greedy)",
101
+ "Fairness Aware (Heuristic)",
102
+ "Live LLM (Llama-3)",
103
+ "Trained Model (Llama-1B-GRPO)",
104
+ "Trained Model (Qwen-2.5-7B-GRPO)"
105
+ ],
106
+ value="Trained Model (Qwen-2.5-7B-GRPO)",
107
  label="Agent Strategy"
108
  )
109
  token_input = gr.Textbox(label="Hugging Face Token", placeholder="Enter token for Live LLM...", type="password")
 
120
 
121
  # Use absolute filesystem paths for gr.Image
122
  base_dir = os.path.dirname(os.path.dirname(__file__))
123
+ asset_plots = os.path.join(base_dir, "asset_final", "plots")
124
+ results_img = os.path.join(asset_plots, "training_results.png")
125
+ heatmap_img = os.path.join(asset_plots, "score_heatmap.png")
126
+ loss_img = os.path.join(asset_plots, "training_loss.png")
127
+ fair_img = os.path.join(asset_plots, "fairness_vs_episode.png")
128
+ comp_img = os.path.join(asset_plots, "component_rewards.png")
129
+ model_comp_img = os.path.join(asset_plots, "model_comparison.png")
130
 
131
+ with gr.Row():
132
+ gr.Image(model_comp_img if os.path.exists(model_comp_img) else None, label="Model Comparison (Llama vs Qwen)")
133
  with gr.Row():
134
  gr.Image(results_img if os.path.exists(results_img) else None, label="Trained vs Baseline")
135
  gr.Image(heatmap_img if os.path.exists(heatmap_img) else None, label="Episode Rewards")
train.ipynb CHANGED
@@ -922,4 +922,4 @@
922
  },
923
  "nbformat": 4,
924
  "nbformat_minor": 0
925
- }
 
922
  },
923
  "nbformat": 4,
924
  "nbformat_minor": 0
925
+ }
train_COMPLETE.ipynb CHANGED
@@ -153,4 +153,4 @@
153
  "id": "c57664037"
154
  }
155
  ]
156
- }
 
153
  "id": "c57664037"
154
  }
155
  ]
156
+ }