Improve model card for LoRA adapters
Browse filesThis PR improves the model card for this repository, providing more information about how to use the model, details regarding the paper, and potential downstream uses. It also sets the pipeline tag to `text-generation` to better reflect what the model does.
README.md
CHANGED
@@ -1,200 +1,131 @@
|
|
1 |
---
|
2 |
library_name: transformers
|
3 |
-
|
|
|
|
|
|
|
4 |
---
|
5 |
|
6 |
-
# Model Card for
|
7 |
-
|
8 |
-
<!-- Provide a quick summary of what the model is/does. -->
|
9 |
-
|
10 |
|
|
|
11 |
|
12 |
## Model Details
|
13 |
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
|
19 |
|
20 |
-
|
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 |
-
|
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 |
-
|
43 |
-
|
44 |
-
[More Information Needed]
|
45 |
|
46 |
-
### Downstream Use
|
47 |
|
48 |
-
|
49 |
-
|
50 |
-
[More Information Needed]
|
51 |
|
52 |
### Out-of-Scope Use
|
53 |
|
54 |
-
|
55 |
-
|
56 |
-
[More Information Needed]
|
57 |
|
58 |
## Bias, Risks, and Limitations
|
59 |
|
60 |
-
|
61 |
|
62 |
-
|
|
|
|
|
63 |
|
64 |
### Recommendations
|
65 |
|
66 |
-
|
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 |
-
|
73 |
|
74 |
-
|
|
|
|
|
75 |
|
76 |
-
|
77 |
|
78 |
-
|
|
|
|
|
|
|
79 |
|
80 |
-
|
|
|
81 |
|
82 |
-
|
|
|
|
|
83 |
|
84 |
-
|
85 |
|
86 |
-
|
|
|
87 |
|
88 |
-
|
|
|
89 |
|
90 |
-
[
|
|
|
91 |
|
|
|
92 |
|
93 |
-
|
94 |
|
95 |
-
-
|
96 |
|
97 |
-
|
98 |
|
99 |
-
|
100 |
|
101 |
-
|
102 |
|
103 |
-
|
|
|
104 |
|
105 |
-
|
106 |
|
107 |
### Testing Data, Factors & Metrics
|
108 |
|
109 |
-
|
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 |
-
|
130 |
|
131 |
#### Summary
|
132 |
|
|
|
133 |
|
|
|
134 |
|
135 |
-
|
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 |
-
arxiv.org/abs/2502.14502
|
174 |
-
<!-- If there is a paper or blog post introducing the model, the APA and Bibtex information for that should go in this section. -->
|
175 |
|
176 |
**BibTeX:**
|
177 |
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
## More Information [optional]
|
191 |
-
|
192 |
-
[More Information Needed]
|
193 |
-
|
194 |
-
## Model Card Authors [optional]
|
195 |
-
|
196 |
-
[More Information Needed]
|
197 |
-
|
198 |
-
## Model Card Contact
|
199 |
-
|
200 |
-
[More Information Needed]
|
|
|
1 |
---
|
2 |
library_name: transformers
|
3 |
+
pipeline_tag: text-generation
|
4 |
+
tags:
|
5 |
+
- lora
|
6 |
+
license: cc-by-nc-4.0
|
7 |
---
|
8 |
|
9 |
+
# Model Card for LoRA Adapters
|
|
|
|
|
|
|
10 |
|
11 |
+
This model card describes LoRA adapters fine-tuned from Llama-3.1-8B-Instruct to incorporate new knowledge while trying to maintain previously learned information. It explores the limitations of LoRA-based LLM updates.
|
12 |
|
13 |
## Model Details
|
14 |
|
15 |
+
* **Developed by:** [Sergey Pletenev, Maria Marina, Daniil Moskovskiy, Vasily Konovalov, Pavel Braslavski, Alexander Panchenko, Mikhail Salnikov]
|
16 |
+
* **Model type:** Causal language model, LoRA adapters
|
17 |
+
* **Language(s) (NLP):** English
|
18 |
+
* **License:** CC-BY-NC-4.0
|
19 |
+
* **Finetuned from model:** [meta-llama/Meta-Llama-3.1-8B-Instruct](https://huggingface.co/meta-llama/Meta-Llama-3.1-8B-Instruct)
|
20 |
|
21 |
+
### Model Sources
|
|
|
|
|
|
|
|
|
|
|
|
|
22 |
|
23 |
+
* **Repository:** This repository.
|
24 |
+
* **Paper:** [How Much Knowledge Can You Pack into a LoRA Adapter without Harming LLM?](https://arxiv.org/abs/2502.14502)
|
|
|
|
|
|
|
|
|
|
|
25 |
|
26 |
## Uses
|
27 |
|
|
|
|
|
28 |
### Direct Use
|
29 |
|
30 |
+
These LoRA adapters are intended to be used with the base Llama-3.1-8B-Instruct model for text generation tasks, particularly in scenarios where incorporating new knowledge is desired.
|
|
|
|
|
31 |
|
32 |
+
### Downstream Use
|
33 |
|
34 |
+
These LoRA adapters can be integrated into question-answering systems, chatbots, or other applications that require up-to-date information. However, caution is advised due to potential performance degradation on external question-answering benchmarks and a tendency towards biased answers.
|
|
|
|
|
35 |
|
36 |
### Out-of-Scope Use
|
37 |
|
38 |
+
The model should not be used in applications where biased or inaccurate information could have serious consequences, such as medical or legal advice.
|
|
|
|
|
39 |
|
40 |
## Bias, Risks, and Limitations
|
41 |
|
42 |
+
The model exhibits the following biases, risks, and limitations:
|
43 |
|
44 |
+
* **Performance Degradation:** Performance on external question-answering benchmarks may decline after fine-tuning.
|
45 |
+
* **Answer Bias:** The model may regress to few overrepresented answers when the training data is biased towards certain entities.
|
46 |
+
* **Overconfidence:** The model becomes more confident and may refuse to provide an answer in fewer cases, even when uncertain.
|
47 |
|
48 |
### Recommendations
|
49 |
|
50 |
+
Users should be aware of the risks, biases, and limitations of the model. When incorporating new knowledge, ensure that the training data contains a balanced mixture of known and new facts. Carefully tune parameters to balance new knowledge integration and general model capabilities.
|
|
|
|
|
51 |
|
52 |
## How to Get Started with the Model
|
53 |
|
54 |
+
1. Install the necessary libraries:
|
55 |
|
56 |
+
```bash
|
57 |
+
pip install transformers peft accelerate
|
58 |
+
```
|
59 |
|
60 |
+
2. Load the base model and LoRA adapter:
|
61 |
|
62 |
+
```python
|
63 |
+
from transformers import AutoModelForCausalLM, AutoTokenizer
|
64 |
+
from peft import PeftModel
|
65 |
+
import torch
|
66 |
|
67 |
+
model_name = "meta-llama/Meta-Llama-3.1-8B-Instruct"
|
68 |
+
adapter_name = "YOUR_ADAPTER_NAME" # Replace with the actual adapter name
|
69 |
|
70 |
+
model = AutoModelForCausalLM.from_pretrained(model_name, device_map="auto", torch_dtype=torch.float16)
|
71 |
+
model = PeftModel.from_pretrained(model, adapter_name)
|
72 |
+
tokenizer = AutoTokenizer.from_pretrained(model_name)
|
73 |
|
74 |
+
model.eval()
|
75 |
|
76 |
+
prompt = "What is the capital of France?"
|
77 |
+
input_ids = tokenizer(prompt, return_tensors="pt").to(model.device)
|
78 |
|
79 |
+
with torch.no_grad():
|
80 |
+
outputs = model.generate(**input_ids, max_new_tokens=50)
|
81 |
|
82 |
+
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
|
83 |
+
```
|
84 |
|
85 |
+
## Training Details
|
86 |
|
87 |
+
### Training Data
|
88 |
|
89 |
+
The model was fine-tuned using LoRA on the base Llama-3.1-8B-instruct model. The training data consists of a mixture of known and new facts. The new facts were created using a head-to-tail pipeline, generating questions and answers using templates and information extracted from a Dbpedia dump.
|
90 |
|
91 |
+
### Training Procedure
|
92 |
|
93 |
+
The model was trained using LoRA (Low-Rank Adaptation). The training data composition and tuning parameters are crucial for balancing new knowledge integration and general model capabilities.
|
94 |
|
95 |
+
#### Training Hyperparameters
|
96 |
|
97 |
+
* **Training regime:** LoRA fine-tuning
|
98 |
+
* **Base Model:** Llama-3.1-8B-instruct
|
99 |
|
100 |
+
## Evaluation
|
101 |
|
102 |
### Testing Data, Factors & Metrics
|
103 |
|
104 |
+
* **Testing Data:** External question-answering benchmarks were used to evaluate the model's performance on previously learned knowledge.
|
105 |
+
* **Metrics:** The primary metric was accuracy on the question-answering benchmarks. Additionally, the model's confidence and refusal rate were analyzed.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
106 |
|
107 |
### Results
|
108 |
|
109 |
+
Experiments have shown that fine-tuning with LoRA can lead to a decline in performance on external question-answering benchmarks. The best results are obtained when the training data contains a mixture of known and new facts, but this approach is still potentially harmful.
|
110 |
|
111 |
#### Summary
|
112 |
|
113 |
+
The model's performance is sensitive to the composition of the training data. Fine-tuning with biased data can lead to a regression towards overrepresented answers and a decline in overall performance.
|
114 |
|
115 |
+
## Citation
|
116 |
|
117 |
+
[How Much Knowledge Can You Pack into a LoRA Adapter without Harming LLM?](https://arxiv.org/abs/2502.14502)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
118 |
|
119 |
**BibTeX:**
|
120 |
|
121 |
+
```
|
122 |
+
@misc{pletenev2025knowledgepackloraadapter,
|
123 |
+
title={How Much Knowledge Can You Pack into a LoRA Adapter without Harming LLM?},
|
124 |
+
author={Sergey Pletenev and Maria Marina and Daniil Moskovskiy and Vasily Konovalov and Pavel Braslavski and Alexander Panchenko and Mikhail Salnikov},
|
125 |
+
year={2025},
|
126 |
+
eprint={2502.14502},
|
127 |
+
archivePrefix={arXiv},
|
128 |
+
primaryClass={cs.CL},
|
129 |
+
url={https://arxiv.org/abs/2502.14502},
|
130 |
+
}
|
131 |
+
```
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|