refactor: ♻️ Updated API parsing logic for vertex AI to throw specific error (#887)

Co-authored-by: Shourya Sharma <shourya.sharma@complyadvantage.com>
This commit is contained in:
Shourya Sharma 2024-11-23 04:47:29 +00:00 committed by GitHub
parent 934602b2a6
commit 9d2599df4d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -23,12 +23,12 @@ local function execute_command(command)
end end
M.parse_api_key = function() M.parse_api_key = function()
if M.api_key_name:match("^cmd:") then if not M.api_key_name:match("^cmd:") then
local command = M.api_key_name:sub(5) error("Invalid api_key_name: Expected 'cmd:<command>' format, got '" .. M.api_key_name .. "'")
return execute_command(command)
else
return vim.fn.getenv(M.api_key_name)
end end
local command = M.api_key_name:sub(5)
local direct_output = execute_command(command)
return direct_output
end end
M.parse_curl_args = function(provider, code_opts) M.parse_curl_args = function(provider, code_opts)
@ -48,10 +48,12 @@ M.parse_curl_args = function(provider, code_opts)
}) })
body_opts.temperature = nil body_opts.temperature = nil
body_opts.max_tokens = nil body_opts.max_tokens = nil
local bearer_token = M.parse_api_key()
return { return {
url = url, url = url,
headers = { headers = {
["Authorization"] = "Bearer " .. M.parse_api_key(), ["Authorization"] = "Bearer " .. bearer_token,
["Content-Type"] = "application/json; charset=utf-8", ["Content-Type"] = "application/json; charset=utf-8",
}, },
proxy = base.proxy, proxy = base.proxy,