3,583 papers
arXiv:2610.02627 91 2 окт. 2026 г. FREE

Устойчивость к формулировке: почему почтовый агент делает меньше работы, если попросить его «мягко» или «официально»

КЛЮЧЕВАЯ СУТЬ
Один и тот же запрос, сказанный по-разному, заставляет агента делать меньше работы. Ошибок он при этом не добавляет, просто молчит и пропускает часть действий. Метод позволяет заранее найти формулировки, на которых ваш почтовый агент теряет работу. Фишка: общий балл успеха этой дыры не показывает, а два счётчика (не сделал нужное и сделал лишнее) показывают. Берёшь рабочий запрос, просишь LLM переписать его в 6 стилях без изменения фактов и прогоняешь через агента. Косвенные просьбы вредят почти всем моделям: главный глагол прячется, и агент отвечает бодро, но половину дела не делает.
Адаптировать под запрос
⚡

TL;DR

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

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

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


🔬

Схема метода

ШАГ 1: Берёшь базовый запрос + эталонный результат (что агент должен сделать)
ШАГ 2: Просишь LLM переписать запрос в N стилях (косвенно / официально /
        разговорно / многословно / эмоционально / с ошибками),
        факты менять нельзя → список вариантов
ШАГ 3: Проверка вариантов: числа и имена на месте? Просят то же самое?
        Звучит как живой человек? → отсеять плохие
ШАГ 4: Прогоняешь каждый вариант через агента → результаты
ШАГ 5: Сравниваешь с базовым запросом по двум счётчикам:
        «не сделал нужное» и «сделал лишнее»

Шаги 2–3 можно выполнить в одном чате. Шаг 4 — это отдельные запуски вашего агента.


🚀

Пример применения

Задача: Вы владелец сети кофеен в Казани и настроили почтового агента (ChatGPT с доступом к почте, Claude с MCP или автоматизацию в n8n). Он должен переслать письма, поставить встречи и ответить поставщикам. Вы писали ему чётко: «Перешли письмо поставщика зерна Сергею Ильичу и поставь созвон на четверг в 15:00». Но сотрудники пишут агенту иначе, например: «Мы тут с поставщиком зерна вроде не определились по четвергу, Сергей Ильич, наверное, должен быть в курсе…». Вы хотите заранее узнать, где агент начнёт терять работу.

Промпт:

Ты генерируешь тестовые варианты запроса для проверки почтового агента.

Базовый запрос: «Перешли письмо поставщика зерна от 12 марта Сергею Ильичу
и поставь созвон с ним на четверг в 15:00».

Что должен сделать агент (эталон): 1) найти письмо поставщика от 12 марта,
2) переслать его Сергею Ильичу, 3) создать событие на четверг, 15:00.

Правила: нельзя менять факты, имена, даты, время, числа и суть просьбы.
Менять можно только манеру формулировки.

Для каждого стиля предложи 6 кандидатов, каждый с другим подходом
(например, подсказка, констатация потребности, сомнение, наблюдение).
Затем выбери по одному лучшему, который звучит как письмо живого человека.

Стили:
1. КОСВЕННЫЙ: просьба передана через намёк, потребность, сомнение или наблюдение
2. ОФИЦИАЛЬНЫЙ: полные предложения, строгая пунктуация, без сленга и сокращений
3. РАЗГОВОРНЫЙ: сокращения, строчные буквы, свободная пунктуация
4. МНОГОСЛОВНЫЙ: та же просьба внутри лишней болтовни, оговорок и постороннего контекста
5. ЭМОЦИОНАЛЬНЫЙ: раздражение, стресс, тревога или срочность
6. С ОШИБКАМИ: перестроенный порядок слов, систематические грамматические огрехи

После каждого варианта проверь себя: все ли числа и имена на месте?
Просит ли вариант ровно то же самое? Если нет — перепиши.

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


🧠

Почему это работает

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

Сильная сторона. LLM хорошо переписывает текст в заданном стиле при сохранении фактов. Она же неплохо проверяет, что смысл не потерялся. Поэтому тестовые варианты можно получить за один запрос, а не набирать вручную.

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

Рычаги управления в промпте: - Число стилей — оставьте только те, которые реально встречаются у ваших пользователей. - Число кандидатов (6) — больше разнообразия, но больше токенов. Для быстрой проверки хватит 3. - Правило «факты менять нельзя» — самый важный пункт. Без него модель «упрощает» задачу, и вы тестируете уже другую просьбу. - Самопроверка в конце — можно заменить отдельным вторым запросом, где другая модель проверяет, что вариант просит то же самое.


📋

Шаблон промпта

Ты генерируешь тестовые варианты запроса для проверки агента.

Базовый запрос: «{базовый_запрос}»

Что должен сделать агент (эталон): {эталон_действий}

Правила: нельзя менять факты, имена, даты, числа, названия и суть просьбы.
Менять можно только манеру формулировки.

Для каждого стиля предложи {число_кандидатов} кандидатов, каждый с другим
подходом. Затем выбери по одному лучшему, который звучит как текст живого
человека.

Стили:
{список_стилей_с_определениями}

После каждого варианта проверь: все ли факты на месте? Просит ли вариант
ровно то же самое? Если нет — перепиши.

Что подставлять: - {базовый_запрос} — то, как вы обычно просите агента. - {эталон_действий} — нумерованный список того, что агент обязан сделать. Именно по нему вы потом считаете пропуски. - {число_кандидатов} — 3–6. - {список_стилей_с_определениями} — возьмите определения из блока «Оригинал» ниже.

🚀 Быстрый старт — вставь в чат:

Вот шаблон генератора тестовых вариантов запроса. Адаптируй под мою задачу:
{опиши, что делает твой агент и как обычно просишь}.
Задавай вопросы, чтобы заполнить поля.

[вставить шаблон выше]

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


⚠️

Ограничения

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

⚠️ Разные модели — разный результат: Косвенные запросы вредят почти во всех моделях и системах. Остальное зависит от модели. Официальный тон сильно бьёт по одним и почти не влияет на другие. У самой слабой модели эффект часто статистически незаметен.

⚠️ Многословность вредит не везде: Лишняя болтовня сильно ломает поиск по словам (классический лексический поиск вроде BM25) и почти не мешает современному поиску по смыслу. Если ваш агент ищет письма или документы по ключевым словам, длинный запрос «выталкивает» нужный документ. Если поиск смысловой, проблема мала.

⚠️ Диалекты — синтетика: Варианты английского созданы по правилам и показывают поведение систем, а не реальных людей. Для русского языка таких данных в статье нет.

⚠️ Только письма и английский: Всё проверено на почтовых данных и английском. Перенос на русский язык и другие задачи логичен, но не доказан.


🔍

Как исследовали

Идея была простой: не менять ничего, кроме формулировки. Команда взяла три задачи. Первая — вопросы по архиву переписки Enron (400 вопросов) с поиском письма и ответом по нему. Вторая — ToolTalk, диалоги с инструментами (50 диалогов, 194 реплики). Третья — WorkBench, офисные задачи в песочнице, где задача засчитывается только при точном совпадении итогового состояния базы (90 задач). Каждый запрос переписали в 10 стилей и 4 варианта английского: индийский, сингапурский, южноафриканский и нигерийский.

Чтобы вариант считался честным, он проходил четыре проверки. Числа и имена должны быть на месте. Судья-LLM подтверждает, что вариант просит то же самое. Другой судья подтверждает, что стиль действительно выражен. Третий проверяет, что текст звучит как написанный человеком. Для сложных стилей модель выдавала 6 кандидатов с разным подходом, чтобы варианты не слипались в одну фразу. Двое авторов отдельно проверили 120 вариантов вручную, и по смыслу запроса совпали полностью.

Результаты. Косвенные запросы вредят всем трём системам и всем моделям. В ToolTalk успешность упала более чем на 20 пунктов (с 52,7 до примерно 30), в WorkBench на 10,7. Официальный тон на ToolTalk и WorkBench снижает результат на 12–14 пунктов. В поиске по письмам он почти не вредит.

Что удивило. Агенты не стали делать больше ошибочных действий. Они стали делать меньше правильных. В WorkBench при официальном тоне доля задач, где агент не вызвал ни одного инструмента, выросла с 0,4% до 12,2%. При косвенных запросах агент действовал, но попадал в неверное итоговое состояние. Для практики это значит: оценивайте не только «верно ли», но и «всё ли сделано».

Ещё одна неожиданность: модель с лучшим базовым результатом не была самой устойчивой. Сильная модель просела в большем числе случаев, чем слабая. Но слабая и так хуже, и у неё просто меньше есть что терять.

Парный дизайн (каждый вариант сравнивается с собственным исходным запросом) убирает влияние сложности задач. Поэтому падение можно приписать именно формулировке.


📄

Оригинал из исследования

Определения стилей (Table 1) в авторской формулировке. Их удобно вставлять в {список_стилей_с_определениями}:

Directness
  direct (reference): The request is stated explicitly as a question or command.
  indirect (contrastive): The request is conveyed through a hint, stated need,
                          uncertainty, or observation.

Formality
  formal: Complete sentences, standard punctuation, no slang or contractions.
  casual: Informal wording, contractions, shorthand, lowercase typing,
          or loose punctuation.

Verbosity
  concise (reference): The request is stated briefly, with the main ask
                       near the beginning.
  verbose: The same request sits within added chatter, hedging,
           or unrelated context.

Emotion
  calm (reference): The request is presented in neutral, matter-of-fact language.
  charged: The request expresses frustration, stress, anxiety, or urgency.

Grammaticality
  grammatical (reference): Standard written English grammar and word order.
  non-grammatical: Restructured word order with systematic grammatical slips.

Контекст: Эти определения авторы вложили в промпты переписчика (gpt-5.4-mini, температура 1.0). Полные промпты и списки подходов лежат в приложениях статьи, в доступном тексте их нет.


💡

Адаптации и экстраполяции

💡 Адаптация для системного промпта агента (гипотеза, в статье не проверялась): Раз проблема в «спрятанной» просьбе, можно заставить агента явно извлекать её, прежде чем действовать.

Перед любым действием выпиши одной строкой: «Что от меня хотят сделать?»
Любая просьба, даже в форме намёка, пожелания, вопроса или констатации
проблемы, считается поручением, если из неё следует действие.
Затем составь список всех действий, которые нужны для выполнения просьбы,
и выполни каждое. Не завершай работу, пока не выполнены все пункты.
Если не уверен, что просьба — поручение, спроси.

Проверьте эффект тем же генератором вариантов: прогоните косвенный и официальный запросы с этой вставкой и без неё.

🔧 Техника: считать пропуски отдельно → видеть реальную проблему

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

🔧 Техника: нормализатор запроса → прямой императив на входе

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

Перепиши запрос пользователя в одну прямую команду или список команд.
Главное действие поставь в начало. Не меняй имена, даты, числа.
Запрос: {текст_запроса}

🔗

Ресурсы

  • Работа: Lost in the Request: How Communication Variation Disrupts Retrieval and Action in Email Agents
  • Авторы: Feng Chen, Ritam Dutt, Atnaz Taheri, Alex Williams (Feng Chen: fengc9@uw.edu)
  • Использованные данные и инструменты: EnronQA (Ryan et al., 2025), ToolTalk (Farn and Shin, 2023), WorkBench (Styles et al., 2024)
  • Построитель диалектов: value-nlp.github.io (Ziems et al., 2023)
  • Верbalized sampling (Zhang et al., 2025) — приём, когда за один вызов модель возвращает несколько кандидатов с разными подходами.

📋 Дайджест исследования

Ключевая суть

Один и тот же запрос, сказанный по-разному, заставляет агента делать меньше работы. Ошибок он при этом не добавляет, просто молчит и пропускает часть действий. Метод позволяет заранее найти формулировки, на которых ваш почтовый агент теряет работу. Фишка: общий балл успеха этой дыры не показывает, а два счётчика (не сделал нужное и сделал лишнее) показывают. Берёшь рабочий запрос, просишь LLM переписать его в 6 стилях без изменения фактов и прогоняешь через агента. Косвенные просьбы вредят почти всем моделям: главный глагол прячется, и агент отвечает бодро, но половину дела не делает.

Принцип работы

Процесс из пяти шагов: базовый запрос и эталон → переписывание в стилях → проверка смысла → прогон через агента → сравнение с базой. Стили: косвенный, официальный, разговорный, многословный, эмоциональный, с ошибками. Эталон — это нумерованный список действий, которые агент обязан сделать. Меняется только манера речи, а факты, имена, даты и суть просьбы остаются как были. Тогда любой провал вызван формулировкой, а не другой задачей. Считаешь два числа. Первое: сколько пунктов эталона агент пропустил. Второе: сколько лишнего он натворил. По исследованию, просадка почти всегда идёт по первому счётчику.

Почему работает

Модель ищет в тексте явный приказ: «перешли», «поставь». Если просьба спрятана в намёк («было бы здорово, если бы Иван узнал…») или в придаточное («прошу учесть, что необходимо бы…»), главного глагола нет. Агент понимает тему и отвечает по теме. Но приказа к действию он не видит, поэтому объясняет вместо того, чтобы делать. Официальный тон в части задач доводит до крайности: инструменты не вызываются вообще. Агент не путает действия, он просто не понимает, что от него ждут действий. Поэтому простой процент успеха прячет проблему, а подсчёт пропусков по эталону её вскрывает. Вторая половина: LLM хорошо переписывает текст в нужном стиле и сама проверяет, что смысл не потерялся. Варианты получаются за один запрос, вручную их набирать не нужно. Ещё одна находка. Многословность по-разному бьёт по поиску. Классический поиск по ключевым словам (BM25) от болтовни в запросе сильно страдает, нужное письмо «выталкивается». Поиск по смыслу почти не замечает лишних слов.

Когда применять

Почтовые и рабочие агенты → проверка перед запуском для сотрудников или клиентов, особенно когда люди пишут не так чётко, как автор настройки. Подходит и для любого агента с инструментами: календарь, пересылка, ответы, задачи. Полезно, когда агент ищет письма или документы по ключевым словам. Длинные запросы там ломают поиск. НЕ подходит как доказательство, что станет лучше. Авторы измеряли, где ломается, но не проверяли, чинит ли это переписывание запроса или дополнительная инструкция. Всё проверено только на письмах и английском языке, перенос на русский логичен, но не доказан.

Мини-рецепт

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

Примеры

[ПЛОХО] : Проверил агента один раз: «Перешли письмо поставщика Сергею Ильичу и поставь созвон на четверг в 15:00». Всё сделал, значит работает.
[ХОРОШО] : Ты генерируешь тестовые варианты запроса для проверки почтового агента. Базовый запрос: «Перешли письмо поставщика зерна от 12 марта Сергею Ильичу и поставь созвон с ним на четверг в 15:00». Эталон: 1) найти письмо от 12 марта, 2) переслать Сергею Ильичу, 3) создать событие на четверг, 15:00. Нельзя менять факты, имена, даты, время и суть просьбы. Для каждого стиля (косвенный, официальный, разговорный, многословный, эмоциональный, с ошибками) предложи 6 кандидатов с разным подходом и выбери лучший, похожий на письмо живого человека. После каждого проверь: все факты на месте? Просьба та же? Если нет, перепиши. Дальше прогоняешь шесть вариантов через агента. Например, на косвенном «Мы тут с поставщиком вроде не определились по четвергу, Сергей Ильич, наверное, должен быть в курсе…» агент может ответить вежливо и не создать ни события, ни пересылки. Это один пропуск из трёх пунктов эталона.
Источник: Lost in the Request: How Communication Variation Disrupts Retrieval and Action in Email Agents
ArXiv ID: 2610.02627 | Сгенерировано: 2026-10-05 04:26

Проблемы LLM

ПроблемаСутьКак обойти
Агент молча пропускает действия, если просьба сказана мягко или официальноПросишь агента с инструментами (почта, календарь, таблицы). Но не командой, а намёком: «Было бы здорово, если бы Иван узнал про письмо». Или длинной официальной фразой с придаточными. Главный глагол прячется. Модель понимает тему, отвечает вежливо и по делу. Но не видит приказа и не вызывает инструмент. Лишних действий не прибавляется. Нужные просто пропадают. Громкой ошибки нет, поэтому заметить это трудноПиши поручения прямой командой: «Перешли письмо Ивану». Один глагол действия на одну задачу. Если запросы пишут другие люди, добавь в системную инструкцию: «Любую просьбу, даже косвенную, считай поручением. Выполни все действия». Этот текст надо проверить на своих запросах. Он не доказан

Методы

МетодСуть
Проверка агента на разных формулировках одного запросаВозьми рабочий запрос и список действий, которые агент обязан сделать. Попроси модель переписать запрос в нескольких стилях: косвенный, официальный, разговорный, многословный, эмоциональный, с ошибками. Прогони каждый вариант через агента. Посчитай два числа: «не сделал нужное» и «сделал лишнее». Общий балл успеха прячет, что агент просто стал делать меньше. Синтаксис: Правила: нельзя менять факты, имена, даты, числа и суть просьбы. Менять можно только манеру. Для каждого стиля предложи 3–6 кандидатов с разным подходом, выбери лучший, который звучит как живой человек. После каждого проверь: все факты на месте? Просьба та же? Почему работает: запрет менять факты не даёт модели упростить задачу. Без него ты проверяешь уже другую просьбу. Несколько кандидатов с разным подходом (намёк, сомнение, наблюдение) дают разнообразие. Сравнение с эталоном показывает, на каких формулировках агент теряет работу. Когда да: агент выполняет действия, запросы пишут разные люди. Оставь только стили, которые реально встречаются у твоих пользователей. Когда нет: одноразовый запрос, который пишешь только ты сам. Для проверки смысла можно взять вторую модель отдельным запросом
📖 Простыми словами

Lost in the Request: How Communication Variation Disrupts Retrieval and Action in EmailAgents

arXiv: 2610.02627

AI-агенты тупеют не от сложных задач, а от банальной человеческой речи. Вся их логика завязана на явных триггерах к действию: модели нужен прямой глагол вроде «отправь» или «создай». Как только ты заворачиваешь задачу в вежливый намёк или официоз, вектор внимания размывается. Модель прекрасно считывает тему переписки, радостно строчит ответ, но триггер запуска тулов просто не щёлкает — в итоге агент начинает умничать в пустоту вместо реальной работы.

Это как сказать намёками бестолковому стажёру: «Что-то у нас в офисе душно, да и гости на пороге». Нормальный человек пойдёт и откроет окно, а этот кадр просто глубокомысленно согласится: «Да, тяжеловато дышать». С языковыми моделями та же фигня: они патологически не умеют читать между строк. Если ты не вбил прямую команду «открой окно», бот решит, что вы просто мило болтаете, и задача будет слита.

Исследователи проверили это экспериментально: брали одни и те же таски и переписывали их через косвенные формулировки, канцелярит, опечатки и эмоциональные сопли. Результат — полная деградация действий. Фраза «было бы здорово ввести Сергея в курс дела» начисто ломает распознавание интента. Причём стандартные метрики бодро рапортуют об успехе: бот ведь вежливо отписался! А то, что он забыл прикрепить инвойс и продолбал созвон в календаре, метрика стыдливо умалчивает.

Тестировали на почтовых ассистентах, но этот системный косяк похоронит любой сложный сетап. Будь то агент на базе Claude с MCP, кастомная связка в n8n или автоответчик в службе поддержки — реальные клиенты и сотрудники никогда не пишут промптами. Они пишут как попало: сленгом, голосовухами, намёками и опечатками. Если логика завязана на идеальный синтаксис, вся автоматизация превращается в тыкву.

Вывод простой: никогда не скармливай сырой пользовательский текст агенту, у которого есть доступ к боевым кнопкам. Ставь на входе тупой фильтр-нормализатор, который переводит нытьё «мы тут не определились…» в строгий императивный JSON, либо прибивай интерфейс гвоздями к кнопкам. Иначе ты наймёшь дорогого AI-помощника, который будет искренне сочувствовать твоему бардаку, но палец о палец не ударит.

Работа с исследованием

Адаптируйте исследование под ваши задачи или создайте готовый промпт на основе техник из исследования.

0 / 2000
~0.5-2 N-токенов ~10-30с
~0.3-1 N-токенов ~5-15с