Настройка Copilot в Obsidian

Иван Никитин и партнерыНовостиObsidianНастройка Copilot в Obsidian

Как было показано в статье Obsidian и нейросети, плагин Copilot является одним из самых распространенных решений для подключения искусственного интеллекта к Obsidian. В этой статье подробно рассказывается, как быстро настроить плагин Copilot в Obsidian для комфортной работы с практически любыми нейросетями без использования VPN.

В данной статье мы рассмотрим:

  1. Подключение к OpenRouter.ai;
  2. Установку Ollama для локальных моделей;
  3. Настройку модели для расчета эмбеддингов.

Предполагается, что плагин Obsidian Copilot уже установлен в вашем Obsidian. Если это не так, самое время сделать это и только после этого продолжить чтение.

Подключение к OpenRouter.ai

Как известно, компания OpenAI (разработчики моделей ChatGPT) блокирует доступ из России. Однако, помимо великолепных моделей ChatGPT, существуют не менее эффективные модели от других поставщиков. Поэтому для работы Copilot мы будем использовать не прямое подключение к OpenAI, а некоторые прокси-службы. Наиболее популярными сейчас являются:

У первых — огромная коллекция моделей, а вторые принимают оплату в рублях. Мы будем использовать OpenRouter.

  1. Зайдите на сайт https://openrouter.ai/ и зарегистрируйтесь. Желательно сразу оплатить небольшую сумму, например, $5, но начать работу можно и без оплаты. Мы не рассматриваем здесь серые способы оплаты зарубежных сервисов, но если возникнут сложности, можете обратиться к автору статьи.
  2. После регистрации перейдите в раздел Keys и сгенерируйте новый ключ. Название ключа может быть любым, например, «Obsidian Copilot». Обязательно сохраните полученное значение, так как оно больше не будет отображаться!
  3. Перейдите в настройки плагина Copilot и укажите значение ключа в разделе API Settings → OpenRouter Settings.
Ключ OpenRouter

Обязательно после изменения настроек поднимитесь в самый верх страницы настроек плагина и нажмите кнопку Save and Reload.

  1. Выберите и установите желаемую модель для работы.

Несколько слов о моделях нейросети

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

  • Размер контекстного окна — сколько токенов модель принимает для работы. Это тот самый контекст, то есть ваш промпт, загруженные данные, ответ модели, уточнения и т. п. Чем он больше, тем лучше. Например, context 128K обозначает размер 128 тысяч токенов (примерно 60-100 тысяч слов).
  • Цена за входные и выходные данные. Обычно указывается за миллион токенов. Вот пример модели с достаточно высокой ценой — $3 за каждый миллион токенов на входе и $3 за каждый миллион сгенерированных токенов.

Рекомендуем начать с одной из следующих моделей:

  • openai/gpt-4o-mini — очень быстрая, недорогая и качественная модель;
  • google/gemini-flash-8b-1.5-exp — очень быстрая, сейчас полностью бесплатная и качественная модель от Google, но может давать некоторые артефакты в ответах.

Чтобы добавить модель, необходимо перейти в раздел настроек Copilot General Settings и в нем выбрать Add Custom Model. Введите название модели (в точности как в списке выше) и в качестве поставщика выберите OpenRouter. Остальные поля можно не заполнять.

Добавление модели в Copilot

Нажмите кнопку Add Model и обязательно после изменения настроек поднимитесь в самый верх страницы настроек плагина и нажмите кнопку Save and Reload.

После этого установите галочку Default напротив добавленной модели и еще раз сделайте Save and Reload.

Модель по умолчанию в Copilot

Собственно, всё! Теперь вы можете пользоваться чатом. Закройте настройки Copilot и откройте окно чата в правой панели Obsidian. Если его там нет, нажмите Ctrl + P и введите команду «Toggle Copilot Chat Window», окно чата появится.

Попробуйте чат с вашей моделью:

Copilot в режиме чата

Установка Ollama для работы с локальными моделями

Текущие настройки позволяют Copilot работать в режиме чата, но если мы хотим использовать режимы QA (см. Obsidian и нейросети), нам необходимо установить и настроить модель для расчета эмбеддингов. В принципе, они есть и облачные, но важно понимать, что эмбеддинги — это всё содержимое вашего Obsidian (все заметки!), поэтому загрузка и расчет их в облаке будет небезопасным и недешевым. Поэтому мы будем использовать локальные модели на своем компьютере.

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

Для запуска локальных моделей мы будем использовать Ollama.

Перед началом необходимо выполнить подготовительный шаг: установить требуемую переменную окружения операционной системы (environment variables) со значением OLLAMA_ORIGINS="app://obsidian.md*". Это нужно, чтобы Copilot мог нормально открывать ссылки на ваши заметки, полученные в ответе нейросети. Для Windows 11 это делается так: в проводнике правой кнопкой по «Мой Компьютер» → «Свойства» → «Дополнительные параметры системы» → «Переменные среды». Далее создайте переменную для пользователя.

Название: OLLAMA_ORIGINS
Значение: app://obsidian.md*

Далее установите приложение с сайта https://ollama.com/ и запустите его. Сигналом успешного запуска будет овечка (лама) в трее Windows. Она должна работать всегда.

Когда Ollama запущена, необходимо добавить в нее модель для эмбеддингов. Их тоже достаточно много, но здесь мы рекомендуем использовать модель mxbai-embed-large. Для ее добавления откройте командную строку Windows или PowerShell и введите команду:

ollama pull mxbai-embed-large

Дождитесь ее скачивания, модель занимает около 670 мегабайт.

Когда модель будет скачана, откройте настройки Copilot и в разделе QA Settings выберите Add Custom Model. Введите название модели mxbai-embed-large и поставщика Ollama. Нажмите Add Model и не забудьте подняться вверх и нажать Save and Reload.

Индексация заметок для наполнения векторного хранилища

Чтобы Copilot мог работать в режимах QA, нужно один раз проиндексировать все заметки в вашем хранилище и далее регулярно индексировать изменения. Это не быстрый процесс, он может занять 3-5 часов и более. Поэтому, если вы используете ноутбук, сначала подключите его к зарядному устройству.

Откройте панель команд Obsidian Ctrl + P и введите команду «Force re-index vault for QA». Сигналом нормальной работы будет счетчик проиндексированных заметок, который увеличивается. Терпеливо дождитесь окончания процесса.

Индексация заметок в Copilot

В дальнейшем достаточно регулярно выполнять команду «Index (refresh) vault for QA», она индексирует только новые и измененные заметки, поэтому много времени не тратится.

Собственно, всё! Давайте проверим работу в режиме QA:

Режим Vault QA в Obsidian Copilot

Впечатляет, правда?

И вот, ваш Copilot готов к работе!

Добавить комментарий