feat: bedrock temporary credentials support (#1207)
This commit is contained in:
		
							parent
							
								
									4ffec5a039
								
							
						
					
					
						commit
						987275c64a
					
				@ -471,8 +471,10 @@ Given its early stage, `avante.nvim` currently supports the following basic func
 | 
				
			|||||||
> For Amazon Bedrock:
 | 
					> For Amazon Bedrock:
 | 
				
			||||||
>
 | 
					>
 | 
				
			||||||
> ```sh
 | 
					> ```sh
 | 
				
			||||||
> export BEDROCK_KEYS=aws_access_key_id,aws_secret_access_key,aws_region
 | 
					> export BEDROCK_KEYS=aws_access_key_id,aws_secret_access_key,aws_region[,aws_session_token]
 | 
				
			||||||
 | 
					>
 | 
				
			||||||
> ```
 | 
					> ```
 | 
				
			||||||
 | 
					> Note: The aws_session_token is optional and only needed when using temporary AWS credentials
 | 
				
			||||||
 | 
					
 | 
				
			||||||
1. Open a code file in Neovim.
 | 
					1. Open a code file in Neovim.
 | 
				
			||||||
2. Use the `:AvanteAsk` command to query the AI about the code.
 | 
					2. Use the `:AvanteAsk` command to query the AI about the code.
 | 
				
			||||||
 | 
				
			|||||||
@ -64,6 +64,7 @@ M.parse_curl_args = function(provider, prompt_opts)
 | 
				
			|||||||
  local aws_access_key_id = parts[1]
 | 
					  local aws_access_key_id = parts[1]
 | 
				
			||||||
  local aws_secret_access_key = parts[2]
 | 
					  local aws_secret_access_key = parts[2]
 | 
				
			||||||
  local aws_region = parts[3]
 | 
					  local aws_region = parts[3]
 | 
				
			||||||
 | 
					  local aws_session_token = parts[4]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  local endpoint = string.format(
 | 
					  local endpoint = string.format(
 | 
				
			||||||
    "https://bedrock-runtime.%s.amazonaws.com/model/%s/invoke-with-response-stream",
 | 
					    "https://bedrock-runtime.%s.amazonaws.com/model/%s/invoke-with-response-stream",
 | 
				
			||||||
@ -75,6 +76,8 @@ M.parse_curl_args = function(provider, prompt_opts)
 | 
				
			|||||||
    ["Content-Type"] = "application/json",
 | 
					    ["Content-Type"] = "application/json",
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  if aws_session_token and aws_session_token ~= "" then headers["x-amz-security-token"] = aws_session_token end
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  local body_payload = M.build_bedrock_payload(prompt_opts, body_opts)
 | 
					  local body_payload = M.build_bedrock_payload(prompt_opts, body_opts)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  local rawArgs = {
 | 
					  local rawArgs = {
 | 
				
			||||||
 | 
				
			|||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user