Избыток вычислительных мощностей делает всех ленивыми в одном и том же направлении. Когда H100 повсюду, решение для медленной рабочей нагрузки — это просто добавить больше H100. Неэффективность никуда не девается. Она просто прячется в шуме, и никто не получает денег за её обнаружение.
Дефицит меняет математику. У неэффективности появляется цена, и эта цена продолжает расти.
Я провожу аналогию с фрекингом. Десятилетиями существовали залежи нефти, о которых все знали, но никто их не трогал, потому что они были слишком маленькими, труднодоступными и неудобными для разработки. Затем цена изменилась, и экономика перевернулась. Оказалось, что эти «неудобные» залежи и есть вся игра.
С ядрами происходит то же самое. В мире бесконечных вычислений кастомное ядро для нишевой архитектуры, спекулянт, настроенный на одну рабочую нагрузку, или 20% прироста производительности на пути, который большинство людей никогда не использует — всё это не стоит затраченного инженерного времени. В мире, который мы имеем сейчас, каждый из этих факторов — это маржа:
- ядра для архитектур, которые крупные библиотеки так и не удосужились поддержать
- пути инференса, сформированные под конкретную рабочую нагрузку, а не под «средний токен»
- аппаратно-зависимые трюки, которые окупаются только в масштабе
- 20-процентное ускорение, которое решает, сойдется ли юнит-экономика
Люди неправильно понимают следующую часть. Дефицит не замедляет эту работу. Это причина, по которой она вообще происходит. Ценовой сигнал направляет инженерные ресурсы в те бреши, которые рынок годами обходил стороной, и в результате получается не единый чистый универсальный стек. Это фрагментированный, более быстрый программный слой: рынок специализированных ядер, проходов компилятора и специфичных для моделей хаков, каждый из которых извлекает ценность, оставленную универсальным стеком в земле.
Универсальный стек не может последовать за вами туда. Это структурная проблема. Горизонтальная среда выполнения оптимизируется под «средний токен», потому что она должна обслуживать все модели одновременно. Как только она настраивается под вашу рабочую нагрузку, она перестает быть горизонтальной. Она никогда не сможет показать те цифры, которые показывает специалист. Инженеры не стали хуже. Сама позиция это запрещает.
Мы выбрали другой путь. Одна рабочая нагрузка, цикл агента кодирования, и мы владеем всеми четырьмя слоями под ним: моделью, спекулянтом, ядром, оборудованием. Для открытых моделей, которые мы обслуживаем, мы обучаем собственные спекулятивные декодеры на распределении результатов кодирования, а не на среднем веб-тексте, потому что спекулянт, прочитавший миллион диффов, предсказывает следующий токен гораздо лучше, чем тот, что прочитал весь интернет. Apply работает на скорости 10 500 токенов/с. Compaction — на 33 000. Ядра написаны и проверены на реальных производственных трассах, а не на бенчмарках. Развернутая версия этого аргумента находится здесь.
Дефицит не ограничивает инновации. Это то, что наконец-то начинает их оплачивать. Скучная инфраструктура всегда была местом, где скрывалась ценность. Теперь появился ценовой сигнал, указывающий прямо на неё.