Как Создать ИИ Ассистента с Данными Компании Без Кода Пошагово (n8n, Rag, Telegram)
43:21

Как Создать ИИ Ассистента с Данными Компании Без Кода Пошагово (n8n, Rag, Telegram)

ИИшенка | AI Automation 30.04.2025 20 608 просмотров 660 лайков обн. 18.02.2026
Поделиться Telegram VK Бот
Транскрипт Скачать .md
Анализ с AI
Описание видео
Это пошаговая инструкция как создать ИИ помощника для компании. Как на конструкторе n8n запустить своего телеграм бота, который читает и ищет данные о вашей компании за секунды. 🚀 Pro тут: https://t.me/iishenka_pro_bot ⭐️ Все бесплатные материалы из этого видео тут: https://t.me/+W1SnvvkcV6A3NWMy Следующее видео: https://youtu.be/abhGaoWHDEI Тайм-коды: 0:20 - Демо 0:50 - Как ассистент работает 05:50 - Что такое триггеры 06:40 - Настраиваем телеграм бота 11:20 - Настраиваем свитчер 13:10 - Настраиваем транскрибацию голоса 15:00 - Делаем OpenAI аккаунт 17:00 - Настраиваем агента 21:20 - Что такое векторные базы 24:15 - Начинаем создание векторной базы 24:50 - Настраиваем доступ в Google Docs 31:14 - Настраиваем запись в Pinecone 36:26 - Настраиваем чтение из Pinecone 38:20 - Настраиваем промпт для агента

Оглавление (15 сегментов)

  1. 0:00 <Untitled Chapter 1> 37 сл.
  2. 0:20 Демо 61 сл.
  3. 0:50 Как ассистент работает 639 сл.
  4. 5:50 Что такое триггеры 112 сл.
  5. 6:40 Настраиваем телеграм бота 657 сл.
  6. 11:20 Настраиваем свитчер 259 сл.
  7. 13:10 Настраиваем транскрибацию голоса 255 сл.
  8. 15:00 Делаем OpenAI аккаунт 284 сл.
  9. 17:00 Настраиваем агента 586 сл.
  10. 21:20 Что такое векторные базы 359 сл.
  11. 24:15 Начинаем создание векторной базы 86 сл.
  12. 24:50 Настраиваем доступ в Google Docs 695 сл.
  13. 31:14 Настраиваем запись в Pinecone 745 сл.
  14. 36:26 Настраиваем чтение из Pinecone 256 сл.
  15. 38:20 Настраиваем промпт для агента 601 сл.
0:00

<Untitled Chapter 1>

Сегодня мы построим ассистента, который работает через Telegram, знает ваши персональные данные, использует их, чтобы отвечать на вопросы. Весь процесс пройдём пошагово, а бесплатно в конце млейт для построения этого бота. А давайте посмотрим, как это может
0:20

Демо

работать. Привет. А посмотри данные нашей компании. А сколько у нас было активных пользователей в феврале двадцать пятого года? Сейчас мы видим, как работает ассистент, какие модули он задействует, чтобы ответить на наш вопрос. В феврале двадцать пятого года в нашей компании было 644 активных бизнес-пользователя, и это значительный рост по сравнению с предыдущим периодом. Как это только что произошло? Давайте
0:50

Как ассистент работает

посмотрим, как этот ассистент работает. А на самом деле он довольно простой. А у него есть несколько модулей, а, основных, которые мы используем для того, чтобы дать ему информацию, а, чтобы дать возможность её обрабатывать и отдавать, а, нам ответы в соответствии с нашими вопросами. Основные модули, которые у него есть - это, естественно, а, Telegramбот. Он используется в двух местах, да? То есть он используется для ввода информации, также он используется и для вывода информации. Что происходит в процессе между этими двумя историями? Первая история, мы, а, используем распознавание речи, да? То есть вы видели, что я спрашиваю что-то голосом, то есть это, мм, скажем так, voice, а декодер, да? А вот а это используется в том случае, если мы что-то спросили голосом. Если мы используем чат в виде текста, то мы не используем декодер, да? Мы используем а векторную базу данных. А векторная база данных - это такая история, которую мы, а, в которую мы загружаем информацию, которая понадобится впоследствии боту, а для того, чтобы он мог выискивать в этой векторной базе данных нужные кусочки информации, да, и потом использовать их в своих промтах. Мы непосредственно их туда инкорпорируем, происходит это автоматически. Вот. И, естественно, всё это живёт в а обвязке какой-то лмки, да, то есть какой-то нейронки, которая помогает отвечать на вопросы. Соответственно, векторная база данных, да, это некоторая промежуточная история. Мы туда можем идти, можем не идти, а вы сейчас это увидите. А, но что точно происходит? Мы используем некоторую лмпу, да? То есть мы в нашем случае будем использовать Open AI. Можно вообще любые использовать. Я расскажу, покажу, каким образом и зачем используются те или иные а нейронки. Вот. А, ну, в принципе, чего, чего говорить, да? Давайте перейдём к делу. А для того, чтобы наш ассистент работал, вообще говоря, он состоит из двух частей, да? То есть первоначально мы должны, а, создать векторную базу данных и загрузить туда нашу информацию. То есть хорошая новость в том, что можно загрузить вообще любое количество информации, да? Мы сейчас увидим, что, например, я туда загружу там много, несколько сотен даже страниц информации, которые станут а долговременной памятью ассистента. Соответственно, это могут быть ваши данные, а персональные, это могут быть данные вашей компании, в принципе, всё, что вам угодно. А что происходит? В первую очередь, да, нам понадобится сама векторная база данных. Нам понадобятся некоторые креды, да, данные от Open AI. И, в принципе, нам понадобится Telegramбот. Так, давайте начнём прямо с построения Telegram-бота. У меня уже есть, естественно, мой Telegramбот, но мы же хотим построить всё с нуля, да, чтобы потом не платить денег никаким помогаторам. Соответственно, мы прямо с нуля начнём строить Telegramбот, который делает примерно всё то же самое, что вы сейчас увидели на демо. Вот. А поэтому начнём прямо делать, э, всё по порядочку. С чего мы начнём? Где мы вообще строим, а где мы вообще строим нашего ассистента? Нам понадобится сервис, который называется N8N iio. Да, мы его открываем, а мы нажимаем Get Started. И этот сервис нам предложит зарегистрироваться и активировать 14 дней бесплатного использования. Вот я только что зарегистрировался, у меня свежий аккаунт. Соответственно, вы видите то же самое. Мы нажмём кнопочку Open, да? И, соответственно, мы увидим все наши проекты. У меня вот их совсем чуть-чуть. У вас будет ноль проектов, будет большая кнопка создать новый workflow. Вот она будет похожа на эту. Мы прямо нажимаем такую кнопку мм и видим вот такой экран. Точно такой же экран увидите и вы. Весь процесс построения workflow, да, он заточен на два базовых принципа. У вас есть некоторый триггер, да, то есть это некоторае а действие, которые провоцируют агента что-то сделать. и а-а в принципе ответ, да, то есть э мы ждём ответ, респонс от агента. Самое интересное, да, что происходит внутри а этого агента, да, то есть агент что-то делает с информацией всё это время, а чтобы получив информацию от
5:50

Что такое триггеры

триггера, да, обработать её и отдать нам нужный респонс. Соответственно, триггер. Что такое триггер? В нашем тригге, в нашем случае триггер - это, а, Telegram вопрос, да? То есть мы отправляем месседж в Telegram. Давайте сразу перейдём в аа триггеры, да? То есть нам нужен Telegram. Прямо ищете в поиске Telegram. И нам нужно onме message, да? То есть что-то должно произойти на сообщение. Здесь у вас будет необходимость, да, подключить сам Telegram аккаунт. У меня уже какой-то есть. Давайте, чтобы прямо шаг за шагом всё это проходить, мы создадим с вами нового бота. Чтобы создать нового бота, вам нужно совсем мало, да? Вам нужен, а так на так называемый а фаербо.
6:40

Настраиваем телеграм бота

Это у нас что-то есть тут. Вот запускаем Botfеer. Давайте попробуем прямо открыть Telegram. Я думаю, он там открылся, да? Вот у нас открылся а наш бот. Вот в Телеграме у меня тут уже была какая-то с ней переписка. Ну давайте сделаем всё заново. А нужно нажать набрать вот такую комбинацию старт. И здесь будет набор команд. Мы нажимаем NewB. Он говорит: "Давайте создадим". Как мы его назовём, мы с вами не будем, да, как-то особенно придумывать здесь. Так, хорошо. Теперь нам нужен usернеame. Username, как он говорит, нам должен быть таким, чтобы в конце у него встретился бот. Либо через нижнее подчёркивание, либо без него. Вот всё, бот создан. А, и как мы видим, здесь вот есть HTTPI. Это есть тот самый, а, токен, который нам нужен, а, для нашего конструктора ботов, а, конструктора агентов. Мы только что скопировали его, да? Давайте создадим нового бота и вставим access to прямо вот сюда. Нажимаем save. Сейчас он проверит его, так скажет. Хорошо. Аа наш, в принципе, бот готов. А давайте сразу нажмём вот эту ссылочку. А для того, чтобы открыть этого бота, да? Вот мы уже даже можем что-то посылать. Ну, у нас никакой обработки этого бота нету, но мы уже, скорее всего, можем увидеть, что что-то мы посылаем. Вот смотрите, да, отличная ска, скажем так, новость. А мы послали в бота первое сообщение, да, и вот он его получил. И даже если мы тут скажем: "Hello," да, и ещё раз запустим, протестируем шаг, вот он увидит, что мы только что написали Helloбот. Это прекрасно. Это, в принципе, уже огромная часть того, что нам, вообще говоря, нужно от этого бота. А дальше у нас идёт интересный момент, да, мы можем либо написать текст в этот бот, да, либо а записать голосовое сообщение. Это очень важно. И для того, чтобы, а, разрулить эти два, эти две ситуации, в сервисе N8N есть такое понятие, как switch, да, то есть переключатель. Мы его можем прямо в поиске найти. Switch, давайте добавим вот switch. Он прямо вот подключился у нас к Telegram-боту. Эта а штука работает следующим образом. Это, по сути, развилка, да, а для того, чтобы мы могли отрабатывать разные сценарии нашего бота. То есть у нас сейчас есть довольно простой сценарий. Бот, получает либо текст, либо голос, да? А как мы можем понять, что мы должны делать с этим? А мы можем отправить текст и увидеть вот вся структура сообщения, которое мы только что получили из Телеграма. Что будет, если мы попробуем отправить голос? Давайте попробуем вместе. Привет, как твои дела? Нажмём тест. Вернёмся лучше сюда. Ещё раз тест. Смотрите, мы видим, что, помните, тут раньше был текст, а теперь тут voice, да? То есть голос. По сути, когда мы записываем текст, а наш наше устройство записывает аудиофайл, и у этого файла есть своя адишка, да, есть размер, вот формат, ну, тип этого файла. Соответственно, мы этим уже можем воспользоваться. Мы можем нашему свитчеру сказать: "Если есть текст, а делай так". Если есть голос, а делай, а иначе. Соответственно, как мы можем поступить здесь? Нам нужно, по сути, составить два правила, да? Соответственно, а для того, чтобы составить эти правила, нам нужны экспресены. Экспресшены а это выражение. Мы можем понять вот прямо отсюда, есть ли файл, да? Соответственно, если у нас есть файл ID, соответственно, есть и сам голос само голосовое сообщение. Закинем это сюда. Смотрите, в принципе, нам писать ничего не нужно. Мы можем сделать такое правило: если существует вот такая запись, да, соответственно, если существует, нам нужен бун exists. Существует. Если такая штука существует, давайте, а output назовём войсом. Соответственно, как это работает? Если свитчер увидит, что такая штука есть, он выплюнет voice на из себя. Но мы же должны добавить ещё второе, а, второй правило, да? Если это не voice, если это текст, как нам быстро это сделать? Мы можем опять сюда выйти, например, написать какой-то текст, а, перезапустить Telegram и видит, что вот он текст есть, да? Соответственно, возвращаемся в switch и говорим: "А если
11:20

Настраиваем свитчер

у нас есть текст, да, то тогда вот тот же самый булен аа существует, да? Мы тогда в ответ выпленим текст". Вот нажмите обязательно вот эту, а, вот этот флажочек, потому что он ожидает, что это були. Вот, давайте протестируем, да? Нажмём тест. Смотрите, у нас хорошо всё выполнено. И мы видим тут, что он пошёл по ветке текст. И у нас вот зелёненький подсвеченный текст. Если мы вернёмся в Telegram, да, и здесь запишем голосовое теперь сообщение. Аллоаллоалло. И сделаем тест. Да, чтобы тут был войс в структуре. И запустим ещё раз вот этот шаг. Да, он уже зелёным подсветил сам голос, и он уже прошёл по ветке голоса. Мы уже построили, по сути, половину бота. У нас уже есть некоторое понимание того, что делать, э, как понять у нас голос или текст. Соответственно, что мы делаем дальше? Дальше мы должны обработать, да, наш голос и наш текст. Чтобы обработать голос, нам по сути нужно скачать этот файл, да? То есть мы только что видели, что голос - это текстовый файл. Давайте обратно а вернёмся в Telegram. И у Телеграма есть такой экшн, такое действие, как getфайл, да. Соответственно, нам здесь, по сути, нужен ID файла, а у нас он уже есть, да? Вот он файл ID. Мы можем сюда его закинуть. Давайте ещё раз попробуем. Мы можем сюда его закинуть. Всё. И, соответственно, айдишка есть. По айдишке мы, по сути, уже можем скачивать а файл. Давайте попробуем. Вот. Вот у нас есть 12 Кб наш файл. Мы даже можем себе его на компьютер скачать, но главное, что
13:10

Настраиваем транскрибацию голоса

уже ассистент а получил его и может с ним что-то делать. А что с ним надо делать? А файл надо транскрибировать, да? То есть мы возьмём его и, а, отдадим. Мм, давайте так напишем transcribe у Open AI, а есть такой экшн, да, сейчас мы попробуем его найти transcribe recording, да, то есть, соответственно, вот это то, что нам нужно. Мы говорим, что нам понадобится вот эта штука, да, и а в принципе здесь нам ничего и делать не надо, потому что мы видим, что а он уже его видит. Мы можем нажать t. И смотрите, тут уже он, а, распарсил нам звук и сказал: "Голосовой теперь сообщение. Алло-алло". Это ровно то, что я сказал в последнем голосом сообщении. Прекрасно, да? А, но для того, чтобы это всё заработало, вам нужно будет подключить ваш Open AI аккаунт. Да, не обязательно Open AI аккаунт. Вы можете другую нейронку использовать. Ну, для простоты мы будем эту использовать. Когда вы нажмёте впервые, вызовете вот этот экшн, у вас здесь сам сервис N8N предложит вам 100 бесплатных кредитов. То есть это некоторое количество бесплатного юзаджа. Вот. А оно не будет работать именно для транскрибации, будет работать для других задач. Просто спросить э какой-то вопрос, получить ответ. Для транскрибации не будет работать. Соответственно, нам нужно будет получить аккаунт. Как это сделать? М, это очень просто делать. Мы нажимаем получить аккаунт. Дальше мы идём в Open AI API, да, прямо набираем в Гугле и открываем Open AI платформа. У меня уже есть платформа, но вы, по сути, должны будете нажать там
15:00

Делаем OpenAI аккаунт

Signup через Google либо через ваш email. И дальше надо будет пройти сюда в настройки. Да, передвинем чуть-чуть. А ключи, да, и здесь нажать create new secretки key. Вы нажмёте его, какое-то ему имя зададите. Давайте скажем тест. Create. Всё, ваш IP ключ готов. То есть вам его останется скопировать, вернуться в ваш конструктор и вставить его сюда. Всё. На этом всё. Единственный момент, вам нужно будет, э, а каким-то образом а оплатить ваш IP, да? То есть вам нужно будет пойти в Billing, да, и здесь нажать add payment Details. То есть туда принимаются зарубежные карты. Вот если есть вопросы, то есть много кто уже научился, да, оплачивать. Если что, заходите в Telegram-канал и там, а, спросите вопрос. Я думаю, что там можно запросто разобраться, как это делается. Вот у меня уже есть мой оплаченный аккаунт, поэтому мы вернёмся сюда и подключим его, да? То есть он тут уже активирован, и он уже работает. Эээ, не это ли не прекрасно, да? Соответственно, что он отдаёт? Он отдаёт нам текст. А теперь то же самое давайте сделаем с текстовым а-а с текстовым сообщением. Нет, а давайте уже попробуем сразу подключить агента. То есть некоторый наш моторчик внутренний, который обрабатывает, э, информацию вне зависимости от того, как мы получили это сообщение, либо текстом, либо голосом, да? Давайте попробуем добавить сюда агента. Можно поискать тут. Давайте мы просто наберём agent, да? AI agent. Вообще говоря, это то, что нам нужно. Вот. А и здесь есть такая история. А нам тут вот нужно будет выбрать, что define below. То есть мы ниже сами определим, а что этот агент делает, да? То есть на что он реагирует. Вообще говоря, что мы уже знаем. Видите, мы слева всегда в
17:00

Настраиваем агента

этой а системе видим, сейчас мы сделаем побольше. А мы всегда видим предыдущие а шаги, которые мы прошли в этом агенте, да. Соответственно, мы видим, что у нас был а Telegramтриг, потом был switch, и вот нам приехал файл, и вот мы его распарсили, этот файл. По сути, мы должны, а, этому агенту дать то, что мы только что распарсили. Вот так, да? То есть это jonк. А, и если мы сейчас нажмёмстп, а, он ничего не сделает, потому что нужно подключить модельку чата. Давайте сделаем то же самое. Мы сделаем то же самое, что сделали для транскрибации, да? Мы возьмём Open Chat Model. Вы можете выбрать любую, да, и даже если у вас, например, а какая-то ваша openсорсная модель, да, вы можете запросто её подключить через Оламу, например. Вы можете вообще всё и этот конструктор, а держать на ваших серверах для того, чтобы соблюдать конфиденциальность данных. А мы сейчас используем Open AI, да, то есть наш аккаунт. Всё, мы подключили. А давайте попробуем, что будет, если мы нажмём тест. По идее, он должен получить наше сообщение и каким-то образом его отработать. Да, он отвечает: "Привет, как я могу помочь?" Да, потому что сообщение никакой смысловой нагрузки за собой несёт. Но он же, в принципе, готов с нами как-то общаться. Теперь давайте, а, подключим текст. А вдруг мы не через голос сообщили что-то, да, нашему агенту, а через текст, да. Соответственно, нам нужно понять, что мы получаем здесь на выходе. Здесь мы указывали, да, что мы до сих пор работаем с Jonageте, а Aагент нас ждёт messageте. То есть нам вообще нужен нужна такая штука, как data transformation. То есть мы сейчас преобразуем саму переменную, которая выходит отсюда из data messageтек в дататек. В принципе, это такая механическая работа, поэтому давайте просто это сделаем. Так, Edit Fields. Ну вот, соответственно, сюда мы, а, закинем вот это мы не закинем, потому что это голосовой, да, пример. Всегда приятно и всегда полезно, да, возвращаться обратно в наш Telegram. Вот для того, чтобы мы сейчас сделали такую историю, мы можем опять, а, послать текстовые сообщения. Давайте сделаем 1 2 3. Пошлём, сделаем тест для того, чтобы обновились тестовые данные. Соответственно, мы сейчас видим, что а что здесь нам нужны так тестовые execute previous notes. Ну вот, наверное, мы сейчас ещё запустим эту штуку. Test step, да? Вот. Да, видим, что у нас текстовые данные тут а образовались. И давайте текст сюда зафигачим. Ну вот. И вот он наш текст. По сути, что мы хотим тут сделать? Мы хотим прописать, что нам Jason Messageтек, да, наш вот этот, а, формат, да, мы хотим его, а, просто приставить как текст. Так, давайте тестанём. Вот. И на выходе он Jason Message chat type. Не, мы не то закинули. Какой чап? Правильно. А нам нужен именно текст. Вот. И на выходе просто будет текст. Это нам позволит прямо напрямую, да, соединить это с нашим иагентом, чтобы он видел, что вот он наш текст, вне зависимости от того, мы голосом сказали или аа прямо вот таким образом, да, просто напечатали что-то, ему было всё равно, он получит себе на вход такую историю. Итак, что мы делаем дальше? Мы дальше, а, должны подключить некоторое хранилище данных, да, то есть некоторую долговременную память для агента. Здесь есть у него выделенная, да, системная. Это память для текущей конверсации, для текущего общения. Мы пока это трогать не будем, но мы сделаем лучше. Мы сюда сейчас добавим долговременную память, э, агента, а, для того, чтобы он когда угодно мог к ней обращаться и отвечать нам на основе этой памяти.
21:20

Что такое векторные базы

Здесь вступает в а игру такое понятие, как векторные базы данных, да? Что такое векторная база данных? Это база данных, которая хранит текстовую информацию в формате понятном для, а, искусственного интеллекта. То есть, если мы скажем, например, какую-то фразочку hello, how are you? Вот, то в таком формате, а, вообще говоря, нейронки, они не воспринимают информацию. Они всегда делают следующие вещи. Они сначала, а, бьют на токены, а, любую информацию, которую вы им предоставляете, и дальше они векторизуют эту информацию. То есть по по-хорошему они а превращают в вектор любой, ну, любые токены, на которые он сам разрезал этот текст. Как это выглядит? Мы сейчас это увидим непосредственно, а, в базе данных. Ну, по сути, это набор, а, набор чисел, да, представленных через запятую, там 0,1, там 1 0 а 0,6, а - 0,6. Вот, ээ, он это делает для того, чтобы с помощью векторов искать нужную, скажем так, нужный токен, нужное продолжение, а, своего ответа, когда он предоставляет нам информацию. Мы сейчас это сделаем, будет немножечко понятней, что нам нужно, чтобы наш текст, нашу информацию, любое её количество превратить вот в такие токены. Нам нужна векторная база данных. Я предлагаю использовать здесь PconCON. Мы будем её использовать. Очень просто. Идёте в PconCON, нажимаете Signup, логинитесь там и после этого получаете аккаунт в Опанконе. У меня уже тут есть кое-какие записи, но я думаю для чистоты эксперимента мы сейчас просто возьмём, нажмём Delete, да, и, в принципе, всё сделаем вместе с вами с нуля, потому что это действительно важная штука, а с помощью которой вы ассистента превращаете прямо в персонального помощника. А что нам нужно, чтобы подключить эту базу, базу данных? Нам нужны её криншилы. Но для того, чтобы её подключить, да, чтобы брать изную информацию, нам сначала нужно в неё поместить информацию. Поместить информацию в векторную базу данных - это не тривиальная задача, да? То есть это не так уж просто делается. А нам для этого понадобится ещё один ассистент, агент. Давайте пойдём, а просто в наши наш в нашу персональную информацию, да, и создадим а новый workflow. Итак, новый workflow. Каким образом мы только что это проходили, да? Но теперь нам, по сути, нужен workкflow, который работает
24:15

Начинаем создание векторной базы

по, а, не по команде из Телеграма, да, а по какой-то нашей ручной команде. Так, и можем добавить некоторый триггер. Вот тригр manually, да? То есть мы его добавляем сюда и а нам, когда мы нажимаем, да, эту кнопку TFOW, нам нужно, чтобы мы взяли текстовую информацию, которую мы хотим засунуть в векторную базу данных, а, и послали её туда. Вопрос: откуда мы берём этот текст, текстовую информацию? А, мы её возьмём из Google Docв, да. Вот. И для этого нам нужно в поиске набрать Google
24:50

Настраиваем доступ в Google Docs

Docs и нажать Get Document. Get Document он опять же требует Google аккаунту, да. Давайте вместе его создадим. Вот новый аккаунт. А что, что нам нужно? Вот мы открываем доки, в принципе, да, и здесь всё популярно расписано. Написано: "Идите в Google Cloud". А прямо забиваем Google Cloud. Вот Google Cloud платформа. Вот. А Get started for free. Вы нажмёте, он вас начнёт что-то спрашивать. Нажимайте игри, игри. Э, мы не будем этого делать сейчас, потому что у меня уже аккаунт есть. И просто зайдём в консоль Cloud Google. Вот вы также набираете после того, как зарегистрировались вот этот адрес, и всё, ваша консоль готова. А здесь вам нужно сделать в соответствии с документацией а м следующие действия. То есть вам прямо нужно пройтись по этим шагам, они несложные, да? На давайте прямо создадим новый проект. Вот создаём новый проект. Залогинимся вот сюда в верхнем меню. Нажмём новый проект. Нажали сюда, да? Нажали новый проект. My Project 19435. Отлично. Создаём Create. А после этого что нам нужно? Сейчас он пока создаётся наш проект. Мы а нажмём тут вот и перейдём в этот проект. То есть вот мы удостоверили, что мы тут. Дальше нам нужно пойти в API и сервисы. Вот. И здесь, а, пройти по нескольким шагам. Первый library, а это, по сути, библиотека всех приложений, к которым мы можем дать доступ нашему агенту. Вот нам нужно, насколько я помню, давайте просто поиском воспользуемся, да, Docs Google Docs API. Нажимаем сюда. Вот. и нажимаем enable. Какое-то время понадобится, чтобы занейблить а всю эту историю, а то есть сделать доступный для внешних API. Отлично. Вот мы его занейблили. А теперь идём в consent screen consent screen. Вот. И здесь вводим name какой-нибудь тест. и вводите ваш email, нажимаете external, email адрес. Аа так, ввели, всё, то есть вы только что завершили этот процесс. И после этого вам нужно будет вот даже можно на эту кнопочку нажать create client. Вот. И выбираете web application. И вот здесь add URL вы возвращаетесь обратно, да, и забираете вот этот, а, Redirect URL, вставляете сюда create. Всё, ваш по сути client ID а готов. К нему ещё нужно будет сейчас выпустить э Secret ID. Сейчас мы вернёмся. Вот. А client Secret client ID. Мы можем прямо забрать client ID. Вот сюда вставили Client Secret. Прямо тут скопировали, а вот сюда вставили и нажать Sign in with Google. Скорее всего, с первого раза он не заработает. Вот мы не завершили verification. Вот. А для этого что нужно сделать? Нам нужно пойти в Audi и здесь нажать Publish App. А потом мы возвращаемся к нам и давайте вместе посмотрим. Sign in. Вот. Да, так как он наш application не верифицирован, это ничего страшного. Мы нажимаем advanced и go to nvement cloud. Вот. И здесь мы выбираем всё, что мы хотим разрешить нашему агенту. То есть читать читать всё, что нам нужно. Вот. А, соответственно, всё, соединение сделано. Вот. И у нас есть Google аккаунт 2, который мы только что создали. Вот. И из-за этого Google аккаунта нам нужно получить наш дог. Давайте откроем а Drive Google и создадим какой-то документ, да? Аа вот он у нас уже есть какие-то наши документы, но давайте просто для теста сделаем новый, назовём его, а тест. И здесь скажем. Вот он у нас сохранился. Возьмём у, да, этого документа и отдадим вот прямо сюда уl. Нажмём test. Что у нас происходит? Смотрите, у нас получили мы, а, ID документа и вот наш сам контент. Прекрасно. То есть теперь мы готовы для того, чтобы наш текст запульнуть в векторную базу знаний. Только я сразу отойду, скажем так, обратно и возьму Google Doc. Аа где? Посмотрите, тут 240 страниц, да? А это все страницы, это вся информация, которую я хотел засунуть в ассистента. То есть это огромное количество информации, мною когда-то написано. То есть это а мои какие-то непосредственные мысли, да? Это могут быть документы вашей компании, но мы заберём сейчас вот этот айдишник, вот этот урл, отдадим его, нажмём тест. Да, это потребует чуть-чуть побольше времени, потому что документ большой. Вот. И это весь наш контент, который нам нужен был. Отлично. Что дальше? Дальше нам нужно, а, весь этот контент отослать в PconCON. Давайте добавим PconC vector
31:14

Настраиваем запись в Pinecone

Store. Вот. И здесь нам нужно add documents to vector store нажать. Мы здесь выбираем, а, Pincon аккаунт, да? Опять же всё то же самое, чтобы добавить, нам нужны некоторые кришиалы, да, то есть если мы сейчас вернёмся в PconCON, да, мы придём сюда AP, да, у нас всё есть. То есть вы тут нажмёте create API key и просто вставите его туда. У меня уже вот он есть, да, тест. Вот мой API key. Давайте прямо вернёмся вот и выберем наш аккаунт insert documents, да, и choose from list. Для того, что ему нужен Pinecon index, pcon index - это некоторое подмножество, да, внутри, а, пайнкона, м, скажем так, некоторый workpace, в который вы будете отправлять свои данные, чтобы он там появился. Давайте его, а, создадим. То есть мы видим, да, что здесь у нас нету индекса пока в дата в database. Создадим новый индекс. Вот. И с помощью чего мы будем векторизовать, да, то есть превращать наши буквы в векторы. Мы будем это делать с помощью, а модельки от Openi. Давайте как-нибудь назовём индекс. Ну, пускай будет индекс. Вот. А в принципе всё остальное оставляйте как есть, не трогайте. И создаём индекс. Отлично. Наш индекс только что создался, да? Мы видим, что он есть, в нём ещё ничего нету. Нам осталось сюда что-то запульнуть, да? Что мы делаем теперь? Если мы нажмём сюда, вот он наш IT индекс выбрали. И вот здесь нажмите Option, нажмите опцию Pinec Namespace. Это возможность создать ещё одно подмножество внутри индекса. То есть потом мы можем обращаться конкретно к этомусу для того, чтобы оттуда забирать нужную нам информацию. и не трогать другие неймспейсы. Это полезно, когда у вас в разных неймспейсах лежит разная информация, а с разным контентом. А давайте так и назовём. А только не TY, а YT namespace. Так что мы берём отсюда, да? Э давайте посмотрим. У нас по сути документы уже здесь, да? Мы готовы туда м а прокинуть их бединги, да, мы так как мы только что в Пайнткоине использовали бединги от Open AI, вот выбираем Open AI. Опять же у вас уже аккаунт должен быть пренеction, соответственно текст small а должен быть выбран. Всё, выбрали, закрыли и, соответственно, документ, да, откуда мы берём default data loader. В принципе нам тут ничего не нужно больше делать. В принципе, всё готово. Атек СпIT. Тек СпITter - это здесь выбираете Token Splitter - это история с тем, а по каким чанкам вы будете забирать текст. Если у вас текста очень много, то невозможно а векторизовать сразу весь текст. Сначала а текст Сплиitтер а разобьёт его на чанке, то есть на некоторые кусочки по 1.000 токенов. Ну здесь указываете любое количество. Я обычно 600 указываю, чтобы не очень большие были чанки. И чанка Overlap - это наслоение чанков друг на друга. Например, последние 50 или 100 символов предыдущего чанка, они будут содержаться в следующем чанке для того, чтобы Open AI, ну, чтобы, в принципе, модель, ну, не потеряла никакой информации и смысла, если, например, будут разделены там чанки чётко там, не знаю, по абзацу. Вот, в принципе, достаточно. Что нам осталось сделать? Если мы сейчас набежём тест workflows, у нас, по идее, вся информация должна будет прокинуться в PconCON и, а, и остаться там. Давайте нажмём тест. Мы видим, как работает а наш агент, да? То есть вот пошли туда data. Вот пошли бединги. Так, смотрите, нам сказали, что вышло 131 items, да? То есть 31 131 элемент. Возвращаемся в PconCON. Смотрите, мы видим, что у нас тут 131 элемент. И вот о чём я вам говорил. Видите, этот текст, вот он по 600 символов, а, разделён. И если мы нажмём феч, то мы как раз увидим ту самую векторизацию, то есть вот эти values, которые соответствуют конкретной там абзацу текста. То есть по сути для лэмки, да, вот этот текст превратился вот в этот вектор для того, чтобы можно было быстро искать. Для чего это нужно? У нас тут вот 131 чанк есть по 600 символов. Это нужно для того, чтобы когда нашей модельке мы хотим, мы захотим прокинуть какой-то текст, а чтобы моделька смогла выбрать несколько чанков, наиболее релевантных нашему запросу, получить их из векторной базы знаний и после этого именно с ними работать. То есть нам не нужно будет огромный массив текста каждый раз проводить по лэмке. Нам нужно будет только отослать вот эти нужные адекватные нашему запросу чанки для того, чтобы лмка работала именно с ними. А на самом деле мы сделали большую часть работы. У нас уже в нашей векторной базе
36:26

Настраиваем чтение из Pinecone

знаний а лежит э лежит наша информация долговременная. Если мы сейчас вернёмся, давайте сохраним, да, если мы возвращаемся в нашего основного агента, то мы уже готовы добавить сюда, а, тот же самый PINCON Vector Store, да, но уже на чтение. Итак, смотрите, я уже добавил его, а здесь всё очень просто. Мы используем те же самые, а, креды, которые мы использовали для загрузки информации в Pincon. Только в данном случае мы уже ретривим информацию, да, ретривим документы из этого, то есть получаем, да, обязательно нужно назвать этот инструмент, то есть vector Store. Здесь пропишите а description, да, это PconCON, это vector store для того, чтобы работать с данными юзера. Вот fromlist тест. Давайте посмотрим. Нет, всё-таки будем брать адекс, да, как он у нас назывался. Вот. И здесь будет YT namespace. IT namespace. Вот прекрасно. А он должен забрать отсюда. Видите, лимит п - это то самое количество чанков, которые он извлечёт оттуда, а при поиске релевантной информации. Так. А и, естественно, мы подключаем тоже бединги, да, тот же самый Open AI аккаунт, те же самые бединги, а, от Open AI для того, чтобы извлекать эту информацию. Итак, по сути, мы настроили нашего агента, который работает по следующей схеме. Он получает некоторые сообщения от бота, понимает это голос либо, а, это обычное текстовые сообщения, принимает, э, в себя это сообщение, да, если это голос, он его а транскрибирует и после этого принимает решение, что с ним делать дальше. Для того, чтобы это всё работало хорошо, нам нужно написать системный меessдж, да? То есть как это делается?
38:20

Настраиваем промпт для агента

Нажать Adoptions, да, и у вас будет system message, вы его добавляете и прямо пишите а сообщение. В этом сообщении должна содержаться некоторая инструкция, да, мы сейчас оставим это просто. Вы ассистент, да, который отвечает на вопросы пользователей и используй инструмент, который называется Vector Store Tool. Если, а, юзер спрашивает некоторую информацию, а, персональную, да, которую он хотел бы использовать для вашего ответа. Вот. И эта инструкция позволяет ему в зависимости от сложности вопроса либо ходить вкторсто Store, либо не идти туда, потому что вы всё так как это мы используем, ну, скажем так, нейронку для того, чтобы извлекать каждый раз информацию, а не каждый раз это, если вам пользователь говорит просто привет, да, вам, наверное, не особенно нужно идти в Pcon Store. Ну что, наш, в принципе, агент готов. Давайте вместе попробуем аа а пробежать по двум путям. а-а, скажем так, workflow. Если сначала просто мы скажем: "Привет", обязательно не забывайте нажимать Workflow, да? А потому что без этого он сейчас работать не будет. Сейчас он ожидает нашего ввода. Привет. Вот мы видим, что наш ассистент даже не сходил в Pcon Store, да? То есть он просто использовал сам сами мощности, скажем так, сами знания нейронки, чтобы нам ответить придт, как я могу помочь. Но если мы сейчас спросим, если мы Привет, а посмотри в нашей информации персональной и расскажи, а какие принципы в нашей компании существуют и как мы управляем нашей компанией. Так, нажимаем test workflow. Так, у нас тут ошибка. Ну вот чему тут, к чему тут ошибка, да? Bit request. file ID Wordфай Так, иногда бывает так, что нужно просто сохранить, перезагрузить, нажать тест. Привет. Расскажи, а, про принцип управления нашей компании. Посмотри в наших персональных данных информацию для ответа. А вот потому что у нас тут другой аккаунт а выбран. Давайте попробуем аккаунт номер два. Мы же второй подключали. Привет. А посмотри, а в наших персональных данных расскажи про какие у нас принципы существуют э для управления нашей компанией. Так, смотрим, куда он идёт. Агент. Вот. и пошёл в векторный стор. И сейчас он формирует ответ уже на основе той информации, которую получил. Вот это всё, что он получил из векторного а векторстора, да? То есть как мы можем это проверить? Мы можем всегда нажать на кнопочку Executions, да, и увидеть, каким образом исполнялись последние запросы. Так. Ээ, хорошо. Вот мы можем нажать сюда и увидеть, что, а, принцип управления компании, то есть с таким запросом, он обратился в векторный стор и смотрите, и дальше он нашёл какие-то пять чанков. 1 2 3 4 5, которые соответствовали больше всему этому, больше всему этому запросу. И потом он в модельку передал мм а вот эти чанки, а, для того, чтобы сформировать. Вот если мы пере переключимся сюда, видите, он а скажет, э что вот ты ассистент, да, и ответь на пользовательского пользовательский вопрос на основе данных, которые ты сейчас получил. Вот. И данные прикреплены. Соответственно, что сейчас только что произошло? Мы подключили нашу собственную информацию в ассистента. А ассистент информации может быть любое количество. Э, она зафиксирована в векторном хранилище, и вы можете любую информацию загрузить и потом создать ассистента, который будет отвечать ваш на любые ваши вопросы про вас, про компанию, например, какие-то отчёты формировать на основе этих данных, а какой-то поиск делать, какие-то письма писать, документы. И обо всём это мы будем говорить в следующих видео. Обязательно подписывайтесь на канал и посмотрите в ссылках в описании или в первом комментарии к этому видео будет ссылка на Telegram канал, где я выложу оба шаблона, а шаблона для добавления данных в векторную базу данных и шаблон самого ассистента а в этом канале будет. Всё, хорошего дня. M.

Ещё от ИИшенка | AI Automation

Ctrl+V

Экстракт Знаний в Telegram

Транскрипты, идеи, методички — всё самое полезное из лучших YouTube-каналов.

Подписаться