Skip to content

J3lackai/llama-server-manager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

llama-server-manager 🚀

CLI-утилита для управления локальным сервером llama-server на базе Python. Позволяет запускать и переключать языковые модели (LLM) без изменения кода, используя только конфигурационный файл (config.ini). Реализован паттерн стратегия, для выбора моделей. Эта утилита разработана в первую очередь для видеокарт AMD (RX 6600 - 6700 cерии), которые не поддерживают ROCM HIP SDK, как некая альтернатива LM Studio, который не поддерживает (на момент разработки xx.03.2026) флаг -ncmoe (а также некоторые другие свежие флаги). Проект разработан, в порыве вдохновения замечательной статьёй: https://habr.com/ru/articles/961478/

Особенности ⭐️

  • Работа с локальными LLM: Работа с моделями, расположенными локально, оффлайн/онлайн через llama-server.exe.
  • Паттерн Strategy: Динамический выбор модели без перезаписи кода при запуске.
  • Автозапуск дефолтной модели: При старте программы происходит отсчет 15 секунд (или другое кол-во секунд, указанное в конфиге) перед автоматической загрузкой выбранной по умолчанию модели (default_llm из конфига). Если пользователь введет название LLM из доступных до конца таймера, запустится введённая модель.
  • Управление через консоль: Команды для просмотра списка моделей, информации о текущей стратегии и переключения между ними на лету.

Архитектура 🧠

Проект состоит из следующих компонентов:

  • LLMServerRunner: Контекст — отвечает за запуск, остановку и перезагрузку сервера (llama-server.exe).
  • LLMModel: Стратегия — хранит путь к файлу модели .gguf, флаги запуска и имя для CLI.
  • ServerData: Данные конфигурации пути к исполняемому файлу сервера и глобальных флагах (flags).

Возможности 🛠️

| Запуск LLM | Автоматический запуск по умолчанию через таймер или вручную.

| Переключение моделей | Команда в консоли с именем модели переключает стратегию и перезапускает сервер (с очисткой VRAM).

| Поддержка Vulkan/rocm | Путём настраивания параметра backend в конфиге. llama.cpp на базе rocm для windows можно найти здесь: https://github.com/lemonade-sdk/llamacpp-rocm

Требования 💻

  • Python 3.12.8
  • llama.cpp (llama-server.exe) установлен и доступен в пути из конфига
  • Модели в формате .gguf

Установка 📦

Зависимости

Установите необходимые библиотеки через requirements.txt:

pip install -r requirements.txt
# Или создайте requirements.txt с этими пакетами для удобства установки одной командой

About

CLI-утилита для управления llama-server на базе Python, для ОС Windows 10/11. Позволяет запускать и переключать LLM, используя только конфигурационный файл (config.ini). Реализован паттерн стратегия, для выбора моделей. Эта утилита разработана в первую очередь для видеокарт AMD (RX 6600 - 6700), не поддерживающих ROCM HIP SDK

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages