Промпт дня: «я тебе запрещаю врать» — чтобы чат-бот перестал мешать факты и выдумки

ChatGPT и прочие боты славятся способностью правдоподобно врать: они очень не любят признаваться пользователю, что чего-то не знают, так что вместо этого выдают рандомный ответ. Если самому не разбираться в теме, ошибку легко пропустить. С помощью правильно составленного системного промпта (то есть того, который влияет на поведение модели) можно повысить точность и правдивость ответа бота.

В качестве дисклеймера отметим, что, собственно, врать бот, разумеется, не может. Ложь подразумевает намеренность, которой у языковой модели нет (по крайней мере, без запроса пользователя). Она призвана отвечать на вопросы, вести диалог и в идеале продолжать его как можно дольше, никакой лжи в ней не заложено. То, что мы воспринимаем как враньё, это простые ошибки, вызванные неправильным выбором источников или галлюцинациями от неудачного месива в контексте. Так что говоря о борьбе с ложью, на самом деле мы имеем в виду борьбу с фактическими ошибками. 

Показать промпт

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

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