Sulfruos commited on
Commit
92323c3
·
verified ·
1 Parent(s): 14ab471

Update README.md

Browse files
Files changed (1) hide show
  1. README.md +210 -169
README.md CHANGED
@@ -1,199 +1,240 @@
1
  ---
2
- library_name: transformers
3
- tags: []
 
 
 
 
 
 
 
 
 
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
- This is the model card of a 🤗 transformers model that has been pushed on the Hub. This model card has been automatically generated.
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]
 
1
  ---
2
+ license: apache-2.0
3
+ base_model: mistralai/Mistral-7B-v0.1
4
+ tags:
5
+ - pokemon
6
+ - text-generation
7
+ - fine-tuned
8
+ - mistral
9
+ - creative-writing
10
+ language:
11
+ - en
12
+ pipeline_tag: text-generation
13
  ---
14
 
15
+ # 🐾 Pokemon Generator - Mistral 7B
 
 
 
16
 
17
+ A fine-tuned Mistral 7B model trained to generate original Pokemon with authentic names, types, and descriptions.
18
 
19
  ## Model Details
20
 
21
+ - **Base Model**: Mistral 7B v0.1
22
+ - **Fine-tuning Method**: LoRA (Low-Rank Adaptation)
23
+ - **Training Data**: Pokemon from Generations 1-4
24
+ - **Model Size**: ~13GB
25
+ - **Languages**: English
26
+ - **License**: Apache 2.0
27
+
28
+ ## Quick Start
29
+
30
+ ### Basic Usage
31
+
32
+ ```python
33
+ from transformers import AutoModelForCausalLM, AutoTokenizer
34
+
35
+ # Load model and tokenizer
36
+ model = AutoModelForCausalLM.from_pretrained("Sulfruos/poke-generator-demo")
37
+ tokenizer = AutoTokenizer.from_pretrained("Sulfruos/poke-generator-demo")
38
+
39
+ # Generate a Pokemon
40
+ prompt = "Generate a new and original Pokemon that doesn't exist yet: "
41
+ inputs = tokenizer(prompt, return_tensors="pt")
42
+
43
+ # Generate with custom parameters
44
+ outputs = model.generate(
45
+ **inputs,
46
+ max_new_tokens=100,
47
+ temperature=0.7,
48
+ do_sample=True,
49
+ top_p=0.95,
50
+ top_k=40,
51
+ repetition_penalty=1.2,
52
+ pad_token_id=tokenizer.eos_token_id
53
+ )
54
+
55
+ # Decode result
56
+ result = tokenizer.decode(outputs[0], skip_special_tokens=True)
57
+ print(result)
58
+ ```
59
+
60
+ ### Using Pipeline
61
+
62
+ ```python
63
+ from transformers import pipeline
64
+
65
+ # Create text generation pipeline
66
+ generator = pipeline(
67
+ "text-generation",
68
+ model="Sulfruos/poke-generator-demo",
69
+ tokenizer="Sulfruos/poke-generator-demo"
70
+ )
71
+
72
+ # Generate Pokemon
73
+ result = generator(
74
+ "Generate a new and original Pokemon that doesn't exist yet: ",
75
+ max_new_tokens=100,
76
+ temperature=0.7,
77
+ do_sample=True
78
+ )
79
+
80
+ print(result[0]['generated_text'])
81
+ ```
82
+
83
+ ## Example Outputs
84
+
85
+ ### Fire-type Pokemon
86
+ ```
87
+ Name: Blazefin
88
+ Type: Fire/Water
89
+ Description: This unique Pokemon can survive in both lava and deep ocean trenches. Its fins glow red-hot when threatened, boiling the water around it as a defense mechanism.
90
+ ```
91
+
92
+ ### Psychic-type Pokemon
93
+ ```
94
+ Name: Mindwhisper
95
+ Type: Psychic
96
+ Description: Known for its ability to communicate telepathically across vast distances. Its large, luminous eyes can see into the dreams of sleeping Pokemon.
97
+ ```
98
+
99
+ ### Dual-type Pokemon
100
+ ```
101
+ Name: Crystaleon
102
+ Type: Ice/Electric
103
+ Description: Its crystalline body stores electrical energy from thunderstorms. When it moves, tiny ice crystals spark with electricity, creating beautiful aurora-like displays.
104
+ ```
105
+
106
+ ## Recommended Parameters
107
+
108
+ ### Conservative Generation
109
+ ```python
110
+ outputs = model.generate(
111
+ **inputs,
112
+ max_new_tokens=80,
113
+ temperature=0.5, # More consistent
114
+ top_p=0.9,
115
+ repetition_penalty=1.1
116
+ )
117
+ ```
118
+
119
+ ### Creative Generation
120
+ ```python
121
+ outputs = model.generate(
122
+ **inputs,
123
+ max_new_tokens=120,
124
+ temperature=0.9, # More creative
125
+ top_p=0.95,
126
+ top_k=50,
127
+ repetition_penalty=1.3
128
+ )
129
+ ```
130
+
131
+ ### Balanced Generation (Recommended)
132
+ ```python
133
+ outputs = model.generate(
134
+ **inputs,
135
+ max_new_tokens=100,
136
+ temperature=0.7, # Good balance
137
+ top_p=0.95,
138
+ top_k=40,
139
+ repetition_penalty=1.2
140
+ )
141
+ ```
142
+
143
+ ## Output Format
144
+
145
+ The model generates Pokemon in this consistent format:
146
+
147
+ ```
148
+ Name: [Pokemon Name]
149
+ Type: [Type] or [Type1/Type2]
150
+ Description: [Detailed description of the Pokemon's appearance, abilities, and characteristics]
151
+ ```
152
 
153
  ## Training Details
154
 
155
+ ### Dataset
156
+ - Source: Pokemon data from Generations 1-4
157
+ - Size: ~400 authentic Pokemon entries
158
+ - Format: Structured Name/Type/Description format
159
+ - Preprocessing: Name uniqueness validation, type consistency checks
 
 
 
 
 
 
 
 
 
160
 
161
+ ### Training Process
162
+ 1. **Base Model**: Mistral 7B v0.1
163
+ 2. **Method**: LoRA fine-tuning (r=16, α=32)
164
+ 3. **Hardware**: Google Colab T4 GPU
165
+ 4. **Training Time**: ~45 minutes
166
+ 5. **Loss Reduction**: 2.13 → 0.95
167
+ 6. **Validation**: Format consistency and uniqueness checks
168
 
169
+ ### Model Architecture
170
+ - **Parameters**: ~7B (base) + LoRA adapters
171
+ - **Context Length**: 4096 tokens
172
+ - **Vocabulary**: 32,000 tokens
173
+ - **Precision**: fp16 (GPU) / fp32 (CPU)
174
 
175
+ ## Hardware Requirements
176
 
177
+ ### Minimum Requirements
178
+ - **RAM**: 16GB+
179
+ - **Storage**: 15GB free space
180
+ - **GPU**: Optional but recommended (GTX 1060+ or equivalent)
181
 
182
+ ### Recommended Setup
183
+ - **RAM**: 32GB+
184
+ - **GPU**: RTX 3070+ or T4+ for fast inference
185
+ - **Storage**: SSD recommended for faster loading
186
 
187
+ ### Performance Expectations
188
+ - **CPU only**: 30-120 seconds per generation
189
+ - **GPU (GTX 1060)**: 15-45 seconds per generation
190
+ - **GPU (RTX 3070+)**: 5-15 seconds per generation
191
+ - **GPU (T4/V100)**: 3-10 seconds per generation
192
 
193
+ ## Use Cases
194
 
195
+ - **Creative Writing**: Generate Pokemon for stories and fan fiction
196
+ - **Game Development**: Create original creatures for Pokemon-inspired games
197
+ - **Educational**: Learn about fine-tuning language models
198
+ - **Research**: Study text generation and creative AI applications
199
 
200
+ ## Limitations
201
 
202
+ - **English only**: Trained on English Pokemon descriptions
203
+ - **Generation 1-4 style**: Reflects classic Pokemon characteristics
204
+ - **Format dependency**: Works best with the specific prompt format
205
+ - **Creativity vs consistency**: Higher temperature = more creative but less consistent
206
 
207
+ ## Fine-tuning Process
208
 
209
+ This model was created using LoRA (Low-Rank Adaptation) fine-tuning:
210
 
211
+ 1. **Data Collection**: Gathered authentic Pokemon data
212
+ 2. **Preprocessing**: Formatted as Name/Type/Description
213
+ 3. **LoRA Training**: Fine-tuned on Google Colab T4
214
+ 4. **Validation**: Implemented quality and uniqueness checks
215
+ 5. **Merging**: Combined LoRA weights with base model for standalone deployment
216
 
217
+ ## Model Card Contact
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
218
 
219
+ - **Created by**: @Sulfruos
220
+ - **Model type**: Text Generation (Pokemon-focused)
221
+ - **Language**: English
222
+ - **License**: Apache 2.0
223
+ - **Base model**: Mistral 7B v0.1
224
 
225
+ ## Citation
226
 
227
+ If you use this model in your research or projects, please cite:
228
 
229
+ ```bibtex
230
+ @misc{pokemon-generator-mistral,
231
+ title={Pokemon Generator: Fine-tuned Mistral 7B for Creative Pokemon Generation},
232
+ author={Sulfruos},
233
+ year={2024},
234
+ howpublished={\\url{https://huggingface.co/Sulfruos/poke-generator-demo}}
235
+ }
236
+ ```
237
 
238
+ ## Ethical Considerations
239
 
240
+ This model is designed for creative and educational purposes. Generated content should be used responsibly and in accordance with fair use principles. The model generates fictional creatures inspired by the Pokemon franchise but creates original content.