From c7993662ca20e83d4677d30f2d60fd6f66766884 Mon Sep 17 00:00:00 2001 From: yetone Date: Thu, 15 Aug 2024 10:14:17 +0800 Subject: [PATCH] feat: support configure endpoints --- lua/avante/init.lua | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/lua/avante/init.lua b/lua/avante/init.lua index 0402049..b1ecf27 100644 --- a/lua/avante/init.lua +++ b/lua/avante/init.lua @@ -3,6 +3,7 @@ local curl = require("plenary.curl") local Path = require("plenary.path") local n = require("nui-components") local diff = require("avante.diff") +local utils = require("avante.utils") local api = vim.api local fn = vim.fn @@ -217,7 +218,8 @@ local function call_claude_api_stream(prompt, original_content, on_chunk, on_com headers["anthropic-beta"] = "max-tokens-3-5-sonnet-2024-07-15" end - local url = "https://api.anthropic.com/v1/messages" + local url = utils.trim_suffix(M.config.claude.endpoint, "/") .. "/v1/messages" + curl.post(url, { ---@diagnostic disable-next-line: unused-local stream = function(err, data, job) @@ -267,9 +269,11 @@ local function call_openai_api_stream(prompt, original_content, on_chunk, on_com local user_prompt = user_prompt_tpl:gsub("${{question}}", prompt):gsub("${{code}}", original_content) + local url = utils.trim_suffix(M.config.openai.endpoint, "/") .. "/v1/chat/completions" + print("Sending request to OpenAI API...") - curl.post("https://api.openai.com/v1/chat/completions", { + curl.post(url, { ---@diagnostic disable-next-line: unused-local stream = function(err, data, job) if err then @@ -604,11 +608,13 @@ end M.config = { provider = "claude", -- "claude" or "openai" openai = { + endpoint = "https://api.openai.com", model = "gpt-4o", temperature = 0, max_tokens = 4096, }, claude = { + endpoint = "https://api.anthropic.com", model = "claude-3-5-sonnet-20240620", temperature = 0, max_tokens = 4096,