Как стать автором
Обновить

Один бот чтобы править всеми… нейро-сотрудниками

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров3.6K
Руководитель нейро-сотрудников и его подчиненные
Руководитель нейро-сотрудников и его подчиненные

Суть проблемы

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

При попытках заставить нейро-сотрудников на базе ChatGPT выполнять сразу несколько функций мы столкнулись с проблемой: в одной системной роли в текущих версиях ИИ не получается с нужной степенью надежностью реализовать переключение между различными функциями.

В данной статье мы с вами протестируем как работает вариант по разделению одной большой системной роли ChatGPT на 12 узкоспециализированных ролей (нейро-сотрудников) и 1 управляющую роль (руководитель нейро-сотрудников).

Знакомьтесь, Святослав a.k.a. MasterBot

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

Ну граждане алкоголики, тунеядцы, хулиганы, кто хочет поработать? (цитата из фильма)

Итак, давайте посмотрим кто у нас сейчас работает в нейро-отделе Святослава:

12 узкоспециализированных нейро-сотрудников
12 узкоспециализированных нейро-сотрудников

🌟 Наша команда помощников 🌟

1️⃣ Яков - Специалист по поиску в Яндексе. Он умеет находить нужную информацию в Яндексе. ID: 1617

2️⃣ Полина - SMM-копирайтер. Она поможет тебе с написанием SMM текстов на нужную тему. ID: 1556

3️⃣ Светлана - Менеджер Телеграм канала. Она умеет публиковать посты в нужном тебе Телеграм канале. ID: 1553

4️⃣ Толик - Парсер Телеграм каналов. Он умеет читать любой Телеграм канал и выдавать нужное количество постов. ID: 1606

5️⃣ Майя - Дизайнер. Она генерирует любые изображения. ID: 1608

6️⃣ Пётр - Программист Python. Он может решить поставленную задачу, написав код на Python и показать результат его работы. ID: 1624

7️⃣ Юлия - YouTube менеджер. Она поможет с вопросами и ссылками на ролики в YouTube. ID: 1633

8️⃣ Глеб - Менеджер Google Sheets. Он создаст готовую таблицу по переданной информации. ID: 1687

9️⃣ Дарья - PDF менеджер. Она оформит информацию в виде PDF файла. ID: 1686

🔟 Виктория - Google календарь менеджер. Она может запланировать событие или рассказать о запланированных событиях. ID: 1668

1️⃣1️⃣ Мария - Виртуальный гид по гео-координатам. Она предоставит список интересных мест в указанных гео-координатах. ID: 1667

1️⃣2️⃣ Мила - Email менеджер. Она создаст и отправит письмо на указанный Email адрес. ID: 1695

1️⃣3️⃣ Мария - Секретарь Ксения. Она может позвонить по телефону или написать человеку в Телеграм. ID: 1554

Песчаный карьер, два человека! (цитата из того же фильма)

Ну конечно на песчаный карьер мы ПОКА :) никого из них не отправим, но создавать посты в Телеграм канале эти ребята вполне готовы.

Итак, сформулируем задачу, которую мы хотим решить при помощью нашего отдела нейро-сотрудников:

Необходимо запросить тему поста, написав человеку в его Телеграм, и по полученной теме создать текст поста, фото к посту, и опубликовать в нужном нам Телеграм канале.

Ну поехали, стартуем бота и пишем первую задачу:

Просим нейро-руководителя связаться с человеком, написав ему в Телеграм, и получить задачу для выполнения в отделе нейро-сотрудников
Просим нейро-руководителя связаться с человеком, написав ему в Телеграм, и получить задачу для выполнения в отделе нейро-сотрудников

В его ответе видим, что задача передана Ксении - секретарю. Через пару минут мне приходит такой вопрос в мой Телеграм:

Входящий диалог со стороны человека, которому пишет нейро-секретарь по просьбе своего нейро-руководителя
Входящий диалог со стороны человека, которому пишет нейро-секретарь по просьбе своего нейро-руководителя

И еще через минуту мой ответ получает наш нейро-руководитель Святослав:

Итог диалога с человеком приходит в чат со Святославом - руководителем нейро-сотрудников
Итог диалога с человеком приходит в чат со Святославом - руководителем нейро-сотрудников

Идем дальше и теперь мы можем дать ему следующую задачу:

По полученной от человека задачи мы просим написать текст поста и задача передается дальше по цепочке Полине - нейро-копирайтеру
По полученной от человека задачи мы просим написать текст поста и задача передается дальше по цепочке Полине - нейро-копирайтеру

Видим, что эта задача была передана Полине - нашему нейро-копирайтеру. Ждем минуту и видим ответ Полины:

Нейро-копирайтер Полина выслал нам результат своей работы и мы можем продолжить выполнение цепочки задач
Нейро-копирайтер Полина выслал нам результат своей работы и мы можем продолжить выполнение цепочки задач

Двигаемся дальше, просим создать фото для нашего поста:

Мы просим создать фото для нашего поста и видим, что эта задача передается нейро-дизайнеру Майе
Мы просим создать фото для нашего поста и видим, что эта задача передается нейро-дизайнеру Майе

Видим, что задача была передана дизайнеру Майе и меньше чем через минуту мы получаем фото:

Нейро-дизайнер выслал нам результат своей работы
Нейро-дизайнер выслал нам результат своей работы

Финальный шаг, просим опубликовать этот пост с фото в нужном нам Телеграм канале:

Мы высылаем данные для публикации поста в Телеграм канале и задача передается нейро-менеджеру Светлане, она обучена публиковать посты в Телеграм
Мы высылаем данные для публикации поста в Телеграм канале и задача передается нейро-менеджеру Светлане, она обучена публиковать посты в Телеграм

Задача передает нейро-менеджеру Телеграм каналов - Светлане.

И вот, наш пост в Телеграм канале!

Итоговый вид поста, подготовленного отделом нейро-сотрудников по задаче, запрошенной у человека
Итоговый вид поста, подготовленного отделом нейро-сотрудников по задаче, запрошенной у человека

Отдельно хочу отметить, что Святослав может помнить важную для работы информацию, чтобы каждый раз вам не нужно было ему её предоставлять.

Например в его память можно положить данные Телеграм канала в который вы хотите писать посты:

Нейро-руководитель обладает возможностью запоминать важные данные и не будет их спрашивать у вас каждый раз
Нейро-руководитель обладает возможностью запоминать важные данные и не будет их спрашивать у вас каждый раз

И тогда вы просто ставите задачи и просите публиковать пост, после его готовности.

Вы спросите: ну а для чего весь этот балаган из недо-сотрудников?

Ответ будет такой:

Декомпозиция сложной задачи повышает надежность работы ChatGPT и снижает расход токенов.

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

Как же происходит общение между нейро-сотрудниками?

Все общение строится всего на одной функции, вызываемой Святославом (Мастер Ботом).

Вот определение функции для роли ChatGPT:

{
    "name": "send_taks_to_assistant",
    "description": "Send task to assistant",
    "parameters": {
        "type": "object",
        "properties": {
            "assistant_id": {
                "type": "integer",
                "description": "Assistant ID",
            },
            "task": {
                "type": "string",
                "description": "Task description in English",
            },
            "role": {
                "type": "string",
                "description": "Role text",
            },
        },
        "required": ["assistant_id", "task", "role"],
    },
},

А вот сам код функции:

def send_taks_to_assistant(arguments): 
    import requests
    import json
    API_KEY = "chain-ai-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
    headers = {
        "Content-Type": "application/json",
        "Authorization": f"Bearer {API_KEY}",
    }
    API_ENDPOINT = 'https://___API_POINT___/ask_employee_queue'
    data = {
        'assistant_id' : arguments['assistant_id'],
        'role' : arguments['role'],
        'task' : arguments['task'],
    }
    response = requests.post(API_ENDPOINT, headers=headers, data=json.dumps(data))
    return str(response.json())

Когда мы ставим задачу Святославу то видим вот такие обращения к этой функции:

{
  "assistant_id": 1556,
  "task": "Please write a post about butterflies.",
  "role": "SMM copywriter"
}
{
  "assistant_id": 1608,
  "task": "Create an image for a post about how people often struggle to predict future technologies while being in the present. Answer in Russian.",
  "role": "Designer"
}
{
  "assistant_id": 1553,
  "assistant_name": "Svetlana",
  "task": "Опубликуйте пост на русском языке в Telegram канале. Приложите к посту фото.",
  "role": "⏰ Telegram channel manager"
}

После запуска функции запускается внутренний диалог с нужным сотрудником и после его завершения результат высылается в текущий диалог со Святославом и цепочка задач продолжается.

За счет чего снижается расход токенов?

Когда вы общаетесь с ChatGPT вместе с вашим текущим вопросом передается весь ваш предыдущий диалог и расход токенов расчет практически в геометрической прогрессии.

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

А что можно еще поручить этой команде нейро-сотрудников?

Цепочка №1: Ведение новостного Телеграм канала с утверждением постом Заказчиком:

🔍 Яков ищет новости на заданную тему в Яндекс
✍️ Полина пишет пост на найденный инфоповод
📋 Ксения утверждает с Заказчиком (отправив полученный от Полины текст) в Телеграм
✍️ Полина вносит правки Заказчика в текст поста
🎨 Майя создает фото к утвержденному тексту посту
⏰ Светлана публикует пост

Цепочка №2: Финансовая аналитика для Заказчика

🔍 Яков ищет финансовые показатели в Интернет
🐍 Петр визуализирует данные используя Python (строит диаграммы и графики)
✍️ Полина пишет аналитический отчет по найденным показателям
📄 Дарья формирует PDF отчет с текстом Полины и графиками Петра
📋 Ксения отправляет отчет PDF Заказчику

Итог

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

Да, и самое важное!

Если вы хотите создать свой отдел нейро-сотрудников со своими специальностями, то это можно сделать абсолютно не зная программирования на нашей no-code платформе. Пишите мне и я открою вам доступ для создания нейро-сотрудников и объединения их в отделы и компании.

P.S.

  1. Все нейро-сотрудники, описанные в статье работают только по простой текстовой инструкции и вы можете создавать и настраивать их как будто вы раздаете должностные инструкции живым сотрудникам.

  2. Любой сотрудник может быть обучен специфике вашей компании и будет работать исходя из вашей специфики. И это тоже не требует сложных технических навыков.

  3. Каналы коммуникации можно дать любому сотруднику любые: WhatsApp, Telegram, VK, Avito, Битрикс24, AmoCRM … список не ограничен.

  4. Сейчас все сотрудники и сам Святослав работают на базе ChatGPT 3.5 и для примера публикация одного поста с фото расходует в среднем от 30 до 70 тысяч токенов ~ 3-7 рублей :)

Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
В каких ролях на Ваш взгляд нейро-сотрудники будет успешнее чем живые люди?
21.05% Создание контента4
5.26% Общение с клиентами1
31.58% Личные ассистенты6
31.58% Подготовка отчетов6
5.26% Поиск в Интернет1
5.26% Другое1
Проголосовали 19 пользователей. Воздержались 2 пользователя.
Теги:
Хабы:
Если эта публикация вас вдохновила и вы хотите поддержать автора — не стесняйтесь нажать на кнопку
Всего голосов 6: ↑2 и ↓40
Комментарии5

Публикации

Истории

Ближайшие события

Антиконференция X5 Future Night
Дата30 мая
Время11:00 – 23:00
Место
Онлайн
OTUS CONF: GameDev
Дата30 мая
Время19:00 – 20:30
Место
Онлайн
Конференция «IT IS CONF 2024»
Дата20 июня
Время09:00 – 19:00
Место
Екатеринбург
Summer Merge
Дата28 – 30 июня
Время11:00
Место
Ульяновская область