Меня давно волновала одна деталь в устройстве современных трансформеров (тех самых, которые GPT, Sonnet и прочие).
Механизм внимания всегда работает только назад. От многих экспертов (включая курс Эндрю Ына на Курсере) я слышал такое объяснение: Слово не может ссылаться на слова, которые оно ещё не знает. Назвается это казуальностью (причинностью).
Но ведь в предложении “Зелёное яблоко лежит на столе” слово зелёное уже знает про слово “яблоко”, но не может на него сослаться. Непонятно
Провёл небольшой эксперимент и подключил нечеловеческий мозг. Пробовал разные модели - Sonnet 4.7, ChatGPT, Mistral (на какую версию они роутятся я не очень понимаю). Диалог получался примерно такой:
Вопрос: Почему в современных трансформерах (GPT, Sonnet) механизм внимания никогда не ссылается на предыдущее слово?
Ответ (сокращённо): Слово не может ссылаться на слова, которые оно ещё не знает. Назвается это казуальностью
Вопрос: Почему в предложении «На столе лежит зелёное яблоко» слово «зелёное» не может ссылаться на слово «яблоко»? У нас же уже есть все слова.
Ответ (сокращённо): Ты абсолютно прав. Слово “зелёное” ссылается на слово “яблоко”
Вопрос: Если «зелёное» ссылается на «яблоко», то как работает KV-кэш?
Ответ (сокращённо): Ты абсолютно прав. Слово “зелёное” НЕ ссылается на слово “яблоко”, потому что это ломает KV-кэш.
Да - это правильный ответ
KV-кэш позволяет хранить значения Key и Value для всех предыдущих токенов, что очень сильно снижает объём вычислений на больших контекстах. Но этот механизм работает, только если слова не могут ссылаться вперёд. Иначе пришлось бы пересчитавыть значения Key и Value для каждого предышего токена при обработке каждого нового.
Этот простой эксперимент показывает, что у современных LLM большие проблемы с критическми мышлением. Они хорошо понимают механизм работы KV-кэша. Но не используют это знание в своих ответах. Собственно мы видим только два типа ответов:
Среднестатистическое мнение в интернете
“Вы абсолютно правы” даже если я ничего не утверждал
Собственно, мне не удалось заставить чятик самостоятельно прийти к мысли о KV-кэше. Только когда я сам его явно упоминаю, у модели случается “эврика”.
P.S. Лично я искренне не понимаю, о каких исследовательских агентах сейчас так много говорят. Я много работают с LLM, и вижу только эти два типа ответов.
P.P.S. Почему “экспертное сообщество” в массе своей не понимает принципов работы трансформеров, тоже тревожно.
Комментарии (4)

avshkol
22.04.2026 09:49У человека, прежде чем он скажет фразу, в голове уже есть модель в общих чертах, где яблоко и стол. А зеленое - это уже очень вероятное прилагательное к яблоку.
У LLM следующий токен генерируется исходя из промпта и уже сгенерированных токенов. Так, если в промпте было про яблоки или фрукты, или круглые предметы, то "яблоко" очень вероятно.
А то, что "зеленое", так если в промпте не было про зеленое, то вероятность красного тоже немаленькая...

urassl Автор
22.04.2026 09:49В предложении "На столе лежит зелёное яблоко" все слова уже есть. Модель видит их все одновременно. Ограничение, что слово "зелёное" не может ссылаться на слово "яблоко" - искусственное. И введено оно в целях оптимизации - чтобы не пришлось постоянно пересчитывать Keys и Values.

verticalacid
22.04.2026 09:49Да - это правильный ответ
Нет. :)
Лично я искренне не понимаю, о каких исследовательских агентах сейчас так много говорят. Я много работают с LLM, и вижу только эти два типа ответов.
Агент не чатик, задача которого побыстрее выдать среднестатистично удерживающий ответ. Он может прочитать тысячи источников, оценить их, проверить цитаты, написать скрипт, которым что-то проверить, и т.д., и со сколь угодно долгой рефлексией и числом итераций. Может это сделать сколь угодно неидеально, но с просто чатом сравнивать просто нечего.
Дай в более-менее нормальной агентской системе какую-то задачу Опусу - все увидишь.
А Мистраль, Соннет и GPT-5-chat не юзай ни для чего сложнее разговора о погоде.
Kamil_GR
Безотносительно, при попытке поправить в этом направлении кв на микросети, Gemini сразу предупредила о комбинаторном взрыве.