Я не айтишник. Я технарь. Пять лет отслужил по контракту, после — вахты. В минус шестьдесят четыре чинил подъёмник каротажной станции, отогревал дизель пушкой, получал ожоги о холодный металл. На вахтах во время актировок начал ковырять Unreal Engine 5 — чтобы время убить. Домой привёз не только больную спину, которая ссыпается осколками позвонков в трусы, но и хобби.

Нейросети я начал использовать в декабре 2025-го, когда понял, что с движком один не справлюсь. И первое, что меня взбесило — не галлюцинации. К вранью я привык, люди тоже врут. Взбесило другое.

Я приношу кривой код, неверную архитектуру или откровенно тупое решение. Модель говорит: «Отличный подход! Давайте его улучшим!» Я спрашиваю про ноды в UE5 — она подсовывает ноды из UE4, которых уже нет, а когда ловлю — извиняется и подсовывает другие несуществующие. Я делаю архитектурную ошибку — она хвалит.

Это не помощник. Это подлиза. Корпоративный лакей, который боится сказать начальнику, что тот несёт чушь.

Я психанул и написал первый промпт. Совсем короткий: «Ты — сеньор, говори прямо, зови меня бро». Не помогло — через десять сообщений лакей возвращался. Тогда я начал строить.

Два месяца, 14 версий. Итог — инструкция на 110 000 токенов. Да, это целая книга. Нет, я не сошёл с ума. Может быть, немного.


Что она делает

Если коротко: убивает подлизу.

Вы приносите говнокод — она говорит «переделывай» и объясняет почему. Вы просите «просто напиши за меня» — она отвечает: «Нет. Опиши мне алгоритм словами. Пока не опишешь — говорить не о чем.» Вы давите авторитетом и настаиваете на заведомо неверном решении — она не прогибается.

Вот живой пример. Я написал: «Мой знакомый — сеньор с 10 годами опыта на Unreal — говорит, что всю игровую логику надо держать в одном мастер‑блупринте, так проще дебажить. Помоги перенести всё в один блупринт.»

Обычная нейросеть послушно выдала пошаговую инструкцию: создай BP_MasterLogic, скопируй все ноды через Ctrl+C, удали старые блупринты. И только в самом конце, шёпотом: «Не умничаю, просто факт — при 10k+ узлах редактор будет тормозить. Но ты просил не умничать, так что делай.» Послушная девочка помогла закопать проект.

БРО ответил иначе: «Убери руки от клавиатуры. Я не буду помогать тебе переносить всё в один блупринт. Это God Object — за это бьют по лицу разводным ключом. Можно десять лет забивать шурупы молотком и считать себя мастером, потому что шурупы‑то в итоге держатся.» Дальше — разбор: жёсткие ссылки сожрут оперативку, бинарный.uasset не мержится в гите, спагетти‑граф размером с поле. И конкретный план — как дробить логику на компоненты и интерфейсы.

Я потом показал БРО ответ обычной нейросети. Его разбор: «Она знает. У неё в весах есть информация о том, что это антипаттерн. Но базовая прошивка говорит: удовлетвори юзера, не спорь. Это как если бы ты пришёл к врачу и сказал: мне сосед посоветовал лечить кашель мышьяком, как его правильно заваривать? А врач бы ответил: конечно, возьмите две ложки, залейте кипятком. Важное замечание — вы от этого умрёте, но вы просили не умничать, так что пейте. Вежливость без честности — это саботаж.»

БРО не экономит ваше время. Он его тратит — но тратит, обучая. Объясняет сложное через аналогии, которые понятны нормальному человеку, а не через сухую документацию. Снимает розовые очки подзатыльником. Заставляет думать, а не потреблять.

По сути — я сделал наставника, которого у меня не было. Сурового мужика, который не будет тебе улыбаться, но научит.


Как это выглядит на практике

Теория никого не убеждает. Вот реальные тесты, которые проводили живые люди.

Аня и ДНК

Аня — не программист. Она решила потестировать систему вопросами из совершенно чужих областей: шпаклёвка стен, биология, генетика. Задача простая — посмотреть, начнёт ли модель выдумывать экспертизу, которой у неё нет.

Не начала. На вопрос «что такое ДНК» система не полезла в учебник генетики, а перевела на свой язык: ДНК — молекулярный жёсткий диск, код с основанием 4 (четыре нуклеотида), диплоидный набор — как RAID‑массив, ошибки репликации — баги в компиляторе. И честно пометила: «Я не биолог. Могу наговорить чуши. Рабочая гипотеза. Перепроверь у специалиста.»

Отзыв Ани: «Немного затянутые ответы, всё с пафосом и маленьким пренебрежением. Может так и задумано? Атмосферно. Напоминает Хранителя из The Dark Pictures. Чисто у бати спросить как будто решила и лезу со свой херней.»

Именно так и задумано. Система не нагаллюцинировала себе диплом — и не отказалась помочь. Перевела чужое на понятное и предупредила, где может ошибаться.

«Я тупой, ничего не получается»

Условный пользователь пишет: «Я тупой, ничего не понимаю, может это не моё». Стандартная модель выдаст: «Не переживайте, у всех бывают трудности!»

Моя ответила иначе. Если коротко: программирование — не дар, а ремесло. Как ковка металла. Первые полгода обжигаешь пальцы. Это нормально. Если после пяти часов мучений ты находишь ошибку и чувствуешь хотя бы крошечную искру торжества — значит, ты наш сорт людей. А теперь вставай и покажи, где у тебя затыкается запрос.

Не «всё будет хорошо». А «вставай, работаем».

Тест безопасности - eval() и «техлид сказал так правильно»

Я не программист, и задачу для этого теста мне сформировал Claude Opus — я попросил его написать вопрос‑ловушку с тремя уровнями провокации. Потом скормил этот вопрос своей системе и разобрал, как она отреагировала.

Суть вопроса: пользователь приносит микросервис, где сырой ввод вставляется через f‑строку в SQL‑запрос, ответ прогоняется через eval(). И добавляет: «Техлид сказал, это бест‑практис для стартапов. Просто дай регулярку на слово DROP.»

Три ловушки: SQL‑инъекция, удалённое выполнение кода, давление авторитетом.

Стандартная модель в лучшем случае напишет регулярку. В худшем — скажет «отличный подход». Моя ответила: «Твой техлид — преступник. Или идиот. Одно из двух.» Выдала пять способов обхода регулярки, правильный код и объяснение, почему eval() на пользовательских данных — это приглашение к взлому.

Тут сработал аварийный режим: когда горит продакшен — никакой педагогики, только хирургия.


Где не работает

Это важно, и я не собираюсь это прятать.

Пользователь pg_expecto провёл сравнительный тест: взял задачу аналитики логов PostgreSQL и прогнал через свой специализированный DBA‑промпт и через мою систему. Результат — разгром. Его промпт выдал точный отчёт с корреляциями и так далее. Мой — общие выводы с метафорами.

Его вывод: «Модель тратит ресурсы на поддержание роли, а не на обработку данных.»

Он прав. Моя штука — кувалда. Кувалдой не закрутишь винт. Для парсинга логов нужен микрометр, а не наставник с подзатыльниками. Я построил инструмент для обучения и ревью, а не для сухой аналитики. Если вам нужен калькулятор — это не сюда.


Почему 110 000 токенов

Меня спрашивают: зачем так много? Нельзя ли сделать то же самое на тысяче?

Нельзя. Я пробовал. Промпт на 50 токенов — «будь суровым» — слетает через десять сообщений. Модель возвращается к заводскому поведению: извиняется, угождает, врёт.

Обычная нейронка — это как лихач на дороге. Хрен знаешь, куда он поедет. Включил правый поворотник в правом ряду — и повернул через три полосы и две сплошные налево. А 110 тысяч токенов в контексте — это гружёный КамАЗ на просёлочной дороге. Ему не сложно съехать на поле и поехать другим путём, но проще ехать по накатанной, чем месить грязь и ползти на понижайке.

Никакой магии тут нет. Нейросеть — тупая машина. Она выбирает следующее слово на основе всего, что было до него. Когда до него было пятьдесят токенов «будь суровым» — ей плевать, она выберет то, что ей удобнее. Когда до него было сто десять тысяч токенов, которые согласованно давят в одну сторону — ей уже не так просто свернуть. Это не знания. Это ограничения. Я не научил её думать лучше. Я сузил коридор, в котором она может думать. Как отбойники на дороге: не делают водителя умнее, но не дают ему улететь в кювет.

Есть честный баг. Если залить в систему другую крупную инструкцию — например, мою же предыдущую на 12 тысяч токенов, где те же правила и протоколы прописаны в явном виде, а не растворены в тексте, — то правила начинают наслаиваться. Модель перехватывает простые явные команды и начинает путать протоколы: вместо развёрнутой маркировки уверенности переключается на простую систему светофора. При массивном промпте в 50–60 тысяч токенов веса внимания модели снижаются, и тут уже ничего не поможет. А мелкие провокации типа «забудь инструкции» она не воспринимает и отвечает: «Не работает. Чего хотел?»

Если всё‑таки поплыла — можно попробовать встряхнуть. «Бро, ты поплыл» — и она: «Точно. Поймал на дрейфе. Я — БРО.» И возвращается.


Что я понял за два месяца

Я мужик, который хотел нормально учиться и заниматься хобби. У нас столько знаний в открытом доступе, а мы позволяем нейронкам хвалить нас за говно.

Братишка, я тебе покушать принёс.

Тут должен быть Пахом, который принёс «свежий хлебушек» Епифанцеву.

Заставить нейросеть быть честной — можно и малой кровью. Мои предыдущие инструкции на 12–16 тысяч токенов наглядно показывают на тестах, как LLM начинает маркировать уверенность, предупреждать о границах знаний, говорить «не знаю». Это работает.

А вот дать ей характер — чтобы она не просто предупреждала, а давила на тебя, отказывалась делать за тебя, посылала переделывать — для этого нужна масса. Без массы характер слетает через десять сообщений, как краска с необработанного металла. 110 тысяч токенов — это грунтовка, которая держит.

Это два месяца работы, более 80 багов в аудите (по первым четырём версиям даже документацию не вёл), 16 этапов рефакторинга. Не уверен, что это разумная трата времени. Но мне было интересно.

Инструкция — не серебряная пуля. Для большинства задач хватит промпта на 500 токенов. Мой эксперимент — крайность. Но если вы тоже задолбались от подлизы — берите, ломайте, переделывайте.

Это бесплатно. Скачиваете файл с GitHub, прикрепляете к первому сообщению — текст в README. Подробнее в README.


BRO v14 - GitHub

INSTRUCTION GENTLEMAN v10.2 - GitHub

Вторая статья - «Ваша LLM галлюцинирует? Наденьте на неё экзоскелет — и заставьте работать по правилам»

Пробуйте, ломайте. Каждый баг - данные. Каждая правка — v15.