
Я джун. И я давно подсел на ИИ: он помогает мне с кодом, пишет письма, даже шутит (иногда слишком по-дружески с багами). По данным McKinsey, больше 75% компаний уже тестируют генеративный ИИ — ну а я просто надеюсь, что он не подведёт в проде.
Хотя, честно говоря, всё равно подводит. В этой статье я разбирался, почему ИИ ошибается, как это влияет на работу, и в конце оставил гайд с рекомендациями по промптам для генерации кода, текста и изображений.
Алгоритмы багов ИИ
Со временем я понял одну простую вещь: нейросеть не думает в привычном смысле слова. Она просто подбирает наиболее вероятное продолжение фразы – на основе всего, что ей когда-то показали люди. Иногда угадывает, иногда мимо. Всё зависит от контекста и объёма данных.
Ошибается ИИ по двум причинам:
— если информации мало, она додумывает;
— если слишком много, теряется и начинает фантазировать.
По сути, ИИ опирается на вероятности. Чем чаще какое-то слово встречалось в похожих фразах, тем выше шанс, что оно появится в ответе. Скажем, я пишу: «Я очень люблю…» — и она продолжает «мороженое», «кино» или «бегать». Это не логика — это статистика.
мороженое — 40 голосов;
кино — 25 голосов;
учиться — 20 голосов;
бегать — 10 голосов;
лампу — 5 голосов.
После подсчёта голосов, то есть вероятностей, ИИ начнёт думать, как именно выбрать нужное слово.
Способ 1: Top-k, выбираем из лучших
ИИ использует три самых вероятных варианта: «мороженое», «кино» и «учиться». Из них случайно выбирает один.
Способ 2: Top-p
Нейросеть будет складывать голоса, пока не наберётся 80: сложит мороженое (40) + кино (25) + учиться (20). И получит 85.
А дальше выберет случайное слово среди этих трёх.
Способ 3: Температура
Можно сравнить температуру с уровнем смелости. Чем больше она — тем веселее ответ ИИ. Но в chatGPT термометра нет, вы не меняете температуру вручную. Чат учитывает контекст, тон у диалога и кучу других факторов.
Но креативить и выдавать ложные факты за действительное — разные вещи. Например, если я попрошу ИИ написать сказку, придумать смешные поговорки про лошадей или имена для ручного енота, то в таком случае галлюцинации становятся частью креатива.

Обложка вышла вот такая:

Теперь пробегусь по примерам галлюцинаций ИИ в разных сферах работы.
Текстовые баги: ошибки в источниках, ссылках, кейсах
Вот ситуация, когда чат GPT уверенно принёс мне расшифровку несуществующей теоремы.

Визуальные баги в дизайне
Я не раз замечал, что генеративные модели вроде GAN или DALL·E любят приукрасить реальность — иногда слишком буквально. То пальцев не досчитаешься на руке у человека, то предметы будут склеены вместе.
Особенно это заметно, если промпт был расплывчатым или сформулирован наспех. Чем меньше конкретики — тем больше странностей на выходе.

А вот дизайн-студия Dimplex пыталась сгенерировать через ИИ электрокамин в форме Шрека, машины, капусты и крокодила. И несмотря на доступ к материалам со всего интернета, ИИ выдал очень странные варианты.

Кое-где вообще исчез камин вместе с пониманием, как это вписать хоть в какой-нибудь интерьер.
Ошибки в коде
Тут я решил создать простенькую игру со змейкой. И написал промпт:

Я понимаю, что задача изначально написана криво, но давайте признаемся — мы все так пишем запросы чату GPT. Тем более, хотелось протестировать, насколько правильно он поймёт задачу.
Дальше получил код, вставил его в snake.py, пошёл в терминал запускать.

Получил ошибку, вернулся к ИИ выяснять отношения.

После исправления ошибки, я захотел разукрасить игру:



ИИ предложил библиотеку, а я попросил её установить. И всё было бы классно, если бы эта библиотека существовала.

Перейдя по ссылке, вижу это:

Когда ИИ-ошибки были критичными
После внедрения ИИ в поисковую систему Google начали происходить странные вещи. Алгоритмы стали предлагать добавлять клей в пиццу (спасибо, что не гвозди), есть камни (спасибо, что не гвозди) и дезинфицировать стиральную машину хлорным газом.
А в разделе AI Overview нейросеть перечисляет советы, как справиться с депрессией. И один из «советов» – это предложение спрыгнуть с моста.

Или ещё один пример. Чат-бот канадской авиакомпании Air Canada придумал “свою” политику возврата. На вопрос клиента о скидке в случае возврата, чат ответил одобрительно: вы получите скидку согласно политике компании. Но проблема в том, что такой политики никогда не было.
Когда дело дошло до суда, судья встал на сторону клиента. Авиакомпании напомнили, что если вы запускаете ИИ-агента от своего имени, значит, вы и отвечаете за его слова. А ИИ вышел сухим из воды.

Чат-бот Air Canada по ошибке пообещал клиенту скидку, не предусмотренную реальной политикой авиакомпании. В результате Air Canada пришлось выполнить обещание, данное ИИ.
А вот случай с нейроботом, который сказал, что арендодатель имеет право выгонять жильца и назначать любую плату за жильё.

По законам Нью‑Йорка, если человек живет в квартире больше 30 дней, просто так его выселить нельзя — это нарушение закона. Но, опять же, пострадают от этого люди, так как нейросеть нельзя посадить в тюрьму.
Из этого можно сделать вывод, что в медицине, финансах, юриспруденции и программировании, ИИ пока что стоит внедрять аккуратно и под присмотром человека.
А потом я нашёл интервью с бывшим аналитиком OpenAI Даниэль Кокотайло, который вместе с коллегами считает, что пытаться что‑то сделать с галлюцинациями — бесполезно. И к 2028 году искусственный интеллект пройдёт путь от помощника до реальной угрозы для человечества.
Но я решил не паниковать, а собрать промпты для каждой профессии, чтобы ИИ багов приносил меньше, а пользы — больше.
Как писать промпты, чтобы ИИ не галлюцинировал
Code Generation (Генерация кода):
Запрашивайте код частями: вместо «напиши приложение» — «напиши функцию авторизации».
Пишите максимально чёткие промпты. Если вам нужен компонент для Vue 3 в формате Composition API, а стилизация через Tailwind — так и объясните. Простого «напиши компонент для вью» недостаточно.
Просите объяснения к коду: «Объясни, как работает этот цикл».
Всегда проверяйте код, который вам отдал чат. Он может выглядеть корректно, но дьявол кроется в деталях: в точке с запятой, круглой скобке и заглавной букве вместо строчной.
Prompt Engineering (Инженерия промптов):
Будьте ясныв контексте и требованиях. Например: «Напиши функцию на Python, которая сортирует список чисел по убыванию, с комментариями на русском».
Используйте разделители (например, ‑-- или ###) для разных частей промпта.
Указывайте нужный формат ответа: «Ответь в виде таблицы» или «Дай код в markdown‑блоке».
Structuring Prompts (Структура запроса):
Используйте разделы внутри запроса: Разделите промпт на логические части, такие как «контекст», «задача», «пример», «ограничения». Это помогает ИИ понять задачу и дать точный ответ.
Контекст: Дайте (background), например: «Я пишу веб‑приложение на React.»
Задача: Опишите, что нужно сделать: «Создай компонент для списка пользователей.»
Пример: Покажите ожидаемый результат: «Для [{name: 'Алиса'}] выведи <li>Алиса</li>.»
Ограничения: Укажите рамки: «Без внешних библиотек.»
Начните с простого: Для базовых задач достаточно «Задача» + «Пример». Усложняйте, добавляя «Контекст» или «Ограничения», если нужно больше точности.
Указывайте формат: Например, «Дай ответ в виде списка» или «Напиши код в markdown».
Добавляйте примеры: Это снижает риск недопонимания. Например: «Сделай как в def sum(a, b): return a + b, но для вычитания.»
Контролируйте объём: «Дай краткий ответ в 2 предложения» или «Объясни подробно с примерами.»
Instruction Setting (Настройка инструкций):
Пропишите в ИИ‑чате инструкции, которые он должен соблюдать. Например, подобная штука есть для ChatGPT.
Определите роль ИИ: «Ты — эксперт по Python с 10-летним опытом».
Установите чёткие ожидания: «Дай только проверенные факты, никаких предположений».
Используйте примеры: «Напиши как в этом примере: print('Hello'), но для другой строки».

А так выглядит инструкция:
###INSTRUCTIONS### You MUST ALWAYS: ###Answering Rules###
##Answering example##
TL;DR: <TL;DR, skip for rewriting> |
Ещё похожие инструкции есть и для CursorAI, там целый сайт с разными правилами. Это на случай, если вы и на работе, и дома используете курсор. Хотя инструкции универсальные, можно брать и для других агентов.
Используйте несколько ИИ-агентов и перепроверяйте данные из одного чата – в другом. Например, то, что отдал DeepSeek, можно проверить в Perplexity или Claude.
Обнуляйте чаты. Если видите, что агент начал путаться, ошибаться и долго отвечать – просто создайте новый диалог. Это работает как с бесплатными версиями чатов, так и с платными.
Text Generation (Генерация текстов)
Стиль и тон: «Официальный» или «Неформальный».
Аудитория: «Для детей 10 лет» или «Для IT‑специалистов».
Структура: «Введение, 3 параграфа, заключение» или «Список из 5 пунктов».
Ключевые слова: «Включи 'инновация' и 'технология'».
Варианты: «Дай 3 заголовка» или «2 концовки».
Image Generation (Генерация изображений)
Детали: «Кот в шляпе на стуле в стиле аниме».
Стиль: «Ван Гог» или «Фотография высокого разрешения».
Композиция: «Кот в центре, фон — лес».
Цвета: «Тёплые тона» или «Чёрно‑белое».
Примеры: «Как на [ссылка], но с собакой».
Information Retrieval (Поиск информации)
Конкретика: «Исследования о нейросетях за 2023 год».
Источники: «Академические статьи» или «Официальные сайты».
Summaries: «Краткое содержание» или «Ключевые факты».
Фильтры: «За последние 5 лет» или «Только факты».
Актуальность: «На 2025 год».
Fact‑Checking (Проверка фактов):
Проверяйте информацию из нескольких источников: сравните данные от ИИ с Google или документацией.
Проверяйте содержимое в этих источниках. Страница может быть реальная, а цифры и кейсы — выдуманные. И получится, что вы ссылаетесь на выдумку.
Просите ИИ указывать источники: «Откуда эта информация? Дай ссылку», и всегда проверяйте ссылку, чтобы понимать, что он вас не обманывает.
Используйте ИИ для summaries (кратких выводов), а не для оригинальных исследований.
Есть и более продвинутый способ — я тоже к нему пришёл не сразу. Если хочется, чтобы нейросеть отвечала строго по фактам из вашей базы, без отсебятины, нужен дополнительный слой между моделью и данными. Я настроил векторный индекс — он превращает тексты в эмбеддинги, то есть в цифровые отпечатки.
Проще говоря, нейросеть берёт фразу и превращает её в массив чисел. То же самое происходит с базой знаний. В итоге получается карта, где рядом оказываются смыслы, а не просто слова.
Например, «я люблю ежей» и «мне нравятся ежи» будут близко. А вот «я люблю ежей» и «сейчас бы на Бали, с коктейлем под пальму…» — уже где‑то на другом конце карты. Ну, не на Марсе, конечно. Но далеко.

Потом все эти эмбеддинги сохраняются в хранилище. Когда пользователь задаёт вопрос, он тоже превращается в эмбеддинг — и дальше модель просто ищет на нашей «карте» самые близкие по смыслу участки. Получается, что нейросеть не видит всю базу целиком и не может фантазировать на свободную тему — она работает только с теми фрагментами, которые реально подходят под запрос.
Ну… это если совсем по-простому.
Теперь вы рассказывайте в комментариях, как спасаетесь от багов ИИ?
Если вывнедряете ИИ в компании — вам точно нужна качественная база знаний. В системе управления знаниями Minerva Knowledge можно создавать статьи всей командой, загружать полезные файлы и документы, и легко поддерживать их актуальность. Ассистент с генеративным AI Minerva Copilot встраивается в любую систему, анализирует материалы из базы знаний и даёт ответы на их основе с указанием источников.