AlekseyKorshuk commited on
Commit
1dceffc
1 Parent(s): 8e9005c

huggingartists

Browse files
README.md ADDED
@@ -0,0 +1,97 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ language: en
3
+ datasets:
4
+ - huggingartists/21-savage
5
+ tags:
6
+ - huggingartists
7
+ - lyrics
8
+ - lm-head
9
+ - causal-lm
10
+ widget:
11
+ - text: "I am"
12
+ ---
13
+
14
+ <div class="inline-flex flex-col" style="line-height: 1.5;">
15
+ <div class="flex">
16
+ <div
17
+ style="display:DISPLAY_1; margin-left: auto; margin-right: auto; width: 92px; height:92px; border-radius: 50%; background-size: cover; background-image: url(&#39;https://images.genius.com/aa32202cc20d1dde62e57940a8b278b2.770x770x1.png&#39;)">
18
+ </div>
19
+ </div>
20
+ <div style="text-align: center; margin-top: 3px; font-size: 16px; font-weight: 800">🤖 HuggingArtists Model 🤖</div>
21
+ <div style="text-align: center; font-size: 16px; font-weight: 800">21 Savage</div>
22
+ <a href="https://genius.com/artists/21-savage">
23
+ <div style="text-align: center; font-size: 14px;">@21-savage</div>
24
+ </a>
25
+ </div>
26
+
27
+ I was made with [huggingartists](https://github.com/AlekseyKorshuk/huggingartists).
28
+
29
+ Create your own bot based on your favorite artist with [the demo](https://colab.research.google.com/github/AlekseyKorshuk/huggingartists/blob/master/huggingartists-demo.ipynb)!
30
+
31
+ ## How does it work?
32
+
33
+ To understand how the model was developed, check the [W&B report](https://wandb.ai/huggingartists/huggingartists/reportlist).
34
+
35
+ ## Training data
36
+
37
+ The model was trained on lyrics from 21 Savage.
38
+
39
+ Dataset is available [here](https://huggingface.co/datasets/huggingartists/21-savage).
40
+ And can be used with:
41
+
42
+ ```python
43
+ from datasets import load_dataset
44
+
45
+ dataset = load_dataset("huggingartists/21-savage")
46
+ ```
47
+
48
+ [Explore the data](https://wandb.ai/huggingartists/huggingartists/runs/3lbkznnf/artifacts), which is tracked with [W&B artifacts](https://docs.wandb.com/artifacts) at every step of the pipeline.
49
+
50
+ ## Training procedure
51
+
52
+ The model is based on a pre-trained [GPT-2](https://huggingface.co/gpt2) which is fine-tuned on 21 Savage's lyrics.
53
+
54
+ Hyperparameters and metrics are recorded in the [W&B training run](https://wandb.ai/huggingartists/huggingartists/runs/1fw9b6m4) for full transparency and reproducibility.
55
+
56
+ At the end of training, [the final model](https://wandb.ai/huggingartists/huggingartists/runs/1fw9b6m4/artifacts) is logged and versioned.
57
+
58
+ ## How to use
59
+
60
+ You can use this model directly with a pipeline for text generation:
61
+
62
+ ```python
63
+ from transformers import pipeline
64
+ generator = pipeline('text-generation',
65
+ model='huggingartists/21-savage')
66
+ generator("I am", num_return_sequences=5)
67
+ ```
68
+
69
+ Or with Transformers library:
70
+
71
+ ```python
72
+ from transformers import AutoTokenizer, AutoModelWithLMHead
73
+
74
+ tokenizer = AutoTokenizer.from_pretrained("huggingartists/21-savage")
75
+
76
+ model = AutoModelWithLMHead.from_pretrained("huggingartists/21-savage")
77
+ ```
78
+
79
+ ## Limitations and bias
80
+
81
+ The model suffers from [the same limitations and bias as GPT-2](https://huggingface.co/gpt2#limitations-and-bias).
82
+
83
+ In addition, the data present in the user's tweets further affects the text generated by the model.
84
+
85
+ ## About
86
+
87
+ *Built by Aleksey Korshuk*
88
+
89
+ [![Follow](https://img.shields.io/github/followers/AlekseyKorshuk?style=social)](https://github.com/AlekseyKorshuk)
90
+
91
+ [![Follow](https://img.shields.io/twitter/follow/alekseykorshuk?style=social)](https://twitter.com/intent/follow?screen_name=alekseykorshuk)
92
+
93
+ [![Follow](https://img.shields.io/badge/dynamic/json?color=blue&label=Telegram%20Channel&query=%24.result&url=https%3A%2F%2Fapi.telegram.org%2Fbot1929545866%3AAAFGhV-KKnegEcLiyYJxsc4zV6C-bdPEBtQ%2FgetChatMemberCount%3Fchat_id%3D-1001253621662&style=social&logo=telegram)](https://t.me/joinchat/_CQ04KjcJ-4yZTky)
94
+
95
+ For more details, visit the project repository.
96
+
97
+ [![GitHub stars](https://img.shields.io/github/stars/AlekseyKorshuk/huggingartists?style=social)](https://github.com/AlekseyKorshuk/huggingartists)
config.json ADDED
@@ -0,0 +1,41 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "_name_or_path": "gpt2",
3
+ "activation_function": "gelu_new",
4
+ "architectures": [
5
+ "GPT2LMHeadModel"
6
+ ],
7
+ "attn_pdrop": 0.1,
8
+ "bos_token_id": 50256,
9
+ "embd_pdrop": 0.1,
10
+ "eos_token_id": 50256,
11
+ "gradient_checkpointing": false,
12
+ "initializer_range": 0.02,
13
+ "layer_norm_epsilon": 1e-05,
14
+ "model_type": "gpt2",
15
+ "n_ctx": 1024,
16
+ "n_embd": 768,
17
+ "n_head": 12,
18
+ "n_inner": null,
19
+ "n_layer": 12,
20
+ "n_positions": 1024,
21
+ "resid_pdrop": 0.1,
22
+ "scale_attn_weights": true,
23
+ "summary_activation": null,
24
+ "summary_first_dropout": 0.1,
25
+ "summary_proj_to_labels": true,
26
+ "summary_type": "cls_index",
27
+ "summary_use_proj": true,
28
+ "task_specific_params": {
29
+ "text-generation": {
30
+ "do_sample": true,
31
+ "max_length": 200,
32
+ "min_length": 100,
33
+ "temperature": 1.0,
34
+ "top_p": 0.95
35
+ }
36
+ },
37
+ "torch_dtype": "float32",
38
+ "transformers_version": "4.10.2",
39
+ "use_cache": true,
40
+ "vocab_size": 50257
41
+ }
evaluation.txt ADDED
@@ -0,0 +1 @@
 
 
1
+ {"eval_loss": 3.3079917430877686, "eval_runtime": 7.3059, "eval_samples_per_second": 21.763, "eval_steps_per_second": 2.738, "epoch": 1.0}
flax_model.msgpack ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:a3160451597c8c0e231d1b394a7a656221ee9f217fada38d17988298d2181939
3
+ size 497764120
merges.txt ADDED
The diff for this file is too large to render. See raw diff
 
optimizer.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:a2c77fd94d25f8e9f6f8b8d4b881368aa15faa5a41b03a1eff18620933bc27ae
3
+ size 995603825
pytorch_model.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:94e0c2c88d1207e023438b0ee58995c99f2bfa4f0d4e3abc303d8b2adee62ac6
3
+ size 510403817
rng_state.pth ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:b6bb1b10a8a221d72982ac43c9a106dffcd7d0180022cece4ed59f4cfa97e390
3
+ size 14567
scheduler.pt ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9e4dbdf06ece825665196e07e0bc1bd50d0d87f6015cbb9ec4b10742a7104e71
3
+ size 623
special_tokens_map.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"bos_token": "<|endoftext|>", "eos_token": "<|endoftext|>", "unk_token": "<|endoftext|>"}
tokenizer.json ADDED
The diff for this file is too large to render. See raw diff
 
tokenizer_config.json ADDED
@@ -0,0 +1 @@
 
 
1
+ {"unk_token": "<|endoftext|>", "bos_token": "<|endoftext|>", "eos_token": "<|endoftext|>", "add_prefix_space": false, "model_max_length": 1024, "special_tokens_map_file": null, "name_or_path": "gpt2", "tokenizer_class": "GPT2Tokenizer"}
trainer_state.json ADDED
@@ -0,0 +1,174 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "best_metric": 3.3079917430877686,
3
+ "best_model_checkpoint": "output/21-savage/checkpoint-128",
4
+ "epoch": 1.0,
5
+ "global_step": 128,
6
+ "is_hyper_param_search": false,
7
+ "is_local_process_zero": true,
8
+ "is_world_process_zero": true,
9
+ "log_history": [
10
+ {
11
+ "epoch": 0.04,
12
+ "learning_rate": 0.0001366840960734715,
13
+ "loss": 3.9729,
14
+ "step": 5
15
+ },
16
+ {
17
+ "epoch": 0.08,
18
+ "learning_rate": 0.00013514414396914573,
19
+ "loss": 3.8142,
20
+ "step": 10
21
+ },
22
+ {
23
+ "epoch": 0.12,
24
+ "learning_rate": 0.0001326033060000631,
25
+ "loss": 3.5999,
26
+ "step": 15
27
+ },
28
+ {
29
+ "epoch": 0.16,
30
+ "learning_rate": 0.00012909979873429716,
31
+ "loss": 3.5616,
32
+ "step": 20
33
+ },
34
+ {
35
+ "epoch": 0.2,
36
+ "learning_rate": 0.00012468631818219865,
37
+ "loss": 3.5237,
38
+ "step": 25
39
+ },
40
+ {
41
+ "epoch": 0.23,
42
+ "learning_rate": 0.00011942924719935021,
43
+ "loss": 3.3237,
44
+ "step": 30
45
+ },
46
+ {
47
+ "epoch": 0.27,
48
+ "learning_rate": 0.00011340765702662907,
49
+ "loss": 3.5837,
50
+ "step": 35
51
+ },
52
+ {
53
+ "epoch": 0.31,
54
+ "learning_rate": 0.00010671211798514472,
55
+ "loss": 3.5472,
56
+ "step": 40
57
+ },
58
+ {
59
+ "epoch": 0.35,
60
+ "learning_rate": 9.944333721430602e-05,
61
+ "loss": 3.3629,
62
+ "step": 45
63
+ },
64
+ {
65
+ "epoch": 0.39,
66
+ "learning_rate": 9.171064394270629e-05,
67
+ "loss": 3.5192,
68
+ "step": 50
69
+ },
70
+ {
71
+ "epoch": 0.43,
72
+ "learning_rate": 8.363034507476126e-05,
73
+ "loss": 3.423,
74
+ "step": 55
75
+ },
76
+ {
77
+ "epoch": 0.47,
78
+ "learning_rate": 7.532397582660788e-05,
79
+ "loss": 3.602,
80
+ "step": 60
81
+ },
82
+ {
83
+ "epoch": 0.51,
84
+ "learning_rate": 6.691647172332823e-05,
85
+ "loss": 3.3109,
86
+ "step": 65
87
+ },
88
+ {
89
+ "epoch": 0.55,
90
+ "learning_rate": 5.853428945236219e-05,
91
+ "loss": 3.4656,
92
+ "step": 70
93
+ },
94
+ {
95
+ "epoch": 0.59,
96
+ "learning_rate": 5.0303504837221976e-05,
97
+ "loss": 3.261,
98
+ "step": 75
99
+ },
100
+ {
101
+ "epoch": 0.62,
102
+ "learning_rate": 4.2347916539754844e-05,
103
+ "loss": 3.3219,
104
+ "step": 80
105
+ },
106
+ {
107
+ "epoch": 0.66,
108
+ "learning_rate": 3.478718401303682e-05,
109
+ "loss": 3.2217,
110
+ "step": 85
111
+ },
112
+ {
113
+ "epoch": 0.7,
114
+ "learning_rate": 2.773502771181907e-05,
115
+ "loss": 3.3141,
116
+ "step": 90
117
+ },
118
+ {
119
+ "epoch": 0.74,
120
+ "learning_rate": 2.1297518631037208e-05,
121
+ "loss": 3.2947,
122
+ "step": 95
123
+ },
124
+ {
125
+ "epoch": 0.78,
126
+ "learning_rate": 1.557148289931624e-05,
127
+ "loss": 3.3889,
128
+ "step": 100
129
+ },
130
+ {
131
+ "epoch": 0.82,
132
+ "learning_rate": 1.0643045423870092e-05,
133
+ "loss": 3.3058,
134
+ "step": 105
135
+ },
136
+ {
137
+ "epoch": 0.86,
138
+ "learning_rate": 6.586334491731787e-06,
139
+ "loss": 3.3431,
140
+ "step": 110
141
+ },
142
+ {
143
+ "epoch": 0.9,
144
+ "learning_rate": 3.462366811317684e-06,
145
+ "loss": 3.3222,
146
+ "step": 115
147
+ },
148
+ {
149
+ "epoch": 0.94,
150
+ "learning_rate": 1.3181297643383925e-06,
151
+ "loss": 3.2589,
152
+ "step": 120
153
+ },
154
+ {
155
+ "epoch": 0.98,
156
+ "learning_rate": 1.858746718418518e-07,
157
+ "loss": 3.3423,
158
+ "step": 125
159
+ },
160
+ {
161
+ "epoch": 1.0,
162
+ "eval_loss": 3.3079917430877686,
163
+ "eval_runtime": 7.1911,
164
+ "eval_samples_per_second": 22.111,
165
+ "eval_steps_per_second": 2.781,
166
+ "step": 128
167
+ }
168
+ ],
169
+ "max_steps": 128,
170
+ "num_train_epochs": 1,
171
+ "total_flos": 132997644288000.0,
172
+ "trial_name": null,
173
+ "trial_params": null
174
+ }
training_args.bin ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:316f40a6914ef4bb45840ab66ed2d0ca4574b9c4fc145a735e6b2f69b8e9f4f2
3
+ size 2671
vocab.json ADDED
The diff for this file is too large to render. See raw diff