Skip to content

Commit 81e8d55

Browse files
authored
Fix refresh of Bedrock models and remove some expired credentials from cassettes (#89)
1 parent 5bfd92e commit 81e8d55

File tree

4 files changed

+43
-46
lines changed

4 files changed

+43
-46
lines changed

lib/ruby_llm/providers/bedrock.rb

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,17 +25,17 @@ def api_base
2525
end
2626

2727
def post(url, payload)
28-
signature = sign_request("#{connection.url_prefix}#{url}", payload)
28+
signature = sign_request("#{connection.url_prefix}#{url}", payload:)
2929
connection.post url, payload do |req|
3030
req.headers.merge! build_headers(signature.headers, streaming: block_given?)
3131

3232
yield req if block_given?
3333
end
3434
end
3535

36-
def sign_request(url, payload)
36+
def sign_request(url, method: :post, payload: nil)
3737
signer = create_signer
38-
request = build_request(url, payload)
38+
request = build_request(url, method:, payload:)
3939
signer.sign_request(request)
4040
end
4141

@@ -49,12 +49,12 @@ def create_signer
4949
})
5050
end
5151

52-
def build_request(url, payload)
52+
def build_request(url, method: :post, payload: nil)
5353
{
5454
connection: connection,
55-
http_method: :post,
55+
http_method: method,
5656
url: url || completion_url,
57-
body: JSON.generate(payload, ascii_only: false) || ''
57+
body: payload ? JSON.generate(payload, ascii_only: false) : nil
5858
}
5959
end
6060

lib/ruby_llm/providers/bedrock/models.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@ module Models
88
def list_models
99
@connection = nil # reset connection since base url is different
1010
@api_base = "https://bedrock.#{RubyLLM.config.bedrock_region}.amazonaws.com"
11-
signature = sign_request(models_url, nil)
11+
full_models_url = "#{@api_base}/#{models_url}"
12+
signature = sign_request(full_models_url, method: :get)
1213
response = connection.get(models_url) do |req|
1314
req.headers.merge! signature.headers
1415
end

spec/fixtures/vcr_cassettes/models_refresh_updates_models_and_returns_a_chainable_models_instance.yml

Lines changed: 14 additions & 16 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)