Локальный триаж PR на Gemma и Qwen: замена ChatGPT Pro за $0
Команда мейнтейнеров OpenClaw столкнулась с задачей: репозиторий получает сотни issue и pull request ежедневно, и каждый нужно классифицировать, приоритизировать и направить нужному разработчику. Проблема не в отсутствии инструментов — закрытые модели вроде GPT-5 или Claude справляются с этим легко. Проблема в стоимости и контроле.
Источник: huggingface.co
Подписка ChatGPT Pro стоит $200 в месяц. Если настроить агента на каждом новом PR, квота закончится быстро. Приходится запускать обработку раз в 2–6 часов, теряя оперативность. Мейнтейнер Onur Solmaz решил проверить, можно ли заменить дорогой облачный сервис локальной моделью на собственном оборудовании — и получить уведомления в реальном времени без ежемесячных платежей.
Результат: агентная система на базе Gemma 4 и Qwen 3.6, работающая на мини-ПК DGX Spark (NVIDIA GB10 с 128 ГБ unified memory). Модели выдают сотни токенов в секунду и классифицируют PR за секунды. Расходы — только электричество. Вот как это собрано и что нужно проверить, прежде чем повторять.
Что изменилось: от дорогого облака к локальному агенту
Раньше типовой сценарий выглядел так: облачный агент на ChatGPT Pro обрабатывает каждый новый issue или PR, расходуя квоту. Чтобы не превысить лимит, запуск откладывали на несколько часов — уведомления переставали быть срочными.
Сейчас команда OpenClaw использует локальный агент, который работает непрерывно. При появлении нового PR агент получает заголовок, тело и сокращённую выдержку diff. Затем он может заглянуть в код репозитория (только чтение) и выдать результат классификации в структурированном JSON.
Ключевое отличие: агент не просто вызывает одну модель с готовым промптом. Он использует обвязку (harness) Pi, которая позволяет модели самой решать, какие инструменты применить — прочитать файлы или сразу выдать ответ. Это даёт более точную классификацию, чем простой запрос к Chat Completions endpoint.
Почему это важно сейчас: риск потери доступа к закрытым моделям
В июне 2026 года Anthropic удалила свою флагманскую модель Claude Fable 5. Для команд, которые строят бизнес-процессы на закрытых API, это стало сигналом: модель могут отозвать в любой момент. Владеть своим стеком и уметь запускать модели локально перестало быть опцией для энтузиастов — это вопрос устойчивости бизнеса.
Локальные модели Gemma 4 (26B параметров, 4 активных на токен) и Qwen 3.6 (35B, 3 активных) уже способны генерировать сотни токенов в секунду на доступном оборудовании. Это значит, что для задач классификации и триажа они не уступают закрытым аналогам по скорости, но дают полный контроль над данными и инфраструктурой.
Как собрать систему: четыре компонента
Система триажа строится из четырёх частей, которые можно проверить и настроить за неделю.
1. Локальная модель. Команда тестировала две: Gemma 4 26B a4b и Qwen 3.6 35B a3b. Обе работают на DGX Spark с 128 ГБ unified memory. Если у вас другое оборудование, нужно проверить, помещается ли модель в память и даёт ли нужную скорость.
2. Агентный харнес (Pi). Это обвязка, которая запускает модель, передаёт ей контекст PR и даёт доступ к инструментам. Pi вызывает локальный endpoint модели и управляет циклом: запрос → действие → результат.
3. Инструменты для агента. Агент получает два инструмента: - reposhell — ограниченная read-only оболочка для просмотра файлов репозитория. Важно: используется не полный bash, а reposhell, чтобы злоумышленник не мог через prompt-инъекцию в PR заставить модель выполнить произвольные команды. - final_json — инструмент для выдачи результата классификации.
4. Набор меток. Команда определила конечный список категорий: local_models, self_hosted_inference, acp, agent_runtime, codex, ui_tui и другие. Модель относит каждый PR к одной из них.
Сравнение: локальный подход против облачного
| Параметр | Облачный агент (ChatGPT Pro) | Локальный агент (Gemma/Qwen) |
|---|---|---|
| Стоимость | $200/мес. + квота | Электричество + оборудование |
| Задержка уведомлений | От 2 до 6 часов (из-за квоты) | Секунды (реальное время) |
| Контроль над данными | Данные уходят в облако | Полный, локально |
| Риск отзыва модели | Высокий (пример — Claude Fable 5) | Нулевой (веса локально) |
| Оборудование | Не требуется | DGX Spark или аналог с 128 ГБ |
| Сложность настройки | Минимальная | Средняя (харнес, инструменты, безопасность) |
Где риски и ограничения
Система работает, но не идеально. Вот что нужно проверить до внедрения.
Оборудование. Тесты проводились на DGX Spark с 128 ГБ unified memory. Если у вас меньше памяти или другая архитектура, модели могут не поместиться или работать медленно. Перед покупкой оборудования стоит протестировать на имеющихся ресурсах.
Prompt-инъекции. Агент получает содержимое PR, которое может содержать вредоносные инструкции. Использование reposhell вместо полного bash снижает риск, но не устраняет его полностью. Нужно продумать дополнительные меры: изоляцию окружения, лимиты на чтение, мониторинг необычных действий агента.
Качество классификации. Команда не приводит метрик точности. Локальные модели могут ошибаться на сложных или неоднозначных PR. Перед запуском в production стоит протестировать на исторических данных и настроить порог уверенности, при котором PR отправляется на ручную проверку.
Зависимость от конкретных версий. Используются Gemma 4 26B a4b и Qwen 3.6 35B a3b. При выходе новых версий нужно проверять совместимость с харнесом и инструментами.
Что можно проверить на этой неделе
- Оцените объём. Посчитайте, сколько issue и PR проходит через ваш репозиторий в день. Если меньше 50 — возможно, локальный триаж избыточен. Если больше 200 — присмотритесь к системе.
- Проверьте оборудование. Узнайте, сколько свободной памяти на машине, где вы планируете запускать модель. Gemma 4 26B требует около 16 ГБ в оптимизированном формате, Qwen 3.6 35B — около 20 ГБ. Для комфортной работы нужно 128 ГБ unified memory.
- Скачайте харнес Pi. Репозиторий доступен, установка занимает несколько минут. Запустите тестовый прогон с одной из моделей на локальном endpoint.
- Составьте список меток. Определите 5–10 категорий, которые покрывают 80% ваших PR. Не пытайтесь охватить всё — лучше донастроить позже.
- Протестируйте безопасность. Создайте тестовый PR с безобидной prompt-инъекцией и проверьте, сработает ли защита
reposhell. Если агент выполнит команду за пределами разрешённых — систему нельзя запускать в production. - Сравните стоимость. Посчитайте, сколько вы тратите на облачные API для триажа сейчас. Если сумма превышает $50–100 в месяц, локальное решение окупится за несколько месяцев.
Источники
Темы журнала
Что почитать дальше
- Claude Code без Anthropic API: подключение китайских LLM GLM 5 и экономия
- Claude Fable 5 под экспортным запретом: смена переговорщика в Anthropic и что ждать бизнесу до конца 2025
- Claude пишет 80% кода в Anthropic: почему ревью стало узким местом
- Anthropic под давлением регуляторов: что изменить в работе с Claude в 2026
- 6 AI-инструментов для генерации текста в 2026: ChatGPT, Claude, Gemini, Jasper, Copy.ai, Writesonic — сравнение по 5