Локальные модели наконец-то стали по-настоящему хороши. У автора статьи — M2 Mac с 64 ГБ RAM и 1 ТБ накопителя. За последнее время он перепробовал кучу связок: сырой llama.cpp, Open WebUI, llama-cpp-python, Ollama, llamafiles и LM Studio. Раньше локальные модели были медленными и неточными — без сверки с API-моделями было не обойтись. Первой, кто это изменил, стал GPT-OSS. Теперь же, с выходом Gemma 4 от Google, автор впервые смог нормально работать с агентами локально. Связка gemma-4-26b-a4b на LM Studio даёт около 75% точности и скорости фронтовых моделей.
На локальной модели он уже успел отрефакторить Python-ноутбук в модули, написать юнит-тесты, вычитать посты для блога, и даже заставить агента собрать заготовку под двухбашенную модель для рекомендаций. Всё это — внутри Docker-контейнера с жёсткими ограничениями, без доступа к сети и с разрешением только на bash. Агентный фреймворк — Pi, инференс-сервер — LM Studio. В качестве модели сейчас автор использует более новую и лёгкую gemma-4-12b-qat — она быстрее, меньше по размеру, но почти не теряет в точности.
Настроить это несложно. В Pi правится models.json, чтобы он стучался на http://host.docker.internal:1234/v1. В Docker Compose поднимается сервис pi, в OPENAI_API_BASE тоже прописывается локальный эндпоинт. Внутрь контейнера монтируется конфиг модели и рабочая директория, а хост подвязывается через host.docker.internal. Сам Pi запускается из bash-скрипта, который чистит имя контейнера и прокидывает API-ключи.
Проблемы ещё есть: медленный инференс, маленькие контекстные окна, которые упираются в железо, и изредка слетающие шаблоны промптов. Но патчи выходят мгновенно. Для прода это пока рановато, но плюсы очевидны: ты можешь смотреть, как обрабатываются токены, менять контекстное окно, систему квантизации, сравнивать модели между собой и копаться в коде гарнеса. Инструменты становятся только лучше.