Реклама

Почему LLM игнорирует системный промпт: история диалога сильнее инструкций

#Почему #Знакомая #ВАЖНО #Промпт #Модель

Знакомая ситуация: в системном промпте четко написано, что модель делать не должна ни в коем случае, а она все равно это делает. Вы переписываете правило, добавляете «ВАЖНО», капслок и примеры, становится чуть лучше, а потом снова за старое. В какой‑то момент начинаешь подозревать модель, ее настройки (например, температуру) или провайдера. Мы наступили на это в голосовом ассистенте и разобрали случай до конца: переиграли боевые запросы и меняли по одному фактору за раз. Промпт оказался ни при чем. Модель слушалась собственной истории диалога, и ниже я покажу, как мы это нашли, какие получились цифры и что с этим делать, если вы строите на LLM чат‑бота, агента или ассистента. Читать далее

Знакомая ситуация: в системном промпте четко написано, чего модель делать не должна ни в коем случае, а она все равно это делает. Вы переписываете правило, добавляете «ВАЖНО», капслок и примеры, становится чуть лучше, а потом снова за старое. В какой‑то момент начинаешь подозревать модель, ее настройки (например, температуру) или провайдера.

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

Где это возникает

Ассистент слушает созвон и подсказывает пользователю ответы на экране. В режиме автоответа модель видит каждую фразу собеседника и сама решает, нужна ли подсказка или реплику лучше пропустить. Для пропуска у нее есть служебный ответ NOOP, который пользователь не видит.