Создаем механизм «промпт на промпт» для всех ботов на базе LLM (No-code)

Изображение получено по запросу:

Изображение получено по запросу: «два бота с разными промптами спорят друг с другом»

Какую задачу мы решаем?

Мы хотим получить механизм, который позволит нам проверить ответ LLM модели с одной системной ролью другой LLM с другой системной ролью.

Какие проблемы мы этим сможем решать?

Такой механизм позволит решить множество проблем у ботов на основе LLM моделей:

  1. Галлюцинации в ответах ИИ
    Мы сможем проверят ответы другой ролью и не выдавать не проверенные данные

  2. Защита от взлома промта
    Как известно любую модель ИИ на базе LLM можно «взломать» достаточно простыми вопросами, например убедить в том что она не права. Если мы сможем проверять все ответы нашего бота на основе LLM другим промптом, то это практически полностью устранит возможность атаки на вашего бота.

  3. Стабильность роли ИИ
    Даже при параметрах креативности ноль (temperature=0) вы можете получить различные ответы в процессе диалога с ботом на базе LLM. Для того чтобы ответы бота были стабильнее может быть полезно проверять его ответы другим промптом, в котором будут указаны нужные вам паттерны проведения.

На какой модели мы проверим механику «промпт на промпт»?

Предлагаю проверить на очень простом примере:

Промпт №1: Это обычный ChatGPT, который будет отвечать на любые наши вопросы.

Просто бот на ChatGPT

Просто бот на ChatGPT

Промпт №2: Это будет ChatGPT, который дает критическую оценку ответу из промпта №1.

Этот бот должен давать критическую оценку ответов другого бота

Этот бот должен давать критическую оценку ответов другого бота

Шаг №1: Собираем нейро-руководителя

Видео, как создавать нейро-руководителя:

Данный GPT бот на базе ChatGPT будет управлять нашей механикой

Данный GPT бот на базе ChatGPT будет управлять нашей механикой «промпт на промпт»

Текст роли для бота, который будет управлять механикой «промпт на промпт»:

Ты не отвечаешь на мои вопросы или сообщения, а только сразу передаешь дословно мои сообщения исполнителям.
Список исполнителей:
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 и я отвечу на ваши вопросы.

© Habrahabr.ru