Copilot外掛提供了下列 11 種 LLMs(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整合了兩個開源、可免費使用的LLMs,讓我們可以在Obsidian裡透過OLLAMA或LM Studio能對筆記或整個儲存庫做Q&A的操作。
因為LLMs的環境和模型檔案都是安裝在本機,它們的執行效能受電腦硬體制約,因此建議你的電腦要有較好的執行功率,最好有多一點的記憶體和GPU。
1. Copilot設定
- 預設的LM Studio Server URL是
http://localhost:1234/v1,依安裝的Port變更,例如:http://localhost:51234/v1 - 確認OLLAMA_ORIGINS有設定正確
- Ollama預設使用模型是
llam2,若Ollama啟動時載入別的模型,則必須變更,例如變更為llama2-chinese - Ollama預設網址是
http://localhost:11434,通常不用更改
設定修改後務必點擊最上方的【Save and Reload】!
2. Copilot操作簡述
Copilot的交互模式有下列3種:
- Chat
- Long Note QA
- Vault QA
後二者在切換模式時會自動索引,或點擊模式選單右側的按鈕亦可重做索引。
2.1. Chat模式
- 在筆記裡選取一段文字後按<span class='keybs'> Ctrl+P</span>進入命令面板,輸入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. Chat
3.3. 啟動Local Server
- 如果預設的1234 Port無法啟動(錯誤碼: -4092)時,變更為51234 Port
- 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. 安裝
- 先設定環境變數:設定→系統→系統資訊→進階系統設定→環境變數→下方的系統變數→新增下列三個環境變數
- 用OLLAMA_MODELS變更預設的模型存放資料夾
- OLLAMA_ORGINS設定可以允許跨來源資源共用的外部來源
- 如果用預設的
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 llma2 - 若沒有彈出PowerShell,可以自行開啟Terminal,自行執行下列指令:
ollama pull llama2
ollama run llma2
- llama2模型亦可改用針對中文調整過的 llama2-chinese
- 自動下載llama2模型
- 用
/?顯示可使用的指令
4.2. CORS錯誤
- OLLAMA_ORIGINS未設定正確,在Chat時會出錯CORS錯誤
在Terminal裡用/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相容的伺服器
6. 教學影片
##