Интеллектуальный инструмент для переписывания текстов с использованием Google Gemini API. Приложение позволяет автоматически переписывать/переводить большие тексты (книги, статьи).
- Умное разбиение текста - автоматическое разделение на блоки с учетом семантических границ (абзацы, предложения)
- Контекстное переписывание - каждый блок переписывается с учетом контекста предыдущих и следующих блоков
- Адаптивная генерация - автоматическая настройка параметров генерации для улучшения качества
- Валидация качества - проверка на схожесть с оригиналом, длину, разнообразие лексики
- Возобновление работы - сохранение прогресса и возможность продолжить с места остановки
- GUI интерфейс - удобный графический интерфейс с темной темой
- Гибкие настройки - настройка языка, стиля и цели переписывания
- Python 3.8+
- Google Gemini API ключ
- Клонируйте репозиторий:
git clone https://github.com/ShmidtS/AI-rewriter.git
cd AI-rewriter- Создайте виртуальное окружение:
python -m venv .venv- Активируйте виртуальное окружение:
Windows:
.venv\Scripts\activateLinux/Mac:
source .venv/bin/activate- Установите зависимости:
pip install -r requirements.txt- Создайте файл
.envи добавьте ваш API ключ:
GOOGLE_API_KEY=your_api_key_herepython aigen.py- Входной файл - выберите текстовый файл для переписывания
- Выходной файл - укажите путь для сохранения результата
- Язык - выберите язык переписывания
- Стиль - опишите желаемый стиль текста
- Цель - укажите цель переписывания
- Модель - выберите модель Gemini для использования
- Возобновить - продолжить с места остановки (если есть сохраненное состояние)
Стиль:
Увлекательный и живой повествовательный стиль, схожий с оригиналом,
но с улучшенной динамикой и более богатой лексикой.
Избегать канцеляризмов и излишней формальности.
Цель:
Переписать сегмент, сохраняя основной смысл и сюжетную линию,
но делая его более выразительным и интересным для современного читателя.
Устранить возможные повторы и улучшить читаемость.
- Разбиение текста (
split_into_blocks) - умное разделение на блоки с учетом семантики - Создание промптов (
create_rewrite_prompt) - генерация промптов с контекстом - Валидация (
validate_rewritten_text) - проверка качества переписанного текста - API вызовы (
call_gemini_rewrite_api) - взаимодействие с Gemini API - Управление состоянием (
save_state,load_state) - сохранение прогресса
Система автоматически увеличивает температуру генерации при:
- Высокой схожести с оригиналом
- Низком разнообразии лексики
- Повторных неудачных попытках
aigen.py- основной файл приложенияrequirements.txt- зависимости проекта.env- конфигурация (API ключи)
*_rewrite_state.json- состояние процесса переписывания*_intermediate.txt- промежуточный результат*_final_rewritten.txt- финальный результат
Основные параметры в aigen.py:
BLOCK_TARGET_CHARS = 10000 # Целевой размер блока
MIN_REWRITE_LENGTH_RATIO = 0.60 # Минимальное соотношение длин
MAX_REWRITE_LENGTH_RATIO = 2.6 # Максимальное соотношение длин
SIMILARITY_THRESHOLD = 0.95 # Порог схожести
MAX_RETRIES = 20 # Максимум попытокMIT License - см. файл LICENSE
ShmidtS - GitHub
- Первый публичный релиз
- Адаптивная генерация
- GUI интерфейс
- Система валидации качества