Obs157|用Copilot外掛使用本地AI模型服務-使用Ollama與LM Studio

Copilot外掛提供了下列 11 種 LLMs(Large Language Model,大型語言模型)的整合:

  1. GPT-3.5
  2. GPT-3.5 16K
  3. GPT-4
  4. GPT-4 TURBO (預設)
  5. GPT-4 32K
  6. Azure OpenAI
  7. Claude 3
  8. Gemini Pro
  9. OpenRouter.AI
  10. OLLMA (Local)
  11. LM Studio (Local)

其中的OLLMA與LM Studio都是能安裝在本機的本地模型應用程式,很適合本地導向的Obsidian使用。

試想:具有機密性或個人隱私的筆記,存放在安全可靠、他人無法觸及的本地,但為了使用AI的彙總摘要、整理綜述或分析學習等功能,而必須上傳給雲端的AI模型,不是和本地優先的概念背道而馳嗎?

幸好Copilot整合了兩個開源、可免費使用的LLMs,讓我們可以在Obsidian裡透過OLLAMA或LM Studio能對筆記或整個儲存庫做Q&A的操作。

[!NOTE]+ 🔔注意
因為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,通常不用更改

[!TIP]+ 切記
設定修改後務必點擊最上方的【Save and Reload】!

2. Copilot操作簡述

Copilot的交互模式有下列3種:

  1. Chat
  2. Long Note QA
  3. Vault QA

後二者在切換模式時會自動索引,或點擊模式選單右側的按鈕亦可重做索引。

2.1. Chat模式

  1. 在筆記裡選取一段文字後按 Ctrl+P進入命令面板,輸入copilot再點擊要執行的命令,例如:Translate selection、Summarize selection等
  2. 在Copilot面板輸入任意文字後按【Send】以獲得解答
  3. 在Copilot面板輸入[[時會彈出筆記選單,接著即可針對選用的筆記做Q&A聊天

2.2. Long Note QA模式

以當前筆記為目標而進行的Q & A操作。

2.3. Vault QA模式

以整個儲存庫為目標而進行的Q & A操作。

3. LM Studio

  • 左側邊欄最一個資料夾圖示裡可以變更模型的存放位置,若你的C磁碟空間較少,記得先變更到其他磁碟機

3.1. 下載模型

  • 搜尋llama2llama2-chinese→【Go】,在右側選擇任一模型後點擊【Download】
    gh|700

3.2. Chat

gh|700

3.3. 啟動Local Server

  • 如果預設的1234 Port無法啟動(錯誤碼: -4092)時,變更為51234 Port
  • Cross Origin Resource Sharing(CORS) 跨來源資源共用: 必須啟動,否則外部無法調用API

gh|700

測試:

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*

gh|500

  • 預設的執行檔:C:\Users\帳號\AppData\Local\Programs\Ollama\
    gh|500

  • 點擊後會啟動PowerShell並執行ollama run llma2

  • 若沒有彈出PowerShell,可以自行開啟Terminal,自行執行下列指令:

    ollama pull llama2
    ollama run llma2
  • llama2模型亦可改用針對中文調整過的 llama2-chinese

gh|500

  • 自動下載llama2模型
    gh|700

  • /?顯示可使用的指令
    gh|700

4.2. CORS錯誤

  • OLLAMA_ORIGINS未設定正確,在Chat時會出錯CORS錯誤
    gh|700

在Terminal裡用/bye脫離命令行的Ollama,但系統匣裡仍有運行的Ollama App.exe,記得一併停止其運行。

5. 💡 相關鏈接

💡 解說文章:
✅ Download Ollama: https://ollama.com/download
✅ 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. 教學影片

##

您可能也會有興趣的類似文章

您可能也會喜歡…

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *