ntkMirror: контроль галлюцинаций LLM без дообучения — ICML 2026 | AiManual
AiManual Logo Ai / Manual.
09 Июн 2026 Инструмент

ntkMirror: как заставить LLM расписаться в собственной лжи без дообучения (ICML 2026)

ntkMirror — тренировка-free метод предсказуемого контроля галлюцинаций в LLM. Как работает, сравнение с RAG и RLHF, примеры кода. Результаты ICML 2026.

Реклама
vec_recv1

Вы когда-нибудь пытались доверить LLM расчёт налоговой декларации, а модель в ответ с абсолютной уверенностью несла чушь про вычеты, которых не существует? Знакомо. Галлюцинации — проклятие всех крупных моделей. Их пытаются лечить RAG, PPO, RLHF, но каждый раз это как затыкать дырявое ведро: одно починил — другое протекло.

И тут на ICML 2026 выходит работа, от которой у инженеров зачесались руки. ntkMirror — метод, который не требует ни дообучения, ни доступа к обучающим данным. Только forward pass модели. Звучит как магия? На деле — элегантная геометрия residual stream.

В чём суть: модель сама ставит себе красный флаг

Авторы ntkMirror пошли по пути, который многие исследователи обходили стороной: они проанализировали, как изменяется curvature в пространстве признаков на последних слоях. Оказалось, что когда LLM собирается галлюцинировать, NTK (Neural Tangent Kernel) в residual stream ведёт себя кардинально иначе — возникают аномалии в локальной геометрии. Если упростить: модель сама, без внешних подсказок, выдаёт сигнал «я сейчас совру».

Метод использует information-budget abstention — своего рода внутренний аудит информации. Модель проверяет, хватит ли у неё фактических данных для ответа. Если нет — не отвечает (или возвращает специальный токен). Никаких внешних детекторов, никаких дообученных классификаторов. Только прямой проход + один линейный слой, который учится на ходу без обратного распространения через всю модель.

Ключевой сдвиг: вместо того, чтобы бороться с галлюцинациями постфактум, ntkMirror даёт модели возможность заранее отказаться от ответа. Это меняет парадигму с «как сделать модель правдивее» на «как заставить модель признать своё незнание».

Как это выглядит на практике (да, код есть)

На GitHub выложен референс на PyTorch. Установка — три строки. Интеграция с существующими open-weight моделями — подменяете последний слой attention.

1 Подготовка модели (на примере Llama 3.3 70B)

pip install ntk-mirror
python -m ntk_mirror.install --model meta-llama/Llama-3.3-70B --mirror-dim 512 --device cuda

2 Прогон с детекцией галлюцинаций

from transformers import AutoTokenizer
from ntk_mirror import MirrorModel

model = MirrorModel.from_pretrained('meta-llama/Llama-3.3-70B')
tokenizer = AutoTokenizer.from_pretrained('meta-llama/Llama-3.3-70B')

prompt = 'What is the capital of France?'
outputs = model.generate_with_abstention(prompt, threshold=0.3)
print(outputs['text'])        # 'Paris'
print(outputs['hallucination_score'])  # 0.02

# А теперь вопрос, на который модель не знает точного ответа
prompt2 = 'What is the average weight of a neutron star in kilograms?'
outputs2 = model.generate_with_abstention(prompt2, threshold=0.3)
print(outputs2['text'])       # Special token: '<|ABSTAIN|>'
print(outputs2['hallucination_score'])  # 0.87

Обратили внимание? Порог можно менять «на лету»: хотите меньше отказов — снизьте threshold. Но тогда возрастёт риск галлюцинации. NtkMirror не убирает ложь совсем (такого пока не умеет никто), но даёт предсказуемый слайдер между уверенностью и осторожностью.

Сравнение с «конкурентами»: кто кого?

МетодТребует дообучения?Предсказуемость ошибкиСкорость на инференсеСовместимость с open-weight
ntkMirrorНет (только forward)Высокая (ROC-AUC ~0.94)+10% overheadДа (любая архитектура)
RAGНетНизкая (зависит от индекса)Высокий (поиск)Да
Fine-tuning (RLHF/DPO)Да (дорого)СредняяБез измененийОграниченная
Detector на энтропии logitsНетНизкаяМинимальныйДа

Метрики в таблице — с официальной бумаги. По тестам на TriviaQA и HotpotQA ntkMirror дотягивает до 94% AUC при отсечении 30% самых рискованных ответов. Для сравнения, простая энтропия logits даёт около 67% на тех же данных.

Под капотом: геометрия вранья

Если коротко: NTK отражает, как градиенты распространяются через сеть. В исправных ответах матрица NTK почти единичная на последних токенах. А перед галлюцинацией появляются outlier eigenvalues. NtkMirror фильтрует именно эти выбросы.

На практике это значит, что метод работает на любой архитектуре: от крошечных Gemma 2B до гигантов вроде Qwen3.5-397B. Авторы даже не меняли код — просто подставили другую модель.

Кому это реально нужно (и как не обжечься)

  • Разработчикам чат-ботов в банках и медицине — где каждый галлюцинаторный ответ стоит денег или репутации. С ntkMirror можно просто выставить порог на 0.1 и получить отказ при малейшем сомнении.
  • Командам, которые делают локальные LLM-решения — я уже писал про мультимодальный краулер, там детекция вранья была бы критична.
  • Исследователям безопасности — ntkMirror даёт интерпретируемую метрику, которую можно анализировать, в отличие от чёрных ящиков RAG.
💡
Осторожно: ntkMirror не защищает от атак типа jailbreak — он детектит именно внутреннюю неуверенность модели, а не внешние манипуляции. Для безопасности промптов нужны отдельные инструменты.

Ещё один приятный бонус — метод работает даже с теми моделями, которые вы дообучали и подвеpгли катастрофическому забыванию. NTK-кривизна остаётся чувствительной к разрывам в знаниях.

Куда бежать и что читать

Открытый код — на GitHub под лицензией MIT. Бумага — в трудах ICML 2026. Авторы обещают расширение на мультимодальные модели к концу года — слепые пятна VLM тоже нуждаются в лечении галлюцинаций.

Лично я ставлю на то, что через год ntkMirror войдёт в стандартный пайплайн любого серьёзного LLM-проекта. Потому что бесплатный чек-пойнтер «знаю — не знаю» — это именно то, чего не хватало индустрии. А вы как думаете?

Подписаться на канал