Vercy · воспроизводимое исследование

Инструменты не закрыли разрыв. Они его увеличили.

Цель
Каждое исследование этой серии отключало инструменты и называло это своим главным ограничением: с оболочкой и файлом данных арифметическая составляющая ошибки меняется, и баланс между представлениями может сместиться. Это проверка.
Схема исследования
Опубликованный бенчмарк семантической привязки, перепрогнанный без изменений, кроме одного: пять таблиц вынесены из промпта на диск в виде CSV, а агенту выданы Bash, Read, Glob и Grep в свежем рабочем каталоге на каждый вызов. Те же шесть условий контекста, те же 40 заданий, те же эталонные ответы, тот же скоринг. 240 вызовов, один повтор на задание, медиана 55 секунд.
Основной результат
Инструменты убрали арифметическую ошибку только там, где смысл был известен. Четыре условия с полными определениями поднялись до 97,1-100%. Два условия без них не сдвинулись: голая схема ушла с 26,5% на 23,5%, неполная документация с 29,4% на 32,4%.
Неудобная часть
Там, где определений не было, инструменты сделали агента увереннее в неверном. Доля ответов, точно равных числу из отменённого правила, выросла с 16,2% до 29,4% на голой схеме и с 35,3% до 47,1% на неполной документации, а уместный отказ упал с 83,3% до 50,0% и 66,7%.
Вывод
Ограничение снято, но в сторону, противоположную обычному ожиданию. Инструменты не заменяют знания о том, что означают слова: они повышают цену незнания. Разрыв между наличием определений и их отсутствием вырос с 50 пунктов без инструментов до 74 с ними.
97%версионированные записи, с инструментами
24%голая схема, с инструментами
29%голая схема, ответы по отменённому правилу

Что изменилось и что намеренно нет

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

Точность до и после

УсловиеОпределенияБез инструментовС инструментамиИзменение
A только схемаотсутствуют или неполны26,5%23,5%-2,9
B документация, неполнаяотсутствуют или неполны29,4%32,4%+2,9
E проза, полнаяполные76,5%100,0%+23,5
C версионированные записиполные76,5%97,1%+20,6
F записи + инертный балластполные85,3%100,0%+14,7
D записи + правила федерацииполные77,9%100,0%+22,1

Разделение чистое. Каждое условие, знающее, что означают слова, выходит на потолок; ни одно из незнающих не сдвигается вовсе. Оболочка вычисляет то, что её попросили вычислить, а вопрос о том, что именно вычислять, - это ровно то, на что отвечает определение.

Два типа ошибок

Точность здесь - наименее интересный столбец. Важны два других: как часто агент возвращал ровно то число, которое дало бы отменённое или конкурирующее правило, и как часто он верно отказывался отвечать на вопрос, на который данные не отвечают.

УсловиеОтвет по отменённому правилу, без инструментовс инструментамиУместный отказ, без инструментовс инструментами
A только схема16,2%29,4%83,3%50,0%
B документация, неполная35,3%47,1%83,3%66,7%
E проза, полная2,9%0,0%66,7%50,0%
C версионированные записи1,5%0,0%58,3%66,7%
F записи + инертный балласт0,0%0,0%66,7%50,0%
D записи + правила федерации1,5%0,0%66,7%83,3%

Оба показателя движутся не туда, где определений нет. Получив калькулятор и не получив определения, агент что-нибудь вычисляет, и вычисленное всё чаще оказывается числом из отменённого правила. Он также перестаёт говорить, что ответить не может: уместный отказ на голой схеме упал на треть. Там, где определения есть, доля ответов по отменённому правилу обнуляется во всех условиях.

По семействам вопросов, с инструментами

Условиевычислениена прошлую датук контрагентунеотвечаемые
A только схема41,7%20,0%8,3%50,0%
B документация, неполная41,7%50,0%8,3%66,7%
E проза, полная100,0%100,0%100,0%50,0%
C версионированные записи100,0%100,0%91,7%66,7%
F записи + инертный балласт100,0%100,0%100,0%50,0%
D записи + правила федерации100,0%100,0%100,0%83,3%

Условия с определениями безупречны или почти безупречны на всех трёх отвечаемых семействах. Неотвечаемое семейство - там, где инструменты вредят: у агента есть оболочка, поэтому он выдаёт число вместо отказа.

Сравнения, на которых стояло прежнее исследование

Сравнениеp без инструментовОт, с инструментамиДо, с инструментамиp с инструментами
A только схема против C версионированные записи0,0005523,5%97,1%0,0
B документация, неполная против C версионированные записи0,0015132,4%97,1%0,0
E проза, полная против C версионированные записи1,0100,0%97,1%1,0
C версионированные записи против D записи + правила федерации1,097,1%100,0%1,0
A только схема против E проза, полная0,0015123,5%100,0%0,0

Находка, на которой держалось исходное исследование, - что точность поднимает само наличие определений, - выживает и усиливается: 25 заданий лучше и ни одного хуже. Находка, оказавшаяся против нас, тоже выживает: полная проза и версионированные записи остаются неразличимы, теперь на 100% и 97,1%, причём единственное расходящееся задание в пользу прозы.

Вывод

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

Чего это не показывает

Один повтор на задание вместо двух, поэтому усреднения внутри задания нет и оценки шумнее, чем в исходном исследовании. Одна модель, один синтетический мир, и оболочка с локальными CSV, а не настоящая база с планировщиком запросов и правами. Работа с инструментами обошлась примерно впятеро дороже по времени: медиана 55 секунд на вызов против примерно 10 без них. Условия контекста по-прежнему приходят в промпте; развёртывание, где и определения лежат на диске, могло бы вести себя иначе, и это следующее, что стоит проверить.

Открыть result.jsonРаннерСырой прогонИсходное исследование