- BrainTools - https://www.braintools.ru -
Разработчики llama.cpp добавили [1] поддержку router mode — режима, с помощью которого можно динамически загружать, выгружать и переключать несколько моделей без перезагрузки сервера. В блоге Hugging Face отмечают, что чаще всего пользователи просили реализовать именно эту функцию.

llama.cpp — легковесный HTTP-сервер для локального запуска языковых моделей, совместимый с эндпоинтами OpenAI.
Чтобы воспользоваться функцией надо запустить сервер в режим роутера без явного указания нужной модели:
llama-server
Если до этого пользователь скачивал модели с помощью llama-server -hf user/model, то они автоматически станут доступны из кэша (LLAMA_CACHE или ~/.cache/llama.cpp). При этом, если добавить новую модель в кэш, то надо обязательно перезапустить роутер, чтобы она стала доступна.
Вместо кэша можно указать путь к локальному каталогу GGUF-моделей:
llama-server --models-dir ./my-models
После этого можно отправлять запросы к конкретной модели, указывая её название, загружать модели и выгружать, чтобы освободить видеопамять. Всё это без перезапуска сервера.
# выбор конкретной модели
curl http://localhost:8080/v1/chat/completions
-H "Content-Type: application/json"
-d '{
"model": "ggml-org/gemma-3-4b-it-GGUF:Q4_K_M",
"messages": [{"role": "user", "content": "Hello!"}]
}'
# загрузка модели вручную
curl -X POST http://localhost:8080/models/load
-H "Content-Type: application/json"
-d '{"model": "my-model.gguf"}'
# выгрузка модели
curl -X POST http://localhost:8080/models/unload
-H "Content-Type: application/json"
-d '{"model": "my-model.gguf"}'
# список всех доступных моделей
curl http://localhost:8080/models
В веб-интерфейсе [2] также доступа опция переключения моделей. Для этого достаточно выбрать нейросеть из выпадающего меню, и она автоматически загрузится.
Автор: daniilshat
Источник [3]
Сайт-источник BrainTools: https://www.braintools.ru
Путь до страницы источника: https://www.braintools.ru/article/23263
URLs in this post:
[1] добавили: https://huggingface.co/blog/ggml-org/model-management-in-llamacpp
[2] веб-интерфейсе: https://github.com/ggml-org/llama.cpp/tree/master/tools/server/webui
[3] Источник: https://habr.com/ru/news/977506/?utm_source=habrahabr&utm_medium=rss&utm_campaign=977506
Нажмите здесь для печати.