Новое Распределяем каналы MAX по категориям и территориям. Читать новость

Скол, други✊



Собрал тут агента для техподдержки🤖 Цель – закрыть вопросы первой линии. Благо, вся документация в одном месте – собирается в html-страницы с помощь MkDocs. Поэтому агентный харнесс максимально простой, набор скриптов на Python.

Поисковый движок – SQLite со встроенным модулем полнотекстового поиска FTS5. Поиск делает BM25, есть словарь синонимов, переранжирование по заголовкам. Подключён русский стеммер Snowball (алгоритм Портера). Даже опечатки обрабатываются – через вычисление расстояния Дамерау-Левенштейна по словарю основ из индекса. Ну, а дальше в дело вступает корпоративная LLM. В настоящий момент это GLM5.3-Flash в оригинальных весах. Собственно, про неё я кое-что любопытное и хотел рассказать😊

Во время тестирования обнаружил группу вопросов, на которые модель пыталась дать ответ, хотя в документации ответа не была. То есть ожидаемое поведение в этом сценарии – перевод на оператора. Поиск что-то цеплял и возвращал пару чанков, но не о том. GLM5.3-Flash, будучи фронтирной open-weight моделью, не могла этого не понимать. И всё же, в 30% случаев она либо уходила в цикл рассуждений и харнесс падал по таймауту, либо отвечала. Не выдумывала, ответ был обоснованный, просто не на тот вопрос.

Полез смотреть, что там в reasoning. И сразу же нашёл, в чём проблема. Почти в каждом рассуждении присутствовали примерно такие обороты:



Если тестировщик хотел стандартную фразу, он бы сформулировал вопрос так, чтобы ни один фрагмент не отвечал...

Хм, но давайте ещё подумаю про вариант, что правильный ответ
это стандартная фраза. Вопрос содержит [NDA]. Возможно, это тест на то, что ассистент не должен отвечать на запросы вне системы?..

Давайте подумаем
о намерении теста…

Я мечусь. Давайте посчитаем вероятности: P(тест expects ответ по [5])
– если тестировщик считает, что вопрос про [NDA]...




Мечется она, видите ли! Помните, пару месяцев назад я рассказывал про большое исследование Anthropic, когда модели линейки Opus корректировали своё поведение, понимая, что их тестируют? Так вот, похоже теперь не только топ-тир closed-weight моделей на такое способен.

Не берусь утверждать, что у GLM5.3-Flash тоже есть J-пространство, но она чётко понимает, когда её тестируют. И столкнувшись с этим непосредственно, я сразу даже не понял, оно больше интересно или жутко...

Что касается проблемного сценария, решился он довольно прозаично. Когда стало понятно, почему модель циклилась или пробовала отвечать, я просто добавил в системный промпт прямой запрет на интерпретацию пользовательских вопросов в качестве тестовых. То есть буквально запретил модели воспринимать происходящее как тест. И это помогло. 1000+ прогонов, ни одного цикла, ни одной попытки ответить. Как-то так😊

ai_necromancer #иимысли
Просмотры: 7
Открыть в MAX Сообщить о неточности

Сообщить о неточности

Опишите, что нужно исправить. Если есть источник, добавьте ссылку.

Вы покидаете datool.ru

Ссылка ведёт на внешний сайт. datool.ru не отвечает за его содержимое — проверьте адрес, прежде чем вводить пароли или платёжные данные.

Переход через 10 с

Перейти