makprgmax commited on
Commit
d176151
1 Parent(s): c1b0580
Files changed (4) hide show
  1. main_mt5_XL.py → main_mt5_XL_run.py +13 -30
  2. main_mt5_XL_save.py +30 -0
  3. main_rag.py +26 -0
  4. resume +13 -0
main_mt5_XL.py → main_mt5_XL_run.py RENAMED
@@ -1,46 +1,29 @@
1
- from datasets import load_dataset
2
- # from transformers import AutoTokenizer, AutoModelForSeq2SeqLM, pipeline
3
- import os
4
  from transformers import MT5Tokenizer, MT5ForConditionalGeneration, pipeline
5
-
6
-
7
-
8
- # Имя модели mT5
9
- model_name = "google/mt5-xl"
10
-
11
-
12
- tokenizer = MT5Tokenizer.from_pretrained(model_name, legacy=False)
13
- model = MT5ForConditionalGeneration.from_pretrained(model_name)
14
-
15
- # Загрузка токенизатора и модели
16
- # tokenizer = AutoTokenizer.from_pretrained(model_name)
17
- # model = AutoModelForSeq2SeqLM.from_pretrained(model_name)
18
 
19
  # Путь для сохранения модели
20
  save_directory = "./"
21
 
22
- # Сохранение токенизатора и модели
23
- # tokenizer.save_pretrained(save_directory)
24
- # model.save_pretrained(save_directory)
25
-
26
- model.save_pretrained("./")
27
- tokenizer.save_pretrained("./")
28
-
29
- print("Модель и токенизатор успешно сохранены.")
30
-
31
- exit(0)
32
  # Загрузка сохраненной модели
33
- loaded_tokenizer = MT5Tokenizer.from_pretrained(save_directory)
34
  loaded_model = MT5ForConditionalGeneration.from_pretrained(save_directory)
35
-
 
36
  # Создание пайплайна для задачи вопрос-ответ
37
  qa_pipeline = pipeline("text2text-generation", model=loaded_model, tokenizer=loaded_tokenizer)
38
 
39
  # Пример использования пайплайна для заданий на тему ридеров и электронных книжек
40
  context = "Электронные ридеры это устройства для чтения электронных книг. Они обычно имеют экран на базе электронных чернил и позволяют хранить большое количество книг в одном устройстве."
 
41
  question = "Какие преимущества электронных ридеров?"
42
-
43
  # Задание вопроса
44
- result = qa_pipeline(f"question: {question} context: {context}")
 
 
 
 
 
45
 
46
  print("Ответ:", result[0]['generated_text'])
 
 
 
 
 
1
  from transformers import MT5Tokenizer, MT5ForConditionalGeneration, pipeline
2
+ from datetime import datetime
 
 
 
 
 
 
 
 
 
 
 
 
3
 
4
  # Путь для сохранения модели
5
  save_directory = "./"
6
 
 
 
 
 
 
 
 
 
 
 
7
  # Загрузка сохраненной модели
8
+ loaded_tokenizer = MT5Tokenizer.from_pretrained(save_directory, legacy=False)
9
  loaded_model = MT5ForConditionalGeneration.from_pretrained(save_directory)
10
+ print("Модели загрузились в :", datetime.now())
11
+ # exit(0)
12
  # Создание пайплайна для задачи вопрос-ответ
13
  qa_pipeline = pipeline("text2text-generation", model=loaded_model, tokenizer=loaded_tokenizer)
14
 
15
  # Пример использования пайплайна для заданий на тему ридеров и электронных книжек
16
  context = "Электронные ридеры это устройства для чтения электронных книг. Они обычно имеют экран на базе электронных чернил и позволяют хранить большое количество книг в одном устройстве."
17
+ context = "Electronic readers are devices for reading electronic books. They usually have an electronic ink screen and allow you to store a large number of books in one device."
18
  question = "Какие преимущества электронных ридеров?"
19
+ question = "What are the advantages of e-readers?"
20
  # Задание вопроса
21
+ # result = qa_pipeline(f"question: {question} context: {context}")
22
+
23
+
24
+ input_text = f"question: {question} context: {context}"
25
+ result = qa_pipeline(input_text, max_length=50, num_beams=5, early_stopping=True)
26
+
27
 
28
  print("Ответ:", result[0]['generated_text'])
29
+
main_mt5_XL_save.py ADDED
@@ -0,0 +1,30 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from datasets import load_dataset
2
+ # from transformers import AutoTokenizer, AutoModelForSeq2SeqLM, pipeline
3
+ import os
4
+ from transformers import MT5Tokenizer, MT5ForConditionalGeneration, pipeline
5
+
6
+
7
+
8
+ # Имя модели mT5
9
+ model_name = "google/mt5-xl"
10
+
11
+
12
+ tokenizer = MT5Tokenizer.from_pretrained(model_name, legacy=False)
13
+ model = MT5ForConditionalGeneration.from_pretrained(model_name)
14
+
15
+ # Загрузка токенизатора и модели
16
+ # tokenizer = AutoTokenizer.from_pretrained(model_name)
17
+ # model = AutoModelForSeq2SeqLM.from_pretrained(model_name)
18
+
19
+ # Путь для сохранения модели
20
+ save_directory = "./"
21
+
22
+ # Сохранение токенизатора и модели
23
+ # tokenizer.save_pretrained(save_directory)
24
+ # model.save_pretrained(save_directory)
25
+
26
+ model.save_pretrained("./")
27
+ tokenizer.save_pretrained("./")
28
+
29
+ print("Модель и токенизатор успешно сохранены.")
30
+
main_rag.py ADDED
@@ -0,0 +1,26 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ from transformers import RagTokenizer, RagRetriever, RagSequenceForGeneration, pipeline
2
+ from datetime import datetime
3
+
4
+ # Загрузка модели и токенизатора RAG
5
+ model_name = "facebook/rag-token-base"
6
+ tokenizer = RagTokenizer.from_pretrained(model_name)
7
+ retriever = RagRetriever.from_pretrained(model_name, index_name="exact", passages_path="datasets", trust_remote_code=True)
8
+ model = RagSequenceForGeneration.from_pretrained(model_name, retriever=retriever)
9
+
10
+ print("Модели загрузились в:", datetime.now())
11
+
12
+ # Создание пайплайна для задачи вопрос-ответ
13
+ qa_pipeline = pipeline("rag-sequence", model=model, tokenizer=tokenizer)
14
+
15
+ # Пример использования пайплайна для заданий на тему ридеров и электронных книжек
16
+ context = "Electronic readers are devices for reading electronic books. They usually have an electronic ink screen and allow you to store a large number of books in one device."
17
+ question = "What are the advantages of e-readers?"
18
+
19
+ # Задание вопроса
20
+ input_text = f"{question} {context}"
21
+
22
+ # Получение ответа
23
+ result = qa_pipeline(input_text, max_length=50, num_beams=5, early_stopping=True)
24
+
25
+ print("Ответ:", result[0]['generated_text'])
26
+
resume ADDED
@@ -0,0 +1,13 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ 1) Все модели mt5, кроме самой большой - 50 га, до тюнинга практически не отвечают нормально
2
+ на запрос
3
+ context = "Electronic readers are devices for reading electronic books. They usually have an electronic ink screen and allow you to store a large number of books in one device."
4
+ # Электронные ридеры — устройства для чтения электронных книг. Они обычно имеют экран с электронными чернилами и позволяют хранить большое количество книг в одном устройстве.
5
+ question = "What are the advantages of e-readers?"
6
+ #В чем преимущества электронных книг?
7
+ result = qa_pipeline(f"question: {question} context: {context}")
8
+ print("Ответ:", result[0]['generated_text'])
9
+
10
+ был ответ
11
+ Ответ: They are very portable and portable.
12
+
13
+ 1-1) C самой большой лучше работать а сервер, из-за нехватки мощностей моего компа