Initial commit
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,287 @@
|
||||
# 🌐 Ollama Translator - Русский переводчик
|
||||
|
||||
Uncensored модель-переводчик на русский язык на базе Qwen3-14B-abliterated с современным графическим интерфейсом.
|
||||
|
||||

|
||||

|
||||

|
||||
|
||||
## 📋 Содержание
|
||||
|
||||
- [Возможности](#-возможности)
|
||||
- [Установка](#-установка)
|
||||
- [Использование](#-использование)
|
||||
- [GUI Приложение](#-gui-приложение)
|
||||
- [CLI Использование](#-cli-использование)
|
||||
- [Файлы проекта](#-файлы-проекта)
|
||||
- [Технические детали](#-технические-детали)
|
||||
|
||||
## ✨ Возможности
|
||||
|
||||
### 🎯 Основные функции
|
||||
- ✅ **Uncensored перевод** - без цензуры контента
|
||||
- ✅ **Автоопределение языка** - работает с любым языком
|
||||
- ✅ **Только русский вывод** - специализированная модель
|
||||
- ✅ **Высокая точность** - на базе Qwen3-14B (Q6_K квантизация)
|
||||
- ✅ **Графический интерфейс** - современное GUI приложение
|
||||
- ✅ **CLI инструменты** - для автоматизации и скриптов
|
||||
|
||||
### 🖥️ GUI Приложение
|
||||
- 🎨 **Современный интерфейс** - CustomTkinter с темной/светлой темой
|
||||
- 📁 **Открытие файлов** - через диалог (Ctrl+O)
|
||||
- ⌨️ **Горячие клавиши** - быстрая работа
|
||||
- 📊 **Счетчики** - символы и слова
|
||||
- ⏳ **Индикатор прогресса** - визуальная обратная связь
|
||||
- 💾 **Работа с файлами** - открытие и сохранение
|
||||
- 📋 **Копирование/Вставка** - работа с буфером обмена
|
||||
|
||||
## 📦 Установка
|
||||
|
||||
### Требования
|
||||
- Python 3.8 или выше
|
||||
- Ollama
|
||||
- CustomTkinter (для GUI)
|
||||
|
||||
### Шаг 1: Установка Ollama
|
||||
Скачайте и установите Ollama с [официального сайта](https://ollama.ai)
|
||||
|
||||
### Шаг 2: Установка модели
|
||||
```bash
|
||||
cd C:\Users\dimir\proects\ollama-translate-model
|
||||
ollama create translator -f Modelfile
|
||||
```
|
||||
|
||||
### Шаг 3: Установка зависимостей Python
|
||||
```bash
|
||||
pip install -r requirements.txt
|
||||
```
|
||||
|
||||
### Проверка установки
|
||||
```bash
|
||||
ollama list | grep translator
|
||||
python --version
|
||||
```
|
||||
|
||||
## 🚀 Использование
|
||||
|
||||
### GUI Приложение (рекомендуется)
|
||||
|
||||
**Windows:**
|
||||
```bash
|
||||
run_gui.bat
|
||||
```
|
||||
|
||||
**Linux/Mac:**
|
||||
```bash
|
||||
python translator_gui.py
|
||||
```
|
||||
|
||||
**Основные действия:**
|
||||
1. Введите текст или перетащите файл
|
||||
2. Нажмите `F5` или кнопку "Перевести"
|
||||
3. Скопируйте или сохраните результат
|
||||
|
||||
**Горячие клавиши:**
|
||||
- `Ctrl+O` - Открыть файл
|
||||
- `Ctrl+V` - Вставить текст
|
||||
- `Ctrl+S` - Сохранить перевод
|
||||
- `F5` или `Ctrl+Enter` - Перевести
|
||||
|
||||
### CLI Использование
|
||||
|
||||
**Python скрипт:**
|
||||
```bash
|
||||
python translate.py "Hello world"
|
||||
# Вывод: Привет, мир!
|
||||
|
||||
python translate.py "Good morning"
|
||||
# Вывод: Доброе утро
|
||||
```
|
||||
|
||||
**Прямой вызов Ollama:**
|
||||
```bash
|
||||
ollama run translator "Hello world"
|
||||
# Вывод будет содержать теги <think>
|
||||
```
|
||||
|
||||
**Batch файл (Windows):**
|
||||
```bash
|
||||
translate.bat "Hello world"
|
||||
```
|
||||
|
||||
## 🖥️ GUI Приложение
|
||||
|
||||
### Скриншот интерфейса
|
||||
```
|
||||
┌─────────────────────────────────────────────────────────────┐
|
||||
│ 🌐 Ollama Translator 🌙 Темная тема│
|
||||
├─────────────────────────────────────────────────────────────┤
|
||||
│ 📝 Исходный текст │ 🇷🇺 Перевод на русский │
|
||||
│ ┌─────────────────────────┐│┌─────────────────────────────┐│
|
||||
│ │ Hello world │││ Привет, мир! ││
|
||||
│ └─────────────────────────┘│└─────────────────────────────┘│
|
||||
│ Символов: 11 | Слов: 2 │ Символов: 12 | Слов: 2 │
|
||||
│ │
|
||||
│ 📁 Открыть 📋 Вставить 🗑️ Очистить │
|
||||
│ 🔄 Перевести │
|
||||
│ 📄 Копировать 💾 Сохранить │
|
||||
│ ✅ Готов к работе [████████] │
|
||||
└─────────────────────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
### Функции GUI
|
||||
- **Drag & Drop** - перетаскивание файлов в окно
|
||||
- **Копирование/Вставка** - работа с буфером обмена
|
||||
- **Открытие файлов** - поддержка .txt, .md и других форматов
|
||||
- **Сохранение** - экспорт с выбором имени и пути
|
||||
- **Темы** - переключение между темной и светлой
|
||||
- **Счетчики** - отображение символов и слов
|
||||
- **Прогресс** - индикатор выполнения перевода
|
||||
- **Статус-бар** - информация о текущих операциях
|
||||
|
||||
Подробнее см. [GUI_README.md](GUI_README.md)
|
||||
|
||||
## 📁 Файлы проекта
|
||||
|
||||
```
|
||||
ollama-translate-model/
|
||||
├── translator_gui.py # GUI приложение (главное)
|
||||
├── translator_utils.py # Утилиты (история, batch, настройки)
|
||||
├── translate.py # CLI скрипт для перевода
|
||||
├── translate.sh # Bash скрипт (Linux/Mac)
|
||||
├── translate.bat # Batch файл (Windows)
|
||||
├── run_gui.bat # Запуск GUI для Windows
|
||||
├── Modelfile # Конфигурация модели Ollama
|
||||
├── requirements.txt # Зависимости Python
|
||||
├── README.md # Этот файл
|
||||
├── GUI_README.md # Подробная документация GUI
|
||||
└── QUICKSTART.md # Быстрый старт
|
||||
```
|
||||
|
||||
## 🔧 Технические детали
|
||||
|
||||
### Модель
|
||||
- **Базовая модель:** `hf.co/bartowski/huihui-ai_Qwen3-14B-abliterated-GGUF:Q6_K`
|
||||
- **Имя в Ollama:** `translator`
|
||||
- **Размер:** ~12 GB
|
||||
- **Квантизация:** Q6_K (баланс качества и размера)
|
||||
- **Особенность:** Abliterated (uncensored)
|
||||
|
||||
### Параметры модели
|
||||
```
|
||||
Temperature: 0.1 # Низкая для точности
|
||||
Top P: 0.9
|
||||
Top K: 40
|
||||
Repeat Penalty: 1.1
|
||||
Context Window: 8192 токенов
|
||||
```
|
||||
|
||||
### Системный промпт
|
||||
```
|
||||
You are a direct translator. Translate input to Russian
|
||||
immediately without any thinking process or tags.
|
||||
Just output the Russian translation.
|
||||
```
|
||||
|
||||
### Фильтрация вывода
|
||||
Модель показывает процесс мышления в тегах `<think>...</think>`.
|
||||
Python скрипты автоматически фильтруют эти теги с помощью регулярных выражений.
|
||||
|
||||
### Архитектура GUI
|
||||
- **Фреймворк:** CustomTkinter (современный tkinter)
|
||||
- **Многопоточность:** Перевод в отдельном потоке
|
||||
- **Кодировки:** Автоопределение UTF-8, CP1251, Latin-1
|
||||
- **Таймаут:** 120 секунд для длинных текстов
|
||||
|
||||
## 💡 Примеры использования
|
||||
|
||||
### Перевод с английского
|
||||
```python
|
||||
python translate.py "Hello, how are you today?"
|
||||
# Привет, как у тебя дела сегодня?
|
||||
```
|
||||
|
||||
### Перевод с китайского
|
||||
```python
|
||||
python translate.py "你好世界"
|
||||
# Привет мир
|
||||
```
|
||||
|
||||
### Перевод технического текста
|
||||
```python
|
||||
python translate.py "The API endpoint returns a JSON response"
|
||||
# Конечная точка API возвращает ответ в формате JSON
|
||||
```
|
||||
|
||||
### Перевод файла
|
||||
```python
|
||||
# Через GUI: Ctrl+O -> выбрать файл -> F5 -> Ctrl+S
|
||||
# Через CLI:
|
||||
python translate.py "$(cat input.txt)" > output.txt
|
||||
```
|
||||
|
||||
## 🔮 Планы развития
|
||||
|
||||
### В разработке
|
||||
- [ ] История переводов с поиском
|
||||
- [ ] Batch обработка нескольких файлов
|
||||
- [ ] Экспорт в PDF, DOCX, HTML
|
||||
- [ ] Настройки модели (температура, top_p)
|
||||
- [ ] Сравнение переводов
|
||||
- [ ] Автосохранение
|
||||
- [ ] Статистика использования
|
||||
- [ ] Плагины и расширения
|
||||
|
||||
### Идеи для улучшения
|
||||
- [ ] Обратный перевод для проверки качества
|
||||
- [ ] Голосовой ввод и вывод
|
||||
- [ ] OCR для изображений
|
||||
- [ ] Интеграция с браузером
|
||||
- [ ] API сервер
|
||||
- [ ] Мобильное приложение
|
||||
|
||||
## 🐛 Решение проблем
|
||||
|
||||
### Модель не найдена
|
||||
```bash
|
||||
ollama list
|
||||
ollama create translator -f Modelfile
|
||||
```
|
||||
|
||||
### GUI не запускается
|
||||
```bash
|
||||
pip install --upgrade customtkinter
|
||||
python --version # Должна быть 3.8+
|
||||
```
|
||||
|
||||
### Проблемы с кодировкой
|
||||
Приложение автоматически пробует несколько кодировок.
|
||||
Если не помогает, конвертируйте файл в UTF-8.
|
||||
|
||||
### Ollama не найден
|
||||
Убедитесь, что Ollama установлен и добавлен в PATH:
|
||||
```bash
|
||||
ollama --version
|
||||
```
|
||||
|
||||
## 📝 Лицензия
|
||||
|
||||
MIT License - свободное использование и модификация
|
||||
|
||||
## 👨💻 Автор
|
||||
|
||||
Создано с помощью Claude Code (Opus 4.8)
|
||||
|
||||
## 🤝 Вклад
|
||||
|
||||
Предложения и улучшения приветствуются!
|
||||
|
||||
## 📚 Дополнительная документация
|
||||
|
||||
- [GUI_README.md](GUI_README.md) - Подробная документация GUI
|
||||
- [QUICKSTART.md](QUICKSTART.md) - Быстрый старт
|
||||
- [translator_utils.py](translator_utils.py) - Утилиты и API
|
||||
|
||||
---
|
||||
|
||||
**Приятного использования! 🚀**
|
||||
Reference in New Issue
Block a user