Obsidian держит заметки обычными файлами на вашем диске — это его главное свойство и причина, по которой к нему хочется подключить модель, которая тоже работает у вас. Связка собирается за вечер, и ломается она в трёх местах, о которых обычно не пишут: сетевой доступ, направление потока данных и лицензия плагина.
Разберём по порядку. В конце — отдельный сюжет: как поток идёт в обратную сторону, из системы с автоматической памятью в хранилище Obsidian.
#Что понадобится
- Obsidian и хранилище с заметками. Версия не критична, критично то, что заметки лежат файлами: именно поэтому связка вообще возможна.
- Ollama на той же машине либо на машине в вашей сети — установленная и с хотя бы одной скачанной моделью.
- Модель, которая влезает в вашу память. Для работы с заметками — суммаризации, переформулирования, поиска по смыслу — компактная модель обычно достаточна; тяжёлая нужна для рассуждений, а не для текстовых операций.
- Готовность прочитать, куда плагин отправляет запросы. Это не паранойя, а половина смысла упражнения.
#Шаг 1. Проверьте, что Ollama отвечает
До установки любого плагина убедитесь, что сервер работает:
curl http://localhost:11434/api/tags
Ответ со списком моделей означает, что сервер жив. Пустой список означает, что модели не скачаны:
ollama pull qwen2.5:3b
Если Ollama стоит на другой машине, её нужно отдельно разрешить слушать сеть — по умолчанию она принимает только локальные подключения. Порядок описан в статье про настройку Ollama по сети.
#Шаг 2. Разрешите Obsidian обращаться к Ollama
Это то самое место, где связка ломается у большинства, и симптом выглядит обманчиво: плагин показывает ошибку соединения, хотя curl из терминала работает.
Причина в том, что Obsidian — приложение на Electron, и его запросы приходят с origin вида app://obsidian.md. Ollama по умолчанию отклоняет запросы с посторонних origin. Лечится переменной окружения:
OLLAMA_ORIGINS=app://obsidian.md
На Windows её задают в системных переменных пользователя, на macOS и Linux — в окружении сервиса. После изменения Ollama нужно перезапустить — переменная читается при старте. Конкретный вид значения зависит от версии Ollama и версии Obsidian, поэтому если не заработало — посмотрите в журнал Ollama, какой именно origin был отклонён, и подставьте его.
#Шаг 3. Выберите плагин, понимая, чем платите
Здесь главная развилка, и она не про удобство. Плагины с ИИ в Obsidian делятся на две группы по направлению потока данных, и внешне это неразличимо: и те и другие показывают окно чата рядом с заметкой.
| Плагин | Что делает | Куда идут данные | Лицензия |
|---|---|---|---|
| Smart Connections | связи между заметками, поиск по смыслу | зависит от выбранной модели эмбеддингов | требует проверки |
| Copilot for Obsidian | чат по хранилищу | зависит от настроенного провайдера | требует проверки |
| Text Generator | генерация текста по шаблонам | зависит от настроенного провайдера | требует проверки |
| Local GPT | операции над выделенным текстом | локальный сервер | требует проверки |
| Ollama-интеграции | прямой мост к локальному серверу | локальный сервер | требует проверки |
Названия, состав и лицензии в этой таблице требуют проверки на дату установки. Каталог плагинов Obsidian меняется, проекты переходят из рук в руки и меняют условия — мы не можем поручиться за состояние на момент, когда вы это читаете, и не будем делать вид, что можем.
Что проверять самому, тремя действиями: открыть страницу плагина в его репозитории и найти файл лицензии; в настройках плагина посмотреть, какой адрес указан как endpoint; включить его и понаблюдать сетевую активность приложения. Третий шаг обязателен: настройка «локальная модель» в интерфейсе не гарантирует, что эмбеддинги для поиска считаются тоже локально — это часто отдельный провайдер.
#Шаг 4. Настройте endpoint и модель
В плагине укажите:
- адрес:
http://localhost:11434(или адрес машины с Ollama); - имя модели ровно так, как её показывает
ollama list— вместе с тегом,qwen2.5:3b, а неqwen2.5; - для функций поиска по смыслу — отдельную модель эмбеддингов, например
nomic-embed-text, и её нужно скачать так же, черезollama pull.
Модель для чата и модель для эмбеддингов — разные вещи, и вторую забывают скачать примерно всегда.
#Шаг 5. Обратное направление: память в хранилище
Отдельный сценарий, который стоит знать: не «модель читает заметки», а «система с автоматической памятью пишет в хранилище».
Persona умеет выгружать день в хранилище Obsidian: один файл разметки на календарный день, в подпапке Persona внутри хранилища. Внутри — сводка дня, часовые карточки с приложениями и ключевыми словами, самостоятельные заметки за этот день и закреплённые кадры. Имена людей и проектов, которые система распознала и которые реально встречаются в тексте, оформляются как двойные квадратные скобки — то есть становятся обычными ссылками Obsidian и попадают в его граф.
Две вещи, которые надо понимать про эту выгрузку:
- Она односторонняя. Persona пишет в хранилище и никогда не читает оттуда. Ваши правки в файле не вернутся в память и не будут ей учтены; при следующей выгрузке файл может быть перезаписан.
- Она идемпотентная. Файл переписывается, только если содержимое изменилось — сравнивается контрольная сумма. День без активности не трогается вовсе, а не «обновляется» с новой датой изменения.
Захват, таймлайн и дневные сводки — функции владельца инстанса, поэтому выгрузка доступна ему же. Участник общей копии получает чат, память, граф, голос и навыки, но не автоматическую летопись дня.
#Проверка результата
- Запрос из плагина возвращает ответ. Спросите что-нибудь тривиальное. Если ошибка соединения — вернитесь к шагу 2, это почти всегда origins.
- Ответ строится по вашей заметке, а не по общим знаниям. Проверка: спросите про факт, который есть только в вашем хранилище. Общий ответ означает, что содержимое заметки в запрос не попало.
- Сеть молчит. При включённой локальной модели задайте вопрос и посмотрите на сетевую активность приложения. Исходящий трафик к внешнему адресу означает, что какая-то часть связки — скорее всего эмбеддинги — работает через облако.
- Для выгрузки: файл дня появился и содержит ссылки. Откройте граф Obsidian и убедитесь, что имена из карточек стали узлами.
Третий пункт — единственная надёжная проверка приватности этой связки. Настройка в интерфейсе не доказательство.
#Что может пойти не так
- Плагин работает, но отвечает медленно и невпопад. Обычно это слишком маленькая модель для длинного контекста заметки. Проверьте, какой объём контекста вы отдаёте, и уменьшите его до раздела вместо файла целиком.
- Поиск по смыслу «не находит очевидного». Проверьте, что индекс эмбеддингов вообще построен и что модель эмбеддингов скачана. Плагины часто индексируют в фоне и молчат об этом.
- Хранилище раздулось. Файлы индекса и кэша эмбеддингов лежат внутри хранилища и попадают в синхронизацию. Внесите их в исключения.
- Ссылки из выгрузки создали пустые узлы. Это нормальное поведение Obsidian: ссылка на несуществующую заметку рисуется как узел без содержимого. Если мешает — отключите оформление сущностей ссылками.
- Плагин сменил условия после обновления. Отсюда требование раз в несколько месяцев перепроверять, что именно установлено; сравнение подхода «плагины поверх хранилища» с отдельной системой памяти — в статье Persona против плагинов Obsidian.
#Частые вопросы
#Обязательно ли держать модель на том же компьютере?
Нет, Ollama может работать на другой машине в вашей сети — на домашнем сервере или на десктопе, к которому ноутбук подключается. Тогда вместо localhost указывается её адрес, и на стороне Ollama нужно разрешить сетевые подключения; порядок описан в статье про настройку Ollama по сети.
#Что делать, если плагин требует ключ облачного провайдера и не поддерживает локальный сервер?
Проверить, принимает ли он произвольный адрес, совместимый с OpenAI API: многие плагины умеют это, даже когда в интерфейсе написано только про облако. Если не принимает — плагин для этой задачи не подходит, и переубеждать его настройками бессмысленно.
#Заменяет ли эта связка систему с автоматической памятью?
Не заменяет, потому что решает другую задачу. Плагин работает с тем, что вы уже записали руками. Автоматическая память работает с тем, что вы записать не успели. Точка отказа классических систем заметок лежит как раз на записи — подробнее в разборе второго мозга на ИИ.
#Можно ли просить модель проставлять связи между заметками?
Можно, и это работает — с оговоркой, что машинная связь означает «похоже», а не «следует из». Что теряется при такой замене и где ручная связь остаётся нужна, разобрано в статье про Zettelkasten и ИИ.
#Не испортит ли модель мои файлы?
Плагин, которому разрешено писать, может переписать заметку целиком, и откат тут только через историю версий. Практическое правило: включайте запись только после того, как хранилище под контролем версий или под синхронизацией с историей. Формат при этом остаётся обычным текстом — почему это важно, разобрано в статье про Markdown как формат хранения на десятилетия.
#Как подключить локальную модель к самой Persona?
Отдельная процедура, она проще: адрес Ollama указывается в настройках, и переписка не уходит наружу, пока подключена локальная модель. Порядок — в гайде подключаем Ollama к Persona.
#Вывод
Связка Obsidian с локальной моделью собирается за вечер и держится на трёх вещах: Ollama должна принимать запросы от Electron-приложения, модель эмбеддингов должна быть скачана отдельно от модели чата, а плагин надо проверить не по описанию, а по исходящему трафику. Если вам нужна работа с уже записанными заметками — этого достаточно. Если вы обнаружили, что записывать не успеваете, то связка не поможет: она усиливает то, что вы внесли, и ничего не знает о том, чего вы не внесли.