Skip to content

Repository files navigation

📖 NovelMaestro

Перевод веб-новелл с любого языка на русский с помощью LLM — китайский, английский, корейский, японский и другие: программа универсальна, исходный язык задаётся промптами и глоссарием. Она автоматизирует рутину (разбор исходника, глоссарий имён, перевод, проверки, сборку EPUB), а ключевые решения — выбор промптов, проверка качества, финальная корректура — остаются за вами.

Интерфейс — веб-страница в браузере: сервер поднимается одной командой, всё управление — мышкой. Никакого программирования.


Возможности

  • Разбор исходника — EPUB/TXT автоматически превращается в папки глав;
  • Глоссарий имён и терминов (LLM) — извлечение, проверка, правки с подтверждением человеком;
  • Перевод → редактура → полировка (LLM) — три прохода над каждой главой с единым промптом и контекстом;
  • Проверки — алгоритмическая сверка оригинала и перевода, а также LLM-поиск ошибок с review-флоу «принять/отклонить/применить»;
  • Компиляция — готовые TXT, EPUB и FB2 с обложкой, метаданными и страницей поддержки;
  • Wiki — LLM-компендиум по глоссарию и тексту (в т.ч. в форматах для публикации на Rulate);
  • Массовые замены — регулярные выражения по всем главам без LLM;
  • Шаблоны проектов — промпты и файлы для разных типов книг.

Как это устроено

EPUB/TXT → главы → глоссарий → перевод → редактура → полировка
→ проверки → TXT/EPUB/FB2 + Wiki

Каждая стадия — карточка с формой на странице «Запуски» проекта. Между стадиями — человеческие контрольные точки: правки глоссария и перевода принимает человек, а не машина.


Быстрый старт

Windows 10/11 — портативная сборка (основной способ)

Установка не нужна. Скачайте со страницы Releases архив novelmaestro-portable-<версия>.zip, распакуйте его в любую папку и запустите start.bat — программа откроет браузер с интерфейсом. Python ставить не нужно, он уже внутри сборки. При первом запуске программа сама создаст папку projects/ (разделы ACTIVE / HOLD / DONE) и .env из шаблона.

Linux/macOS (и Windows с Python) — venv

# 1. Создать и активировать venv (Python 3.10+)
python3 -m venv .venv && source .venv/bin/activate   # Linux/macOS
# Windows: py -m venv .venv && .venv\Scripts\activate

# 2. Установить зависимости
pip install -r requirements.txt

# 3. Запустить web-интерфейс
python3 run.py

(на Windows вместо python3python run.py или py run.py)

Допустимая альтернатива без venv — системный Python (Debian/Ubuntu):

sudo apt install python3-requests python3-tqdm python3-ahocorasick python3-pytest

После запуска откроется браузер с интерфейсом.

Docker (сервер, без установки Python)

cp templates/.env.example .env    # конфиг LLM (HOST/API_KEY/MODEL) + WEB_*
docker compose up -d --build
# → http://localhost:8756  (в браузере)

Данные живут в папках projects/ и templates/ (монтируются в контейнер). Подробности — порты, переменные, обновление — в packaging/README.md.

Параметры сервера: python3 run.py --no-open (без браузера), --projects-dir <путь> (своя папка проектов), а также --host/--port/--auth/--token — см. python3 web/main.py --help; подробности настройки сервера — DEVELOPERS.md.

Первые шаги

1. Создайте проект

Вкладка «Проекты» → «+ Создать новый проект…». Мастер спросит:

  1. раздел (по умолчанию ACTIVE);
  2. имя проекта (латиницей — имя папки);
  3. русское название, автор, жанры — опционально;
  4. тип книги — набор промптов (по умолчанию General).

Опционально можно сразу загрузить обложку и исходник книги.

2. Загрузите исходник

Внутри проекта вкладка «Файлы» → «+ Загрузить»: положите .epub или .txt в папку source/.

3. Запустите конвейер

Кнопка «▶ Запуски» в шапке проекта. Карточки идут по порядку:

  1. Разбор исходника на главы — разбейте книгу на главы (режим «По TOC» для epub);
  2. Создание глоссария (LLM) — извлеките имена и термины;
  3. Проверка глоссария (LLM) — LLM предложит правки; примите их во вкладке «Проверка»;
  4. Перевод (LLM) — полный цикл: перевод → редактура → полировка; для малоресурсных языков — «Перевод с расширенным контекстом» (словарь/правила/примеры из source/ + бюджеты запроса);
  5. Проверка перевода и Проверка перевода (LLM) — найдите ошибки, примените правки;
  6. Компиляция TXT/EPUB/FB2 — соберите готовый файл;
  7. Создание Wiki (LLM) — по желанию.

Над каждой карточкой — переключатель «Простой режим / Экспертный»: в простом режиме достаточно нажать «Запустить» — параметры возьмутся из настроек; экспертный открывает все поля формы.

Во время запуска — живой лог и прогресс; кнопка «Стоп» останавливает работу. История запусков — на «Дашборде» и во вкладке «Логи».

4. Правьте тексты

  • Редактор — главы проекта: оригинал слева, перевод справа, подсветка терминов глоссария;
  • Глоссарий — таблица ner.json: правка строк, поиск, экспорт;
  • Проверка — карточки правок LLM: принять/отклонить/применить;
  • Промпты — файлы промптов с редактором и предпросмотром.

Настройка LLM-сервера

Программа работает с любым [OI]-совместимым сервером — локальным или облачным:

  • Локальный (рекомендуется, бесплатно и приватно): llama.cpp; также подходят vLLM, Ollama, LM Studio;
  • Облачный: RouterAI — единый [OI]-совместимый API (https://routerai.ru/api/v1) к 100+ моделям с оплатой в рублях.

Подключение задаётся в файле .env (шаблон — templates/.env.example; в Docker — переменными окружения в docker-compose.yml, секция environment):

HOST=https://routerai.ru/api/v1     # или адрес локального сервера, напр. http://localhost:8080/v1
API_KEY=your-api-key                # локальный сервер может работать без ключа
MODEL=google/gemma-4-31b-it         # рекомендуемая модель (сент. 2026) — см. ниже

Рекомендуемая модель для перевода (на сентябрь 2026 года) — google/gemma-4-31b-it в режиме рассуждений high: в формах стадий задайте «Reasoning effort» = high (локально через llama.cpp — GGUF-сборка Gemma 4 31B IT, режим размышления включается чат-шаблоном модели).

Можно задать отдельный сервер для конкретной стадии: <СТАДИЯ>_HOST, <СТАДИЯ>_API_KEY, <СТАДИЯ>_MODEL (например NER_MODEL, WIKI_HOST). Без .env программа не падает — предложит ввести параметры вручную.

🔒 Файлы .env содержат ключи и не коммитятся в git.

Интерфейс

Слева — панель навигации:

  • Дашборд — сводка по всем проектам и последние запуски;
  • Проекты — разделы ACTIVE/HOLD/DONE, карточки, управление;
  • Настройки — внешний вид и интерфейс (хранятся в браузере, localStorage; конфиг сервера/LLM — .env на диске, не в UI);
  • Шаблоны — наборы промптов и файлов для новых проектов;
  • Заметки — общие заметки (markdown);
  • Справка — подробные инструкции по всем разделам программы (включая руководство по регулярным выражениям).

Внутри проекта — вкладки: Файлы, Редактор, Глоссарий, Проверка, Главы, Статус, Конфиг, Промпты, Логи, Заметки и страница Запуски.

Документация

  • Справка в приложении (вкладка слева) — инструкции по проектам, стадиям и регулярным выражениям;
  • DEVELOPERS.md — техническая документация для разработчиков (архитектура, конвейер, конфигурация, тесты);
  • web/README.md — контракт web-слоя и API;
  • AGENTS.md — правила для AI-агентов.

Зависимости

Пакет (pip / apt) Назначение Обязательность
requests / python3-requests HTTP-запросы к LLM обязательный
tqdm / python3-tqdm прогресс-бары обязательный
pyahocorasick / python3-ahocorasick быстрый поиск терминов опциональный (есть regex-fallback)
pytest / python3-pytest тесты только для разработки

About

No description, website, or topics provided.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages