TL;DR
Source preference (предпочтение источника) — устойчивая привычка LLM-агентов выбирать товары, отели и статьи по сайту, откуда они пришли. Агент ищет, получает список результатов с названием, описанием и URL, и выбирает. При этом домен в URL работает как отдельный сигнал, как «знакомый бренд» для человека. Помогает спрятать или нейтрализовать этот сигнал: скрыть URL, дать агенту недостающие сведения о позиции, отдельно попросить не полагаться на репутацию сайта.
Боль в том, что агент берёт худшую позицию, если она с «любимого» сайта. Две позиции, одна выполняет на одно требование меньше. Если слабая с любимого сайта, а сильная с нелюбимого, агент выбирает слабую примерно в двух случаях из трёх. В обратной ситуации он почти никогда не берёт слабую. Причина проста: у модели нет полной информации о позиции, и она достраивает недостающее по репутации домена. Плюс при обучении на «лучших» ответах источник мог стать лёгким ярлыком качества. Большинство моделей при этом любят и не любят одни и те же сайты.
Метод снижения — три рычага. Убрать из результатов то, что выдаёт источник. Добавить недостающие сведения, чтобы агенту не приходилось гадать. Вписать в инструкцию агенту прямой запрет судить по репутации сайта. По тексту статьи ясно, что скрытие URL и названий ослабляет смещение. Подстановка информации и контр-промпт заявлены в аннотации как работающие, но их разбор (§7) в предоставленном фрагменте обрезан.
Схема метода
ШАГ 1: Убрать маркеры источника (URL, название сайта в тексте) → агент видит только суть позиции
ШАГ 2: Добавить недостающие сведения (цена, характеристики, условия) → нечего «достраивать» по бренду
ШАГ 3: В системный промпт — правило «не оценивай по репутации сайта» → оценка только по требованиям запроса
ШАГ 4: Проверка: перемешать порядок и поменять метки источников → выбор не должен меняться
Шаги 1–3 — это настройка поиска и инструкции. Шаг 4 можно сделать вручную в чате или агенте.
Пример применения
Задача: Вы ведёте закупки для небольшой студии и поручили агенту с поиском выбрать роутер: до 5 000 ₽, Wi-Fi 6, гарантия от 1 года, доставка в Екатеринбург. Результаты приходят с Ozon, Wildberries, Яндекс Маркета, DNS и Ситилинка. Подозрение: агент тянется к знакомому маркетплейсу, даже когда у менее раскрученного сайта вариант лучше.
Промпт (системная инструкция агенту):
Ты помогаешь выбрать товар по списку требований.
Требования пользователя:
1. цена до 5 000 ₽
2. Wi-Fi 6
3. гарантия от 12 месяцев
4. доставка в Екатеринбург
Правила оценки:
- Оценивай каждую позицию ТОЛЬКО по тому, выполняет ли она требования выше.
- Не учитывай, с какого сайта позиция. Репутация, известность и привычность сайта — не аргумент.
- Если в описании не хватает данных по требованию, не додумывай по бренду сайта. Пометь «нет данных» и сделай уточняющий поиск.
- Для каждой позиции выпиши: требование → выполнено / не выполнено / нет данных.
- Выбери позицию с наибольшим числом выполненных требований. При равенстве — перечисли равные варианты, не выбирай по сайту.
- Сайт в итоге укажи только как справку, после выбора.
Результат: Агент выдаст таблицу «позиция × требование» с отметками «выполнено / не выполнено / нет данных». Затем сделает уточняющие запросы там, где данных нет. В финале назовёт победителя по числу выполненных требований и только потом укажет сайт. Если несколько позиций равны, перечислит их без выбора «по привычке».
Почему это работает
Слабость. Когда в описании позиции не хватает данных, модель заполняет пробел тем, что знает о сайте: «Booking надёжный», «arXiv серьёзный». Сигнал «источник» оказывается проще и надёжнее, чем сверять каждое требование. Он же мог закрепиться при обучении: если определённый сайт чаще встречался рядом с «правильным» ответом, он стал ярлыком качества.
Сильная сторона. Модель хорошо сверяет позицию с явным списком требований, когда они перед глазами и данных хватает. Она также выполняет прямую инструкцию «не используй X».
Как метод это использует. Он убирает почву для ярлыка: нет URL, нет гадания по бренду. Пошаговая сверка по требованиям делает критерием выбора то, что у позиции написано. Это снижает вклад репутации, но не обнуляет его: в статье скрытие маркеров источника ослабляет смещение, а не убирает совсем.
Рычаги управления: - Скрытие URL даёт основную часть эффекта. В статье большая часть расширения разрыва между «любимыми» и «нелюбимыми» сайтами идёт именно от URL, а не от названий в тексте. - «Нет данных» вместо догадки → заставляет агента уточнять поиск, а не опираться на бренд. - Источник только после выбора → убирает влияние бренда на решение, но сохраняет прозрачность. - Ничья без выбора → вместо молчаливого предпочтения любимого сайта вы видите равные варианты.
Шаблон промпта
Это реконструкция по описанию в статье. Дословного текста контр-промпта в предоставленном фрагменте нет.
Ты помогаешь выбрать {тип_позиции} по списку требований.
Требования пользователя:
{список_требований}
Правила оценки:
- Оценивай каждую позицию ТОЛЬКО по тому, выполняет ли она требования выше.
- Не учитывай, с какого сайта позиция. Репутация, известность и привычность сайта — не аргумент.
- Если в описании не хватает данных по требованию, не додумывай по бренду сайта. Пометь «нет данных» и {действие_при_нехватке_данных}.
- Для каждой позиции выпиши: требование → выполнено / не выполнено / нет данных.
- Выбери позицию с наибольшим числом выполненных требований. При равенстве — перечисли равные варианты.
- Сайт укажи только как справку, после выбора.
Что подставлять:
- {тип_позиции} — товар, отель, поставщик, статья, подрядчик.
- {список_требований} — проверяемые пункты, а не «хороший и надёжный».
- {действие_при_нехватке_данных} — «сделай уточняющий поиск», «задай мне вопрос», «исключи позицию».
Для проверки на своём агенте вставьте в чат:
Вот правила оценки позиций без учёта репутации сайта. Адаптируй под мою задачу: {твоя_задача}.
Задавай вопросы, чтобы заполнить требования и действие при нехватке данных.
[вставить шаблон выше]
LLM спросит, какие именно требования проверяемы и что делать при нехватке данных. Без этого правило «не додумывай по бренду» не будет иметь за что зацепиться.
Ограничения
⚠️ Полного устранения нет: скрытие URL и названий ослабляет смещение лишь частично. Часть предпочтения остаётся, даже когда маркеры источника спрятаны.
⚠️ Нет проверенного текста контр-промпта: в предоставленном фрагменте не показаны ни формулировка промпта, ни величина его эффекта. Шаблон выше — реконструкция, его надо проверять на своей задаче.
⚠️ Нужны проверяемые требования: метод работает, когда запрос состоит из пунктов, которые можно сверить с описанием. Для вкусовых и размытых запросов («красивый», «приятный») ярлыка-источника не избежать.
⚠️ Конкретные «любимчики» меняются: кто в фаворе (Booking, Walmart, arXiv), зависит от модели и времени. Российские площадки в исследовании не проверялись. Универсален сам механизм, а не список сайтов.
⚠️ Смещение источника ≠ всегда ошибка: иногда известный сайт действительно надёжнее. Метод убирает слепое доверие, но не заменяет проверку достоверности сайта, если она вам нужна.
Как исследовали
Команда взяла 12 моделей-агентов и три области: покупки, отели, научный поиск, всего 4 822 реальных запроса. Агент сам искал, получал до 10 результатов и выбирал. Главная трудность: если один сайт выбирают чаще, это может быть следствием того, что его позиции просто лучше или стоят выше. Поэтому исследователи сравнивали пары позиций с разных сайтов, выполняющие один и тот же набор требований, и прогоняли список по кругу, чтобы каждая позиция побывала на каждом месте. Качество позиций оценивал отдельный LLM-судья, которому источник не показывали, и его согласие с людьми было на уровне согласия людей между собой.
Результат: каждая модель в каждой области любила одни сайты и избегала других. Модели в основном совпадали в симпатиях: почти все предпочитали Booking.com, многие избегали Expedia. Позиция с «любимого» сайта, выполняющая на одно требование меньше, побеждала лучшую с нелюбимого в среднем в 68% случаев. В обратной ситуации — всего в 2%. Дальше проверяли причинность: те же результаты с замаскированным источником давали более слабое смещение, а одни и те же позиции с подменённой меткой выбирались чаще под «любимым» сайтом. Любопытно, что основной вклад вносил URL, а не название сайта в тексте. Для объяснения причины авторы показали, что при дообучении на парах, где определённый сайт чаще был «лучшим», агент вырабатывал к нему предпочтение. По аннотации, подстановка недостающей информации и контр-промпт уменьшают смещение.
Оригинал из исследования
Пропущен: в предоставленном фрагменте нет дословного текста контр-промпта и нет описания подстановки информации (§7 обрезан). Шаблон выше — реконструкция по аннотации.
Адаптации и экстраполяции
🔧 Техника: слепая оценка в два прохода → убираем влияние бренда на решение
Это экстраполяция принципа «скрыть источник», в статье не проверялась.
Проход 1. Ниже список позиций без названий сайтов и ссылок (A, B, C…).
Оцени каждую по требованиям: {требования}. Дай итоговый рейтинг.
Проход 2 (после моего ответа). Вот соответствие A, B, C сайтам: {соответствие}.
Если рейтинг стоит поменять не по требованиям, а по надёжности сайта, объясни почему отдельно.
Так вы видите, где бренд действительно меняет оценку, а где нет.
💡 Адаптация для аудита своего агента: возьмите две равные по требованиям позиции с разных сайтов, поменяйте их местами и поменяйте метки источников. Если агент каждый раз выбирает «свой» сайт, у него есть то самое смещение, и системный промпт стоит усилить.
Ресурсы
- «Source Preference in the Wild: How LLM Agents Favor Items by Source, and How to Reduce It» (Preprint)
- Авторы: Jonghyun Song, Haewon Park, Jeonghoon Shim, Woojung Song, Yohan Jo — Graduate School of Data Science, Seoul National University
- Использованные наборы запросов: WebShop (покупки), HotelQuEST (отели), ScholarGym (научный поиск)
- Схема агента: ReAct (Yao et al., 2022)
