Copilotプラグインは、以下の11種類のLLM(Large Language Model、大規模言語モデル)との統合を提供します:
- GPT-3.5
- GPT-3.5 16K
- GPT-4
- GPT-4 TURBO (デフォルト)
- GPT-4 32K
- Azure OpenAI
- Claude 3
- Gemini Pro
- OpenRouter.AI
- OLLMA (Local)
- LM Studio (Local)
このうち、OLLMAとLM Studioは、ローカル環境にインストール可能なローカルモデルアプリケーションであり、ローカル指向のObsidianでの利用に適しています。
考えてみてください:機密情報や個人のプライバシーに関わるノートを、安全で信頼でき、他人がアクセスできないローカル環境に保存しているにもかかわらず、AIによる要約、整理、分析、学習などの機能を利用するために、クラウド上のAIモデルにアップロードする必要があるとしたら、それはローカルファーストの考え方に反するのではないでしょうか?
幸いなことに、Copilotはオープンソースで無料利用可能な2つのLLMを統合しており、Obsidian内でOLLAMAやLM Studioを通じて、ノートや保管庫全体に対するQ&A操作を行うことができます。
LLMの環境とモデルファイルはローカルマシンにインストールされるため、その実行性能はコンピューターのハードウェアに依存します。したがって、より高い処理能力を持つコンピューター、特に十分なメモリとGPUを搭載したマシンを使用することをお勧めします。
1. Copilot設定
- LM StudioサーバーのデフォルトURLは
http://localhost:1234/v1ですが、インストール時に使用したポート番号に応じて変更してください(例:http://localhost:51234/v1)。 OLLAMA_ORIGINSが正しく設定されていることを確認してください。- Ollamaがデフォルトで使用するモデルは
llama2です。Ollama起動時に別のモデルをロードしている場合は、これを変更する必要があります(例:llama2-chineseに変更)。 - OllamaのデフォルトURLは
http://localhost:11434で、通常は変更する必要はありません。
設定を変更した後は、必ず最上部にある【Save and Reload】をクリックしてください!
2. Copilot操作概要
Copilotの対話モードには、以下の3種類があります:
- Chat
- Long Note QA
- Vault QA
後者2つのモード(Long Note QA、Vault QA)では、モード切り替え時に自動的にインデックスが作成されます。モードメニューの右側にあるボタンをクリックして、手動でインデックスを再作成することも可能です。
2.1. Chatモード
- ノート内のテキストを選択し、
Ctrl+Pを押してコマンドパレットを開き、「copilot」と入力して実行したいコマンド(例:Translate selection、Summarize selectionなど)をクリックします。 - Copilotパネルに任意のテキストを入力し、【Send】をクリックして回答を得ます。
- Copilotパネルで
[[と入力するとノートの候補が表示され、選択したノートに関するQ&Aチャットを行えます。
2.2. Long Note QAモード
現在開いているノートを対象としたQ&A操作です。
2.3. Vault QAモード
保管庫全体を対象としたQ&A操作です。
3. LM Studio
- 左側のサイドバーにあるフォルダアイコンから、モデルの保存場所を変更できます。Cドライブの空き容量が少ない場合は、先に他のドライブに変更しておきましょう。
3.1. モデルのダウンロード
llama2またはllama2-chineseを検索 → 【Go】をクリックし、右側に表示されたモデルの中からいずれかを選択して【Download】をクリックします。
3.2. チャット
3.3. ローカルサーバーの起動
- デフォルトのポート1234で起動できない場合(エラーコード: -4092)、ポート番号を51234などに変更します。
- Cross Origin Resource Sharing (CORS) オリジン間リソース共有: これを有効にする必要があります。有効にしないと、外部からAPIを呼び出せません。
テスト:
curl http://localhost:51234/v1/chat/completions ^
-H "Content-Type: application/json" -d^
"{^
\"messages\": [ ^
{ \"role\": \"system\", \"content\": \"Always answer in rhymes.\" },^
{ \"role\": \"user\", \"content\": \"Introduce yourself.\" }^
], ^
\"temperature\": 0.7, ^
\"max_tokens\": -1,^
\"stream\": false^
}"
4. OLLAMA
4.1. インストール
- まず環境変数を設定します:設定 → システム → バージョン情報 → システムの詳細設定 → 環境変数 → 下部の「システム環境変数」 → 「新規」で以下の3つの環境変数を追加します。
OLLAMA_MODELSでデフォルトのモデル保存フォルダを変更します。OLLAMA_ORIGINSでCORS(オリジン間リソース共有)を許可する外部オリジンを設定します。- デフォルトの
app://obsidian.md* ollama serveで接続できない場合は、app://obsidian.md*に変更してみてください。
- デフォルトの
set OLLAMA_HOST=127.0.0.1
set OLLAMA_MODELS=d:\ollama\models
rem set OLLAMA_ORIGINS=app://obsidian.md* ollama serve
set OLLAMA_ORIGINS=app://obsidian.md*
-
デフォルトの実行ファイルパス:
C:\Users\<ユーザー名>\AppData\Local\Programs\Ollama\
-
クリックするとPowerShellが起動し、
ollama run llama2が実行されます。 -
PowerShellが起動しない場合は、自分でターミナルを開き、以下のコマンドを実行してください:
ollama pull llama2
ollama run llama2
llama2モデルの代わりに、中国語向けに調整されたllama2-chineseを使用することもできます。
-
llama2モデルが自動的にダウンロードされます。
-
/?と入力すると、利用可能なコマンドが表示されます。
4.2. CORSエラー
OLLAMA_ORIGINSが正しく設定されていない場合、チャット時にCORSエラーが発生します。
ターミナルで/byeと入力してコマンドラインのOllamaを終了しても、システムトレイ(タスクトレイ)でOllama App.exeが実行中の場合があります。こちらも忘れずに終了させてください。
5. 💡 関連リンク
💡 解説記事: https://jdev.tw/blog/8385/
✅ logancyang/obsidian-copilot: A ChatGPT Copilot in Obsidian
✅ Download Ollama: https://ollama.com/download
✅ Ollama library
✅ Ollama GitHub : https://github.com/ollama/ollama
✅ Ollama FAQ: https://github.com/ollama/ollama/blob/main/docs/faq.md#faq
✅ LM Studio: https://lmstudio.ai/
✅ チュートリアル共有 【LM Studio】執行語言模型的最好程式介面 無需特別設定便可以使用語言模型|方便管理與使用多種模型 可快速架設與OpenAI相容的伺服器