Spaces:
Paused
Paused
Update app.py
Browse files
app.py
CHANGED
@@ -7,22 +7,36 @@ import torch
|
|
7 |
from utils import *
|
8 |
from presets import *
|
9 |
|
10 |
-
|
11 |
######################################################################
|
12 |
#Modelle und Tokenizer
|
13 |
|
14 |
-
#Hugging Chat nutzen
|
15 |
-
# Create a chatbot connection
|
16 |
-
#chatbot = hugchat.ChatBot(cookie_path="cookies.json")
|
17 |
-
|
18 |
#Alternativ mit beliebigen Modellen:
|
19 |
base_model = "project-baize/baize-v2-7b" #load_8bit = False (in load_tokenizer_and_model)
|
20 |
#base_model = "TheBloke/airoboros-13B-HF" #load_8bit = False (in load_tokenizer_and_model)
|
21 |
#base_model = "EleutherAI/gpt-neo-1.3B" #load_8bit = False (in load_tokenizer_and_model)
|
22 |
#base_model = "TheBloke/airoboros-13B-HF" #load_8bit = True
|
23 |
tokenizer,model,device = load_tokenizer_and_model(base_model,False)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
24 |
|
25 |
-
tokenized_datasets = datasets.map(tokenize_function, batched=True, num_proc=4, remove_columns=["text"])
|
26 |
|
27 |
|
28 |
########################################################################
|
|
|
7 |
from utils import *
|
8 |
from presets import *
|
9 |
|
10 |
+
|
11 |
######################################################################
|
12 |
#Modelle und Tokenizer
|
13 |
|
|
|
|
|
|
|
|
|
14 |
#Alternativ mit beliebigen Modellen:
|
15 |
base_model = "project-baize/baize-v2-7b" #load_8bit = False (in load_tokenizer_and_model)
|
16 |
#base_model = "TheBloke/airoboros-13B-HF" #load_8bit = False (in load_tokenizer_and_model)
|
17 |
#base_model = "EleutherAI/gpt-neo-1.3B" #load_8bit = False (in load_tokenizer_and_model)
|
18 |
#base_model = "TheBloke/airoboros-13B-HF" #load_8bit = True
|
19 |
tokenizer,model,device = load_tokenizer_and_model(base_model,False)
|
20 |
+
dataset_neu = daten_laden("alexkueck/tis")
|
21 |
+
|
22 |
+
###################################
|
23 |
+
#Vorbereiten für das training der neuen Daten
|
24 |
+
#Datensets in den Tokenizer schieben...
|
25 |
+
def tokenize_function(examples):
|
26 |
+
return tokenizer(examples["text"])
|
27 |
+
|
28 |
+
|
29 |
+
#alles zusammen auf das neue datenset anwenden - batched = True und 4 Prozesse, um die Berechnung zu beschleunigen. Die "text" - Spalte braucht man anschließend nicht mehr, daher weglassen.
|
30 |
+
tokenized_datasets = dataset_neu.map(tokenize_function, batched=True, num_proc=4, remove_columns=["text"])
|
31 |
+
|
32 |
+
#den Text nun zusammenführen (concatenieren) und anschließend in kleine Häppchen aufteilen (block_size=128), die verarbeitet werden können
|
33 |
+
#das macht die map-Funktion und das Attribut batched = True
|
34 |
+
#man könnte das weglassen, wenn jeder Satz einzeln gegeben wurde in den Texten...
|
35 |
+
#eigentlich nimmt man als block_size die max. Länge in der das Model trainiert wurde -> könnte aber zu groß sein für den RAm der GPU , daher hier 128 gewählt
|
36 |
+
# block_size = tokenizer.model_max_length
|
37 |
+
block_size = 128
|
38 |
+
|
39 |
|
|
|
40 |
|
41 |
|
42 |
########################################################################
|