Комментарии 10
Судя по описанию, нечто похожее на то, что реализовано в большинстве агентских систем: задача разбивается на мелкие шаги, для каждого шага идет цикл с выполнением и проверкой до тех пор, пока шаг не будет полностью выполнен, затем переход к следующему шагу.
https://habr.com/ru/articles/991370/
# [Инсайт] Градиентный бустинг из SLM (7B) против SOTA LLM
## Meta
| Поле | Значение |
| --- | --- |
| Дата | 2026-01-31 |
| Источник | habr.com/ru/articles/991370/ [1] |
| Тип | LLM Ensemble / DevOps [Комментарии] |
| Статус | New |
***
## Samari
Статья предлагает **итеративный бустинг** из маленьких моделей (SLM 7B): Base генерит черновик, Critic ищет ошибки (JSON с severity/errors), Booster фиксит — цикл до 5 раз или low severity.[1]
Ансамбль (Mistral7B Base, Qwen7B Critic, Hermes8B/Llama/Gemma Booster) бьёт Gemini 3 Flash на мульти-итент задачах (код+логика+JSON), особенно в медицине/финансах.[1]
Преимущества над MOE: последовательная проверка (реверс ошибок), экономия (early stop), локальность (on-prem), микс архитектур для доменов.[1]
Метрики: апгрейд качества на сложных задачах; latency ~2x Gemini, но privacy и кастомизация на высоте.[1]
Идеально для single-turn мульти-задач, где SOTA плывёт из-за one-pass.[1]
***
## Польза для проекта
- **Прямое продолжение Chef & Critic**: Base=Chef (Qwen32B/Mistral), Critic=Qwen7B, Booster=Hermes — добавь цикл в n8n для итераций до low severity.[1][1]
- **On-prem оптимизация**: SLM (7-9B) на RTX4080 (16GB), микс Ollama-моделей (Qwen/Mistral/Llama) вместо дорогих SOTA; early stop экономит VRAM.[1][1]
- **Усиление RAG/SDD**: бустинг для spec/code/judge пайплайна — Critic ловит галлюцинации в RAG, Booster фиксит под JSON-контракт.[1][1]
- **Для WB-finance/TG**: домены логика/финансы — где прирост максимум; тест на PnL-код или TG-RAG.[1][1]
- **Интеграция с промптами**: мышление-промпты (№1/№6) в Critic для structured errors; полный локальный ансамбль без API.[1][1]
***
## Критика и ограничения
- **Latency рост**: 2-5 итераций = 2-5x медленнее one-pass; не для real-time (TG-боты), только batch/offline.[1]
- **Сложность настройки**: нужны точные промпты (JSON errors), домен-модели могут конфликтовать; тюнинг early stop критичен.[1]
- **Не классический бустинг**: inference-time, без обучения; на inference метрики хороши, но scaling на 1000+ задач? — тест нужен.[1]
- **Зависит от синтетики**: датасет 50 задач от Gemini; реальные WB-задачи (RAG+code) могут требовать доработки промптов.[1]
- **Ресурсы**: даже SLM — несколько загрузок в VRAM; для Coolify/production нужен оркестратор (Redis queue).[1][1]
***
## Развёрнутое объяснение (для junior)
### Простыми словами (аналогия)
Обычная LLM — **один бросок кубика**: генерит ответ за проход, часто с ошибками на сложном (код+логика+JSON).
**Бустинг SLM** — как **CatBoost в ML**: первая модель (Base) даёт черновик, вторая (Critic) находит ошибки (residuals), третья (Booster) фиксит — итеративно до идеала.
Аналогия Lego: Base строит грубый дом, Critic говорит «стена кривая, крыша течёт», Booster перекладывает кирпичи. Маленькие модели (7B как Lego-блоки) собирают SOTA-качество.
### Шаги запуска: 3–7 шагов
1. **Подготовь модели в Ollama**
```
ollama pull mistral:7b-instruct # Base
ollama pull qwen2.5:7b-instruct # Critic
ollama pull hermes-2-pro-llama-3:8b # Booster1
```
[1]
2. **n8n workflow: Base → Critic → Booster**
- Нода1 `Ollama` (Mistral): генерит черновик по задаче.
- Нода2 `Ollama` (Qwen): промпт «Анализируй на ошибки, верни JSON {severity: 1-5, errors: [...] }».
- IF: severity >2 → Booster (Hermes): «Исправь по errors, сохрани структуру». Цикл в Loop Over Items (max 5).[1][1]
3. **Промпт Critic (JSON)**
```
Ты аудитор. Верни JSON: {"severity":3, "has_errors":true, "errors":[{"type":"logic","desc":"CSV в RAM O(n) память"},...]}
```
[1]
4. **Early stop**
- После Critic: IF severity <2 → output final; else → Booster + back to Critic.[1]
5. **Интеграция с Chef & Critic**
- Замени single Critic на бустинг-цикл; используй Qwen32B как final Booster.[1][1]
6. **Тестирование**
- Синтетический датасет: 5 задач (код CSV, мораль авто, токсины) → Gemini/Ollama Judge на TRUE/FALSE.[1]
7. **Production**
- Redis queue для parallel batches; логи severity в pgvector для тюнинга.[1][1]
### Пример кода (n8n Code-нода для Critic parse)
```python
import json
critic_response = $input.first().json.response # от Qwen
try:
report = json.loads(critic_response)
severity = report.get('severity', 5)
errors = report.get('errors', [])
return [{'json': {'severity': severity, 'errors': errors, 'continue': severity > 2}}]
except:
return [{'json': {'severity': 5, 'continue': True}}]
```
Парсит JSON, решает цикл![1]
### Глоссарий
- **Gradient Boosting** — ансамбль, где модели фиксят ошибки предыдущих (residuals).[1]
- **SLM (Small Language Model)** — 7-9B модели вроде Mistral/Qwen vs LMM (70B+).[1]
- **Early Stopping** — остановка цикла при low severity (экономия).[1]
***
## Action items для Инсайты
1. Загрузить SLM-ансамбль в Ollama: Mistral7B/Qwen7B/Hermes8B (effort: low).[1]
2. Построить n8n PoC: Base(Mistral) → Critic(Qwen JSON) → Booster(Hermes) + Loop (max5, early stop severity<2) (effort: high).[1][1]
3. Тест на 10 задачах (CSV-код, PnL-логика, TG-RAG); Judge = Qwen32B или Gemini (effort: medium).[1][1]
4. Интегрировать в Chef & Critic: заменить single Critic на бустинг-цикл (effort: medium).[1][1]
5. Метрики: latency/quality vs single Qwen32B; логи в Sheets/pgvector (effort: medium).[1][1]
6. Док в insayty.md: промпты + схемы; связать с RAG/SDD (effort: low).[1][1]
7. Update Insaity.xlsx HIGH, Space on-prem/DevOps (effort: low).[1]
***
## Строка для Insaity.xlsx
| Дата анализа | Источник (тема+ссылка) | Тип (Направление) | Инсайт | Контекст/детали (развёрнуто + глоссарий) | Приоритет | Срочность | Важность | Сложность | Action items | Статус | Связанный Space пользователя |
| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |
| 2026-01-31 | habr.com/ru/991370/ LLM бустинг SLM [1] | LLM Ensemble [Комментарии] | Итеративный бустинг SLM: Base → Critic(JSON errors) → Booster, цикл до low severity, бьёт SOTA на мульти-задачах. | Что это? Каскад 7B-моделей (Mistral Base, Qwen Critic, Hermes Booster): черновик → audit errors → fix, 2-5 итераций. Зачем? Лучше one-pass SOTA на код+логика; локально, privacy, микс доменов (медицина/финансы).[1] Как запустить? 1) Ollama pull SLM; 2) n8n: Ollama Base → Code-parse Critic JSON → IF severity>2 → Booster Loop; 3) Промпты: Critic JSON severity/errors; 4) Тест 10 задач; 5) Интеграция Chef&Critic; 6) Метрики latency/quality; 7) Док + xlsx.[1][1] Аналогия: CatBoost — фикс ошибок по шагам. Пример: Python Code-нода для parse Critic. Глоссарий: SLM — small 7B; Early Stopping — стоп по severity; Residuals — ошибки для Booster.[1] | HIGH | Нормально (1-2 нед) | Важна (Medium/High) | Средняя/Высокая | 1) Ollama SLM ансамбль; 2) n8n PoC бустинг-loop; 3) Тест 10 задач + Judge; 4) Замена Critic в Chef&Critic; 5) Метрики Sheets; 6) insayty.md промпты; 7) xlsx update.[1][1] | New | Инсайты, on-prem, DevOps |
Привет!
Не совсем понял, вы все 3-4 промпта в одно диалоговое окно вводите? Или заходите на каждую llm отдельно и копипастой туда сюда ответы/вопросы гоняете?
Идея хорошая, я сам к ней прихожу.
Зы, Gemini в последнее время очень радует, нет лимитов, кодь сколько влезет, пока лллм с ума не сходит 😁💪
цепочка такая: отдельная задача для Gemini flash для получения baseline [промпт + задача]
затем каскад: первичная модель [свой промпт + задача], получили ответ - отправляем модели-критику [свой промпт + задача + ответ первичной модели], затем модель-корректор [свой промпт + задача + ответ критика + ответ 1 модели] и так далее, то есть промпты у каждой модели разные, это 3 разных автоматизированных запроса к api кодом.
Спасибо.
А как боретесь с галлюцинациями? Из опыта Gemini, 20-30 вопросов/ответов и все, начинает бред нести, забывает о чем вообще речь была.
Интересно было бы расписать как вы все автоматически настроили и связали несколько моделей.
Хотя бы вкратце
А, я понял о чем вы! здесь "галлюцинации" не совсем подходит, забывает о чем вообще речь была - это проблема потери "контекста". Вы, вероятно, используете модели в интерфейсе, у каждой модели есть ограничение контекста (Gemini 1 миллион, chat gpt 256 тысяч.) Что это значит? Грубо говоря конкретная модель может обработать 1 миллион токенов (ориентировочно 4 тома войны и мира) в одном окне. Под окном подразумевается отдельный чат, где у модели нет памяти по остальным вашим запросам (ниже прикрепил скрин, логика везде одинаковая куда вы не пойдете)

то есть в одном чате модель может обработать n количества текста, после прохождения порога внутри модели матричные вычисления начинают расти квадратично, вычислений для обработки не хватает и модель начинает забывать о чем вы вообще разговаривали.
Как бороться?
Всегда, когда вы выполняете задачу с помощью нейросети, держите в голове одно единственное правило - если я обсуждаю задачу больше получаса - я сразу создаю новый чат. Со временем вы начнете эмпирически понимать когда вы набрали 1 млн контекста, но первично следуйте этому правилу. Важно также соблюдать гигиену, давайте на примере:
Я решаю аналитическую задачу (скинул нейронке какую-то табличку и мне нужно на основе нее проверить очень много гипотез). Я сразу применяю несколько правил:
1) я не спрашиваю в этом чате нейросеть ничего, что не требует памяти по проекту (например мне нужно уточнить часть кода которую она написала или параллельно узнать о какой-то компании в таблице) - для этого мне не нужен весь контекст нашего проекта, поэтому я создам новый чат и спрошу в отдельном чате, чтобы сэкономить место.
2) Чтобы нейронка не переделывала одну и ту же задачу много раз - я четко описываю критерии, инструкции и тд. Все то, что я хочу получить и как получить.
3) Если задача обширная, я обычно сам ее декомпозирую - делаю на подзадачи и отдаю в разных чатах
4) Если чувствую, что контекст почти дошел до пика - пишу в этом же чате "сделай ревью всего что мы успели сделать детально" и иду в новый чат с этим описанием что уже выполнено
А по поводу автоматизации
если задача подразумевает, например, 50 ответов на задачи или подразумевает, что вашим продуктом будете пользоваться не только вы или вам не хватает инструментов базовой Gemini в окне - вы всегда идете в автоматизацию через запросы "напрямую"
То есть пишите питон код, который будет исполняться под вашу задачу. Для этого нужен api ключ сервиса: openai, Gemini, https://openrouter.ai и тд. И это стоит денег. У таких запросов огромный ряд преимуществ, здесь конечно в идеале вам спросить саму нейронку как это работает, потому что объясняю я всегда стабильно криво к тому же для этого отдельную статью нужно писать. Но если вы пишете код с помощью Gemini, то попросите ее написать responses api запрос к openai модели, она вам детально обьяснит куда сходить что сделать и сама скрипт напишет)
Благодарю вас за развёрнутый ответ!
Интуитивно я пришёл к тем же правилам которые вы описали, правда иногда сильно увлекаясь общением с ллм я сам могу проворонить нужный момент и переходить в новый чат 😂🤦
И последний вопрос, как вы считаете, какая ллм с условно бесплатными лимитами как Джемини хорошо делает код?
Мне нравится Клауде, но там слишком мало бесплатных токенов, ничего толком не успеваю
если у вас есть подписка chat gpt или Gemini - то у них есть Codex и Antigravity - отдельные ide которые пишут код, лимиты там бешеные, за 20 долларов то, что они предлагают это считай "бесплатно". Кстати насколько помню Antigravity и бесплатный тоже есть, но нужно уточнить
если подписки нет и не хотите оформлять я бы присмотрел https://openrouter.ai/upstage/solar-pro-3:free который вышел дня два назад, корейская модель, я ее тестил - пишет сносно, бесплатная на промопериод. еще слышал что grok fast бесплатный в Cursor. Но по бесплатным нейронкам я не особо, если честно, разбираюсь

LLM — 3 «семёрки» против SOTA, строим «градиентный бустинг» из SLM моделей