boompack commited on
Commit
53f23a9
1 Parent(s): 8eadc15

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +77 -38
app.py CHANGED
@@ -1,45 +1,84 @@
1
  from transformers import pipeline
2
 
3
- class TextProcessor:
4
- """
5
- Класс для обработки текста с использованием моделей GPT-Neo, T5 и BERT.
6
- """
7
- def __init__(self, api_key=None):
8
- """
9
- Инициализирует объект TextProcessor.
10
- """
11
- self.api_key = api_key
12
- self.model_gpt = pipeline("text-generation", model="EleutherAI/gpt-neo-125M")
13
- self.model_t5 = pipeline("text2text-generation", model="t5-base")
14
- self.model_bert = pipeline("fill-mask", model="bert-base-uncased")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15
 
16
- def process_text(self, step, text):
17
- """
18
- Обрабатывает текст с использованием выбранной модели.
19
- """
20
- if step == 1:
21
- # Пример генерации текста с помощью GPT-Neo
22
- gpt_result = self.model_gpt(text, max_length=100)
23
- return gpt_result
24
- elif step == 2:
25
- # Пример генерации текста с помощью T5 (например, для резюмирования)
26
- t5_result = self.model_t5(text)
27
- return t5_result
28
- elif step == 3:
29
- # Пример заполнения пропусков с помощью BERT
30
- bert_result = self.model_bert(text)
31
- return bert_result
32
- else:
33
- return "Unknown step"
34
 
35
- # Пример использования
36
- if __name__ == "__main__":
37
- api_key = "your_api_key_here" # Здесь укажите свой API-ключ, если необходимо
 
 
 
 
 
38
 
39
- text_input = "Your text input here." # Ваш текст для анализа
 
 
 
 
40
 
41
- processor = TextProcessor(api_key)
 
 
 
 
 
 
 
 
 
42
 
43
- for step in range(1, 4): # Проходим по шагам с 1 до 3
44
- result = processor.process_text(step, text_input)
45
- print(f"Result from step {step}: {result}")
 
 
 
1
  from transformers import pipeline
2
 
3
+ # Список тем для анализа
4
+ s = [
5
+ "Деконструкция чужих мыслей",
6
+ "Работа с парадоксами",
7
+ "Установка умных ограничений",
8
+ "Циклическая обратная связь",
9
+ "Минимизация информации",
10
+ "Мобильные библиотеки",
11
+ "Интервью с самим собой",
12
+ "Использование 'периода тишины'",
13
+ "Переработка старых проектов",
14
+ "Метод заземления",
15
+ "Реверсивное мышление",
16
+ "Работа с случайностями",
17
+ "Персонализированные алгоритмы",
18
+ "Использование времени с минимальной активностью",
19
+ "Анализ с позиции 'невыносимой лёгкости бытия'",
20
+ "Создание креативных фрагментов",
21
+ "Метод 'ошибки с первого раза'",
22
+ "Медитативный подход к созданию контента",
23
+ "Процесс разрыва шаблонов",
24
+ "Принцип 'меньше — больше'",
25
+ "Использование аналога для сложных идей",
26
+ "Копирование ошибок успешных людей",
27
+ "Картирование знаний через визуальные образы",
28
+ "Задачи, заставляющие мозг работать под давлением",
29
+ "Анализ поведения людей в стрессовых ситуациях",
30
+ "Кросс-дисциплинарное мышление",
31
+ "Картирование эмоций",
32
+ "Использование случайных встреч для изучения",
33
+ "Фиксация успешных решений на бумаге",
34
+ "Использование игры в жизни",
35
+ "Процесс 'максимизации ресурса'",
36
+ "Управление временем через шаблоны",
37
+ "Персонализированная техника памяти",
38
+ "Техники амнезии",
39
+ "Системы контроля 'изнутри'",
40
+ "Переосмысление стандартных ролей",
41
+ "Использование тишины как инструмента для мыслей",
42
+ "'Переход через время'",
43
+ "Процесс 'расширения горизонтов'",
44
+ "Техника взрывной генерации идей",
45
+ "Техника обратного создания",
46
+ "Интервью с вещами"
47
+ ]
48
 
49
+ # Модели для обработки
50
+ model_gpt = pipeline("text-generation", model="EleutherAI/gpt-neo-125M")
51
+ model_t5 = pipeline("text2text-generation", model="t5-base")
52
+ model_bert = pipeline("fill-mask", model="bert-base-uncased")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
53
 
54
+ # Создание списка вопросов
55
+ questions = [
56
+ "Как вы понимаете этот принцип?",
57
+ "Как этот принцип может быть применен в реальной жизни?",
58
+ "Какие преимущества и недостатки этого принципа?",
59
+ "Какие примеры применения этого принципа?",
60
+ "Как вы можете использовать этот принцип в своей работе?",
61
+ ]
62
 
63
+ # Обработка каждого пункта и формирование ответов
64
+ responses = []
65
+ for i, item in enumerate(s):
66
+ # Генерируем вопрос
67
+ question = questions[i % len(questions)]
68
 
69
+ # Выбираем модель для обработки в зависимости от номера пункта
70
+ if i % 3 == 0:
71
+ result = model_gpt(f"{item} {question}", max_length=100)
72
+ responses.append(f"**{item}:** {result[0]['generated_text']}")
73
+ elif i % 3 == 1:
74
+ result = model_t5(f"{item} {question}")
75
+ responses.append(f"**{item}:** {result[0]['generated_text']}")
76
+ else:
77
+ result = model_bert(f"{item} {question}")
78
+ responses.append(f"**{item}:** {result[0]['sequence']}")
79
 
80
+ # Создание итогового текста
81
+ final_text = "\n".join(responses)
82
+
83
+ # Вывод итогового текста
84
+ print(final_text)