Spaces:
Sleeping
Sleeping
changed readme.md
Browse files
README.md
CHANGED
|
@@ -7,23 +7,23 @@ sdk: docker
|
|
| 7 |
app_port: 7860
|
| 8 |
---
|
| 9 |
|
| 10 |
-
# Нейрос
|
| 11 |
|
| 12 |
-
Веб-приложение на Flask,
|
| 13 |
|
| 14 |
## возможности
|
| 15 |
|
| 16 |
-
| Функция | Описание |
|
| 17 |
-
|---------|-----
|
| 18 |
-
| **
|
| 19 |
-
| **Генерация текста** | Продолжает
|
| 20 |
-
| **Суммаризация** | Сжимает длинный текст в краткий пересказ
|
| 21 |
-
|
|
| 22 |
-
|
|
| 23 |
-
|
|
| 24 |
-
|
|
| 25 |
-
|
|
| 26 |
-
|
|
| 27 |
|
| 28 |
---
|
| 29 |
|
|
@@ -38,7 +38,7 @@ app_port: 7860
|
|
| 38 |
|
| 39 |
1. Клонируйте репозиторий:
|
| 40 |
```bash
|
| 41 |
-
git clone https://github.com/
|
| 42 |
cd neural-web
|
| 43 |
```
|
| 44 |
|
|
@@ -55,12 +55,13 @@ app_port: 7860
|
|
| 55 |
```
|
| 56 |
|
| 57 |
4. Настройте `config.py` (при необходимости измените модели). По умолчанию используются зеркало Hugging Face и следующие модели:
|
| 58 |
-
|
| 59 |
-
|
| 60 |
-
|
| 61 |
-
|
| 62 |
-
|
| 63 |
-
|
|
|
|
| 64 |
|
| 65 |
5. Запустите приложение:
|
| 66 |
```bash
|
|
@@ -68,7 +69,7 @@ app_port: 7860
|
|
| 68 |
```
|
| 69 |
|
| 70 |
6. Откройте браузер по адресу:
|
| 71 |
-
`http://127.0.0.1:
|
| 72 |
|
| 73 |
> **При первом запуске** модели будут загружены с `hf-mirror.com`. Это может занять несколько минут (размер файлов от 300 МБ до 1.5 ГБ). Прогресс отображается в консоли.
|
| 74 |
|
|
@@ -77,24 +78,20 @@ app_port: 7860
|
|
| 77 |
## Структура проекта
|
| 78 |
|
| 79 |
```
|
| 80 |
-
|
| 81 |
├── app.py # Главный файл Flask
|
| 82 |
├── config.py # Настройки моделей и API
|
| 83 |
-
├── functions/ # Модули с
|
| 84 |
│ ├── __init__.py
|
| 85 |
│ ├── sentiment.py
|
| 86 |
│ ├── generate_text.py
|
| 87 |
│ ├── summarize.py
|
| 88 |
-
│ ├──
|
| 89 |
-
│ ├──
|
| 90 |
-
│
|
| 91 |
-
│ ├── detect_emotion.py
|
| 92 |
-
│ ├── style_transfer.py
|
| 93 |
-
│ └── meme.py
|
| 94 |
├── templates/
|
| 95 |
-
│ └── index.html #
|
| 96 |
-
├── static/ # (
|
| 97 |
-
├── uploads/ # Временная папка для загруженных файлов
|
| 98 |
├── requirements.txt # Список зависимостей
|
| 99 |
└── README.md
|
| 100 |
```
|
|
@@ -105,22 +102,29 @@ neural-web/
|
|
| 105 |
|
| 106 |
### Через веб-интерфейс
|
| 107 |
|
| 108 |
-
|
| 109 |
-
|
| 110 |
-
|
| 111 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 112 |
|
| 113 |
### Примеры запросов
|
| 114 |
|
| 115 |
-
|
| 116 |
-
|
| 117 |
-
|
| 118 |
-
|
| 119 |
-
|
| 120 |
-
|
| 121 |
-
|
| 122 |
-
|
| 123 |
|
|
|
|
|
|
|
| 124 |
---
|
| 125 |
|
| 126 |
## Конфигурация
|
|
@@ -129,11 +133,11 @@ neural-web/
|
|
| 129 |
|
| 130 |
| Переменная | Описание | Значение по умолчанию |
|
| 131 |
|------------|----------|-----------------------|
|
| 132 |
-
|
| 133 |
-
|
| 134 |
-
|
| 135 |
-
|
| 136 |
-
|
| 137 |
|
| 138 |
Для использования функций удаления фона и переноса стиля необходимо получить бесплатный API‑ключ на [replicate.com](https://replicate.com) и указать его в `.env` или прямо в `config.py`. Без ключа эти две кнопки будут выдавать ошибку.
|
| 139 |
|
|
@@ -141,24 +145,24 @@ neural-web/
|
|
| 141 |
|
| 142 |
## Зависимости
|
| 143 |
|
| 144 |
-
Основные библиотеки (полный список в
|
| 145 |
|
| 146 |
- Flask 2.3+
|
| 147 |
- Transformers 4.36+
|
| 148 |
- Torch 2.0+
|
| 149 |
-
-
|
| 150 |
- Requests
|
| 151 |
-
-
|
| 152 |
|
| 153 |
---
|
| 154 |
|
| 155 |
## Тестирование
|
| 156 |
|
| 157 |
-
После запуска проверьте все функции. Если какая-то команда не работает,
|
| 158 |
|
| 159 |
-
- Интернет-соединение (для загрузки моделей).
|
| 160 |
-
-
|
| 161 |
-
-
|
| 162 |
|
| 163 |
---
|
| 164 |
|
|
@@ -172,10 +176,9 @@ neural-web/
|
|
| 172 |
|
| 173 |
## Планы по развитию
|
| 174 |
|
| 175 |
-
- Добавить
|
| 176 |
-
- Реализовать
|
| 177 |
-
-
|
| 178 |
-
- Экспорт результатов в PDF/JSON.
|
| 179 |
|
| 180 |
---
|
| 181 |
|
|
|
|
| 7 |
app_port: 7860
|
| 8 |
---
|
| 9 |
|
| 10 |
+
# НейроЛингвист — интеллектуальный помощник для работы с текстом
|
| 11 |
|
| 12 |
+
Веб-приложение на Flask, объединяющее **нейросетевые** и **логические** функции обработки текста. Позволяет анализировать тональность, генерировать продолжение, делать краткий пересказ, общаться с ИИ-агентом, а также выполнять простые текстовые операции: подсчёт статистики, перемешивание слов, преобразование в leetspeak, сравнение двух текстов и транслитерацию.
|
| 13 |
|
| 14 |
## возможности
|
| 15 |
|
| 16 |
+
| Функция | Тип | Описание |
|
| 17 |
+
|---------|-----|----------|
|
| 18 |
+
| **Тональность** | ИИ | Определяет эмоциональную окраску текста (негатив/нейтраль/позитив) с использованием модели `tabularisai/multilingual-sentiment-analysis`. |
|
| 19 |
+
| **Генерация текста** | ИИ | Продолжает заданный промпт на основе GPT‑2 (локально). |
|
| 20 |
+
| **Суммаризация** | ИИ | Сжимает длинный текст в краткий пересказ с помощью `IlyaGusev/rut5_base_sum_gazeta`. |
|
| 21 |
+
| **Чат с ИИ** | ИИ | Диалог с агентом через Hugging Face Inference API (модель `zai-org/GLM-5.2:novita`). Поддерживает контекст беседы. |
|
| 22 |
+
| **Статистика текста** | Логика | Подсчёт числа символов (с пробелами и без) и количества слов. |
|
| 23 |
+
| **Перемешать слова** | Логика | Случайная перестановка слов в предложении. |
|
| 24 |
+
| **Leetspeak** | Логика | Замена кириллических букв на цифры и символы (например, «а» → «@», «о» → «0»). |
|
| 25 |
+
| **Сравнить два текста** | Логика | Вычисление процентного совпадения уникальных слов. |
|
| 26 |
+
| **Транслитерация** | Логика | Преобразование кириллицы в латиницу по стандартным правилам. |
|
| 27 |
|
| 28 |
---
|
| 29 |
|
|
|
|
| 38 |
|
| 39 |
1. Клонируйте репозиторий:
|
| 40 |
```bash
|
| 41 |
+
git clone https://github.com/Adieva15/networkbot.git
|
| 42 |
cd neural-web
|
| 43 |
```
|
| 44 |
|
|
|
|
| 55 |
```
|
| 56 |
|
| 57 |
4. Настройте `config.py` (при необходимости измените модели). По умолчанию используются зеркало Hugging Face и следующие модели:
|
| 58 |
+
Создайте файл .env или установите переменную HF_TOKEN с вашим токеном Hugging Face (для работы чата через Inference API).
|
| 59 |
+
|
| 60 |
+
Пример:
|
| 61 |
+
|
| 62 |
+
bash
|
| 63 |
+
export HF_TOKEN="hf_xxxxxxxxxxxxxxxx"
|
| 64 |
+
Токен можно получить на huggingface.co/settings/tokens.
|
| 65 |
|
| 66 |
5. Запустите приложение:
|
| 67 |
```bash
|
|
|
|
| 69 |
```
|
| 70 |
|
| 71 |
6. Откройте браузер по адресу:
|
| 72 |
+
`http://127.0.0.1:7860`
|
| 73 |
|
| 74 |
> **При первом запуске** модели будут загружены с `hf-mirror.com`. Это может занять несколько минут (размер файлов от 300 МБ до 1.5 ГБ). Прогресс отображается в консоли.
|
| 75 |
|
|
|
|
| 78 |
## Структура проекта
|
| 79 |
|
| 80 |
```
|
| 81 |
+
networkbot/
|
| 82 |
├── app.py # Главный файл Flask
|
| 83 |
├── config.py # Настройки моделей и API
|
| 84 |
+
├── functions/ # Модули с функциями
|
| 85 |
│ ├── __init__.py
|
| 86 |
│ ├── sentiment.py
|
| 87 |
│ ├── generate_text.py
|
| 88 |
│ ├── summarize.py
|
| 89 |
+
│ ├── chat.py
|
| 90 |
+
│ ├── text_stats.py
|
| 91 |
+
│ └── text_utils.py
|
|
|
|
|
|
|
|
|
|
| 92 |
├── templates/
|
| 93 |
+
│ └── index.html # Главная страница (интерфейс)
|
| 94 |
+
├── static/ # (опционально) стили, скрипты
|
|
|
|
| 95 |
├── requirements.txt # Список зависимостей
|
| 96 |
└── README.md
|
| 97 |
```
|
|
|
|
| 102 |
|
| 103 |
### Через веб-интерфейс
|
| 104 |
|
| 105 |
+
Выберите нужную функцию из выпадающего списка.
|
| 106 |
+
|
| 107 |
+
Введите текст (для сравнения – два текста).
|
| 108 |
+
|
| 109 |
+
Нажмите «→ Отправить» – результат появится внизу.
|
| 110 |
+
|
| 111 |
+
Для чата – выберите «Чат», введите сообщение и нажмите Enter или кнопку «→».
|
| 112 |
+
|
| 113 |
+
Переключайте тему (светлая/тёмная) кнопкой в правом верхнем углу.
|
| 114 |
|
| 115 |
### Примеры запросов
|
| 116 |
|
| 117 |
+
Тональность:
|
| 118 |
+
«Фильм был потрясающим!» → Позитивный
|
| 119 |
+
|
| 120 |
+
Генерация:
|
| 121 |
+
«Однажды в студёную зимнюю пору…» → продолжение текста
|
| 122 |
+
|
| 123 |
+
Суммаризация:
|
| 124 |
+
(длинная статья) → краткий абзац
|
| 125 |
|
| 126 |
+
Чат:
|
| 127 |
+
«Что такое цифровой двойник?» → ответ от ИИ
|
| 128 |
---
|
| 129 |
|
| 130 |
## Конфигурация
|
|
|
|
| 133 |
|
| 134 |
| Переменная | Описание | Значение по умолчанию |
|
| 135 |
|------------|----------|-----------------------|
|
| 136 |
+
model_name Модель для тональности tabularisai/multilingual-sentiment-analysis
|
| 137 |
+
model_gt Модель для генерации gpt2
|
| 138 |
+
model_sum Модель для суммаризации IlyaGusev/rut5_base_sum_gazeta
|
| 139 |
+
model_chat Модель для чата (через HF API) zai-org/GLM-5.2:novita
|
| 140 |
+
HF_TOKEN Токен Hugging Face (обязателен для чата) (не задан)
|
| 141 |
|
| 142 |
Для использования функций удаления фона и переноса стиля необходимо получить бесплатный API‑ключ на [replicate.com](https://replicate.com) и указать его в `.env` или прямо в `config.py`. Без ключа эти две кнопки будут выдавать ошибку.
|
| 143 |
|
|
|
|
| 145 |
|
| 146 |
## Зависимости
|
| 147 |
|
| 148 |
+
Основные библиотеки (полный список в requirements.txt):
|
| 149 |
|
| 150 |
- Flask 2.3+
|
| 151 |
- Transformers 4.36+
|
| 152 |
- Torch 2.0+
|
| 153 |
+
- OpenAI
|
| 154 |
- Requests
|
| 155 |
+
- NumPy
|
| 156 |
|
| 157 |
---
|
| 158 |
|
| 159 |
## Тестирование
|
| 160 |
|
| 161 |
+
После запуска проверьте все функции. Если какая-то команда не работает, убедитесь, что:
|
| 162 |
|
| 163 |
+
- Интернет-соединение активно (для загрузки моделей и API).
|
| 164 |
+
- Переменная HF_TOKEN установлена корректно (для чата).
|
| 165 |
+
- Достаточно свободной оперативной памяти.
|
| 166 |
|
| 167 |
---
|
| 168 |
|
|
|
|
| 176 |
|
| 177 |
## Планы по развитию
|
| 178 |
|
| 179 |
+
- Добавить возможность загрузки файлов (txt, docx) для обработки.
|
| 180 |
+
- Реализовать сохранение истории запросов.
|
| 181 |
+
- Подключить дополнительные модели (например, для перевода или исправления ошибок).
|
|
|
|
| 182 |
|
| 183 |
---
|
| 184 |
|
config.py
CHANGED
|
@@ -1,4 +1,3 @@
|
|
| 1 |
-
|
| 2 |
from transformers import AutoTokenizer, AutoModelForSequenceClassification
|
| 3 |
import torch
|
| 4 |
import os
|
|
@@ -15,9 +14,6 @@ model_gt='gpt2'
|
|
| 15 |
|
| 16 |
SUMMARIZE_API=''
|
| 17 |
model_sum='IlyaGusev/rut5_base_sum_gazeta'
|
| 18 |
-
# model_sum='t5-small'
|
| 19 |
-
|
| 20 |
-
|
| 21 |
|
| 22 |
EMOTION_API = "https://api-inference.huggingface.co/models/harsh3474/face-emotion-recognition"
|
| 23 |
|
|
|
|
|
|
|
| 1 |
from transformers import AutoTokenizer, AutoModelForSequenceClassification
|
| 2 |
import torch
|
| 3 |
import os
|
|
|
|
| 14 |
|
| 15 |
SUMMARIZE_API=''
|
| 16 |
model_sum='IlyaGusev/rut5_base_sum_gazeta'
|
|
|
|
|
|
|
|
|
|
| 17 |
|
| 18 |
EMOTION_API = "https://api-inference.huggingface.co/models/harsh3474/face-emotion-recognition"
|
| 19 |
|