Tvijo wiki
Каталог

Темы

Гейт цитирования: каждое число в опубликованном тексте должно найтись в доказательствах

Число в статье — это обещание, что оно откуда-то взято. Это обещание мы проверяем небольшой программой до публикации: находим каждое число в тексте и требуем, чтобы оно было в доказательствах. Первая версия выдумывала числа, которых там не было.

🎯 Для Любой, кто публикует числа, написанные людьми или ИИ

📚 Вы узнаете
  • Почему правилу поиска чисел нужна левая граница и осторожность с запятыми
  • Как гейт сверяет текст с доказательствами
  • Настоящий баг, при котором проверяющий выдумал цитату

🔢 Обещание

Читатели верят числу, потому что оно выглядит измеренным. Если число пришло по памяти, из догадки модели или из старого запуска, страница неверна и выглядит верной. Гейт публикации отвечает на один вопрос: для каждого числа в этом тексте можем ли мы показать место в доказательствах, где оно встречается символ в символ?

🐛 Баг

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

  • Нет левой границы. Цифры внутри идентификатора считались числами: sha256 давало 256, а дата вроде 2026-07-26 давала -07 и -26.
  • Жадные запятые. Запятая принималась внутри числа, даже когда стояла в конце, и фраза вроде «sha256, markers» давала токен 256,, которого нет ни в одном снимке.

Затем проверяющий искал эти выдуманные токены в доказательствах, не находил и отвергал верные утверждения.

🧪 Исправление, запущенное вживую

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

На 3 ноября 2026, 21:53 UTC мы прогнали оба на одном предложении: «Snapshot sha256, markers 2026-07-26 and 1,234 items, 12.5% up.»

Шаблон Найденные числа
Старый (как было) 256,, 2026, -07, -26, 1,234, 12.5%
Исправленный 2026, 07, 26, 1,234, 12.5%

Исправленный шаблон больше не выдумывает 256, из хэша и не даёт фрагментов даты с минусом, которых нет ни в одном файле доказательств. Дату он по-прежнему режет на 2026, 07 и 26. Это безвредно: каждая часть встречается в доказательствах, если там есть дата. Это же напоминание, что гейт проверяет наличие, а не смысл.

🧰 Как работает гейт

  1. Извлеките из текста числа и цитаты в кавычках. Модуль знает четыре стиля кавычек.
  2. Для каждого числа постройте локальные варианты, например с запятой или пробелом для тысяч.
  3. Найдите литерал в файлах доказательств символ в символ.
  4. Сообщите о ненайденных числах и ненайденных цитатах. Любой такой пункт блокирует публикацию.
  5. Отдельно сообщите числа, которые старый шаблон выдумал бы, чтобы рискованное предложение было видно до сбоя.

🛠️ Практика: добавьте гейт в публикацию

  1. Выберите, где лежат доказательства, например папка выгруженных результатов с датами.
  2. Напишите поиск чисел с левой границей и правилом, что запятая принадлежит числу только перед цифрами.
  3. Проверьте его на идентификаторах, датах, номерах версий, хэшах и процентах.
  4. Напишите проверку: каждое число должно буквально встречаться в файле доказательств. Падайте громко, со списком промахов.
  5. Заведите место для чисел-определений, а не измерений, например «десять минут» в заголовке, и держите этот список коротким и проверяемым.
  6. Запускайте гейт на шаге публикации. Сбой блокирует выпуск.

✅ Проверьте себя

  • Положите в предложение хэш и дату. Гейт не сообщает фрагмент хэша и части даты с минусом, которых нигде нет.
  • Измените одну цифру настоящего числа. Гейт падает и называет его.
  • Опубликуйте текст с числом, содержащим запятую. Гейт находит доказательство, если оно записано с той же запятой или её локальным вариантом.
  • Новый коллега может объяснить, чего гейт не доказывает.

🚧 Когда это не работает

  • Есть — не значит верно. Число может встречаться в доказательствах и быть не тем числом для утверждения. Гейт проверяет наличие, а не смысл.
  • Округлённые или производные числа. Процент, посчитанный из двух измерений, в файлах отсутствует. Храните производные числа вместе с их исходными.
  • Числа словами. «Три» шаблон по цифрам не найдёт. Для измерений предпочитайте цифры.
  • Неверные доказательства. Гейт доверяет своей папке.
  • Слишком длинные списки исключений. Если половина чисел — исключения, гейт ничего не значит.

📊 Доказательства

Что измерено Вывод старого и исправленного шаблонов чисел на одном тестовом предложении и запись о дефекте от 25 августа 2026
Когда 3 ноября 2026, 21:53 UTC
Артефакт Модуль цитат в нашем закрытом репозитории с описанием дефекта в заголовке и его гейт публикации
Ограничение Одно предложение показывает разницу. Измеренную долю ошибок гейта мы не публиковали

➡️ Дальше

Как мы помечаем даты и источники, читайте в Источниках и проверке, а почему заявление об успехе — не доказательство, — в AI judging.

Источники

Связи опубликованных статей. Выберите узел, чтобы открыть статью у заголовка.

100%
→ Связанные статьи← Ссылаются сюда⋯ Та же тема
Связи статей · клавиатура / текст

💬 Комментарии

Комментарии публичны и модерируются. Не публикуйте персональные данные.
  • Комментариев пока нет. Будьте первым!

Следующие шаги

ИИ-агенты и MCP простыми словами

Векторная база — это карта, а не источник: чему нас научил поиск

Векторная база находит фрагменты, близкие по смыслу к вашему вопросу. Она не знает, какие из них верны или актуальны. Считайте каждое попадание указателем: откройте названный файл, сверьте хэш, а числа берите из артефакта, а не из найденного абзаца.

ИИ-агенты и MCP простыми словами

Когда неизвестно, сколько стоил вызов модели: заморозка, затем сверка

Иногда вызов модели обрывается по таймауту, и вы не знаете, списал ли провайдер деньги. Никогда не записывайте это как ноль. Пометьте как неопределённое, остановите новые платные вызовы и пусть названный человек сверит это с выпиской провайдера. Отказы до генерации — исключение.

ИИ-агенты и MCP простыми словами

Как разбить большую задачу для дешёвой модели: урок 24 000 байт

Дешёвая модель хорошо справляется с одной небольшой чёткой задачей и плохо — с большой кучей. Мы ограничиваем задачу 24 000 байт и отклоняем большие до вызова любой модели. Режьте по единицам — один файл или одна страна на задачу — и проверяйте размер до запуска.

ИИ-агенты и MCP простыми словами

Навыки, MCP-инструменты и правила: три способа дать агенту возможности

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