Каждую неделю появляется новая структура агентов, новая модель рассуждения и новый эталон, который утверждает, что навсегда урегулирует спор. В прошлом месяце я наблюдал, как команда представила функцию ИИ, которая прошла все модульные тесты и все тесты на интеграцию...
Каждую неделю появляется новая структура агентов, новая модель рассуждения и новый эталон, который утверждает, что навсегда урегулирует спор. В прошлом месяце я наблюдал, как команда выпустила функцию ИИ, которая прошла все модульные тесты и все имитационные интеграционные тесты, а затем умерла в производстве в течение часа, потому что настоящий поставщик задушил их после одиннадцати запросов. Ошибка заключалась не в их коде, подсказках или выборе модели; это было в их среде. Они подготовили базу данных, поток аутентификации и конвейер развертывания, но никогда не создавали единственную зависимость, которую не могли контролировать.
Уровень модели — это зависимость, которую мы никогда не создаем.
Почему мы ставим все, кроме модели? Мы запускаем промежуточный Postgres, запускаем миграцию для копии, развертываем с использованием флага функции, а затем имитируем LLM с помощью стандартного ответа и называем это интеграционным тестированием. Макет сообщает вам, что ваш код работает, когда мир дружественный, но он ничего не говорит вам о том, что происходит, когда сеть, ограничитель скорости и счетчик токенов появляются одновременно. Поставщик — единственная зависимость в вашей системе, которая работает на чужом оборудовании, под чужой нагрузкой, с чужим определением.