Files
dinlo fe5125d7b0 Initial commit
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-31 18:45:36 +08:00

56 lines
3.6 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Ollama Manager
Графический менеджер (Python + Tkinter) для управления удалённым сервером Ollama
по адресу `192.168.1.118`.
## Установка
```bash
pip install -r requirements.txt
python ollama_manager.py
```
`tkinter` входит в стандартную поставку Python. На Linux при необходимости:
`sudo apt install python3-tk`.
`paramiko` нужен только для вкладки **Сервер (SSH)** и кнопки **«Определить по SSH»**.
Без него управление моделями по HTTP работает в полном объёме.
## Возможности
### Вкладка «Модели» (по HTTP, порт 11434)
- Список установленных моделей: размер, число параметров, квантизация, дата.
- **Установить (pull)** — загрузка модели с индикатором прогресса.
- **Удалить**, **Копировать**, **Детали** (`/api/show`).
- **Создать из Modelfile** (`/api/create`, на основе базовой модели + system-prompt).
- **Push** — отправка модели в реестр (имя вида `namespace/model:tag`).
### Вкладка «Запущенные»
- Список загруженных в память моделей (`/api/ps`): объём в RAM и VRAM.
- **Выгрузить из памяти** (`keep_alive=0`).
### Вкладка «Сервер (SSH)»
- SSH-подключение к машине с Ollama (пароль или ключ).
- **Запустить / Остановить / Перезапустить / Статус** сервиса `ollama`.
Используется `systemctl` (через `sudo -n`), с резервом на `ollama serve` / `pkill`.
> Управление процессом сервера невозможно через HTTP API Ollama — он не умеет
> сам себя запускать/останавливать. Поэтому эти операции выполняются по SSH.
> Для `systemctl` без пароля настройте `sudo NOPASSWD` для пользователя.
### Вкладка «Рекомендации» — «Найти модель»
- Поля **ОЗУ** и **VRAM** заполняются вручную или кнопкой **«Определить по SSH»**
(читает `/proc/meminfo` и `nvidia-smi`, для Apple Silicon — единую память).
- Чекбокс **«Показывать только модели, подходящие для железа»**:
- включён → в списке остаются только модели, которые поместятся в ОЗУ;
- выключен → показывается весь каталог.
- Цветовая маркировка: 🟢 поместится в VRAM (быстро на GPU), 🟠 пойдёт на CPU/частично,
⚪ памяти не хватит.
- **Установить выбранную** — сразу запускает `pull` выбранной модели.
## Примечание о размерах моделей
Каталог рекомендаций (`MODEL_CATALOG` в `ollama_manager.py`) содержит ориентировочные
размеры и требования к памяти для популярных моделей (квантизация Q4). Это оценка,
а не точная гарантия — список легко расширить, отредактировав словарь в коде.