К содержанию
титов-ai.ru
12 сентября 2026· обновлено 13 сентября 2026·чтение 7 минут·Вадим Титов

Внедрение ИИ в бизнес: девять поломок за один день деплоя

Контейнеры подняты, проверка состояния зелёная, в логах чисто — а пользователь на любой вопрос получает ошибку. Разбор девяти реальных поломок и что требовать при приёмке.

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

Почему «работает» и «работает» это разные вещи

Обычная картина приёмки: подрядчик показывает, что сервис запущен, адрес открывается, в логах нет ошибок. Заказчик кивает, подписывает акт. Через неделю выясняется, что на настоящих вопросах система молчит.

Я прошёл это на своём проекте, где сам себе и заказчик, и исполнитель: ИИ-помощник по законам, 34 697 фрагментов в базе, шесть контейнеров. Сайт открывался. Поиск по базе шёл. Проверка состояния отдавала зелёный статус. Казалось, готово.

Потом я сел и начал проходить сценарии руками, как обычный человек. За день набралось девять поломок.

Четыре из них ломали сервис целиком

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

На практике: поиск по базе работает, документы находятся, проверка состояния зелёная, а ответа человек не получает никогда. Причём отдельный тестовый вызов модели проходил нормально — поломка воспроизводилась только на полном запросе.

Не всплывало раньше, потому что до этого проект жил на другом провайдере, а тот такие запросы проглатывал молча.

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

Новый интерфейс вообще не собирался. Его сборка копировала папку, которой в проекте нет. Падало на этом. То есть весь редизайн — 25 страниц, глоссарий, картинки для соцсетей — лежал мёртвым грузом, а публиковалась старая версия. Никто до этого не доходил, потому что сборка запускалась одной командой на весь проект и её вывод никто не читал до конца.

Хранилище файлов не было готово принимать файлы.Генерация документов падала с ошибкой «нет такого хранилища». Это тоже было написано в описании проекта: хранилище не создаёт себе место автоматически. При деплое забылось.

Пятая: ссылки, которые работают только изнутри

Документы генерировались, сохранялись, ссылка возвращалась. Только вела она на внутреннее имя контейнера, которое браузер открыть не может. Внутри системы всё правильно, снаружи — нерабочая ссылка.

Чинится это не переписыванием адреса задним числом: подпись ссылки привязана к адресу, подмените адрес — сломается подпись. Пришлось подписывать ссылку сразу на внешний адрес.

Проверил после починки: документ на 37 КБ и его версия в другом формате на 23 КБ скачиваются по защищённому соединению. Вот так выглядит проверка, а не «в логах чисто».

Девятая поломка была не в коде

Заявки с сайта молча ложились в базу. Форма на странице с ценами обещала «свяжусь в течение дня», а уведомления не приходило никакого. Узнать о заявке можно было единственным способом: открыть базу и посмотреть.

Технически всё исправно: форма отправляется, данные сохраняются, ошибок нет. По делу — человек оставил контакт и не дождался ответа.

Это самый частый вид провала при внедрении. Не «система не работает», а «система работает, но никто не узнаёт о результате». Починка заняла полчаса: отдельный бот, заявка падает в мессенджер сразу.

Что из этого следует для заказчика

Главный вывод, который я записал себе в тот день: «контейнеры поднялись и проверка отдаёт зелёный статус» не значит ничего. Надо проходить сценарии руками, как пользователь.

Что стоит потребовать от подрядчика при приёмке:

  • Показать не логи, а сценарий целиком. Не «сервис отвечает», а «я задал вопрос, получил ответ, скачал документ, он открылся».
  • Проверить со своего устройства, а не с экрана подрядчика. Половина поломок из списка выглядели нормально изнутри системы.
  • Пройти путь, который проходит клиент. Оставить заявку через форму и посмотреть, дойдёт ли она. Это ловит поломки, которые не видны ни в одном логе.
  • Спросить, что произойдёт при отказе внешнего сервиса. Модель недоступна — человек увидит осмысленное сообщение или пустой экран?
  • Заложить день на приёмку. Девять поломок нашлись за день. Если приёмка длится двадцать минут, вы принимаете не систему, а её внешний вид.

И для того, кто внедряет

Четыре поломки из девяти были описаны в документации собственного проекта. Сертификат, хранилище — всё это было записано словами «не забыть при деплое». Забылось.

Документация не исполняется сама. Если шаг важен, он должен быть в сборке или в проверке, а не в тексте, который читают один раз.

И отдельно про тестирование. Изолированный вызов модели проходил нормально, а на полном запросе всё падало. Тесты на отдельные части не ловят поломок стыка. Ловит только сквозной проход.

Сколько это стоит

Все девять починены за один день, потому что искал их я сам и в своём коде. В чужом проекте, где подрядчик уже получил деньги и ушёл, такой день превращается в недели переписки.

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

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

Не уверены, что подойдёт под вашу задачу? Опишите её — скажу прямо, что закроет её быстрее и дешевле.

Написать в Telegram
← Все статьи