Все-таки как эти ваши Нейросети работают?

20 мая 2026 г.·10 мин чтения

Откройте любую статью про нейросети – и попадёте в одну из двух ловушек. Либо вам расскажут про «цифровой разум, который думает как человек», либо завалят формулами с многомерными тензорами и градиентным спуском. После такого чтения остаётся только закрыть вкладку и продолжить пользоваться чат-ботом, не понимая, что у него внутри.

Разберём по-человечески, как эти ваши LLM работают. Без эзотерики и без матана. Просто логика: что происходит с вашим текстом, когда вы жмёте «отправить».

Главный спойлер: машина не понимает слова

Сразу к сути. Языковая модель (LLM, large language model – большая языковая модель) не читает текст так, как читаете его вы. Она не знает, что «кот» – это пушистое существо, а «спит» – состояние покоя. Для неё это вообще не слова.

Компьютер умеет одно: считать числа. Всё, что вы видите на экране – буквы, эмодзи, пробелы, – внутри модели существует в виде чисел. И всё, что нейросеть делает с вашим запросом, – это математика над этими числами.

Звучит сухо, но на деле именно отсюда растут все странности LLM: и магические ответы, и нелепые ошибки, и склонность сочинять факты.

Токены – как машина режет текст на кусочки

Перед любой работой текст нужно превратить в числа. Этим занимается токенизатор – маленькая программа-переводчик.

Токен – минимальный кусок текста, которому модель присвоила номер в своём словаре. Это не буква и не всегда слово. Чаще – что-то посередине.

В английском языке частые слова вроде the, cat, run обычно укладываются в один токен. С русским сложнее: у нас приставки, суффиксы, окончания, падежи. Поэтому одно слово часто разрезается на несколько кусков.

Например, слово «переосмысление» токенизатор может разобрать так:

  • пере

  • осмысл

  • ение

Каждый кусок получает свой номер из словаря модели. Фраза «Кот спит» внутри модели выглядит примерно как [3412, 895]. Никакого пушистого животного – только массив чисел.

Почему это важно:

  • Русский текст «съедает» больше токенов, чем английский той же длины. Это влияет и на цену API-запросов, и на то, сколько информации помещается в один запрос.

  • Если вы пишете редкие слова, термины, неологизмы или коверкаете орфографию – токенизатор режет это на мелкие куски, и модель хуже улавливает смысл.

  • Эмодзи, формулы и код – отдельная история: они часто разваливаются на много токенов.

Векторы – где живёт смысл

Окей, текст превратился в числа-номера. Но номер 3412 сам по себе ничего не значит. Это просто индекс в словаре, как номер книги в библиотеке. Между числами 3412 и 895 нет никакой смысловой связи.

Чтобы появился смысл, каждый токен превращается в вектор – набор координат в многомерном пространстве.

Представьте обычную карту. У каждого города есть две координаты: широта и долгота. По расстоянию между точками можно понять, какие города ближе друг к другу. А теперь представьте такую же карту, но не с двумя измерениями, а с тысячами. И на этой карте размещены все понятия, которые знает модель.

Каждое измерение отвечает за какой-то признак. Условно:

  • одно – «съедобность»

  • другое – «температура»

  • третье – «живое или нет»

  • четвёртое – «формальность речи»

  • ...и так ещё тысячи направлений

В этой системе координат слова «борщ», «щи» и «уха» окажутся в одной точке скопления – все они еда, жидкая, горячая, славянская кухня. А «экскаватор» улетит куда-то в другой угол пространства.

Модель определяет смысл не по буквам, а по тому, где токен находится в этом пространстве и какие другие токены рядом.

Векторная алгебра: смысл можно складывать

Самое любопытное – с векторами можно делать арифметику. Это знаменитый пример, который любят показывать на конференциях:

Царь − Мужчина + Женщина ≈ Царица

Или географический:

Москва − Россия + Франция ≈ Париж

Это прямое следствие того, что «статус правителя», «гендер» и «принадлежность к стране» – отдельные направления в этом многомерном пространстве. Можно по ним двигаться как по осям.

Когда модель пишет следующее слово, она по сути определяет нужный вектор-направление и ищет токен, координаты которого ближе всего к этой точке.

Self-attention – как модель понимает, кто на ком женился

Векторы решают вопрос «что значит каждое слово по отдельности». Но язык так не работает. Смысл рождается из связей между словами.

Классический пример: «Кошка поймала мышь, потому что она была голодна».

Кто «она»? Любой носитель языка ответит – кошка. Мышь, которую съели, голодной быть уже не успевает. Но как это понимает машина?

За это отвечает механизм self-attention (самовнимание). Для каждого слова модель считает «вес связи» с каждым другим словом в тексте.

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

Внимание работает на любых дистанциях. Модель может связать местоимение в конце абзаца с подлежащим в начале. Именно это даёт ощущение, что нейросеть «понимает контекст».

На практике из-за внимания LLM хорошо справляются с:

  • местоимениями и кореференцией («он», «она», «это»),

  • омонимами («лук» – овощ или оружие зависит от соседей),

  • длинными рассуждениями, где важно держать в голове несколько сущностей.

Контекстное окно – оперативная память модели

Тут есть жёсткое ограничение. У любой LLM есть контекстное окно – максимальное количество токенов, которое модель может одновременно держать в фокусе.

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

Что туда входит:

  • системная инструкция (если есть),

  • вся история диалога,

  • ваш текущий запрос,

  • место под ответ модели.

Как только токены перестают помещаться, начало разговора просто отбрасывается из вычислений. Модель его больше не видит. Не «забывает» в эмоциональном смысле – именно физически перестаёт учитывать.

Что это значит:

  • В длинном чате модель может «потерять» то, что вы говорили в начале. Это не баг.

  • Если загружаете большой документ – важная информация может оказаться за пределами окна.

  • Если ответы стали хуже после долгого диалога – начните новый чат и дайте короткий, сжатый контекст вручную.

Как модель выбирает следующее слово

Теперь главное. LLM не пишет «фразу целиком». Она генерирует текст по одному токену за раз.

Логика такая:

  1. На вход подан весь текст (ваш запрос + то, что модель уже написала).

  2. Модель считает вероятности для каждого возможного следующего токена. Получается длинный список: токен А – вероятность 23%, токен Б – 18%, токен В – 9% и так далее по всему словарю.

  3. Модель выбирает один токен из этого списка.

  4. Добавляет его в конец текста.

  5. Повторяет всё заново с уже обновлённым текстом.

И так пока не сгенерируется специальный токен «конец ответа» или не закончится лимит.

Никакого плана. Никакой проверки фактов. Никакого «обдумывания». Просто бесконечный выбор следующего слова на основе того, что уже написано.

Температура: ручка случайности

Как именно выбирать токен из списка вероятностей? Тут включается параметр температура.

  • Температура 0. Модель всегда выбирает самый вероятный токен. Ответы получаются стабильными, предсказуемыми, но часто скучными и шаблонными. Хорошо для задач типа «извлеки данные из текста».

  • Температура около 0.7 (часто дефолт). Модель чаще выбирает топовые варианты, но иногда заглядывает в менее очевидные. Появляется живость, разнообразие формулировок.

  • Температура 1.2 и выше. Модель смелее уходит в редкие варианты. Получаются креативные, неожиданные, иногда странные тексты. Хорошо для брейншторма, плохо для отчётов.

Если хочется один и тот же ответ при повторных запросах – ставьте температуру ниже. Если нужно разнообразие – выше. Для большинства рабочих задач 0.3–0.7 закрывает 90% сценариев.

Откуда берутся галлюцинации

Теперь становится понятно, почему модель иногда уверенно врёт.

Галлюцинация – это когда LLM выдаёт правдоподобный по форме, но ложный по содержанию текст. Придумывает несуществующие книги, ссылки, статьи законов, цитаты, биографии.

Причина не в баге или в том что GPT тупой. Причина в самой архитектуре.

У модели внутри нет базы данных «факт – правда/неправда». Нет понятия истины. Есть только пространство векторов и вероятности следующих токенов. Когда модель пишет «автор книги „X“ – Иван Петров», она не сверяется с картотекой. Она просто подобрала токены, которые статистически хорошо ложатся в эту позицию.

Если в обучающих данных было много упоминаний книги «X» и имени «Иван Петров» рядом – модель напишет правду. Если данных было мало или они противоречивы – модель всё равно напишет что-то грамматически безупречное. Просто подтянет ближайшие по векторам имена и факты. Получится правдоподобная выдумка.

Помните была такая шутка попросить рецепт свиных крыльев у GPT/Gemini?

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

В обучающей базе данных токены рецепт, крыл и ышек имеют огромный вес совместной встречаемости с токеном курин (куриных). Связи между этими токенами и кулинарными действиями (запекать, мариновать, жарить) математически очень сильны. Сочетание «свиных крылышек» встречается крайне редко и имеет минимальные веса.

Получив запрос, алгоритм выстраивает цепочку следующих токенов. Мощнейшие статистические связи паттерна «рецепт куриных крылышек» перетягивают генерацию на знакомый путь. Модель выдает стандартный рецепт приготовления птицы, механически подставляя слово «свиные» к знакомому кулинарному процессу. Программа опирается исключительно на векторную близость токенов и создает технически правильный текст без привязки к реальности.

Что с этим делать:

  • Не доверяйте цифрам, датам, цитатам и ссылкам от LLM без проверки. Особенно по узким темам.

  • Чем уже и специфичнее тема, тем выше риск галлюцинации. По общим вопросам модель надёжнее, по нишевым – опаснее.

  • Конкретные имена, статьи законов, медицинские дозировки – зона риска по умолчанию.

  • Помогает прямая инструкция в запросе: «Если не уверен – так и напиши, не придумывай». Не панацея, но снижает уверенный бред.

  • Для критичных задач используйте режимы с поиском в интернете или подгрузкой документов (RAG, retrieval-augmented generation – генерация с подтягиванием источников). Это даёт модели реальные данные вместо «угадай по векторам».

Что из этого всего собрать в голове

Если убрать детали, картина простая. LLM – это машина, которая:

  1. Режет ваш текст на токены и превращает в числа.

  2. Размещает их в многомерном пространстве смыслов, где близкие понятия лежат рядом.

  3. С помощью внимания связывает слова между собой и понимает, кто к чему относится.

  4. Удерживает в фокусе ограниченное контекстное окно.

  5. Генерирует ответ по одному токену, выбирая каждый раз самый вероятный (или почти самый – в зависимости от температуры).

  6. Не имеет понятия истины – только статистику языка.

Когда вы понимаете эту логику, перестаёт быть загадкой, почему модель то блистает, то несёт чушь. Это не «искусственный разум, который иногда тупит». Это очень мощный статистический предсказатель вероятного следующего слова. Со всеми вытекающими плюсами и ограничениями.

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

Хорошие ответы от LLM получаются не сами собой. Они начинаются с понимания, что внутри – просто числа, векторы и вероятности.

FAQ

В чём разница между LLM и обычным чат-ботом старого поколения?

Старые чат-боты работали по жёстким правилам и сценариям: «если пользователь написал X, ответь Y». LLM не имеет сценариев. Она генерирует ответ с нуля, считая вероятности следующих токенов на основе всего, что прочитала при обучении. Поэтому она отвечает на что угодно, но и ошибается там, где сценарный бот честно сказал бы «не знаю».

Почему один и тот же вопрос даёт разные ответы?

Из-за температуры и случайности при выборе токенов. При ненулевой температуре модель не всегда берёт самый вероятный вариант, иногда заглядывает в соседние. Плюс на ответ влияет вся история чата. Хотите воспроизводимости – снижайте температуру и начинайте новый чистый диалог.

Учится ли модель на моих сообщениях прямо в процессе общения?

Нет. В рамках диалога модель ничего не «запоминает» в свою память. Она просто видит контекстное окно. Дообучение – отдельный долгий процесс с участием инженеров, он не происходит от ваших чатов в реальном времени. Некоторые сервисы могут собирать ваши данные для будущего обучения, но это уже политика конкретной компании, а не свойство модели.

Можно ли заставить LLM не врать?

Полностью – нет, это особенность архитектуры. Снизить риск – да. Помогает: точный контекст в запросе, прямая просьба признаваться в незнании, режимы с поиском по реальным источникам, проверка критичных фактов вручную. Чем уже тема – тем тщательнее проверка.

Зачем мне как пользователю знать про токены и контекстное окно?

Чтобы писать запросы, которые работают. Понимание токенов объясняет, почему длинные документы обрабатываются дороже и хуже. Понимание окна объясняет, почему модель «забывает» начало переписки. Это две самые частые причины разочарования в LLM – и обе решаются, если знать, что происходит внутри.