Telegram x ChatGpt x Notion = Картотека Лумана [Low-code]

Привет Habr!

TL: DR

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

От прошлого не убежишь

С самого детства, я любил систематизировать получаемую информацию, записывать, складывать её и использовать. Книги и энциклопедии, после прочтения, походили на поле боя с выпирающими из разных сторон закладками (Автор осуждает порчу любых книг, пользуйтесь карандашом! ). С появлением Интернета, поток информации в одну отдельную голову, увеличился в десятки раз, на текущее время с соц.сетями и мессенджерами, вероятно уже в сотни раз. Но желание сохранять полезную и нужную информацию никуда не пропало.

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

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

В сети она разлетелась уже давно и по несколько раз в год возникает в ленте, обещая новому поколению: Второй мозг, Продуктивность Илона Маска и лечение от всех болезней.
На одном только Habr 3 страницы поиска по ключевому слову (тык).

Попыток построения такой картотеки у меня было уже несколько. Сначала в старом добром Evernote, потом Notion, после всем известный Obsidian. С костылями, множественными «но», это работало, время жизни каждой картотеки было разное, от нескольких месяцев, до 2 лет, но в конечном итоге умирало и больше пользоваться этим было невозможно.

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

Метод Лумана действительно мощный инструмент, но требует за это плату в виде сильной самоорганизации и следования инструкциям. Но хоть и человек стремится к самосовершенствованию, у нас есть пороки, в том числе, банальная лень. А вот у ботов и скриптов их нет :)

Итого, что имеем:

  1. Желание — сохранять заметки по заветам дядюшки Лумана.

  2. Проблему — Сложно делать это самому.

  3. Четкие инструкции — которые легко оборачиваются в команды для скриптов.

  4. Лень — писать этих ботов самому.

Четвертый пункт, это продолжение прошлой мысли, если у нас нет времени/ желания, проставить тег на заметке, то откуда появится желание вспоминать ЯП и мучаться с написанием кода, особенно в 2024 году, когда на каждом углу кричат, что скоро всех разработчиков заменит ИИ. Отличная проверка возможностей ИИ, да и возможность потыкать его в разных интересных местах.

Из чего состоит наш двигатель:

  1. Telegram — так как всегда под рукой, нативно приложения имеют возможность отправлять через «Поделиться», большое количество внутренних каналов, независимость от платформы или даже наличия постоянного интернет соединения.

  2. Notion — как БД, для хранения и отображения, можно использовать и Obsidian, или любой другой инструмент, что имеет API для взаимодействия. Notion выбран, потому что это мой основной инструмент для организации, и удобнее иметь все в рамках «одного окна».

  3. ChatGPT (OpenAPI) — на сегодняшний день, самый продвинутый и дешевый генеративный ИИ.

  4. VPS\Сервер — виртуалка, или любая другая ЭВМ на которой будет крутиться наш бот.

Боты пишут ботов

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

Оригинальную схему не выкладываю, так как стыдно :)

Оригинальную схему не выкладываю, так как стыдно :)

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

Наш ИИ помощник сразу начнет формировать пошаговые инструкции, если что-то покажется непонятным, всегда можно попросить его разделить на подпункты, вплоть до действий в какую кнопку ткнуть. Выглядит это примерно так:

Показательный пример раскрытия пункта на подпункты с явными действиями. Иногда он понимает слишком буквально, и углубляется вплоть до банального nano :)

Показательный пример раскрытия пункта на подпункты с явными действиями. Иногда он понимает слишком буквально, и углубляется вплоть до банального nano:)

По сути дальше всё превращается в следование по шагам, и затирание клавиш CTR+C CTRL+V, борьбе с некоторыми заскоками разных моделей chatGPT и недопониманию ИИ, что ты от него хочешь получить. Промт-инженеры вероятно страдают кошмарами ночами

Дальше уже только фантазия, что хотим еще добавить. Для текущего примера, возьмем базовый функционал бота:

  1. Анализировать текст отправленный в него.

  2. Придумывать теги на основе анализа текста.

  3. Получать список тегов из Notion для ручного заполнения.

Выглядит это примерно так:

Использование ботов Telegram позволяет перейти на кнопочное меню, что значительно ускоряет процесс добавления заметки

Использование ботов Telegram позволяет перейти на кнопочное меню, что значительно ускоряет процесс добавления заметки

Формирование тегов происходит по определенно заданному промту для GPT

Формирование тегов происходит по определенно заданному промту для GPT

Созданная заметка в Notion

Созданная заметка в Notion

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

А теперь о проблемах и именно поэтому статья носит завлекающую надпись Low‑code, а не Zero‑code, и этот момент хочется отдельно отметить ниже.

Помоги себе сам

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

Так и произошло и с текущем примером, а именно с пониманием ИИ о API Notion, Telegram, OpenAI. ChatGPT3.5 — использует старые библиотеки Python для API Telegram, ChatGPT4 — уже умеет в актуальные TG и Notion, но не знает, что OpenAI поменял свои методы в библиотеке.

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

Приходилось часто закатывать рукава и самому переписывать модули или править явные ошибки в коде, явные даже тому, кто последний раз IDE открывал 10 лет назад.

Логичный вывод, что ИИ не заменит сейчас человека во многих сферах, в том числе и в разработке, и эта мысль, конечно же звучит в первом же комментарии, про очередного ИИ «убийце%профессия%». Но предлагаю посмотреть на это под другим углом, зачем делать себе врага, думая что он отберёт твой хлеб, а тебе в жарких спорах, доказывать и находить десятки доводов, против этого ИИ. Вероятно правда кроется в середине, и эта середина — синергия ИИ и человека, и кажется это единственный верный путь.

Основная мысль этой статьи, дать пинок, на своём примере, что сейчас идёт расцвет ИИ, и даже на текущий момент, опуская некоторые «но», ИИ позволяет решать, автоматизировать, и облегчать жизнь для конкретного человека — Вас.

* Одевая розовые очки:*

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

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

© Habrahabr.ru