Канал

11 марта 2026 г.

В поисках замены LLM-чату. Часть 2

В поисках замены LLM-чату. Часть 2

Начало тут.

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

К тому же я докурил pi-mono и выяснил, что кроме пакета абстракции над провайдерами LLM, там есть готовый агент, который (вот ведь совпадение!) хранит сессию в виде дерева.

Так что я решил написать плагин для Logseq, который будет ходить в сервер над pi SDK (как же оно звучит по-русски!), маппить поддерево Логсека в поддерево сессии Пи и вроде должно получиться то, что нужно.

Обе части сгенерировались ваншотом. Я обрадовался.

А потом стал тестировать и выяснил, что рендеринг блоков Logseq не предполагает вложенную структуру, которая появляется в каждом втором ответе от LLM. Пришлось сплитить ответы на подблоки (нейронка хотела писать регекспы, я попросил использовать готовый парсер, она согласилась). Но в этот момент желание сохранить родное дерево сессии Pi разбилось о суровую реальность. Перепробовав пяток костылей, я решил, что двусторонняя связь не так уж и нужна.

Так что я назначил Logseq единственным источником истины — сессия Pi перетирается всей веткой Logseq от листа до корня на каждый запрос. Это позволило выкинуть примерно треть кода и починило оставшиеся баги.

Результат

Logseq — это мощный локальный open source аутлайнер, который хранит вашу базу знаний в виде markdown-файлов у вас на диске (вы всегда можете открыть их в любимом редакторе, закинуть в промпт и так далее). Интерфейс кастомизируется: начиная от множества готовых тем и сотен плагинов от сообщества и до возможности поменять вообще что угодно с помощью вайбкодинга. Например, интерактивное mindmap-представление документа из иллюстрации к этому посту — просто плагин, который ставится из маркетплейса в три клика.

А за счет Pi SDK доступны любые модели от любых провайдеров (хоть локальные, хоть по подписке).

Этой штуке от роду несколько часов, так что могут быть баги («я знаю, моё дерево, завтра может сломать школьник»). Но вся реализация суммарно ~500 строк, так что, чтобы получить себе что-то похожее для условного Obsidian, должно быть достаточно попросить вашего любимого агента.

https://github.com/tadatuta/logseq-pi-integration

А вы используете что-то специальное для исследования больших тем с LLM?

@devspotting