Note
最近Cursorを巷でよく見かける。 Nvimで対抗すべくavante.nvimというCursorライクに操作できるプラグインを導入する
導入
以下のReadmeを参考に導入を進める。 GitHub - yetone/avante.nvim: Use your Neovim like using Cursor AI IDE!
ReadMEに記載されている以下の内容をそのままNvimのプラグインフォルダへ。
{
"yetone/avante.nvim",
event = "VeryLazy",
lazy = false,
version = false, -- set this to "*" if you want to always pull the latest change, false to update on release
opts = {
-- add any opts here
},
-- if you want to build from source then do `make BUILD_FROM_SOURCE=true`
build = "make",
-- build = "powershell -ExecutionPolicy Bypass -File Build.ps1 -BuildFromSource false" -- for windows
dependencies = {
"stevearc/dressing.nvim",
"nvim-lua/plenary.nvim",
"MunifTanjim/nui.nvim",
--- The below dependencies are optional,
"hrsh7th/nvim-cmp", -- autocompletion for avante commands and mentions
"nvim-tree/nvim-web-devicons", -- or echasnovski/mini.icons
"zbirenbaum/copilot.lua", -- for providers='copilot'
{
-- support for image pasting
"HakonHarnes/img-clip.nvim",
event = "VeryLazy",
opts = {
-- recommended settings
default = {
embed_image_as_base64 = false,
prompt_for_file_name = false,
drag_and_drop = {
insert_mode = true,
},
-- required for Windows users
use_absolute_path = true,
},
},
},
{
-- Make sure to set this up properly if you have lazy=true
'MeanderingProgrammer/render-markdown.nvim',
opts = {
file_types = { "markdown", "Avante" },
},
ft = { "markdown", "Avante" },
},
},
}
APIはOpenAIのものとClaudeが利用できるが、デフォルトではClaudeが利用されている。 → Claudeのモデルの方が精度が良いらしい。
deepseekを利用
ClaudeのAPIKeyは発行しておらず、また金額も増しそうなためdeepseekを使いたなとissueを探してたところ以下で対応可能とのこと。 Add DeepSeek Provider Support by Plastikov · Pull Request #1038 · yetone/avante.nvim · GitHub
deepseekのAPIはOpenAIのものと変わらないのでエンドポイント諸々をdeepseekのものに変更する形で対応できるっぽい。
以下の内容をopts
に記載する。
opts = {
provider = "deepseek",
auto_suggestions_provider = "deepseek",
vendors = {
deepseek = {
__inherited_from = "openai",
api_key_name = "DEEPSEEK_API_KEY",
endpoint = "https://api.deepseek.com/v1",
model = "deepseek-chat",
timeout = 30000,
temperature = 0,
},
},
Linuxの環境変数を設定する。
export DEEP_SEEK_API=DEEPSEEKのAPIKEY
追記
公式の推奨通りclaude 3.5 sonnetにモデルを変更したところ開発者体験が向上した。 deepseekのモデルより数段精度が高そう。