раздел 04 · подстраница 2
Демо против продукта
Почему вообще нельзя просто отпустить агента на полную и пойти пить кофе? Потому что между «сработало в демо» и «работает как продукт» - пропасть. Карпатый знает это не понаслышке.
История беспилотника
В 2014 году он прокатился на прототипе беспилотного автомобиля. Поездка прошла идеально: ноль вмешательств человека, машина всё сделала сама. Ощущение было однозначное - вот оно, ещё чуть-чуть, и беспилотники повсюду.
Прошло больше десяти лет. Беспилотники всё ещё не повсюду. Идеальная поездка-демо создала ложное чувство готовности. Между ней и реальным продуктом, которому доверяют жизни, оказались годы работы над тысячами редких ситуаций, которые в той поездке просто не встретились.
works.any() против works.all()
Карпатый формулирует это как программист:
Демо - это works.any(). Продукт - это works.all().
Андрей Карпатый
- Демо - достаточно, чтобы сработало хоть раз. Один удачный прогон - и презентация удалась.
- Продукт - нужно, чтобы работало всегда: на всех входных данных, в редких случаях, когда пользователь сделал что-то странное, когда сервис отвалился.
С ИИ разрыв особенно коварный. Модель легко выдаёт впечатляющий результат «в среднем». Но именно зубчатый интеллект (см. раздел 03) означает, что где-то она предсказуемо провалится - и заранее неясно где. Эффектное демо ничего не говорит про надёжность.
Что из этого следует
Это не повод не пользоваться ИИ - это повод пользоваться правильно.
- Полная автономия пока не готова. Поэтому строим костюмы, а не роботов: человек остаётся в цикле проверки.
- Демо - это начало, а не финиш. Прототип за вечер - прекрасно. Но путь от него до надёжного продукта - это та самая работа, которую ИИ за вас пока не сделает.
- Надёжность набирается по краям. Основной сценарий модель закроет легко. Реальные усилия уходят на редкие случаи, ошибки и безопасность - туда и направляйте внимание человека.
Эта же пропасть между «собрал прототип» и «довёл до продукта» - ровно то, обо что спотыкается вайб-кодинг. Об этом - следующий раздел.