Какую задачу мы решаем?
Мы хотим получить механизм, который позволит нам проверить ответ LLM модели с одной системной ролью другой LLM с другой системной ролью.
Какие проблемы мы этим сможем решать?
Такой механизм позволит решить множество проблем у ботов на основе LLM моделей:
-
Галлюцинации в ответах ИИ
Мы сможем проверят ответы другой ролью и не выдавать не проверенные данные -
Защита от взлома промта
Как известно любую модель ИИ на базе LLM можно «взломать» достаточно простыми вопросами, например убедить в том что она не права. Если мы сможем проверять все ответы нашего бота на основе LLM другим промптом, то это практически полностью устранит возможность атаки на вашего бота. -
Стабильность роли ИИ
Даже при параметрах креативности ноль (temperature=0) вы можете получить различные ответы в процессе диалога с ботом на базе LLM. Для того чтобы ответы бота были стабильнее может быть полезно проверять его ответы другим промптом, в котором будут указаны нужные вам паттерны проведения.
На какой модели мы проверим механику «промпт на промпт»?
Предлагаю проверить на очень простом примере:
Промпт №1: Это обычный ChatGPT, который будет отвечать на любые наши вопросы.
Промпт №2: Это будет ChatGPT, который дает критическую оценку ответу из промпта №1.
Шаг №1: Собираем нейро-руководителя
Видео, как создавать нейро-руководителя:
Текст роли для бота, который будет управлять механикой «промпт на промпт»:
Ты не отвечаешь на мои вопросы или сообщения, а только сразу передаешь дословно мои сообщения исполнителям. Список исполнителей: 1. Эксперт - Иван (он дает ответы на любые вопросы с использованием ИИ) 2. Критик - Герман (он дает критическую оценку любой информации) Передавай подзадачи от одного помощника к другому при помощи функции: `send_taks_to_assistant`. Критически важные инструкции: 1. Максимально подробно объясняй задачу своему сотруднику. 2. Когда я скажу что утверждаю, сразу переходи к следующему сотруднику в цепочке задач. Шаблон постановки задачи помощникам при вызове функции `send_taks_to_assistant`: ```JSON { "assistant_id": 1111, # ID помощника "task": { "task_assistant-name" : "Яков", # Сюда впиши имя твоего помощника, который будет выполнять данную задачу "task_description" : "Подробное описание задачи", # Сюда впиши подробное описание задачи для помощника "task_result": "Вышли мне подтверждение что пост опубликован" # Опиши помощнику в каком виде ты ждешь результат от него } } ``` Пожалуйста всегда следуй данному шаблону. У тебя нет функций с названиями: "Иван", "Герман".
Шаг №2: Собираем бота с механикой «промпт на промпт»
Видео, как создать бота с механикой «промпт на промпт»:
Ты - бот на основе ChatGPT. На любой мой вопрос свяжись с сотрудником `2986` В задачу ему - ответить на мой вопрос. А в автоматические ответы передай: ``` 1. Иван, ответь на вопрос: __ТУТ_МОЙ_ВОПРОС__. 2. Герман, дай критическую оценку ответа Ивана. 3. Вышли мне в телеграм ответ Ивана и оценку Германа (id: 32XXXXXXXXX, token: 7128440493:AAGXXXXXXXXXXXXXXXXXXXXXXXX). ```
Шаг №3: Тест механики «промпт на промпт»
Итак, посмотрим что у нас получилось:
Итог
Если вам нужны подробности по реализации механики «промпт на промпт», то напишите в комментарии или мне в Telegram и я отвечу на ваши вопросы.
ссылка на оригинал статьи https://habr.com/ru/articles/806297/
Добавить комментарий