📱

Get Our Mobile App

Take your business learning on the go!

Download on the App StoreGet it on Google Play

Метод Андрей Карпаты для Claude Code: Как настроить память AI через Obsidian и RAG

Игорь Зуевич17:18

Transcription

Самое сложное — это объяснить простыми словами достаточно сложную тему, но при этом не укатиться куда-то в банальность и показать все ценности этой темы, всю важность этой темы. Именно это я и постараюсь сделать в этом видео.

Значит, смотрите, есть такой парень, его зовут Андрей Карпаты. Это один из основателей компании OpenAI, ну, либо ChatGPT. И вот буквально несколько дней назад он разместил вот этот пост, который там пролайкало больше 50 000 человек. Там огромное количество комментариев, огромные обсуждения на разных площадках, на Reddit, в Twitter, везде в интернете, соответственно, обсуждают этот пост.

Если приводить до одной фразы этот пост, то смысл в чём: что большая часть моей работы, говорит Андрей Карпаты, сейчас как бы уходит не на, не на написание кода, не на работу с кодом AI-агентов, а именно на управление их знаниями. Потому что от этого очень сильно будет зависеть то, как ваш AI-агент работал.

Работает. Такие самые простые, наверное, примеры. Это знаете, у вас есть самый крутой сотрудник в мире, да? И у этого сотрудника каждое утро, когда он приходит к вам на работу, у него амнезия. То есть он не помнит, что он делал вчера, не помнит, как он выполнял те или иные задачи. И, грубо говоря, он каждый раз заново всё делает. А вы ему даёте написать пост, он пишет пост сегодня в одном стиле, завтра во втором стиле, послезавтра в третьем. Он работает с кодом, он один и тот же код может по несколько дней ему солить и говорит: "Ой, здесь были ошибки такие-то, ой, здесь такая-то ошибка" и исправляет, работает, соответственно, с этим, с этим кодом.

Ну, либо знаете, вот эти вот закладки, да? У каждого, наверное, из нас есть какая-то папка. Кто-то это хранит в Telegram, кто-то хранит, хранит, например, как я, в Evernote. У меня есть папки, либо блокноты, либо заметки с различными идеями, которые я бы хотел внедрить, которые я где-то нашёл в интернете, где-то подсмотрел, где-то услышал. И, соответственно, веду такую, такую, такую базу знаний из заметок. Между собой, для того, чтобы найти какую-то тему, какую-то идею, заметку, которая мне нужна, мне приходится там вбивать какие-то ключевые слова. Я очень часто, что я не помню, какие по каким ключевым словам, соответственно, я формулировал эту заметку. И, соответственно, просто они, ну, как бы, когда я поднимаю какие-то темы из заметок, они поднимаются как отдельные элементы, никак не связанные между собой.

И здесь как раз вот эту тему и обсуждает Андрей Карпаты в своём посте, что большая проблема — это поиск в базах в базах знаний AI-агентов. И когда у вас со временем становится всё больше и больше различных знаний, как эти знания между собой структурировать? На рынке существует подход. Мы, например, с вами работали, когда с сервисом n8n, мы создавали различных RAG и AI-агентов, например, для работы службы поддержки, для собственной, для собственной базы знаний создавали, HR AI-агентов, либо AI-агентов, которые обучали сотрудников, либо AI-агентов для службы поддержки, либо AI-агентов, которые банально сидели там в различных Telegram-чатах. И за счёт того, что у них была подключена собственная RAG база знаний, они могли точно отвечать на те вопросы, которые к ним приходят. Либо AI-агенты-продавцы в Telegram, он бы тоже таких строил, которые продавали наши товары.

Но мы уже тогда с вами стали замечать, что RAG-система она не идеальна. У меня даже есть отдельное видео на эту тему. RAG-система, что она делает? У нас есть знания, у нас есть база знаний, которые мы выгружаем нашему AI-агенту. И наши AI-агенты для того, чтобы грамотно ориентироваться в этой базе знаний, он, ну, мы в основном использовали либо SupaBase базы данных, либо Pinecone базы данных. И в чём прикол этих баз данных? Для того, чтобы AI-агент быстро находил какую-то нужную ему информацию, он должен был делить те материалы, либо ту документацию, которую мы выгружаем, на определённые фрагменты, так называемые чанки, эмбеддинги. По-русски, на фрагменты. И в этих фрагментах есть определённые метаданные, по которым он ищет, в каком либо том или ином фрагменте находятся эти материалы.

И как раз вот Андрей Карпаты поднимает эту тему. Он говорит, что RAG-базы данных они несовершенны, потому что это как, знаете, такая чёрный ящик. Потому что мы не знаем, почему именно этот фрагмент из нашей базы данных вытащил тот или иной AI-агент в тот момент, когда мы у него попросили сделать это. То есть мы, грубо говоря, он находится в базе данных, он по ключевому слову либо ещё по какому-то слову ищет тот фрагмент, который ему нужен. И он не собирает информацию с таким же фрагментом из других чанков. Он вытаскивает только один чанк, либо несколько чанков и фрагментов. И на основе этого фрагмента он отвечает. В итоге бывали такие случаи, когда, знаете, там строишь AI-агента-продавца, и он вместо одной цены называет совершенно другую цену. Потому что товары похожие. То есть в коробке там 20 штук, и в коробке 40 штук. И он называет цену за коробку, в коробке которая 40 штук, называет цену за 20 штук, либо за 3 штуки. Соответственно, вводит покупателя в заблуждение.

Либо в службу поддержки, у него тоже есть документация, как отвечать на тот или иной вопрос. Но некоторые вопросы могут быть более-менее похожи друг на друга. И он берёт фрагмент из другого элемента и отвечает, соответственно, его. Так ему так это некомфортно, это неудобно. И Андрей Карпаты как раз и обсуждает в этом посте эту проблему. Он говорит, что нужно изменять подход. И он в качестве теста начал работать вот с Obsidian. Мы тоже с вами уже давным-давно начали работать с Obsidian. Я, у меня есть подробное видео, как работать с Obsidian, как настраиваться, как подключать её AI-агентов к Obsidian.

Его подход заключается в том, что в Obsidian для личного использования есть так называемый граф. И в этом графе преимущество этого графа, этого подхода заключается в том, что все заметки должны быть связаны между собой. То есть, когда мы ищем какую-то информацию по той или другой заметке. Это, кстати, несколько, сколько, чуть больше месяца работы меня с Obsidian и грамотного распределения заметок в Obsidian. И, как говорит Карпаты, все эти заметки в Obsidian, они должны быть связаны между собой. То есть, когда к нашему AI-агенту поступает какой-то запрос, он, например, ну, самый банальный, написать пост в моём стиле, да? Он что делает? Он ищет заметки в Obsidian по какой-то теме. То есть, он сначала смотрит, какие темы здесь поднимались. Дальше, значит, он вытаскивает паттерны для написания постов, предлагает нам темы, предлагает заголовки, предлагает идеи. Дальше мы, значит, соглашаемся на какие-то идеи. Он уже начинает вытаскивать из заметок, по которым были написаны посты, начинает вытаскивать те самые паттерны для того, чтобы писать максимально похожие посты для нас.

Я, например, вот что я сделал. Я в одном из видео показывал, я создал заметку в, ой, в папку Telegram, где выгрузил просто все свои посты с Telegram за последний, там, за последний год, по-моему, или полтора года. Все свои посты Telegram. И за счёт этого мой AI-агент буквально там за несколько минут научился писать как я. Эти все заметки, он не просто их выгрузил. То есть, он им присвоил теги. Это называется, если, если говорить правильно, это называется компилятор. То есть, он из все заметки между собой связал по этим тематикам. И когда я ему говорю, что сейчас происходит на рынке, напиши мне на рынке AI-агентов, у нас каждый день попарсятся видео на тему AI-агентов, на тему Claude, ClaudeClaw, OpenClou, Gemini. И он на основе вот этого вот контента, который он парсит, тоже каждый день, он на основе моих Telegram-постов пишет мне посты уже чисто в моём стиле для Threads, для Instagram, для Telegram. То есть, грубо говоря, работает такой полноценный контент-завод.

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

Преимущество заключается в том, что какой бы, какую бы LLM-модель, какую бы систему мы не выбрали. Например, вот у меня есть Claude Code, да, который мы подключали к Telegram, он работает на Claude Code. У меня есть Codex, который, Codex Claude, это Codex, который подключён также к Telegram. Я работаю с ним через Telegram. И у всех этих AI-агентов есть доступ к этим заметкам. И они могут сами искать ту информацию. Например, через Codex я выполняю какие-то там задачи. Через вот этого ClaudeClaw я пишу посты, создаю контент для своих социальных сетей. Для, у меня больше такой, знаете, технический специалист. Мы с ним исследуем, исследуем рынок, исследуем интернет и готовим, готовим такой материал для дальнейшего, для дальнейшей передачи этого материала. То есть. И каждый из них, у него есть доступ к этому, к этому, к этому Obsidian, к этим заметкам. И каждый из них здесь работает. То есть, каждый из них обращается к этой базе знаний для того, чтобы правильно ответить.

Это, грубо говоря, есть подход Карпатова, который он вот недавно рассказал в своём Telegram-посте. Я же сравнил свой подход с подходом Карпатова. И вот мне AI-агент вытащил, что нужно добавить для того, чтобы система, грубо говоря, работала не только по нашему подходу, но и по подходу Карпатова, для того, чтобы всё чётко взаимодействовало и работало. Я сейчас как раз вам и хочу рассказать, как это должно работать.

Смотрите, значит, у меня есть такой вот файл, который называется "Карпаты Knowledge Base". То есть, база данных. Этот файл я сейчас вот после съёмки видео выгружу вот сюда вот в Telegram для того, чтобы вы могли его скачать. У вас есть несколько путей. То есть, вы можете просто этот файл закинуть в своего AI-агента, как я сделал вот с другими своими AI-агентами, и сказать: "Давай мне, построй базу данных на основе этих данных". И после этого ваш AI-агент построит вам структурированную базу данных, а вы можете как бы ей управлять, её дорабатывать именно уже для себя.

Значит, какой, какие этапы должны быть в этой базе данных? То есть, какая структура должна быть в этой базе данных? Во-первых, должен быть так называемая свалка. У меня это называется свалка, да, можно назвать Raw. Вот у меня называется свалка. Свалка — это куда мы отправляем всегда какие-то сырые источники. Что значит сырые источники? То есть, какие-то идеи, мысли, какие-то изображения, может быть, какие-то посты, какой-то, какие-то материалы.

В чём мой подход круче, чем подход Карпата? В том, что мы используем Telegram. Например, когда я иду где-то, и у меня возникает мысль, я записываю там голосовое сообщение, записываю кружок, я пишу текстом в телефоне заметку, которую уже мой AI-агент закидывает в свалку и дальше обрабатывает эту заметку. У него настроен вот этот вот компилятор, и он раз в неделю собирает заметки по темам. Он раз в неделю залезает в свалку, и эти заметки между собой как бы синтезирует. То есть, он делает из одной идеи, ищет похожие идеи и делает там, ну, грубо говоря, чтобы потом сделать полноценный контент по тем мыслям, по тем идеям, по тем заметкам, которые, соответственно, я в него оставил.

Ну, и в результате, когда нам нужно будет обратиться к какой-то теме, какой-то идее, узнать что-то, мы всегда можем к нему обратиться, и у него будут уже результаты запросов, у него будут слайды, у него будут графики. Он будет собирать информацию с разных источников. Самый такой, не знаю, простой, банальный пример, да? У вас есть сотрудник, который приходит, вы ему даёте изучать техническую, ну, какую-то документацию по работе с, по работе с вашей компанией. И какие-то до этого сотрудник, который там был, он тоже эту документацию изучал, но у него там что-то где-то не сходило. Соответственно, он на основе этого своего опыта понимал, что как работает, что где не работает, что не нужно использовать, на какие кнопки не нужно отвечать. И это нигде не документировано. То есть, это его был чистый опыт. Здесь же, когда мы создаём базу знаний, сотрудник обязан будет документировать, даже хотя бы рассказывать об этом. И его бот, его бот будет структурировать и дорабатывать базу знаний. И когда ваш новый сотрудник приходит, например, у него уже есть опыт, появляется опыт предыдущего сотрудника, потому что ваш AI-агент уже как бы. На это у человека уходило бы огромное количество времени, и у агента на это уходит меньше времени за счёт того, что он быстрее всё это как бы распределит и сделает внятными, то есть сделает более правильную настройку.

Например, у вас поменялась цена в вашем ресторане на какой-то продукт, либо поменялась цена, либо вы написали там дополнительные посты, дополнительный контент в социальных сетях. Вы раз в неделю всё это выгружаете, ваши AI-агенты всё это связывает между собой. У вас всегда AI-агенты получают актуальную, свежую информацию по той или иной задаче. И за счёт этого мы как бы накапливаем знаний для своего AI-агента. За счёт этого у нас прозрачный выбор. То есть, любой факт можно отследить, откуда и как он сюда попал, почему именно так AI-агент ответил, а не как-то по-другому. То есть, всё это мы можем отслеживать как раз через вот эти вот заметки в Obsidian.

Ну, и раз в неделю, соответственно, ты руками ничего не трогаешь. У вас раз в неделю LLM сам пишет Wiki, размещает страницы, размещает заметки, связывает их между собой. Это такая достаточно простая работа для него и затрачивает он это небольшое количество токенов и как бы выполняет всю эту работу сам.

Значит, как это всё настроить? Сам, я говорю, простой пример — это вот скинуть вот эту вот всю инструкцию непосредственно в её агента, он сам всё это настроит. И, конечно, это всё будет круто работать, если ваш Claude Code, либо ClaudeClaw, либо OpenClouBot, либо Codex, их огромное количество ботов будут подключены к Telegram. Соответственно, он сам вам подскажет, как правильно разместить. Ну, и плюс возьмётся этой инструкции правильную разметку. И за счёт этого мы с вами как бы уходим вот этих вот RAG-баз данных. За счёт этого мы с вами создаём базу данных внутри приложения Obsidian. Ну, и, конечно, вам нужно будет скачать приложение Obsidian для создания, формирования своей базы данных, своих, своей базы знаний для своих AI-агентов.

И вы со временем начнёте замечать, что ваши AI-агенты стали там создавать лучший контент, стали лучше отвечать, отвечать больше в вашем стиле, затрачивать меньшее количество токенов, что очень важно, потому что они базу знаний не будут постоянно прогружать. Если им нужно будет вытащить из базы знаний какой-то элемент. У меня, например, есть специализированный Obsidian-ный агент, я его называю "библиотекарь". В теме по Obsidian я подробно рассказывал, как его создать, который приходит задача, и он вытаскивает с базы данных информацию по этой задаче и даёт уже главному AI-агенту. Главный AI-агент это всё обрабатывает и отдаёт ответ нам.

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

Ребят, я надеюсь, что это видео было вам полезно. Скачивайте все раздаточные материалы в первом закреплённом сообщении под этим видео, либо в разделе с описанием. С вами был Игорь Зуевич. Обязательно поставьте мне лайк, напишите в комментариях, дайте какую-то обратную связь. Это реально помогает мне понимать, правильно ли я объясняю те темы, которые считаю нужным объяснять. Пока.