cti-ttp-18
commited on
Commit
•
0a3ccd0
1
Parent(s):
df480d9
Upload folder using huggingface_hub
Browse files- README.md +45 -0
- adapter_config.json +29 -0
- adapter_model.safetensors +3 -0
- checkpoint-1074/README.md +202 -0
- checkpoint-1074/adapter_config.json +29 -0
- checkpoint-1074/adapter_model.safetensors +3 -0
- checkpoint-1074/optimizer.pt +3 -0
- checkpoint-1074/pytorch_model.bin +3 -0
- checkpoint-1074/rng_state_0.pth +3 -0
- checkpoint-1074/rng_state_1.pth +3 -0
- checkpoint-1074/scheduler.pt +3 -0
- checkpoint-1074/special_tokens_map.json +24 -0
- checkpoint-1074/tokenizer.json +0 -0
- checkpoint-1074/tokenizer.model +3 -0
- checkpoint-1074/tokenizer_config.json +43 -0
- checkpoint-1074/trainer_state.json +315 -0
- checkpoint-1074/training_args.bin +3 -0
- runs/Mar26_16-43-51_b142d14c9e34/events.out.tfevents.1711471442.b142d14c9e34.182.0 +2 -2
- special_tokens_map.json +24 -0
- tokenizer.json +0 -0
- tokenizer.model +3 -0
- tokenizer_config.json +43 -0
- training_args.bin +3 -0
- training_params.json +47 -0
README.md
ADDED
@@ -0,0 +1,45 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
---
|
2 |
+
tags:
|
3 |
+
- autotrain
|
4 |
+
- text-generation-inference
|
5 |
+
- text-generation
|
6 |
+
- peft
|
7 |
+
library_name: transformers
|
8 |
+
widget:
|
9 |
+
- messages:
|
10 |
+
- role: user
|
11 |
+
content: What is your favorite condiment?
|
12 |
+
license: other
|
13 |
+
---
|
14 |
+
|
15 |
+
# Model Trained Using AutoTrain
|
16 |
+
|
17 |
+
This model was trained using AutoTrain. For more information, please visit [AutoTrain](https://hf.co/docs/autotrain).
|
18 |
+
|
19 |
+
# Usage
|
20 |
+
|
21 |
+
```python
|
22 |
+
|
23 |
+
from transformers import AutoModelForCausalLM, AutoTokenizer
|
24 |
+
|
25 |
+
model_path = "PATH_TO_THIS_REPO"
|
26 |
+
|
27 |
+
tokenizer = AutoTokenizer.from_pretrained(model_path)
|
28 |
+
model = AutoModelForCausalLM.from_pretrained(
|
29 |
+
model_path,
|
30 |
+
device_map="auto",
|
31 |
+
torch_dtype='auto'
|
32 |
+
).eval()
|
33 |
+
|
34 |
+
# Prompt content: "hi"
|
35 |
+
messages = [
|
36 |
+
{"role": "user", "content": "hi"}
|
37 |
+
]
|
38 |
+
|
39 |
+
input_ids = tokenizer.apply_chat_template(conversation=messages, tokenize=True, add_generation_prompt=True, return_tensors='pt')
|
40 |
+
output_ids = model.generate(input_ids.to('cuda'))
|
41 |
+
response = tokenizer.decode(output_ids[0][input_ids.shape[1]:], skip_special_tokens=True)
|
42 |
+
|
43 |
+
# Model response: "Hello! How can I assist you today?"
|
44 |
+
print(response)
|
45 |
+
```
|
adapter_config.json
ADDED
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"alpha_pattern": {},
|
3 |
+
"auto_mapping": null,
|
4 |
+
"base_model_name_or_path": "mistralai/Mistral-7B-v0.1",
|
5 |
+
"bias": "none",
|
6 |
+
"fan_in_fan_out": false,
|
7 |
+
"inference_mode": true,
|
8 |
+
"init_lora_weights": true,
|
9 |
+
"layer_replication": null,
|
10 |
+
"layers_pattern": null,
|
11 |
+
"layers_to_transform": null,
|
12 |
+
"loftq_config": {},
|
13 |
+
"lora_alpha": 32,
|
14 |
+
"lora_dropout": 0.05,
|
15 |
+
"megatron_config": null,
|
16 |
+
"megatron_core": "megatron.core",
|
17 |
+
"modules_to_save": null,
|
18 |
+
"peft_type": "LORA",
|
19 |
+
"r": 16,
|
20 |
+
"rank_pattern": {},
|
21 |
+
"revision": null,
|
22 |
+
"target_modules": [
|
23 |
+
"q_proj",
|
24 |
+
"v_proj"
|
25 |
+
],
|
26 |
+
"task_type": "CAUSAL_LM",
|
27 |
+
"use_dora": false,
|
28 |
+
"use_rslora": false
|
29 |
+
}
|
adapter_model.safetensors
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:9b16ac63b092beee412210b7238c769e2e0bdda508576bfb630e64c6b57077c6
|
3 |
+
size 27280152
|
checkpoint-1074/README.md
ADDED
@@ -0,0 +1,202 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
---
|
2 |
+
library_name: peft
|
3 |
+
base_model: mistralai/Mistral-7B-v0.1
|
4 |
+
---
|
5 |
+
|
6 |
+
# Model Card for Model ID
|
7 |
+
|
8 |
+
<!-- Provide a quick summary of what the model is/does. -->
|
9 |
+
|
10 |
+
|
11 |
+
|
12 |
+
## Model Details
|
13 |
+
|
14 |
+
### Model Description
|
15 |
+
|
16 |
+
<!-- Provide a longer summary of what this model is. -->
|
17 |
+
|
18 |
+
|
19 |
+
|
20 |
+
- **Developed by:** [More Information Needed]
|
21 |
+
- **Funded by [optional]:** [More Information Needed]
|
22 |
+
- **Shared by [optional]:** [More Information Needed]
|
23 |
+
- **Model type:** [More Information Needed]
|
24 |
+
- **Language(s) (NLP):** [More Information Needed]
|
25 |
+
- **License:** [More Information Needed]
|
26 |
+
- **Finetuned from model [optional]:** [More Information Needed]
|
27 |
+
|
28 |
+
### Model Sources [optional]
|
29 |
+
|
30 |
+
<!-- Provide the basic links for the model. -->
|
31 |
+
|
32 |
+
- **Repository:** [More Information Needed]
|
33 |
+
- **Paper [optional]:** [More Information Needed]
|
34 |
+
- **Demo [optional]:** [More Information Needed]
|
35 |
+
|
36 |
+
## Uses
|
37 |
+
|
38 |
+
<!-- Address questions around how the model is intended to be used, including the foreseeable users of the model and those affected by the model. -->
|
39 |
+
|
40 |
+
### Direct Use
|
41 |
+
|
42 |
+
<!-- This section is for the model use without fine-tuning or plugging into a larger ecosystem/app. -->
|
43 |
+
|
44 |
+
[More Information Needed]
|
45 |
+
|
46 |
+
### Downstream Use [optional]
|
47 |
+
|
48 |
+
<!-- This section is for the model use when fine-tuned for a task, or when plugged into a larger ecosystem/app -->
|
49 |
+
|
50 |
+
[More Information Needed]
|
51 |
+
|
52 |
+
### Out-of-Scope Use
|
53 |
+
|
54 |
+
<!-- This section addresses misuse, malicious use, and uses that the model will not work well for. -->
|
55 |
+
|
56 |
+
[More Information Needed]
|
57 |
+
|
58 |
+
## Bias, Risks, and Limitations
|
59 |
+
|
60 |
+
<!-- This section is meant to convey both technical and sociotechnical limitations. -->
|
61 |
+
|
62 |
+
[More Information Needed]
|
63 |
+
|
64 |
+
### Recommendations
|
65 |
+
|
66 |
+
<!-- This section is meant to convey recommendations with respect to the bias, risk, and technical limitations. -->
|
67 |
+
|
68 |
+
Users (both direct and downstream) should be made aware of the risks, biases and limitations of the model. More information needed for further recommendations.
|
69 |
+
|
70 |
+
## How to Get Started with the Model
|
71 |
+
|
72 |
+
Use the code below to get started with the model.
|
73 |
+
|
74 |
+
[More Information Needed]
|
75 |
+
|
76 |
+
## Training Details
|
77 |
+
|
78 |
+
### Training Data
|
79 |
+
|
80 |
+
<!-- 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. -->
|
81 |
+
|
82 |
+
[More Information Needed]
|
83 |
+
|
84 |
+
### Training Procedure
|
85 |
+
|
86 |
+
<!-- This relates heavily to the Technical Specifications. Content here should link to that section when it is relevant to the training procedure. -->
|
87 |
+
|
88 |
+
#### Preprocessing [optional]
|
89 |
+
|
90 |
+
[More Information Needed]
|
91 |
+
|
92 |
+
|
93 |
+
#### Training Hyperparameters
|
94 |
+
|
95 |
+
- **Training regime:** [More Information Needed] <!--fp32, fp16 mixed precision, bf16 mixed precision, bf16 non-mixed precision, fp16 non-mixed precision, fp8 mixed precision -->
|
96 |
+
|
97 |
+
#### Speeds, Sizes, Times [optional]
|
98 |
+
|
99 |
+
<!-- This section provides information about throughput, start/end time, checkpoint size if relevant, etc. -->
|
100 |
+
|
101 |
+
[More Information Needed]
|
102 |
+
|
103 |
+
## Evaluation
|
104 |
+
|
105 |
+
<!-- This section describes the evaluation protocols and provides the results. -->
|
106 |
+
|
107 |
+
### Testing Data, Factors & Metrics
|
108 |
+
|
109 |
+
#### Testing Data
|
110 |
+
|
111 |
+
<!-- This should link to a Dataset Card if possible. -->
|
112 |
+
|
113 |
+
[More Information Needed]
|
114 |
+
|
115 |
+
#### Factors
|
116 |
+
|
117 |
+
<!-- These are the things the evaluation is disaggregating by, e.g., subpopulations or domains. -->
|
118 |
+
|
119 |
+
[More Information Needed]
|
120 |
+
|
121 |
+
#### Metrics
|
122 |
+
|
123 |
+
<!-- These are the evaluation metrics being used, ideally with a description of why. -->
|
124 |
+
|
125 |
+
[More Information Needed]
|
126 |
+
|
127 |
+
### Results
|
128 |
+
|
129 |
+
[More Information Needed]
|
130 |
+
|
131 |
+
#### Summary
|
132 |
+
|
133 |
+
|
134 |
+
|
135 |
+
## Model Examination [optional]
|
136 |
+
|
137 |
+
<!-- Relevant interpretability work for the model goes here -->
|
138 |
+
|
139 |
+
[More Information Needed]
|
140 |
+
|
141 |
+
## Environmental Impact
|
142 |
+
|
143 |
+
<!-- Total emissions (in grams of CO2eq) and additional considerations, such as electricity usage, go here. Edit the suggested text below accordingly -->
|
144 |
+
|
145 |
+
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).
|
146 |
+
|
147 |
+
- **Hardware Type:** [More Information Needed]
|
148 |
+
- **Hours used:** [More Information Needed]
|
149 |
+
- **Cloud Provider:** [More Information Needed]
|
150 |
+
- **Compute Region:** [More Information Needed]
|
151 |
+
- **Carbon Emitted:** [More Information Needed]
|
152 |
+
|
153 |
+
## Technical Specifications [optional]
|
154 |
+
|
155 |
+
### Model Architecture and Objective
|
156 |
+
|
157 |
+
[More Information Needed]
|
158 |
+
|
159 |
+
### Compute Infrastructure
|
160 |
+
|
161 |
+
[More Information Needed]
|
162 |
+
|
163 |
+
#### Hardware
|
164 |
+
|
165 |
+
[More Information Needed]
|
166 |
+
|
167 |
+
#### Software
|
168 |
+
|
169 |
+
[More Information Needed]
|
170 |
+
|
171 |
+
## Citation [optional]
|
172 |
+
|
173 |
+
<!-- If there is a paper or blog post introducing the model, the APA and Bibtex information for that should go in this section. -->
|
174 |
+
|
175 |
+
**BibTeX:**
|
176 |
+
|
177 |
+
[More Information Needed]
|
178 |
+
|
179 |
+
**APA:**
|
180 |
+
|
181 |
+
[More Information Needed]
|
182 |
+
|
183 |
+
## Glossary [optional]
|
184 |
+
|
185 |
+
<!-- If relevant, include terms and calculations in this section that can help readers understand the model or model card. -->
|
186 |
+
|
187 |
+
[More Information Needed]
|
188 |
+
|
189 |
+
## More Information [optional]
|
190 |
+
|
191 |
+
[More Information Needed]
|
192 |
+
|
193 |
+
## Model Card Authors [optional]
|
194 |
+
|
195 |
+
[More Information Needed]
|
196 |
+
|
197 |
+
## Model Card Contact
|
198 |
+
|
199 |
+
[More Information Needed]
|
200 |
+
### Framework versions
|
201 |
+
|
202 |
+
- PEFT 0.10.0
|
checkpoint-1074/adapter_config.json
ADDED
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"alpha_pattern": {},
|
3 |
+
"auto_mapping": null,
|
4 |
+
"base_model_name_or_path": "mistralai/Mistral-7B-v0.1",
|
5 |
+
"bias": "none",
|
6 |
+
"fan_in_fan_out": false,
|
7 |
+
"inference_mode": true,
|
8 |
+
"init_lora_weights": true,
|
9 |
+
"layer_replication": null,
|
10 |
+
"layers_pattern": null,
|
11 |
+
"layers_to_transform": null,
|
12 |
+
"loftq_config": {},
|
13 |
+
"lora_alpha": 32,
|
14 |
+
"lora_dropout": 0.05,
|
15 |
+
"megatron_config": null,
|
16 |
+
"megatron_core": "megatron.core",
|
17 |
+
"modules_to_save": null,
|
18 |
+
"peft_type": "LORA",
|
19 |
+
"r": 16,
|
20 |
+
"rank_pattern": {},
|
21 |
+
"revision": null,
|
22 |
+
"target_modules": [
|
23 |
+
"q_proj",
|
24 |
+
"v_proj"
|
25 |
+
],
|
26 |
+
"task_type": "CAUSAL_LM",
|
27 |
+
"use_dora": false,
|
28 |
+
"use_rslora": false
|
29 |
+
}
|
checkpoint-1074/adapter_model.safetensors
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:9b16ac63b092beee412210b7238c769e2e0bdda508576bfb630e64c6b57077c6
|
3 |
+
size 27280152
|
checkpoint-1074/optimizer.pt
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:3bec7aa088c267004e50107fa0029d100b058d70bdc966de4b7b485bee70535e
|
3 |
+
size 54633978
|
checkpoint-1074/pytorch_model.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:049c26b844b79121ddd8379f7f69194e63f6fbf6aa007eeac0c66f17eebb8893
|
3 |
+
size 888
|
checkpoint-1074/rng_state_0.pth
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:fca853bd032f3938ce62db57c90010b0b7f9ce1f3bf8d3c9eb34ac6ad71b3c18
|
3 |
+
size 14512
|
checkpoint-1074/rng_state_1.pth
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:b5bff15ee4bfc34976b794c664867336a5158b7b8e6d38c016948c31c081a138
|
3 |
+
size 14512
|
checkpoint-1074/scheduler.pt
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:e0316a45cf7753b0dd1474f7e1286c21aca0cd51c87cd206bd38e7f38421c303
|
3 |
+
size 1064
|
checkpoint-1074/special_tokens_map.json
ADDED
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"bos_token": {
|
3 |
+
"content": "<s>",
|
4 |
+
"lstrip": false,
|
5 |
+
"normalized": false,
|
6 |
+
"rstrip": false,
|
7 |
+
"single_word": false
|
8 |
+
},
|
9 |
+
"eos_token": {
|
10 |
+
"content": "</s>",
|
11 |
+
"lstrip": false,
|
12 |
+
"normalized": false,
|
13 |
+
"rstrip": false,
|
14 |
+
"single_word": false
|
15 |
+
},
|
16 |
+
"pad_token": "</s>",
|
17 |
+
"unk_token": {
|
18 |
+
"content": "<unk>",
|
19 |
+
"lstrip": false,
|
20 |
+
"normalized": false,
|
21 |
+
"rstrip": false,
|
22 |
+
"single_word": false
|
23 |
+
}
|
24 |
+
}
|
checkpoint-1074/tokenizer.json
ADDED
The diff for this file is too large to render.
See raw diff
|
|
checkpoint-1074/tokenizer.model
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:dadfd56d766715c61d2ef780a525ab43b8e6da4de6865bda3d95fdef5e134055
|
3 |
+
size 493443
|
checkpoint-1074/tokenizer_config.json
ADDED
@@ -0,0 +1,43 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"add_bos_token": true,
|
3 |
+
"add_eos_token": false,
|
4 |
+
"added_tokens_decoder": {
|
5 |
+
"0": {
|
6 |
+
"content": "<unk>",
|
7 |
+
"lstrip": false,
|
8 |
+
"normalized": false,
|
9 |
+
"rstrip": false,
|
10 |
+
"single_word": false,
|
11 |
+
"special": true
|
12 |
+
},
|
13 |
+
"1": {
|
14 |
+
"content": "<s>",
|
15 |
+
"lstrip": false,
|
16 |
+
"normalized": false,
|
17 |
+
"rstrip": false,
|
18 |
+
"single_word": false,
|
19 |
+
"special": true
|
20 |
+
},
|
21 |
+
"2": {
|
22 |
+
"content": "</s>",
|
23 |
+
"lstrip": false,
|
24 |
+
"normalized": false,
|
25 |
+
"rstrip": false,
|
26 |
+
"single_word": false,
|
27 |
+
"special": true
|
28 |
+
}
|
29 |
+
},
|
30 |
+
"additional_special_tokens": [],
|
31 |
+
"bos_token": "<s>",
|
32 |
+
"chat_template": "{% if not add_generation_prompt is defined %}{% set add_generation_prompt = false %}{% endif %}{% for message in messages %}{{'<|im_start|>' + message['role'] + '\n' + message['content'] + '<|im_end|>' + '\n'}}{% endfor %}{% if add_generation_prompt %}{{ '<|im_start|>assistant\n' }}{% endif %}",
|
33 |
+
"clean_up_tokenization_spaces": false,
|
34 |
+
"eos_token": "</s>",
|
35 |
+
"legacy": true,
|
36 |
+
"model_max_length": 2048,
|
37 |
+
"pad_token": "</s>",
|
38 |
+
"sp_model_kwargs": {},
|
39 |
+
"spaces_between_special_tokens": false,
|
40 |
+
"tokenizer_class": "LlamaTokenizer",
|
41 |
+
"unk_token": "<unk>",
|
42 |
+
"use_default_system_prompt": false
|
43 |
+
}
|
checkpoint-1074/trainer_state.json
ADDED
@@ -0,0 +1,315 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"best_metric": null,
|
3 |
+
"best_model_checkpoint": null,
|
4 |
+
"epoch": 1.0,
|
5 |
+
"eval_steps": 500,
|
6 |
+
"global_step": 1074,
|
7 |
+
"is_hyper_param_search": false,
|
8 |
+
"is_local_process_zero": true,
|
9 |
+
"is_world_process_zero": true,
|
10 |
+
"log_history": [
|
11 |
+
{
|
12 |
+
"epoch": 0.02,
|
13 |
+
"grad_norm": 1.23166823387146,
|
14 |
+
"learning_rate": 4.62962962962963e-05,
|
15 |
+
"loss": 2.0224,
|
16 |
+
"step": 25
|
17 |
+
},
|
18 |
+
{
|
19 |
+
"epoch": 0.05,
|
20 |
+
"grad_norm": 1.6151914596557617,
|
21 |
+
"learning_rate": 9.25925925925926e-05,
|
22 |
+
"loss": 2.0617,
|
23 |
+
"step": 50
|
24 |
+
},
|
25 |
+
{
|
26 |
+
"epoch": 0.07,
|
27 |
+
"grad_norm": 1.6063084602355957,
|
28 |
+
"learning_rate": 0.0001388888888888889,
|
29 |
+
"loss": 1.9718,
|
30 |
+
"step": 75
|
31 |
+
},
|
32 |
+
{
|
33 |
+
"epoch": 0.09,
|
34 |
+
"grad_norm": 1.45072603225708,
|
35 |
+
"learning_rate": 0.0001851851851851852,
|
36 |
+
"loss": 1.9806,
|
37 |
+
"step": 100
|
38 |
+
},
|
39 |
+
{
|
40 |
+
"epoch": 0.12,
|
41 |
+
"grad_norm": 0.9191996455192566,
|
42 |
+
"learning_rate": 0.00019648033126293997,
|
43 |
+
"loss": 1.9124,
|
44 |
+
"step": 125
|
45 |
+
},
|
46 |
+
{
|
47 |
+
"epoch": 0.14,
|
48 |
+
"grad_norm": 0.9509509205818176,
|
49 |
+
"learning_rate": 0.00019130434782608697,
|
50 |
+
"loss": 1.9305,
|
51 |
+
"step": 150
|
52 |
+
},
|
53 |
+
{
|
54 |
+
"epoch": 0.16,
|
55 |
+
"grad_norm": 2.2354648113250732,
|
56 |
+
"learning_rate": 0.00018612836438923396,
|
57 |
+
"loss": 1.9342,
|
58 |
+
"step": 175
|
59 |
+
},
|
60 |
+
{
|
61 |
+
"epoch": 0.19,
|
62 |
+
"grad_norm": 0.9913597106933594,
|
63 |
+
"learning_rate": 0.00018095238095238095,
|
64 |
+
"loss": 1.8663,
|
65 |
+
"step": 200
|
66 |
+
},
|
67 |
+
{
|
68 |
+
"epoch": 0.21,
|
69 |
+
"grad_norm": 1.2910974025726318,
|
70 |
+
"learning_rate": 0.00017577639751552797,
|
71 |
+
"loss": 1.8595,
|
72 |
+
"step": 225
|
73 |
+
},
|
74 |
+
{
|
75 |
+
"epoch": 0.23,
|
76 |
+
"grad_norm": 0.8738542795181274,
|
77 |
+
"learning_rate": 0.00017060041407867494,
|
78 |
+
"loss": 1.9102,
|
79 |
+
"step": 250
|
80 |
+
},
|
81 |
+
{
|
82 |
+
"epoch": 0.26,
|
83 |
+
"grad_norm": 0.8276559710502625,
|
84 |
+
"learning_rate": 0.00016542443064182196,
|
85 |
+
"loss": 1.9219,
|
86 |
+
"step": 275
|
87 |
+
},
|
88 |
+
{
|
89 |
+
"epoch": 0.28,
|
90 |
+
"grad_norm": 1.072709321975708,
|
91 |
+
"learning_rate": 0.00016024844720496895,
|
92 |
+
"loss": 1.8928,
|
93 |
+
"step": 300
|
94 |
+
},
|
95 |
+
{
|
96 |
+
"epoch": 0.3,
|
97 |
+
"grad_norm": 0.8710172176361084,
|
98 |
+
"learning_rate": 0.00015507246376811595,
|
99 |
+
"loss": 1.8968,
|
100 |
+
"step": 325
|
101 |
+
},
|
102 |
+
{
|
103 |
+
"epoch": 0.33,
|
104 |
+
"grad_norm": 0.9957522749900818,
|
105 |
+
"learning_rate": 0.00014989648033126297,
|
106 |
+
"loss": 1.9432,
|
107 |
+
"step": 350
|
108 |
+
},
|
109 |
+
{
|
110 |
+
"epoch": 0.35,
|
111 |
+
"grad_norm": 1.0893076658248901,
|
112 |
+
"learning_rate": 0.00014472049689440993,
|
113 |
+
"loss": 1.942,
|
114 |
+
"step": 375
|
115 |
+
},
|
116 |
+
{
|
117 |
+
"epoch": 0.37,
|
118 |
+
"grad_norm": 1.2099778652191162,
|
119 |
+
"learning_rate": 0.00013954451345755695,
|
120 |
+
"loss": 1.9431,
|
121 |
+
"step": 400
|
122 |
+
},
|
123 |
+
{
|
124 |
+
"epoch": 0.4,
|
125 |
+
"grad_norm": 1.4401646852493286,
|
126 |
+
"learning_rate": 0.00013436853002070392,
|
127 |
+
"loss": 1.9274,
|
128 |
+
"step": 425
|
129 |
+
},
|
130 |
+
{
|
131 |
+
"epoch": 0.42,
|
132 |
+
"grad_norm": 0.9855589270591736,
|
133 |
+
"learning_rate": 0.00012919254658385094,
|
134 |
+
"loss": 1.9034,
|
135 |
+
"step": 450
|
136 |
+
},
|
137 |
+
{
|
138 |
+
"epoch": 0.44,
|
139 |
+
"grad_norm": 0.8338527083396912,
|
140 |
+
"learning_rate": 0.00012401656314699793,
|
141 |
+
"loss": 1.8965,
|
142 |
+
"step": 475
|
143 |
+
},
|
144 |
+
{
|
145 |
+
"epoch": 0.47,
|
146 |
+
"grad_norm": 0.8633302450180054,
|
147 |
+
"learning_rate": 0.00011884057971014493,
|
148 |
+
"loss": 1.9013,
|
149 |
+
"step": 500
|
150 |
+
},
|
151 |
+
{
|
152 |
+
"epoch": 0.49,
|
153 |
+
"grad_norm": 0.8061096668243408,
|
154 |
+
"learning_rate": 0.00011366459627329193,
|
155 |
+
"loss": 1.9277,
|
156 |
+
"step": 525
|
157 |
+
},
|
158 |
+
{
|
159 |
+
"epoch": 0.51,
|
160 |
+
"grad_norm": 0.7682980298995972,
|
161 |
+
"learning_rate": 0.00010848861283643891,
|
162 |
+
"loss": 1.8379,
|
163 |
+
"step": 550
|
164 |
+
},
|
165 |
+
{
|
166 |
+
"epoch": 0.54,
|
167 |
+
"grad_norm": 0.9971451163291931,
|
168 |
+
"learning_rate": 0.00010331262939958592,
|
169 |
+
"loss": 1.8615,
|
170 |
+
"step": 575
|
171 |
+
},
|
172 |
+
{
|
173 |
+
"epoch": 0.56,
|
174 |
+
"grad_norm": 0.9007486701011658,
|
175 |
+
"learning_rate": 9.813664596273293e-05,
|
176 |
+
"loss": 1.9131,
|
177 |
+
"step": 600
|
178 |
+
},
|
179 |
+
{
|
180 |
+
"epoch": 0.58,
|
181 |
+
"grad_norm": 0.824459433555603,
|
182 |
+
"learning_rate": 9.296066252587993e-05,
|
183 |
+
"loss": 1.9038,
|
184 |
+
"step": 625
|
185 |
+
},
|
186 |
+
{
|
187 |
+
"epoch": 0.61,
|
188 |
+
"grad_norm": 0.8786623477935791,
|
189 |
+
"learning_rate": 8.778467908902693e-05,
|
190 |
+
"loss": 1.8615,
|
191 |
+
"step": 650
|
192 |
+
},
|
193 |
+
{
|
194 |
+
"epoch": 0.63,
|
195 |
+
"grad_norm": 1.0018340349197388,
|
196 |
+
"learning_rate": 8.260869565217392e-05,
|
197 |
+
"loss": 1.9199,
|
198 |
+
"step": 675
|
199 |
+
},
|
200 |
+
{
|
201 |
+
"epoch": 0.65,
|
202 |
+
"grad_norm": 0.8630295395851135,
|
203 |
+
"learning_rate": 7.743271221532091e-05,
|
204 |
+
"loss": 1.9184,
|
205 |
+
"step": 700
|
206 |
+
},
|
207 |
+
{
|
208 |
+
"epoch": 0.68,
|
209 |
+
"grad_norm": 0.9351085424423218,
|
210 |
+
"learning_rate": 7.22567287784679e-05,
|
211 |
+
"loss": 1.9229,
|
212 |
+
"step": 725
|
213 |
+
},
|
214 |
+
{
|
215 |
+
"epoch": 0.7,
|
216 |
+
"grad_norm": 0.9013476967811584,
|
217 |
+
"learning_rate": 6.708074534161491e-05,
|
218 |
+
"loss": 1.8138,
|
219 |
+
"step": 750
|
220 |
+
},
|
221 |
+
{
|
222 |
+
"epoch": 0.72,
|
223 |
+
"grad_norm": 0.8838641047477722,
|
224 |
+
"learning_rate": 6.19047619047619e-05,
|
225 |
+
"loss": 1.8865,
|
226 |
+
"step": 775
|
227 |
+
},
|
228 |
+
{
|
229 |
+
"epoch": 0.74,
|
230 |
+
"grad_norm": 0.8886531591415405,
|
231 |
+
"learning_rate": 5.6728778467908906e-05,
|
232 |
+
"loss": 1.8725,
|
233 |
+
"step": 800
|
234 |
+
},
|
235 |
+
{
|
236 |
+
"epoch": 0.77,
|
237 |
+
"grad_norm": 0.9784998893737793,
|
238 |
+
"learning_rate": 5.15527950310559e-05,
|
239 |
+
"loss": 1.8603,
|
240 |
+
"step": 825
|
241 |
+
},
|
242 |
+
{
|
243 |
+
"epoch": 0.79,
|
244 |
+
"grad_norm": 1.1521496772766113,
|
245 |
+
"learning_rate": 4.63768115942029e-05,
|
246 |
+
"loss": 1.8185,
|
247 |
+
"step": 850
|
248 |
+
},
|
249 |
+
{
|
250 |
+
"epoch": 0.81,
|
251 |
+
"grad_norm": 0.8525844216346741,
|
252 |
+
"learning_rate": 4.12008281573499e-05,
|
253 |
+
"loss": 1.9239,
|
254 |
+
"step": 875
|
255 |
+
},
|
256 |
+
{
|
257 |
+
"epoch": 0.84,
|
258 |
+
"grad_norm": 0.9855067133903503,
|
259 |
+
"learning_rate": 3.60248447204969e-05,
|
260 |
+
"loss": 1.8831,
|
261 |
+
"step": 900
|
262 |
+
},
|
263 |
+
{
|
264 |
+
"epoch": 0.86,
|
265 |
+
"grad_norm": 0.8175221681594849,
|
266 |
+
"learning_rate": 3.084886128364389e-05,
|
267 |
+
"loss": 1.9174,
|
268 |
+
"step": 925
|
269 |
+
},
|
270 |
+
{
|
271 |
+
"epoch": 0.88,
|
272 |
+
"grad_norm": 0.8622874617576599,
|
273 |
+
"learning_rate": 2.5672877846790892e-05,
|
274 |
+
"loss": 1.9003,
|
275 |
+
"step": 950
|
276 |
+
},
|
277 |
+
{
|
278 |
+
"epoch": 0.91,
|
279 |
+
"grad_norm": 0.9365437626838684,
|
280 |
+
"learning_rate": 2.049689440993789e-05,
|
281 |
+
"loss": 1.7928,
|
282 |
+
"step": 975
|
283 |
+
},
|
284 |
+
{
|
285 |
+
"epoch": 0.93,
|
286 |
+
"grad_norm": 0.8259939551353455,
|
287 |
+
"learning_rate": 1.5320910973084885e-05,
|
288 |
+
"loss": 1.8687,
|
289 |
+
"step": 1000
|
290 |
+
},
|
291 |
+
{
|
292 |
+
"epoch": 0.95,
|
293 |
+
"grad_norm": 0.8768020868301392,
|
294 |
+
"learning_rate": 1.0144927536231885e-05,
|
295 |
+
"loss": 1.8981,
|
296 |
+
"step": 1025
|
297 |
+
},
|
298 |
+
{
|
299 |
+
"epoch": 0.98,
|
300 |
+
"grad_norm": 0.8314359188079834,
|
301 |
+
"learning_rate": 4.968944099378882e-06,
|
302 |
+
"loss": 1.8497,
|
303 |
+
"step": 1050
|
304 |
+
}
|
305 |
+
],
|
306 |
+
"logging_steps": 25,
|
307 |
+
"max_steps": 1074,
|
308 |
+
"num_input_tokens_seen": 0,
|
309 |
+
"num_train_epochs": 1,
|
310 |
+
"save_steps": 500,
|
311 |
+
"total_flos": 9.393154719901286e+16,
|
312 |
+
"train_batch_size": 1,
|
313 |
+
"trial_name": null,
|
314 |
+
"trial_params": null
|
315 |
+
}
|
checkpoint-1074/training_args.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:d123f7996a7872beb9935f58a799b7014ebcd969aa300b63421962ae4908c16a
|
3 |
+
size 4984
|
runs/Mar26_16-43-51_b142d14c9e34/events.out.tfevents.1711471442.b142d14c9e34.182.0
CHANGED
@@ -1,3 +1,3 @@
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
-
oid sha256:
|
3 |
-
size
|
|
|
1 |
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:422e8c119d6201ff181e5cbe82b565d834ecc2618e5a5798aadae1c90861b716
|
3 |
+
size 14311
|
special_tokens_map.json
ADDED
@@ -0,0 +1,24 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"bos_token": {
|
3 |
+
"content": "<s>",
|
4 |
+
"lstrip": false,
|
5 |
+
"normalized": false,
|
6 |
+
"rstrip": false,
|
7 |
+
"single_word": false
|
8 |
+
},
|
9 |
+
"eos_token": {
|
10 |
+
"content": "</s>",
|
11 |
+
"lstrip": false,
|
12 |
+
"normalized": false,
|
13 |
+
"rstrip": false,
|
14 |
+
"single_word": false
|
15 |
+
},
|
16 |
+
"pad_token": "</s>",
|
17 |
+
"unk_token": {
|
18 |
+
"content": "<unk>",
|
19 |
+
"lstrip": false,
|
20 |
+
"normalized": false,
|
21 |
+
"rstrip": false,
|
22 |
+
"single_word": false
|
23 |
+
}
|
24 |
+
}
|
tokenizer.json
ADDED
The diff for this file is too large to render.
See raw diff
|
|
tokenizer.model
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:dadfd56d766715c61d2ef780a525ab43b8e6da4de6865bda3d95fdef5e134055
|
3 |
+
size 493443
|
tokenizer_config.json
ADDED
@@ -0,0 +1,43 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"add_bos_token": true,
|
3 |
+
"add_eos_token": false,
|
4 |
+
"added_tokens_decoder": {
|
5 |
+
"0": {
|
6 |
+
"content": "<unk>",
|
7 |
+
"lstrip": false,
|
8 |
+
"normalized": false,
|
9 |
+
"rstrip": false,
|
10 |
+
"single_word": false,
|
11 |
+
"special": true
|
12 |
+
},
|
13 |
+
"1": {
|
14 |
+
"content": "<s>",
|
15 |
+
"lstrip": false,
|
16 |
+
"normalized": false,
|
17 |
+
"rstrip": false,
|
18 |
+
"single_word": false,
|
19 |
+
"special": true
|
20 |
+
},
|
21 |
+
"2": {
|
22 |
+
"content": "</s>",
|
23 |
+
"lstrip": false,
|
24 |
+
"normalized": false,
|
25 |
+
"rstrip": false,
|
26 |
+
"single_word": false,
|
27 |
+
"special": true
|
28 |
+
}
|
29 |
+
},
|
30 |
+
"additional_special_tokens": [],
|
31 |
+
"bos_token": "<s>",
|
32 |
+
"chat_template": "{% if not add_generation_prompt is defined %}{% set add_generation_prompt = false %}{% endif %}{% for message in messages %}{{'<|im_start|>' + message['role'] + '\n' + message['content'] + '<|im_end|>' + '\n'}}{% endfor %}{% if add_generation_prompt %}{{ '<|im_start|>assistant\n' }}{% endif %}",
|
33 |
+
"clean_up_tokenization_spaces": false,
|
34 |
+
"eos_token": "</s>",
|
35 |
+
"legacy": true,
|
36 |
+
"model_max_length": 2048,
|
37 |
+
"pad_token": "</s>",
|
38 |
+
"sp_model_kwargs": {},
|
39 |
+
"spaces_between_special_tokens": false,
|
40 |
+
"tokenizer_class": "LlamaTokenizer",
|
41 |
+
"unk_token": "<unk>",
|
42 |
+
"use_default_system_prompt": false
|
43 |
+
}
|
training_args.bin
ADDED
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
1 |
+
version https://git-lfs.github.com/spec/v1
|
2 |
+
oid sha256:d123f7996a7872beb9935f58a799b7014ebcd969aa300b63421962ae4908c16a
|
3 |
+
size 4984
|
training_params.json
ADDED
@@ -0,0 +1,47 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
{
|
2 |
+
"model": "mistralai/Mistral-7B-v0.1",
|
3 |
+
"project_name": "ttp-extraction-mistral",
|
4 |
+
"data_path": "ttp-extraction-mistral/autotrain-data",
|
5 |
+
"train_split": "train",
|
6 |
+
"valid_split": null,
|
7 |
+
"add_eos_token": false,
|
8 |
+
"block_size": -1,
|
9 |
+
"model_max_length": 2048,
|
10 |
+
"padding": null,
|
11 |
+
"trainer": "sft",
|
12 |
+
"use_flash_attention_2": false,
|
13 |
+
"log": "tensorboard",
|
14 |
+
"disable_gradient_checkpointing": false,
|
15 |
+
"logging_steps": -1,
|
16 |
+
"evaluation_strategy": "epoch",
|
17 |
+
"save_total_limit": 1,
|
18 |
+
"save_strategy": "epoch",
|
19 |
+
"auto_find_batch_size": false,
|
20 |
+
"mixed_precision": null,
|
21 |
+
"lr": 0.0002,
|
22 |
+
"epochs": 1,
|
23 |
+
"batch_size": 1,
|
24 |
+
"warmup_ratio": 0.1,
|
25 |
+
"gradient_accumulation": 1,
|
26 |
+
"optimizer": "adamw_torch",
|
27 |
+
"scheduler": "linear",
|
28 |
+
"weight_decay": 0.0,
|
29 |
+
"max_grad_norm": 1.0,
|
30 |
+
"seed": 42,
|
31 |
+
"chat_template": null,
|
32 |
+
"quantization": "int4",
|
33 |
+
"target_modules": null,
|
34 |
+
"merge_adapter": false,
|
35 |
+
"peft": true,
|
36 |
+
"lora_r": 16,
|
37 |
+
"lora_alpha": 32,
|
38 |
+
"lora_dropout": 0.05,
|
39 |
+
"model_ref": null,
|
40 |
+
"dpo_beta": 0.1,
|
41 |
+
"prompt_text_column": "autotrain_prompt",
|
42 |
+
"text_column": "autotrain_text",
|
43 |
+
"rejected_text_column": "autotrain_rejected_text",
|
44 |
+
"push_to_hub": true,
|
45 |
+
"repo_id": "cti-ttp-18/fine-tune-mistral-e1",
|
46 |
+
"username": null
|
47 |
+
}
|