nvim-configs/lua/plugins/avante.lua

101 lines
2.1 KiB
Lua
Raw Normal View History

2025-03-30 16:27:30 +08:00
local function deepseek(model)
return {
__inherited_from = "openai",
api_key_name = "DEEPSEEK_API_KEY",
endpoint = "https://api.deepseek.com",
model = model,
}
end
local function qwen(model)
return {
__inherited_from = "openai",
api_key_name = "QWEN_API_KEY",
endpoint = "https://dashscope.aliyuncs.com/compatible-mode/v1/",
model = model,
disable_tools = true,
}
end
local function yostar(model)
return {
__inherited_from = "openai",
api_key_name = "YOSTAR_API_KEY",
endpoint = "https://litellm.yostar.net",
model = model,
disable_tools = true,
}
end
local function codestral()
return {
__inherited_from = "openai",
api_key_name = "CODESTRAL_API_KEY",
endpoint = "https://codestral.mistral.ai/v1",
model = "codestral-latest",
}
end
local function ark(model)
return {
__inherited_from = "openai",
api_key_name = "ARK_API_KEY",
endpoint = "https://ark.cn-beijing.volces.com/api/v3/",
model = model,
}
end
return {
{
"yetone/avante.nvim",
event = "VeryLazy",
lazy = true,
dependencies = {
"stevearc/dressing.nvim",
"nvim-lua/plenary.nvim",
"MunifTanjim/nui.nvim",
{
"MeanderingProgrammer/render-markdown.nvim",
opts = {
file_types = { "markdown", "Avante" },
},
ft = { "markdown", "Avante" },
},
},
opts = {
provider = "arkv3",
auto_suggestions_provider = "arkv3",
-- cursor_applying_provider = "yoqwen32",
-- behaviour = {
-- enable_cursor_planning_mode = true, -- enable cursor planning mode!
-- },
file_selector = {
provider = "fzf-lua",
provider_opts = {},
},
vendors = {
-- ds
dsv3 = deepseek("deepseek-chat"),
dsr1 = deepseek("deepseek-reasoner"),
-- 百炼
qwenv3 = qwen("deepseek-v3"),
qwenr1 = qwen("deepseek-r1"),
-- yostar
yor1 = yostar("DeepSeek-R1"),
yov3 = yostar("DeepSeek-V3"),
-- ark
arkv3 = ark("deepseek-v3-250324"),
-- codestral
codestral = codestral(),
},
},
},
}