Используем базу в Notion как знания для нейро-сотрудника на базе LLM (ChatGPT)
Какую проблему мы будем решать?
⚡ Генерация ответов от LLM по базе знаний неограниченного объема и со 100% точностью ответов.
Почему Notion в качестве базы знаний?
Notion бесплатен
Базы данных в Notion не имеют ограничений по количеству записей. Ограничение в бесплатном тарифе только на размер фалов (до 5 Мб) и на максимальное количество символов в текстовом поле (2000 букв).
Notion предоставляет API для поиска по базе данных
Существует много сервисов по автоматизации процесса обновление и добавление данных в базе Notion (Zapier и другие)
Шаг №1: Создадим тестовую базу в Notion
По этой ссылке вы можете скопировать пример базы данных к себе в аккаунт Notion.
Пример базы данных в Notion для использования нейро-сотрудником на базе ChatGPT
Шаг №2: Открываем доступ по API к базе данных в Notion
Для того чтобы наш нейро-сотрудник мог обращаться к базе в Notion перейдите по этой ссылке. Вы увидите такую страницу:
Настройка новой интеграции с базой Notion
Нажмите на кнопку New integration и получите API ключ.
Так выглядит генерация токена для подключения к Notion
И наконец самое важное! Вы должны подключить созданную интеграцию к вашей базе:
На странице с базой данных подключите вашу интеграцию в разделе «Connections»
Шаг №3: Создаем нейро-сотрудника
Для примера мы используем сервис ProTalk у которого уже есть готовая интеграция с Notion
Создание нейро-сотрудника с помощью одной строки описания
Пишем коротко роль для генерации нейро-сотрудника и далее кнопку Создать.
Далее настроим по шагам нашего нейро-сотрудника:
Настройка основных параметров нейро-сотрудника
В качестве примера выберем модель ChatGPT 4 omni и подключим функцию связи с базой в Notion.
Двигаемся дальше к настройке роли для нейро-сотрудника:
Сгенерированная роль с помощью ИИ
Тут пока ничего можем не менять и подключим сразу Телеграм бота на следующем шаге.
Подключение нейро-сотрудника к боту в Телеграм
После этого мы видим созданного сотрудника в личном кабинете:
Нейро-сотрудники в личном кабинете ProTalk
Шаг №4: Инструктируем нейро-сотрудника как работать с базой в Notion
Для того чтобы наш нейро-сотрудник мог ориентироваться самостоятельно по базе данных в Notion нам нужно сказать ему по каким полям базы он может фильтровать и искать автомобили.
Вот так выглядит для примера инструкция по работе с базой автомобилей:
Для получения данных по автомобилям из базы данных Notion используй эти поля для фильтрации данных:
```
"Марка машины": "Volkswagen", "Mercedes", "Honda"
"Модель машины": текстовое поле
"Коробка передач": "CVT", "Automatic", "Manual"
"Мощность двигателя": числовое поле
"Цвет машины": "Silver", "Black", "Red"
"Цена машины": числовое поле
"Класс автомобиля": "Доступный и практичный", "Надежный и экономичный", "Комфортный и просторный", "Роскошный и мощный"
"Наличие": "Нет в наличии", "В наличии"
"Тип топлива": "Бензин", "Электрический", "Гибрид", "Дизель"
```
По текстовым полям можно искать по маске.
По числовым полям искать используя диапазон.
Добавим эти инструкции в поле «Поведение»:
Блок «Поведение» при настройке личности нейро-сотрудника
⚡Обратите внимание что мы не указали все варианты значений для полей «Марка машины», «Класс автомобиля» и «Цвет машины». Если вы хотите чтобы нейро-сотрудник ориентировался полностью по всем вариантам нужно указать полные списки всех вариантов значений этих полей.
Добавим в «Роль» данные для подключения к нашей базе:
Для подключения к базе Notion используй эти данные:
```
Токен: secret_XXXXXXXXXXXXXXXXXXXXXXXX
Ссылка на базу: https://www.notion.so/XXXXXXXXXXXXXXXXXXXX?v=XXXXXXXXXXXXXXXXXXX
```
Блок «Роль» при настройке личности нейро-сотрудника
Тестирование нейро-сотрудника
Тестирование нейро-сотрудника к которому подключена база знаний в Notion
Все правильно, мы не дали в инструкциях боту варианта фильтрации по марке «Toyota».
Тестирование нейро-сотрудника к которому подключена база знаний в Notion
По марке «Volkswagen» и в наличии нейро-сотрудник отработал корректно.
Тестирование нейро-сотрудника к которому подключена база знаний в Notion
По фильтру мощности двигателя так же наш нейро -сотрудник справился с задачей.
Тестирование нейро-сотрудника к которому подключена база знаний в Notion
И такой запрос бот отработал на отлично.
Вывод
Плюсы использования базы Notion в ботах на базе LLM очевидны:
Ориентирование в базах неограниченного объема
100% достоверность ответов
Обновление знаний в реальном времени и в рамках текущего диалога с пользователем
Но как обычно есть и другая сторона, которая потребует от вас времени на подготовку:
Необходимо подготовить и занести данные в Notion
Сделать описание полей для фильтрации и включить это в роль нейро-сотрудника
Итог
Если у вас возникнут вопросы при создании подобной интеграции, то напишите в комментарии или мне в Telegram и я постараюсь ответить на ваши вопросы.