milanglacier/minuet-ai.nvim

💃 Dance with Intelligence in Your Code. Minuet offers code completion as-you-type from popular LLMs including OpenAI, Gemini, Claude, Ollama, Llama.cpp, Codestral, and more.

解決的問題

Minuet 是一款為 Neovim 設計的 AI 驅動程式碼補全外掛,允許開發者將各種大型語言模型 (LLM) 直接整合到編輯器中。它解決了為了獲取程式碼建議而必須在編輯器與外部 AI 聊天介面之間切換的問題,為行內程式碼補全提供了無縫、低延遲的體驗。

工作原理

Minuet 透過 API(使用 curl)連接到 AI 提供商,無需專有的後台二進位檔案。它支援兩種主要的補全模式:針對基於對話的 LLM 的專用提示詞,以及針對專門為程式碼補全設計的模型之 Fill-in-the-Middle (FIM) 補全。該外掛提供了多種顯示建議的前端選項,包括 virtual text、nvim-cmpblink-cmp 以及 Neovim 內建的 LSP 補全介面。

適用對象

希望在選擇 LLM 提供商(如基於雲端的 OpenAI、Claude 或 Gemini,或透過 Ollama 和 Llama.cpp 實現的本地模型)與偏好補全 UI 方面具有靈活性的 Neovim 使用者。

亮點

  • 多提供商支援:支援 OpenAI、Claude、Gemini、Codestral、Ollama、Llama.cpp 以及相容 OpenAI 的 API。
  • 靈活的 UI:支援 virtual text、nvim-cmpblink-cmp,並可以作為進程內 LSP 伺服器運行。
  • 資源高效:保持補全內容與輸入文字同步,以減少不必要的 API 請求。
  • 增量接受:允許使用者逐行或按特定增量接受多行建議。
  • 下次編輯預測:包含用於預測下次編輯的實驗性 "Duet" 功能。
  • 串流支援:即使在使用較慢的 LLM 時,也能實現更快的補全交付。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案