diff --git a/lib/ruby_llm/providers/anthropic/chat.rb b/lib/ruby_llm/providers/anthropic/chat.rb index dc9be086..1cc4ca7d 100644 --- a/lib/ruby_llm/providers/anthropic/chat.rb +++ b/lib/ruby_llm/providers/anthropic/chat.rb @@ -15,8 +15,8 @@ def render_payload(messages, tools:, temperature:, model:, stream: false, schema system_messages, chat_messages = separate_messages(messages) system_content = build_system_content(system_messages) - build_base_payload(chat_messages, temperature, model, stream).tap do |payload| - add_optional_fields(payload, system_content:, tools:) + build_base_payload(chat_messages, model, stream).tap do |payload| + add_optional_fields(payload, system_content:, tools:, temperature:) end end @@ -32,22 +32,22 @@ def build_system_content(system_messages) ) end - system_messages.map { |msg| format_message(msg)[:content] }.join("\n\n") + system_messages.map(&:content).join("\n\n") end - def build_base_payload(chat_messages, temperature, model, stream) + def build_base_payload(chat_messages, model, stream) { model: model, messages: chat_messages.map { |msg| format_message(msg) }, - temperature: temperature, stream: stream, max_tokens: RubyLLM.models.find(model)&.max_tokens || 4096 } end - def add_optional_fields(payload, system_content:, tools:) + def add_optional_fields(payload, system_content:, tools:, temperature:) payload[:tools] = tools.values.map { |t| Tools.function_for(t) } if tools.any? payload[:system] = system_content unless system_content.empty? + payload[:temperature] = temperature unless temperature.nil? end def parse_completion_response(response) diff --git a/lib/ruby_llm/providers/bedrock/chat.rb b/lib/ruby_llm/providers/bedrock/chat.rb index 8136fc75..d6f91c90 100644 --- a/lib/ruby_llm/providers/bedrock/chat.rb +++ b/lib/ruby_llm/providers/bedrock/chat.rb @@ -46,16 +46,15 @@ def render_payload(messages, tools:, temperature:, model:, stream: false, schema system_messages, chat_messages = Anthropic::Chat.separate_messages(messages) system_content = Anthropic::Chat.build_system_content(system_messages) - build_base_payload(chat_messages, temperature, model).tap do |payload| - Anthropic::Chat.add_optional_fields(payload, system_content:, tools:) + build_base_payload(chat_messages, model).tap do |payload| + Anthropic::Chat.add_optional_fields(payload, system_content:, tools:, temperature:) end end - def build_base_payload(chat_messages, temperature, model) + def build_base_payload(chat_messages, model) { anthropic_version: 'bedrock-2023-05-31', messages: chat_messages.map { |msg| format_message(msg) }, - temperature: temperature, max_tokens: RubyLLM.models.find(model)&.max_tokens || 4096 } end diff --git a/spec/fixtures/vcr_cassettes/chat_basic_chat_functionality_anthropic_claude-3-5-haiku-20241022_can_handle_multi-turn_conversations.yml b/spec/fixtures/vcr_cassettes/chat_basic_chat_functionality_anthropic_claude-3-5-haiku-20241022_can_handle_multi-turn_conversations.yml index f3799c97..cc85b090 100644 --- a/spec/fixtures/vcr_cassettes/chat_basic_chat_functionality_anthropic_claude-3-5-haiku-20241022_can_handle_multi-turn_conversations.yml +++ b/spec/fixtures/vcr_cassettes/chat_basic_chat_functionality_anthropic_claude-3-5-haiku-20241022_can_handle_multi-turn_conversations.yml @@ -6,10 +6,10 @@ http_interactions: body: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"Who - was Ruby''s creator?"}]}],"temperature":0.7,"stream":false,"max_tokens":8192}' + was Ruby''s creator?"}]}],"stream":false,"max_tokens":8192,"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -26,7 +26,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 09:51:12 GMT + - Mon, 28 Jul 2025 14:27:33 GMT Content-Type: - application/json Transfer-Encoding: @@ -38,31 +38,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T09:51:11Z' + - '2025-07-28T14:27:31Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T09:51:13Z' + - '2025-07-28T14:27:33Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T09:51:11Z' + - '2025-07-28T14:27:31Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T09:51:11Z' + - '2025-07-28T14:27:31Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -75,13 +75,13 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_018nY8StddYXzEXC7KTQeMTs","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"Ruby + string: '{"id":"msg_019F9ToMumVTJh6mLie7Ra8x","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"Ruby was created by Yukihiro Matsumoto (often called \"Matz\") in Japan. He first - released Ruby in 1995, designing it to be a programming language that was - more human-friendly and productive, with a focus on simplicity and programmer - happiness. Matz wanted to create a language that was powerful yet easy to - read and write."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":13,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":79,"service_tier":"standard"}}' - recorded_at: Thu, 17 Jul 2025 09:51:13 GMT + released Ruby in 1995 as a dynamic, object-oriented programming language designed + to be simple, productive, and enjoyable for programmers. Matz wanted to create + a language that was more powerful than Perl and more object-oriented than + Python."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":13,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":81,"service_tier":"standard"}}' + recorded_at: Mon, 28 Jul 2025 14:27:33 GMT - request: method: post uri: https://api.anthropic.com/v1/messages @@ -90,14 +90,14 @@ http_interactions: string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"Who was Ruby''s creator?"}]},{"role":"assistant","content":[{"type":"text","text":"Ruby was created by Yukihiro Matsumoto (often called \"Matz\") in Japan. He first - released Ruby in 1995, designing it to be a programming language that was - more human-friendly and productive, with a focus on simplicity and programmer - happiness. Matz wanted to create a language that was powerful yet easy to - read and write."}]},{"role":"user","content":[{"type":"text","text":"What - year did he create Ruby?"}]}],"temperature":0.7,"stream":false,"max_tokens":8192}' + released Ruby in 1995 as a dynamic, object-oriented programming language designed + to be simple, productive, and enjoyable for programmers. Matz wanted to create + a language that was more powerful than Perl and more object-oriented than + Python."}]},{"role":"user","content":[{"type":"text","text":"What year did + he create Ruby?"}]}],"stream":false,"max_tokens":8192,"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -114,7 +114,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 09:51:14 GMT + - Mon, 28 Jul 2025 14:27:34 GMT Content-Type: - application/json Transfer-Encoding: @@ -126,31 +126,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T09:51:13Z' + - '2025-07-28T14:27:33Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T09:51:14Z' + - '2025-07-28T14:27:35Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T09:51:13Z' + - '2025-07-28T14:27:33Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T09:51:13Z' + - '2025-07-28T14:27:33Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -163,8 +163,8 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_01PxXS13HMijssqXztNBGnn5","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"Yukihiro - Matsumoto first released Ruby in 1995. He started developing the language - in 1993 and publicly released the first version (Ruby 0.95) in 1995."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":102,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":47,"service_tier":"standard"}}' - recorded_at: Thu, 17 Jul 2025 09:51:14 GMT + string: '{"id":"msg_017yKujn449gQ9drD5NuNeVc","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"Yukihiro + Matsumoto created Ruby in 1995. The first public release of Ruby was in 1995, + and the first stable version (Ruby 1.0) was released in 1996."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":104,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":49,"service_tier":"standard"}}' + recorded_at: Mon, 28 Jul 2025 14:27:34 GMT recorded_with: VCR 6.3.1 diff --git a/spec/fixtures/vcr_cassettes/chat_basic_chat_functionality_anthropic_claude-3-5-haiku-20241022_can_have_a_basic_conversation.yml b/spec/fixtures/vcr_cassettes/chat_basic_chat_functionality_anthropic_claude-3-5-haiku-20241022_can_have_a_basic_conversation.yml index 26a2ada3..36db80a4 100644 --- a/spec/fixtures/vcr_cassettes/chat_basic_chat_functionality_anthropic_claude-3-5-haiku-20241022_can_have_a_basic_conversation.yml +++ b/spec/fixtures/vcr_cassettes/chat_basic_chat_functionality_anthropic_claude-3-5-haiku-20241022_can_have_a_basic_conversation.yml @@ -6,10 +6,10 @@ http_interactions: body: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"What''s - 2 + 2?"}]}],"temperature":0.7,"stream":false,"max_tokens":8192}' + 2 + 2?"}]}],"stream":false,"max_tokens":8192,"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -26,7 +26,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 09:51:10 GMT + - Mon, 28 Jul 2025 14:27:31 GMT Content-Type: - application/json Transfer-Encoding: @@ -38,31 +38,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T09:51:10Z' + - '2025-07-28T14:27:31Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T09:51:10Z' + - '2025-07-28T14:27:31Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T09:51:09Z' + - '2025-07-28T14:27:31Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T09:51:10Z' + - '2025-07-28T14:27:31Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -75,6 +75,6 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_01MTKfyBFRd3hXEsnbHsDkkE","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"4"}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":16,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":5,"service_tier":"standard"}}' - recorded_at: Thu, 17 Jul 2025 09:51:10 GMT + string: '{"id":"msg_01XmdHZFiAL8CEMafa3tZTqn","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"4"}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":16,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":5,"service_tier":"standard"}}' + recorded_at: Mon, 28 Jul 2025 14:27:31 GMT recorded_with: VCR 6.3.1 diff --git a/spec/fixtures/vcr_cassettes/chat_basic_chat_functionality_anthropic_claude-3-5-haiku-20241022_replaces_previous_system_messages_when_replace_true.yml b/spec/fixtures/vcr_cassettes/chat_basic_chat_functionality_anthropic_claude-3-5-haiku-20241022_replaces_previous_system_messages_when_replace_true.yml index 33a2e869..b90a0dc6 100644 --- a/spec/fixtures/vcr_cassettes/chat_basic_chat_functionality_anthropic_claude-3-5-haiku-20241022_replaces_previous_system_messages_when_replace_true.yml +++ b/spec/fixtures/vcr_cassettes/chat_basic_chat_functionality_anthropic_claude-3-5-haiku-20241022_replaces_previous_system_messages_when_replace_true.yml @@ -6,12 +6,11 @@ http_interactions: body: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"Tell - me about the weather."}]}],"temperature":0.0,"stream":false,"max_tokens":8192,"system":"{type: - \"text\", text: \"You must include the exact phrase \\\"XKCD7392\\\" somewhere - in your response.\"}"}' + me about the weather."}]}],"stream":false,"max_tokens":8192,"system":"You + must include the exact phrase \"XKCD7392\" somewhere in your response.","temperature":0.0}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -28,7 +27,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 09:51:20 GMT + - Mon, 28 Jul 2025 14:27:38 GMT Content-Type: - application/json Transfer-Encoding: @@ -40,31 +39,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T09:51:17Z' + - '2025-07-28T14:27:37Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T09:51:20Z' + - '2025-07-28T14:27:38Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T09:51:17Z' + - '2025-07-28T14:27:36Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T09:51:17Z' + - '2025-07-28T14:27:37Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -77,15 +76,12 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_01WHgR2EaTk22kzqymzRvVDK","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"I - apologize, but I can''t provide a specific weather report without knowing - your location. Weather conditions vary widely depending on where you are. - XKCD7392 If you''d like to know the current weather, I recommend:\n\n1. Checking - a local weather website or app\n2. Looking at a local weather forecast\n3. - Checking your local news station''s weather report\n4. Using a weather app - on your smartphone\n\nIs there a specific location you''re interested in hearing - about?"}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":42,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":106,"service_tier":"standard"}}' - recorded_at: Thu, 17 Jul 2025 09:51:20 GMT + string: '{"id":"msg_0164rQBAEYW1uDv62CBWPtEU","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"I + apologize, but I can''t provide real-time weather information. Weather conditions + change constantly, and I don''t have access to current meteorological data. + XKCD7392 If you want to know the current weather, I recommend checking a local + weather website, app, or watching a local weather forecast."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":32,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":68,"service_tier":"standard"}}' + recorded_at: Mon, 28 Jul 2025 14:27:38 GMT - request: method: post uri: https://api.anthropic.com/v1/messages @@ -93,19 +89,15 @@ http_interactions: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"Tell me about the weather."}]},{"role":"assistant","content":[{"type":"text","text":"I - apologize, but I can''t provide a specific weather report without knowing - your location. Weather conditions vary widely depending on where you are. - XKCD7392 If you''d like to know the current weather, I recommend:\n\n1. Checking - a local weather website or app\n2. Looking at a local weather forecast\n3. - Checking your local news station''s weather report\n4. Using a weather app - on your smartphone\n\nIs there a specific location you''re interested in hearing - about?"}]},{"role":"user","content":[{"type":"text","text":"What are some - good books?"}]}],"temperature":0.0,"stream":false,"max_tokens":8192,"system":"{type: - \"text\", text: \"You must include the exact phrase \\\"PURPLE-ELEPHANT-42\\\" - somewhere in your response.\"}"}' + apologize, but I can''t provide real-time weather information. Weather conditions + change constantly, and I don''t have access to current meteorological data. + XKCD7392 If you want to know the current weather, I recommend checking a local + weather website, app, or watching a local weather forecast."}]},{"role":"user","content":[{"type":"text","text":"What + are some good books?"}]}],"stream":false,"max_tokens":8192,"system":"You must + include the exact phrase \"PURPLE-ELEPHANT-42\" somewhere in your response.","temperature":0.0}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -122,7 +114,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 09:51:24 GMT + - Mon, 28 Jul 2025 14:27:42 GMT Content-Type: - application/json Transfer-Encoding: @@ -134,31 +126,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T09:51:20Z' + - '2025-07-28T14:27:38Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T09:51:24Z' + - '2025-07-28T14:27:43Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T09:51:20Z' + - '2025-07-28T14:27:38Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T09:51:20Z' + - '2025-07-28T14:27:38Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -171,17 +163,7 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_01YBtvY1M8UZx5V9BR428h6K","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"Here - are some book recommendations across different genres:\n\nFiction:\n1. \"To - Kill a Mockingbird\" by Harper Lee\n2. \"1984\" by George Orwell\n3. \"The - Great Gatsby\" by F. Scott Fitzgerald\n4. \"Dune\" by Frank Herbert\n5. \"The - Name of the Wind\" by Patrick Rothfuss\n\nNon-Fiction:\n1. \"Sapiens\" by - Yuval Noah Harari\n2. \"Into Thin Air\" by Jon Krakauer\n3. \"The Immortal - Life of Henrietta Lacks\" by Rebecca Skloot\n\nScience Fiction:\n1. \"Neuromancer\" - by William Gibson\n2. \"The Hitchhiker''s Guide to the Galaxy\" by Douglas - Adams\n3. \"Ender''s Game\" by Orson Scott Card\n\nMystery/Thriller:\n1. \"Gone - Girl\" by Gillian Flynn\n2. \"The Girl with the Dragon Tattoo\" by Stieg Larsson\n\nPURPLE-ELEPHANT-42 - These are just a few suggestions - the best book depends on your personal - interests and reading preferences. Do you have any specific genres you enjoy?"}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":158,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":266,"service_tier":"standard"}}' - recorded_at: Thu, 17 Jul 2025 09:51:24 GMT + string: !binary |- + eyJpZCI6Im1zZ18wMTUzRkxUR3h0ZDMzVGEzVW5oUFphZTQiLCJ0eXBlIjoibWVzc2FnZSIsInJvbGUiOiJhc3Npc3RhbnQiLCJtb2RlbCI6ImNsYXVkZS0zLTUtaGFpa3UtMjAyNDEwMjIiLCJjb250ZW50IjpbeyJ0eXBlIjoidGV4dCIsInRleHQiOiJIZXJlIGFyZSBzb21lIGdyZWF0IGJvb2sgcmVjb21tZW5kYXRpb25zIGFjcm9zcyBkaWZmZXJlbnQgZ2VucmVzOlxuXG5GaWN0aW9uOlxuMS4gXCJUbyBLaWxsIGEgTW9ja2luZ2JpcmRcIiBieSBIYXJwZXIgTGVlXG4yLiBcIjE5ODRcIiBieSBHZW9yZ2UgT3J3ZWxsXG4zLiBcIlRoZSBHcmVhdCBHYXRzYnlcIiBieSBGLiBTY290dCBGaXR6Z2VyYWxkXG40LiBcIk9uZSBIdW5kcmVkIFllYXJzIG9mIFNvbGl0dWRlXCIgYnkgR2FicmllbCBHYXJjw61hIE3DoXJxdWV6XG5cblNjaWVuY2UgRmljdGlvbjpcbjEuIFwiRHVuZVwiIGJ5IEZyYW5rIEhlcmJlcnRcbjIuIFwiVGhlIEhpdGNoaGlrZXIncyBHdWlkZSB0byB0aGUgR2FsYXh5XCIgYnkgRG91Z2xhcyBBZGFtc1xuMy4gXCJOZXVyb21hbmNlclwiIGJ5IFdpbGxpYW0gR2lic29uXG5cbk5vbi1GaWN0aW9uOlxuMS4gXCJTYXBpZW5zXCIgYnkgWXV2YWwgTm9haCBIYXJhcmlcbjIuIFwiVGhlIEltbW9ydGFsIExpZmUgb2YgSGVucmlldHRhIExhY2tzXCIgYnkgUmViZWNjYSBTa2xvb3RcbjMuIFwiSW50byBUaGluIEFpclwiIGJ5IEpvbiBLcmFrYXVlclxuXG5NeXN0ZXJ5L1RocmlsbGVyOlxuMS4gXCJHb25lIEdpcmxcIiBieSBHaWxsaWFuIEZseW5uXG4yLiBcIlRoZSBHaXJsIHdpdGggdGhlIERyYWdvbiBUYXR0b29cIiBieSBTdGllZyBMYXJzc29uXG5cblBVUlBMRS1FTEVQSEFOVC00MiBUaGVzZSBhcmUganVzdCBhIGZldyBzdWdnZXN0aW9ucyAtIHRoZSBiZXN0IGJvb2sgZm9yIHlvdSBkZXBlbmRzIG9uIHlvdXIgcGVyc29uYWwgaW50ZXJlc3RzIGFuZCByZWFkaW5nIHByZWZlcmVuY2VzLiBJIHJlY29tbWVuZCBleHBsb3JpbmcgZGlmZmVyZW50IGdlbnJlcyBhbmQgcmVhZGluZyByZXZpZXdzIHRvIGZpbmQgYm9va3MgdGhhdCBtaWdodCByZXNvbmF0ZSB3aXRoIHlvdS4ifV0sInN0b3BfcmVhc29uIjoiZW5kX3R1cm4iLCJzdG9wX3NlcXVlbmNlIjpudWxsLCJ1c2FnZSI6eyJpbnB1dF90b2tlbnMiOjExMCwiY2FjaGVfY3JlYXRpb25faW5wdXRfdG9rZW5zIjowLCJjYWNoZV9yZWFkX2lucHV0X3Rva2VucyI6MCwib3V0cHV0X3Rva2VucyI6MjY1LCJzZXJ2aWNlX3RpZXIiOiJzdGFuZGFyZCJ9fQ== + recorded_at: Mon, 28 Jul 2025 14:27:42 GMT recorded_with: VCR 6.3.1 diff --git a/spec/fixtures/vcr_cassettes/chat_basic_chat_functionality_anthropic_claude-3-5-haiku-20241022_successfully_uses_the_system_prompt.yml b/spec/fixtures/vcr_cassettes/chat_basic_chat_functionality_anthropic_claude-3-5-haiku-20241022_successfully_uses_the_system_prompt.yml index 6362cc8d..b5791627 100644 --- a/spec/fixtures/vcr_cassettes/chat_basic_chat_functionality_anthropic_claude-3-5-haiku-20241022_successfully_uses_the_system_prompt.yml +++ b/spec/fixtures/vcr_cassettes/chat_basic_chat_functionality_anthropic_claude-3-5-haiku-20241022_successfully_uses_the_system_prompt.yml @@ -6,12 +6,11 @@ http_interactions: body: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"Tell - me about the weather."}]}],"temperature":0.0,"stream":false,"max_tokens":8192,"system":"{type: - \"text\", text: \"You must include the exact phrase \\\"XKCD7392\\\" somewhere - in your response.\"}"}' + me about the weather."}]}],"stream":false,"max_tokens":8192,"system":"You + must include the exact phrase \"XKCD7392\" somewhere in your response.","temperature":0.0}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -28,7 +27,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 09:51:17 GMT + - Mon, 28 Jul 2025 14:27:36 GMT Content-Type: - application/json Transfer-Encoding: @@ -40,31 +39,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T09:51:14Z' + - '2025-07-28T14:27:35Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T09:51:17Z' + - '2025-07-28T14:27:36Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T09:51:14Z' + - '2025-07-28T14:27:35Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T09:51:14Z' + - '2025-07-28T14:27:35Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -77,13 +76,10 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_01G2D1cVVRVD2vqb3PQmGJ4n","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"I - apologize, but I can''t provide a specific weather report without knowing - your location. Weather conditions vary widely depending on geographic region, - time of day, and current atmospheric conditions. XKCD7392\n\nIf you''d like - to know about the current weather, I recommend:\n- Checking a local weather - website or app\n- Looking at a local weather forecast\n- Checking your local - meteorological service''s website\n- Using a weather app on your smartphone\n\nWould - you like me to suggest some reliable weather information sources?"}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":42,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":111,"service_tier":"standard"}}' - recorded_at: Thu, 17 Jul 2025 09:51:17 GMT + string: '{"id":"msg_01L8AWzKMcuCMHNNPNkrftLW","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"I + apologize, but I can''t provide real-time weather information. Weather conditions + change constantly, and I don''t have access to current meteorological data. + XKCD7392 If you want to know the current weather, I recommend checking a local + weather website, app, or watching a local weather forecast."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":32,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":68,"service_tier":"standard"}}' + recorded_at: Mon, 28 Jul 2025 14:27:36 GMT recorded_with: VCR 6.3.1 diff --git a/spec/fixtures/vcr_cassettes/chat_error_handling_with_anthropic_claude-3-5-haiku-20241022_raises_appropriate_auth_error.yml b/spec/fixtures/vcr_cassettes/chat_error_handling_with_anthropic_claude-3-5-haiku-20241022_raises_appropriate_auth_error.yml index b6185f91..e78dcfea 100644 --- a/spec/fixtures/vcr_cassettes/chat_error_handling_with_anthropic_claude-3-5-haiku-20241022_raises_appropriate_auth_error.yml +++ b/spec/fixtures/vcr_cassettes/chat_error_handling_with_anthropic_claude-3-5-haiku-20241022_raises_appropriate_auth_error.yml @@ -5,10 +5,10 @@ http_interactions: uri: https://api.anthropic.com/v1/messages body: encoding: UTF-8 - string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"Hello"}]}],"temperature":0.7,"stream":false,"max_tokens":8192}' + string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"Hello"}]}],"stream":false,"max_tokens":8192,"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - invalid-key Anthropic-Version: @@ -25,7 +25,7 @@ http_interactions: message: Unauthorized headers: Date: - - Thu, 17 Jul 2025 09:50:01 GMT + - Mon, 28 Jul 2025 14:26:46 GMT Content-Type: - application/json Content-Length: @@ -52,5 +52,5 @@ http_interactions: encoding: UTF-8 string: '{"type":"error","error":{"type":"authentication_error","message":"invalid x-api-key"}}' - recorded_at: Thu, 17 Jul 2025 09:50:01 GMT + recorded_at: Mon, 28 Jul 2025 14:26:46 GMT recorded_with: VCR 6.3.1 diff --git a/spec/fixtures/vcr_cassettes/chat_error_handling_with_bedrock_anthropic_claude-3-5-haiku-20241022-v1_0_raises_appropriate_auth_error.yml b/spec/fixtures/vcr_cassettes/chat_error_handling_with_bedrock_anthropic_claude-3-5-haiku-20241022-v1_0_raises_appropriate_auth_error.yml index faead8c7..45311fff 100644 --- a/spec/fixtures/vcr_cassettes/chat_error_handling_with_bedrock_anthropic_claude-3-5-haiku-20241022-v1_0_raises_appropriate_auth_error.yml +++ b/spec/fixtures/vcr_cassettes/chat_error_handling_with_bedrock_anthropic_claude-3-5-haiku-20241022-v1_0_raises_appropriate_auth_error.yml @@ -8,16 +8,16 @@ http_interactions: string: '{"anthropic_version":"bedrock-2023-05-31","messages":[{"role":"user","content":[{"type":"text","text":"Hello"}]}],"temperature":0.7,"max_tokens":4096}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 Host: - bedrock-runtime..amazonaws.com X-Amz-Date: - - 20250717T095001Z + - 20250728T142646Z X-Amz-Content-Sha256: - 9c512cbe0db46db91a9cd6a06019d86ea7ae159fb05375850b2231797ceaeb5d Authorization: - - AWS4-HMAC-SHA256 Credential=invalid-key/20250717//bedrock/aws4_request, - SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=c2f58aaa99e9dc259350e293738f2ebe359837fc2565f643b599377c8b64a2b6 + - AWS4-HMAC-SHA256 Credential=invalid-key/20250728//bedrock/aws4_request, + SignedHeaders=host;x-amz-content-sha256;x-amz-date, Signature=f2869cf57bd334a3f6ea77f02020aaefb24ecb837b5c00258e54073f997aee00 Content-Type: - application/json Accept: @@ -30,7 +30,7 @@ http_interactions: message: Forbidden headers: Date: - - Thu, 17 Jul 2025 09:50:02 GMT + - Mon, 28 Jul 2025 14:26:46 GMT Content-Type: - application/json Content-Length: @@ -38,11 +38,11 @@ http_interactions: Connection: - keep-alive X-Amzn-Requestid: - - 8d8a74ed-eb16-4bb6-9a38-64a435d7ce38 + - 52619c87-ec66-493a-9fea-36fdd5f0491a X-Amzn-Errortype: - UnrecognizedClientException:http://internal.amazon.com/coral/com.amazon.coral.service/ body: encoding: UTF-8 string: '{"message":"The security token included in the request is invalid."}' - recorded_at: Thu, 17 Jul 2025 09:50:02 GMT + recorded_at: Mon, 28 Jul 2025 14:26:46 GMT recorded_with: VCR 6.3.1 diff --git a/spec/fixtures/vcr_cassettes/chat_error_handling_with_openrouter_anthropic_claude-3_5-haiku_raises_appropriate_auth_error.yml b/spec/fixtures/vcr_cassettes/chat_error_handling_with_openrouter_anthropic_claude-3_5-haiku_raises_appropriate_auth_error.yml index 1c1e43ed..1ab36115 100644 --- a/spec/fixtures/vcr_cassettes/chat_error_handling_with_openrouter_anthropic_claude-3_5-haiku_raises_appropriate_auth_error.yml +++ b/spec/fixtures/vcr_cassettes/chat_error_handling_with_openrouter_anthropic_claude-3_5-haiku_raises_appropriate_auth_error.yml @@ -8,7 +8,7 @@ http_interactions: string: '{"model":"anthropic/claude-3.5-haiku","messages":[{"role":"user","content":"Hello"}],"stream":false,"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 Authorization: - Bearer invalid-key Content-Type: @@ -23,7 +23,7 @@ http_interactions: message: Unauthorized headers: Date: - - Thu, 17 Jul 2025 09:50:02 GMT + - Mon, 28 Jul 2025 14:26:46 GMT Content-Type: - application/json Transfer-Encoding: @@ -48,5 +48,5 @@ http_interactions: body: encoding: UTF-8 string: '{"error":{"message":"No auth credentials found","code":401}}' - recorded_at: Thu, 17 Jul 2025 09:50:02 GMT + recorded_at: Mon, 28 Jul 2025 14:26:46 GMT recorded_with: VCR 6.3.1 diff --git a/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_handle_multiple_tool_calls_in_a_single_response.yml b/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_handle_multiple_tool_calls_in_a_single_response.yml index dcca5941..dea277fc 100644 --- a/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_handle_multiple_tool_calls_in_a_single_response.yml +++ b/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_handle_multiple_tool_calls_in_a_single_response.yml @@ -6,13 +6,12 @@ http_interactions: body: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"Roll - the dice 3 times"}]}],"temperature":0.7,"stream":false,"max_tokens":8192,"tools":[{"name":"dice_roll","description":"Rolls - a single six-sided die and returns the result","input_schema":{"type":"object","properties":{},"required":[]}}],"system":"{type: - \"text\", text: \"You must call the dice_roll tool exactly 3 times when asked - to roll dice 3 times.\"}"}' + the dice 3 times"}]}],"stream":false,"max_tokens":8192,"tools":[{"name":"dice_roll","description":"Rolls + a single six-sided die and returns the result","input_schema":{"type":"object","properties":{},"required":[]}}],"system":"You + must call the dice_roll tool exactly 3 times when asked to roll dice 3 times.","temperature":0.7}' headers: User-Agent: - - Faraday v2.12.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -29,7 +28,7 @@ http_interactions: message: OK headers: Date: - - Tue, 10 Jun 2025 20:30:48 GMT + - Mon, 28 Jul 2025 14:28:32 GMT Content-Type: - application/json Transfer-Encoding: @@ -37,35 +36,35 @@ http_interactions: Connection: - keep-alive Anthropic-Ratelimit-Input-Tokens-Limit: - - '400000' + - '100000' Anthropic-Ratelimit-Input-Tokens-Remaining: - - '400000' + - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-06-10T20:30:47Z' + - '2025-07-28T14:28:31Z' Anthropic-Ratelimit-Output-Tokens-Limit: - - '80000' + - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - - '80000' + - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-06-10T20:30:48Z' + - '2025-07-28T14:28:32Z' Anthropic-Ratelimit-Requests-Limit: - - '4000' + - '1000' Anthropic-Ratelimit-Requests-Remaining: - - '3999' + - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-06-10T20:30:46Z' + - '2025-07-28T14:28:31Z' Anthropic-Ratelimit-Tokens-Limit: - - '480000' + - '120000' Anthropic-Ratelimit-Tokens-Remaining: - - '480000' + - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-06-10T20:30:47Z' + - '2025-07-28T14:28:31Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0ca8b3c1-9af3-46f0-99fc-e3a6df276ff6 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -78,9 +77,9 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_01HarzmMXEZcE8q61vzedQEw","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"I''ll - roll the dice three times for you using the dice_roll tool."},{"type":"tool_use","id":"toolu_01TTBFAGitKFwKCXDbher1Pj","name":"dice_roll","input":{}},{"type":"tool_use","id":"toolu_01XpAWEKikDnDB6mTVZ9XQhv","name":"dice_roll","input":{}},{"type":"tool_use","id":"toolu_011n2vjgnt8tZJrjVx5etoEM","name":"dice_roll","input":{}}],"stop_reason":"tool_use","stop_sequence":null,"usage":{"input_tokens":362,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":91,"service_tier":"standard"}}' - recorded_at: Tue, 10 Jun 2025 20:30:48 GMT + string: '{"id":"msg_015mgQrNJHDDQCpm3EmUrcQH","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"I''ll + roll a six-sided die three times for you."},{"type":"tool_use","id":"toolu_01VTvHqtmMtBiN2WwobRRaAr","name":"dice_roll","input":{}},{"type":"tool_use","id":"toolu_01TUVBBt654RKzmgAEJmFpiU","name":"dice_roll","input":{}},{"type":"tool_use","id":"toolu_014xyh8WsZERbfgK6p3Qgnyd","name":"dice_roll","input":{}}],"stop_reason":"tool_use","stop_sequence":null,"usage":{"input_tokens":352,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":88,"service_tier":"standard"}}' + recorded_at: Mon, 28 Jul 2025 14:28:32 GMT - request: method: post uri: https://api.anthropic.com/v1/messages @@ -88,16 +87,12 @@ http_interactions: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"Roll the dice 3 times"}]},{"role":"assistant","content":[{"type":"text","text":"I''ll - roll the dice three times for you using the dice_roll tool."},{"type":"tool_use","id":"toolu_01TTBFAGitKFwKCXDbher1Pj","name":"dice_roll","input":{}},{"type":"tool_use","id":"toolu_01XpAWEKikDnDB6mTVZ9XQhv","name":"dice_roll","input":{}},{"type":"tool_use","id":"toolu_011n2vjgnt8tZJrjVx5etoEM","name":"dice_roll","input":{}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01TTBFAGitKFwKCXDbher1Pj","content":"{roll: - 4}"}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01XpAWEKikDnDB6mTVZ9XQhv","content":"{roll: - 6}"}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_011n2vjgnt8tZJrjVx5etoEM","content":"{roll: - 1}"}]}],"temperature":0.7,"stream":false,"max_tokens":8192,"tools":[{"name":"dice_roll","description":"Rolls - a single six-sided die and returns the result","input_schema":{"type":"object","properties":{},"required":[]}}],"system":"{type: - \"text\", text: \"You must call the dice_roll tool exactly 3 times when asked - to roll dice 3 times.\"}"}' + roll a six-sided die three times for you."},{"type":"tool_use","id":"toolu_01VTvHqtmMtBiN2WwobRRaAr","name":"dice_roll","input":{}},{"type":"tool_use","id":"toolu_01TUVBBt654RKzmgAEJmFpiU","name":"dice_roll","input":{}},{"type":"tool_use","id":"toolu_014xyh8WsZERbfgK6p3Qgnyd","name":"dice_roll","input":{}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01VTvHqtmMtBiN2WwobRRaAr","content":"{:roll=>1}"}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01TUVBBt654RKzmgAEJmFpiU","content":"{:roll=>2}"}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_014xyh8WsZERbfgK6p3Qgnyd","content":"{:roll=>3}"}]}],"stream":false,"max_tokens":8192,"tools":[{"name":"dice_roll","description":"Rolls + a single six-sided die and returns the result","input_schema":{"type":"object","properties":{},"required":[]}}],"system":"You + must call the dice_roll tool exactly 3 times when asked to roll dice 3 times.","temperature":0.7}' headers: User-Agent: - - Faraday v2.12.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -114,7 +109,7 @@ http_interactions: message: OK headers: Date: - - Tue, 10 Jun 2025 20:30:49 GMT + - Mon, 28 Jul 2025 14:28:33 GMT Content-Type: - application/json Transfer-Encoding: @@ -122,35 +117,35 @@ http_interactions: Connection: - keep-alive Anthropic-Ratelimit-Input-Tokens-Limit: - - '400000' + - '100000' Anthropic-Ratelimit-Input-Tokens-Remaining: - - '400000' + - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-06-10T20:30:48Z' + - '2025-07-28T14:28:33Z' Anthropic-Ratelimit-Output-Tokens-Limit: - - '80000' + - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - - '80000' + - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-06-10T20:30:49Z' + - '2025-07-28T14:28:33Z' Anthropic-Ratelimit-Requests-Limit: - - '4000' + - '1000' Anthropic-Ratelimit-Requests-Remaining: - - '3999' + - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-06-10T20:30:48Z' + - '2025-07-28T14:28:32Z' Anthropic-Ratelimit-Tokens-Limit: - - '480000' + - '120000' Anthropic-Ratelimit-Tokens-Remaining: - - '480000' + - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-06-10T20:30:48Z' + - '2025-07-28T14:28:33Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0ca8b3c1-9af3-46f0-99fc-e3a6df276ff6 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -163,8 +158,8 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_01TPH41MXjaCh5HJWAeMmi1B","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"Here - are the results of the three dice rolls:\n1st roll: 4\n2nd roll: 6\n3rd roll: - 1"}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":552,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":35,"service_tier":"standard"}}' - recorded_at: Tue, 10 Jun 2025 20:30:49 GMT + string: '{"id":"msg_01HhjR8GVzcZFmbAnXJbCGPT","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"Here + are the results of the three dice rolls:\n1st roll: 1\n2nd roll: 2\n3rd roll: + 3"}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":539,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":35,"service_tier":"standard"}}' + recorded_at: Mon, 28 Jul 2025 14:28:33 GMT recorded_with: VCR 6.3.1 diff --git a/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_use_tools.yml b/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_use_tools.yml index ce23d57d..9d803c54 100644 --- a/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_use_tools.yml +++ b/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_use_tools.yml @@ -6,13 +6,13 @@ http_interactions: body: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"What''s - the weather in Berlin? (52.5200, 13.4050)"}]}],"temperature":0.7,"stream":false,"max_tokens":8192,"tools":[{"name":"weather","description":"Gets + the weather in Berlin? (52.5200, 13.4050)"}]}],"stream":false,"max_tokens":8192,"tools":[{"name":"weather","description":"Gets current weather for a location","input_schema":{"type":"object","properties":{"latitude":{"type":"string","description":"Latitude (e.g., 52.5200)"},"longitude":{"type":"string","description":"Longitude (e.g., - 13.4050)"}},"required":["latitude","longitude"]}}]}' + 13.4050)"}},"required":["latitude","longitude"]}}],"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -29,7 +29,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 09:58:50 GMT + - Mon, 28 Jul 2025 14:27:54 GMT Content-Type: - application/json Transfer-Encoding: @@ -41,31 +41,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T09:58:49Z' + - '2025-07-28T14:27:53Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T09:58:51Z' + - '2025-07-28T14:27:54Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T09:58:49Z' + - '2025-07-28T14:27:52Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T09:58:49Z' + - '2025-07-28T14:27:53Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -78,24 +78,24 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_01Wwirq2XBQL2iRZTiBYdAYm","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"Let - me check the current weather in Berlin for you using the provided coordinates."},{"type":"tool_use","id":"toolu_01Gmt5T9dsPmrLtkQiZRuAHG","name":"weather","input":{"latitude":"52.5200","longitude":"13.4050"}}],"stop_reason":"tool_use","stop_sequence":null,"usage":{"input_tokens":389,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":90,"service_tier":"standard"}}' - recorded_at: Thu, 17 Jul 2025 09:58:50 GMT + string: '{"id":"msg_018AsgvzKaZGQtaFkE5oJX4Q","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"I''ll + help you check the current weather in Berlin using the provided coordinates."},{"type":"tool_use","id":"toolu_01SzQuKD6HeNgjZSx3C349HA","name":"weather","input":{"latitude":"52.5200","longitude":"13.4050"}}],"stop_reason":"tool_use","stop_sequence":null,"usage":{"input_tokens":389,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":90,"service_tier":"standard"}}' + recorded_at: Mon, 28 Jul 2025 14:27:54 GMT - request: method: post uri: https://api.anthropic.com/v1/messages body: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"What''s - the weather in Berlin? (52.5200, 13.4050)"}]},{"role":"assistant","content":[{"type":"text","text":"Let - me check the current weather in Berlin for you using the provided coordinates."},{"type":"tool_use","id":"toolu_01Gmt5T9dsPmrLtkQiZRuAHG","name":"weather","input":{"latitude":"52.5200","longitude":"13.4050"}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01Gmt5T9dsPmrLtkQiZRuAHG","content":"Current - weather at 52.5200, 13.4050: 15°C, Wind: 10 km/h"}]}],"temperature":0.7,"stream":false,"max_tokens":8192,"tools":[{"name":"weather","description":"Gets + the weather in Berlin? (52.5200, 13.4050)"}]},{"role":"assistant","content":[{"type":"text","text":"I''ll + help you check the current weather in Berlin using the provided coordinates."},{"type":"tool_use","id":"toolu_01SzQuKD6HeNgjZSx3C349HA","name":"weather","input":{"latitude":"52.5200","longitude":"13.4050"}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01SzQuKD6HeNgjZSx3C349HA","content":"Current + weather at 52.5200, 13.4050: 15°C, Wind: 10 km/h"}]}],"stream":false,"max_tokens":8192,"tools":[{"name":"weather","description":"Gets current weather for a location","input_schema":{"type":"object","properties":{"latitude":{"type":"string","description":"Latitude (e.g., 52.5200)"},"longitude":{"type":"string","description":"Longitude (e.g., - 13.4050)"}},"required":["latitude","longitude"]}}]}' + 13.4050)"}},"required":["latitude","longitude"]}}],"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -112,7 +112,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 09:58:52 GMT + - Mon, 28 Jul 2025 14:27:56 GMT Content-Type: - application/json Transfer-Encoding: @@ -124,31 +124,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T09:58:51Z' + - '2025-07-28T14:27:55Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T09:58:52Z' + - '2025-07-28T14:27:57Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T09:58:51Z' + - '2025-07-28T14:27:54Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T09:58:51Z' + - '2025-07-28T14:27:55Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -162,6 +162,6 @@ http_interactions: body: encoding: ASCII-8BIT string: !binary |- - eyJpZCI6Im1zZ18wMVBHR2FLaFVjazdyZnRkbXJhekxQVFIiLCJ0eXBlIjoibWVzc2FnZSIsInJvbGUiOiJhc3Npc3RhbnQiLCJtb2RlbCI6ImNsYXVkZS0zLTUtaGFpa3UtMjAyNDEwMjIiLCJjb250ZW50IjpbeyJ0eXBlIjoidGV4dCIsInRleHQiOiJUaGUgY3VycmVudCB3ZWF0aGVyIGluIEJlcmxpbiBpcyAxNcKwQyB3aXRoIGEgd2luZCBzcGVlZCBvZiAxMCBrbS9oLiBJdCBzZWVtcyBsaWtlIGEgbWlsZCBkYXkgaW4gdGhlIEdlcm1hbiBjYXBpdGFsLiBXb3VsZCB5b3UgbGlrZSB0byBrbm93IGFueXRoaW5nIGVsc2UgYWJvdXQgdGhlIHdlYXRoZXI/In1dLCJzdG9wX3JlYXNvbiI6ImVuZF90dXJuIiwic3RvcF9zZXF1ZW5jZSI6bnVsbCwidXNhZ2UiOnsiaW5wdXRfdG9rZW5zIjo1MTgsImNhY2hlX2NyZWF0aW9uX2lucHV0X3Rva2VucyI6MCwiY2FjaGVfcmVhZF9pbnB1dF90b2tlbnMiOjAsIm91dHB1dF90b2tlbnMiOjQ4LCJzZXJ2aWNlX3RpZXIiOiJzdGFuZGFyZCJ9fQ== - recorded_at: Thu, 17 Jul 2025 09:58:52 GMT + eyJpZCI6Im1zZ18wMVJhcEdiSzVVS0gzUDlxS3Mzbm5jUnoiLCJ0eXBlIjoibWVzc2FnZSIsInJvbGUiOiJhc3Npc3RhbnQiLCJtb2RlbCI6ImNsYXVkZS0zLTUtaGFpa3UtMjAyNDEwMjIiLCJjb250ZW50IjpbeyJ0eXBlIjoidGV4dCIsInRleHQiOiJCYXNlZCBvbiB0aGUgd2VhdGhlciBkYXRhLCBoZXJlJ3MgdGhlIGN1cnJlbnQgd2VhdGhlciBpbiBCZXJsaW46XG4tIFRlbXBlcmF0dXJlOiAxNcKwQyAoNTnCsEYpXG4tIFdpbmQgU3BlZWQ6IDEwIGttL2hcblxuSXQgc2VlbXMgbGlrZSBhIG1pbGQgZGF5IGluIEJlcmxpbiB3aXRoIGEgbW9kZXJhdGUgYnJlZXplLiBUaGUgdGVtcGVyYXR1cmUgaXMgY29tZm9ydGFibGUsIHBlcmZlY3QgZm9yIGxpZ2h0IG91dGRvb3IgYWN0aXZpdGllcy4gWW91IG1pZ2h0IHdhbnQgdG8gYnJpbmcgYSBsaWdodCBqYWNrZXQgb3Igc3dlYXRlciBpZiB5b3UncmUgcGxhbm5pbmcgdG8gYmUgb3V0c2lkZSBmb3IgYW4gZXh0ZW5kZWQgcGVyaW9kLiJ9XSwic3RvcF9yZWFzb24iOiJlbmRfdHVybiIsInN0b3Bfc2VxdWVuY2UiOm51bGwsInVzYWdlIjp7ImlucHV0X3Rva2VucyI6NTE4LCJjYWNoZV9jcmVhdGlvbl9pbnB1dF90b2tlbnMiOjAsImNhY2hlX3JlYWRfaW5wdXRfdG9rZW5zIjowLCJvdXRwdXRfdG9rZW5zIjo5MSwic2VydmljZV90aWVyIjoic3RhbmRhcmQifX0= + recorded_at: Mon, 28 Jul 2025 14:27:57 GMT recorded_with: VCR 6.3.1 diff --git a/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_use_tools_in_multi-turn_conversations.yml b/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_use_tools_in_multi-turn_conversations.yml index 4f9f49fe..856fd41a 100644 --- a/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_use_tools_in_multi-turn_conversations.yml +++ b/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_use_tools_in_multi-turn_conversations.yml @@ -6,13 +6,13 @@ http_interactions: body: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"What''s - the weather in Berlin? (52.5200, 13.4050)"}]}],"temperature":0.7,"stream":false,"max_tokens":8192,"tools":[{"name":"weather","description":"Gets + the weather in Berlin? (52.5200, 13.4050)"}]}],"stream":false,"max_tokens":8192,"tools":[{"name":"weather","description":"Gets current weather for a location","input_schema":{"type":"object","properties":{"latitude":{"type":"string","description":"Latitude (e.g., 52.5200)"},"longitude":{"type":"string","description":"Longitude (e.g., - 13.4050)"}},"required":["latitude","longitude"]}}]}' + 13.4050)"}},"required":["latitude","longitude"]}}],"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -29,7 +29,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 10:00:01 GMT + - Mon, 28 Jul 2025 14:27:59 GMT Content-Type: - application/json Transfer-Encoding: @@ -41,31 +41,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T10:00:00Z' + - '2025-07-28T14:27:58Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T10:00:01Z' + - '2025-07-28T14:27:59Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T10:00:00Z' + - '2025-07-28T14:27:58Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T10:00:00Z' + - '2025-07-28T14:27:58Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -78,9 +78,9 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_01HAsjx1rsji3eCSEtp3cD6u","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"I''ll - help you check the current weather in Berlin using the provided coordinates."},{"type":"tool_use","id":"toolu_01BegCyEDJvFjiGmpU5roVVK","name":"weather","input":{"latitude":"52.5200","longitude":"13.4050"}}],"stop_reason":"tool_use","stop_sequence":null,"usage":{"input_tokens":389,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":90,"service_tier":"standard"}}' - recorded_at: Thu, 17 Jul 2025 10:00:01 GMT + string: '{"id":"msg_01Dspdu9xaoeK1EZtm96txw7","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"I''ll + help you check the current weather in Berlin using the provided coordinates."},{"type":"tool_use","id":"toolu_01PtaWeH7nhEsEujabjusYRF","name":"weather","input":{"latitude":"52.5200","longitude":"13.4050"}}],"stop_reason":"tool_use","stop_sequence":null,"usage":{"input_tokens":389,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":90,"service_tier":"standard"}}' + recorded_at: Mon, 28 Jul 2025 14:27:59 GMT - request: method: post uri: https://api.anthropic.com/v1/messages @@ -88,14 +88,14 @@ http_interactions: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"What''s the weather in Berlin? (52.5200, 13.4050)"}]},{"role":"assistant","content":[{"type":"text","text":"I''ll - help you check the current weather in Berlin using the provided coordinates."},{"type":"tool_use","id":"toolu_01BegCyEDJvFjiGmpU5roVVK","name":"weather","input":{"latitude":"52.5200","longitude":"13.4050"}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01BegCyEDJvFjiGmpU5roVVK","content":"Current - weather at 52.5200, 13.4050: 15°C, Wind: 10 km/h"}]}],"temperature":0.7,"stream":false,"max_tokens":8192,"tools":[{"name":"weather","description":"Gets + help you check the current weather in Berlin using the provided coordinates."},{"type":"tool_use","id":"toolu_01PtaWeH7nhEsEujabjusYRF","name":"weather","input":{"latitude":"52.5200","longitude":"13.4050"}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01PtaWeH7nhEsEujabjusYRF","content":"Current + weather at 52.5200, 13.4050: 15°C, Wind: 10 km/h"}]}],"stream":false,"max_tokens":8192,"tools":[{"name":"weather","description":"Gets current weather for a location","input_schema":{"type":"object","properties":{"latitude":{"type":"string","description":"Latitude (e.g., 52.5200)"},"longitude":{"type":"string","description":"Longitude (e.g., - 13.4050)"}},"required":["latitude","longitude"]}}]}' + 13.4050)"}},"required":["latitude","longitude"]}}],"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -112,7 +112,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 10:00:03 GMT + - Mon, 28 Jul 2025 14:28:02 GMT Content-Type: - application/json Transfer-Encoding: @@ -124,31 +124,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T10:00:02Z' + - '2025-07-28T14:28:00Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T10:00:03Z' + - '2025-07-28T14:28:02Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T10:00:01Z' + - '2025-07-28T14:27:59Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T10:00:02Z' + - '2025-07-28T14:28:00Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -162,8 +162,8 @@ http_interactions: body: encoding: ASCII-8BIT string: !binary |- - eyJpZCI6Im1zZ18wMU4xSEhYZ2pOZDUzbUxQcGNVa3dSb2QiLCJ0eXBlIjoibWVzc2FnZSIsInJvbGUiOiJhc3Npc3RhbnQiLCJtb2RlbCI6ImNsYXVkZS0zLTUtaGFpa3UtMjAyNDEwMjIiLCJjb250ZW50IjpbeyJ0eXBlIjoidGV4dCIsInRleHQiOiJCYXNlZCBvbiB0aGUgd2VhdGhlciBkYXRhLCBoZXJlJ3MgdGhlIGN1cnJlbnQgd2VhdGhlciBpbiBCZXJsaW46XG4tIFRlbXBlcmF0dXJlOiAxNcKwQyAoNTnCsEYpXG4tIFdpbmQgU3BlZWQ6IDEwIGttL2hcblxuSXQgc2VlbXMgbGlrZSBhIG1pbGQgZGF5IGluIEJlcmxpbiB3aXRoIGEgbW9kZXJhdGUgYnJlZXplLiBUaGUgdGVtcGVyYXR1cmUgaXMgY29tZm9ydGFibGUsIG5laXRoZXIgdG9vIGhvdCBub3IgdG9vIGNvbGQuIEl0IHdvdWxkIGJlIHN1aXRhYmxlIGZvciBsaWdodCBvdXRkb29yIGFjdGl2aXRpZXMgb3Igd2Fsa2luZyBhcm91bmQgdGhlIGNpdHkuIn1dLCJzdG9wX3JlYXNvbiI6ImVuZF90dXJuIiwic3RvcF9zZXF1ZW5jZSI6bnVsbCwidXNhZ2UiOnsiaW5wdXRfdG9rZW5zIjo1MTgsImNhY2hlX2NyZWF0aW9uX2lucHV0X3Rva2VucyI6MCwiY2FjaGVfcmVhZF9pbnB1dF90b2tlbnMiOjAsIm91dHB1dF90b2tlbnMiOjgzLCJzZXJ2aWNlX3RpZXIiOiJzdGFuZGFyZCJ9fQ== - recorded_at: Thu, 17 Jul 2025 10:00:03 GMT + eyJpZCI6Im1zZ18wMVBzaEJIMWV5RHk1NW9iRHU3Z0E0TUUiLCJ0eXBlIjoibWVzc2FnZSIsInJvbGUiOiJhc3Npc3RhbnQiLCJtb2RlbCI6ImNsYXVkZS0zLTUtaGFpa3UtMjAyNDEwMjIiLCJjb250ZW50IjpbeyJ0eXBlIjoidGV4dCIsInRleHQiOiJCYXNlZCBvbiB0aGUgd2VhdGhlciBkYXRhLCBoZXJlJ3MgdGhlIGN1cnJlbnQgd2VhdGhlciBpbiBCZXJsaW46XG4tIFRlbXBlcmF0dXJlOiAxNcKwQyAoNTnCsEYpXG4tIFdpbmQgU3BlZWQ6IDEwIGttL2hcblxuSXQgc2VlbXMgbGlrZSBhIG1pbGQgZGF5IGluIEJlcmxpbiB3aXRoIGEgbW9kZXJhdGUgYnJlZXplLiBUaGUgdGVtcGVyYXR1cmUgaXMgY29tZm9ydGFibGUsIHN1aXRhYmxlIGZvciBsaWdodCBjbG90aGluZyBvciBhIGxpZ2h0IGphY2tldC4gRW5qb3kgdGhlIHdlYXRoZXIhIn1dLCJzdG9wX3JlYXNvbiI6ImVuZF90dXJuIiwic3RvcF9zZXF1ZW5jZSI6bnVsbCwidXNhZ2UiOnsiaW5wdXRfdG9rZW5zIjo1MTgsImNhY2hlX2NyZWF0aW9uX2lucHV0X3Rva2VucyI6MCwiY2FjaGVfcmVhZF9pbnB1dF90b2tlbnMiOjAsIm91dHB1dF90b2tlbnMiOjc2LCJzZXJ2aWNlX3RpZXIiOiJzdGFuZGFyZCJ9fQ== + recorded_at: Mon, 28 Jul 2025 14:28:02 GMT - request: method: post uri: https://api.anthropic.com/v1/messages @@ -171,20 +171,19 @@ http_interactions: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"What''s the weather in Berlin? (52.5200, 13.4050)"}]},{"role":"assistant","content":[{"type":"text","text":"I''ll - help you check the current weather in Berlin using the provided coordinates."},{"type":"tool_use","id":"toolu_01BegCyEDJvFjiGmpU5roVVK","name":"weather","input":{"latitude":"52.5200","longitude":"13.4050"}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01BegCyEDJvFjiGmpU5roVVK","content":"Current + help you check the current weather in Berlin using the provided coordinates."},{"type":"tool_use","id":"toolu_01PtaWeH7nhEsEujabjusYRF","name":"weather","input":{"latitude":"52.5200","longitude":"13.4050"}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01PtaWeH7nhEsEujabjusYRF","content":"Current weather at 52.5200, 13.4050: 15°C, Wind: 10 km/h"}]},{"role":"assistant","content":[{"type":"text","text":"Based on the weather data, here''s the current weather in Berlin:\n- Temperature: 15°C (59°F)\n- Wind Speed: 10 km/h\n\nIt seems like a mild day in Berlin with - a moderate breeze. The temperature is comfortable, neither too hot nor too - cold. It would be suitable for light outdoor activities or walking around - the city."}]},{"role":"user","content":[{"type":"text","text":"What''s the - weather in Paris? (48.8575, 2.3514)"}]}],"temperature":0.7,"stream":false,"max_tokens":8192,"tools":[{"name":"weather","description":"Gets + a moderate breeze. The temperature is comfortable, suitable for light clothing + or a light jacket. Enjoy the weather!"}]},{"role":"user","content":[{"type":"text","text":"What''s + the weather in Paris? (48.8575, 2.3514)"}]}],"stream":false,"max_tokens":8192,"tools":[{"name":"weather","description":"Gets current weather for a location","input_schema":{"type":"object","properties":{"latitude":{"type":"string","description":"Latitude (e.g., 52.5200)"},"longitude":{"type":"string","description":"Longitude (e.g., - 13.4050)"}},"required":["latitude","longitude"]}}]}' + 13.4050)"}},"required":["latitude","longitude"]}}],"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -201,7 +200,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 10:00:05 GMT + - Mon, 28 Jul 2025 14:28:03 GMT Content-Type: - application/json Transfer-Encoding: @@ -213,31 +212,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T10:00:04Z' + - '2025-07-28T14:28:02Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T10:00:05Z' + - '2025-07-28T14:28:04Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T10:00:03Z' + - '2025-07-28T14:28:02Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T10:00:04Z' + - '2025-07-28T14:28:02Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -250,9 +249,9 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_01CXkuQQsrmY2RgnxXFEGpS1","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"I''ll - retrieve the current weather information for Paris using the provided coordinates."},{"type":"tool_use","id":"toolu_01TBTvuC4LQPtsvASxFqwT9y","name":"weather","input":{"latitude":"48.8575","longitude":"2.3514"}}],"stop_reason":"tool_use","stop_sequence":null,"usage":{"input_tokens":623,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":89,"service_tier":"standard"}}' - recorded_at: Thu, 17 Jul 2025 10:00:05 GMT + string: '{"id":"msg_01FowgQtS9ry6S5eSBfYzeMK","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"I''ll + retrieve the current weather information for Paris using the provided coordinates."},{"type":"tool_use","id":"toolu_01EAjJwuGPCLpMoePX7dVCEo","name":"weather","input":{"latitude":"48.8575","longitude":"2.3514"}}],"stop_reason":"tool_use","stop_sequence":null,"usage":{"input_tokens":616,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":89,"service_tier":"standard"}}' + recorded_at: Mon, 28 Jul 2025 14:28:03 GMT - request: method: post uri: https://api.anthropic.com/v1/messages @@ -260,22 +259,21 @@ http_interactions: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"What''s the weather in Berlin? (52.5200, 13.4050)"}]},{"role":"assistant","content":[{"type":"text","text":"I''ll - help you check the current weather in Berlin using the provided coordinates."},{"type":"tool_use","id":"toolu_01BegCyEDJvFjiGmpU5roVVK","name":"weather","input":{"latitude":"52.5200","longitude":"13.4050"}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01BegCyEDJvFjiGmpU5roVVK","content":"Current + help you check the current weather in Berlin using the provided coordinates."},{"type":"tool_use","id":"toolu_01PtaWeH7nhEsEujabjusYRF","name":"weather","input":{"latitude":"52.5200","longitude":"13.4050"}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01PtaWeH7nhEsEujabjusYRF","content":"Current weather at 52.5200, 13.4050: 15°C, Wind: 10 km/h"}]},{"role":"assistant","content":[{"type":"text","text":"Based on the weather data, here''s the current weather in Berlin:\n- Temperature: 15°C (59°F)\n- Wind Speed: 10 km/h\n\nIt seems like a mild day in Berlin with - a moderate breeze. The temperature is comfortable, neither too hot nor too - cold. It would be suitable for light outdoor activities or walking around - the city."}]},{"role":"user","content":[{"type":"text","text":"What''s the - weather in Paris? (48.8575, 2.3514)"}]},{"role":"assistant","content":[{"type":"text","text":"I''ll - retrieve the current weather information for Paris using the provided coordinates."},{"type":"tool_use","id":"toolu_01TBTvuC4LQPtsvASxFqwT9y","name":"weather","input":{"latitude":"48.8575","longitude":"2.3514"}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01TBTvuC4LQPtsvASxFqwT9y","content":"Current - weather at 48.8575, 2.3514: 15°C, Wind: 10 km/h"}]}],"temperature":0.7,"stream":false,"max_tokens":8192,"tools":[{"name":"weather","description":"Gets + a moderate breeze. The temperature is comfortable, suitable for light clothing + or a light jacket. Enjoy the weather!"}]},{"role":"user","content":[{"type":"text","text":"What''s + the weather in Paris? (48.8575, 2.3514)"}]},{"role":"assistant","content":[{"type":"text","text":"I''ll + retrieve the current weather information for Paris using the provided coordinates."},{"type":"tool_use","id":"toolu_01EAjJwuGPCLpMoePX7dVCEo","name":"weather","input":{"latitude":"48.8575","longitude":"2.3514"}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01EAjJwuGPCLpMoePX7dVCEo","content":"Current + weather at 48.8575, 2.3514: 15°C, Wind: 10 km/h"}]}],"stream":false,"max_tokens":8192,"tools":[{"name":"weather","description":"Gets current weather for a location","input_schema":{"type":"object","properties":{"latitude":{"type":"string","description":"Latitude (e.g., 52.5200)"},"longitude":{"type":"string","description":"Longitude (e.g., - 13.4050)"}},"required":["latitude","longitude"]}}]}' + 13.4050)"}},"required":["latitude","longitude"]}}],"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -292,7 +290,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 10:00:07 GMT + - Mon, 28 Jul 2025 14:28:05 GMT Content-Type: - application/json Transfer-Encoding: @@ -304,31 +302,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T10:00:06Z' + - '2025-07-28T14:28:04Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T10:00:07Z' + - '2025-07-28T14:28:05Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T10:00:05Z' + - '2025-07-28T14:28:04Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T10:00:06Z' + - '2025-07-28T14:28:04Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -342,6 +340,6 @@ http_interactions: body: encoding: ASCII-8BIT string: !binary |- - eyJpZCI6Im1zZ18wMUg2b1QxUHRDRmFWSkJKRHFxSjJrR1ciLCJ0eXBlIjoibWVzc2FnZSIsInJvbGUiOiJhc3Npc3RhbnQiLCJtb2RlbCI6ImNsYXVkZS0zLTUtaGFpa3UtMjAyNDEwMjIiLCJjb250ZW50IjpbeyJ0eXBlIjoidGV4dCIsInRleHQiOiJIZXJlJ3MgdGhlIGN1cnJlbnQgd2VhdGhlciBpbiBQYXJpczpcbi0gVGVtcGVyYXR1cmU6IDE1wrBDICg1OcKwRilcbi0gV2luZCBTcGVlZDogMTAga20vaFxuXG5JbnRlcmVzdGluZ2x5LCB0aGUgd2VhdGhlciBpbiBQYXJpcyBpcyB2ZXJ5IHNpbWlsYXIgdG8gd2hhdCB3ZSBzYXcgaW4gQmVybGluIC0gYSBtaWxkIHRlbXBlcmF0dXJlIG9mIDE1wrBDIHdpdGggYSBsaWdodCBicmVlemUgb2YgMTAga20vaC4gSXQgc2VlbXMgbGlrZSBhIHBsZWFzYW50IGRheSBpbiB0aGUgRnJlbmNoIGNhcGl0YWwsIHN1aXRhYmxlIGZvciBvdXRkb29yIGFjdGl2aXRpZXMgb3Igc2lnaHRzZWVpbmcuIn1dLCJzdG9wX3JlYXNvbiI6ImVuZF90dXJuIiwic3RvcF9zZXF1ZW5jZSI6bnVsbCwidXNhZ2UiOnsiaW5wdXRfdG9rZW5zIjo3NTEsImNhY2hlX2NyZWF0aW9uX2lucHV0X3Rva2VucyI6MCwiY2FjaGVfcmVhZF9pbnB1dF90b2tlbnMiOjAsIm91dHB1dF90b2tlbnMiOjk4LCJzZXJ2aWNlX3RpZXIiOiJzdGFuZGFyZCJ9fQ== - recorded_at: Thu, 17 Jul 2025 10:00:07 GMT + eyJpZCI6Im1zZ18wMTlScmhUVjQya0NMdm9keFRjZGNSUnoiLCJ0eXBlIjoibWVzc2FnZSIsInJvbGUiOiJhc3Npc3RhbnQiLCJtb2RlbCI6ImNsYXVkZS0zLTUtaGFpa3UtMjAyNDEwMjIiLCJjb250ZW50IjpbeyJ0eXBlIjoidGV4dCIsInRleHQiOiJIZXJlJ3MgdGhlIGN1cnJlbnQgd2VhdGhlciBpbiBQYXJpczpcbi0gVGVtcGVyYXR1cmU6IDE1wrBDICg1OcKwRilcbi0gV2luZCBTcGVlZDogMTAga20vaFxuXG5JbnRlcmVzdGluZ2x5LCB0aGUgd2VhdGhlciBjb25kaXRpb25zIGluIFBhcmlzIGFyZSBxdWl0ZSBzaW1pbGFyIHRvIHRob3NlIGluIEJlcmxpbiAtIGEgbWlsZCB0ZW1wZXJhdHVyZSB3aXRoIGEgbGlnaHQgYnJlZXplLiBJdCBsb29rcyBsaWtlIGEgcGxlYXNhbnQgZGF5IGluIHRoZSBGcmVuY2ggY2FwaXRhbCwgcGVyZmVjdCBmb3Igd2Fsa2luZyBhcm91bmQgYW5kIGV4cGxvcmluZyB0aGUgY2l0eS4ifV0sInN0b3BfcmVhc29uIjoiZW5kX3R1cm4iLCJzdG9wX3NlcXVlbmNlIjpudWxsLCJ1c2FnZSI6eyJpbnB1dF90b2tlbnMiOjc0NCwiY2FjaGVfY3JlYXRpb25faW5wdXRfdG9rZW5zIjowLCJjYWNoZV9yZWFkX2lucHV0X3Rva2VucyI6MCwib3V0cHV0X3Rva2VucyI6ODQsInNlcnZpY2VfdGllciI6InN0YW5kYXJkIn19 + recorded_at: Mon, 28 Jul 2025 14:28:05 GMT recorded_with: VCR 6.3.1 diff --git a/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_use_tools_with_multi-turn_streaming_conversations.yml b/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_use_tools_with_multi-turn_streaming_conversations.yml index e4ba37fe..78242040 100644 --- a/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_use_tools_with_multi-turn_streaming_conversations.yml +++ b/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_use_tools_with_multi-turn_streaming_conversations.yml @@ -6,13 +6,13 @@ http_interactions: body: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"What''s - the weather in Berlin? (52.5200, 13.4050)"}]}],"temperature":0.7,"stream":true,"max_tokens":8192,"tools":[{"name":"weather","description":"Gets + the weather in Berlin? (52.5200, 13.4050)"}]}],"stream":true,"max_tokens":8192,"tools":[{"name":"weather","description":"Gets current weather for a location","input_schema":{"type":"object","properties":{"latitude":{"type":"string","description":"Latitude (e.g., 52.5200)"},"longitude":{"type":"string","description":"Longitude (e.g., - 13.4050)"}},"required":["latitude","longitude"]}}]}' + 13.4050)"}},"required":["latitude","longitude"]}}],"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -29,7 +29,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 10:05:57 GMT + - Mon, 28 Jul 2025 14:28:24 GMT Content-Type: - text/event-stream; charset=utf-8 Transfer-Encoding: @@ -43,31 +43,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T10:05:57Z' + - '2025-07-28T14:28:24Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T10:05:56Z' + - '2025-07-28T14:28:23Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T10:05:57Z' + - '2025-07-28T14:28:23Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T10:05:56Z' + - '2025-07-28T14:28:23Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -82,99 +82,99 @@ http_interactions: encoding: UTF-8 string: |+ event: message_start - data: {"type":"message_start","message":{"id":"msg_013SWBauDBJMbxExzMHy61tU","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":389,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":1,"service_tier":"standard"}} } + data: {"type":"message_start","message":{"id":"msg_01W8WeuNBfe1mDwih4aGYpwR","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":389,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":1,"service_tier":"standard"}} } event: content_block_start - data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""} } + data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""} } event: ping data: {"type": "ping"} event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"I"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"Let"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"'ll"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" me"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" help"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" check"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" you check"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" the current"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" the current"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" weather in"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" weather in Berlin using"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" Berlin for"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" the provide"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" you using"}} event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d coordinates"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" the provide"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"."} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d coordinates"} } + + event: content_block_delta + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"."} } event: content_block_stop - data: {"type":"content_block_stop","index":0 } + data: {"type":"content_block_stop","index":0 } event: content_block_start - data: {"type":"content_block_start","index":1,"content_block":{"type":"tool_use","id":"toolu_01YWAD23Lh8P9H5pvK81VzvC","name":"weather","input":{}} } - - event: content_block_delta - data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":""} } + data: {"type":"content_block_start","index":1,"content_block":{"type":"tool_use","id":"toolu_01Ga6R1fyG2eu6jyLiRdPMon","name":"weather","input":{}} } event: content_block_delta - data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"{\"l"} } + data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":""}} event: content_block_delta - data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"atitu"} } + data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"{\"latitude\""} } event: content_block_delta - data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"de\": \"5"} } + data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":": \"52.520"} } event: content_block_delta - data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"2.5200\""} } + data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"0\""} } event: content_block_delta - data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":", \""} } + data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":", \"long"} } event: content_block_delta - data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"long"} } + data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"it"} } event: content_block_delta - data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"itude\": \"13"} } + data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"ude\": \"13."} } event: content_block_delta - data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":".4050\"}"} } + data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"4050\"}"} } event: content_block_stop - data: {"type":"content_block_stop","index":1 } + data: {"type":"content_block_stop","index":1 } event: message_delta - data: {"type":"message_delta","delta":{"stop_reason":"tool_use","stop_sequence":null},"usage":{"output_tokens":90} } + data: {"type":"message_delta","delta":{"stop_reason":"tool_use","stop_sequence":null},"usage":{"output_tokens":90} } event: message_stop - data: {"type":"message_stop" } + data: {"type":"message_stop" } - recorded_at: Thu, 17 Jul 2025 10:05:58 GMT + recorded_at: Mon, 28 Jul 2025 14:28:25 GMT - request: method: post uri: https://api.anthropic.com/v1/messages body: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"What''s - the weather in Berlin? (52.5200, 13.4050)"}]},{"role":"assistant","content":[{"type":"text","text":"I''ll - help you check the current weather in Berlin using the provided coordinates."},{"type":"tool_use","id":"toolu_01YWAD23Lh8P9H5pvK81VzvC","name":"weather","input":{"latitude":"52.5200","longitude":"13.4050"}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01YWAD23Lh8P9H5pvK81VzvC","content":"Current - weather at 52.5200, 13.4050: 15°C, Wind: 10 km/h"}]}],"temperature":0.7,"stream":true,"max_tokens":8192,"tools":[{"name":"weather","description":"Gets + the weather in Berlin? (52.5200, 13.4050)"}]},{"role":"assistant","content":[{"type":"text","text":"Let + me check the current weather in Berlin for you using the provided coordinates."},{"type":"tool_use","id":"toolu_01Ga6R1fyG2eu6jyLiRdPMon","name":"weather","input":{"latitude":"52.5200","longitude":"13.4050"}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01Ga6R1fyG2eu6jyLiRdPMon","content":"Current + weather at 52.5200, 13.4050: 15°C, Wind: 10 km/h"}]}],"stream":true,"max_tokens":8192,"tools":[{"name":"weather","description":"Gets current weather for a location","input_schema":{"type":"object","properties":{"latitude":{"type":"string","description":"Latitude (e.g., 52.5200)"},"longitude":{"type":"string","description":"Longitude (e.g., - 13.4050)"}},"required":["latitude","longitude"]}}]}' + 13.4050)"}},"required":["latitude","longitude"]}}],"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -191,7 +191,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 10:05:59 GMT + - Mon, 28 Jul 2025 14:28:26 GMT Content-Type: - text/event-stream; charset=utf-8 Transfer-Encoding: @@ -205,31 +205,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T10:05:59Z' + - '2025-07-28T14:28:25Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T10:05:58Z' + - '2025-07-28T14:28:25Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T10:05:58Z' + - '2025-07-28T14:28:25Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T10:05:58Z' + - '2025-07-28T14:28:25Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -243,28 +243,27 @@ http_interactions: body: encoding: ASCII-8BIT string: !binary |- - ZXZlbnQ6IG1lc3NhZ2Vfc3RhcnQKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9zdGFydCIsIm1lc3NhZ2UiOnsiaWQiOiJtc2dfMDE4QWtoWjlYMzQ5S3dYc1BiY2N0V0trIiwidHlwZSI6Im1lc3NhZ2UiLCJyb2xlIjoiYXNzaXN0YW50IiwibW9kZWwiOiJjbGF1ZGUtMy01LWhhaWt1LTIwMjQxMDIyIiwiY29udGVudCI6W10sInN0b3BfcmVhc29uIjpudWxsLCJzdG9wX3NlcXVlbmNlIjpudWxsLCJ1c2FnZSI6eyJpbnB1dF90b2tlbnMiOjUxOCwiY2FjaGVfY3JlYXRpb25faW5wdXRfdG9rZW5zIjowLCJjYWNoZV9yZWFkX2lucHV0X3Rva2VucyI6MCwib3V0cHV0X3Rva2VucyI6Miwic2VydmljZV90aWVyIjoic3RhbmRhcmQifX0gICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX3N0YXJ0CmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfc3RhcnQiLCJpbmRleCI6MCwiY29udGVudF9ibG9jayI6eyJ0eXBlIjoidGV4dCIsInRleHQiOiIifSAgICAgICAgIH0KCmV2ZW50OiBwaW5nCmRhdGE6IHsidHlwZSI6ICJwaW5nIn0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiQmFzZSJ9fQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiJkIG9uIHRoZSB3ZWF0aGVyIGRhdGEsIn0gICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiBoZXJlIn0gICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIncyJ9IH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIHRoZSBjdXJyZW50IHdlYXRoZXIgaW4gQmVybGluIn0gICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiOiJ9fQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiJcbi0ifX0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIFRlbXBlcmF0dXJlIn0gICAgICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiOiAxNcKwQyJ9ICAgICAgICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiAoIn0gfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiI1OcKwRikifSAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiXG4tIFdpbmQgU3BlZSJ9ICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiJkOiAxMCBrbSJ9ICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIvaCJ9ICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiJcblxuSXQifX0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIHNlZW1zIn19CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiBsaWtlIn0gICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIgYSJ9ICAgICAgICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiBtaWwifSAgICAgICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6ImQgZGF5In0gICAgICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIGluIEJlcmxpbiB3aXRoIn0gICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIgYSBtb2RlcmF0ZSJ9ICAgICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIgYnJlIn0gICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6ImV6ZS4gVGhlIn19CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiB0ZW1wZXJhdHVyZSBpcyJ9IH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIGNvbWZvcnRhYmxlIn0gICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIsIn19CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiBuZWl0aGVyIn0gICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIgdG9vIGhvdCBub3IgdG9vIGNvbCJ9IH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiZC4gQSJ9ICAgICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiBsaWdodCBqYWNrZXQifSAgICAgICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIG1pZ2h0In0gICAgICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiBiZSBzdWl0YWJsZSJ9ICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiBpZiJ9ICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIHlvdSdyZSJ9ICAgICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiBwbGFubmluZyJ9IH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIHRvIGdvIn0gICAgICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIgb3V0In0gfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIuIn0gICB9CgpldmVudDogY29udGVudF9ibG9ja19zdG9wCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfc3RvcCIsImluZGV4IjowfQoKZXZlbnQ6IG1lc3NhZ2VfZGVsdGEKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9kZWx0YSIsImRlbHRhIjp7InN0b3BfcmVhc29uIjoiZW5kX3R1cm4iLCJzdG9wX3NlcXVlbmNlIjpudWxsfSwidXNhZ2UiOnsib3V0cHV0X3Rva2VucyI6ODN9ICAgICAgICB9CgpldmVudDogbWVzc2FnZV9zdG9wCmRhdGE6IHsidHlwZSI6Im1lc3NhZ2Vfc3RvcCJ9Cgo= - recorded_at: Thu, 17 Jul 2025 10:06:01 GMT + ZXZlbnQ6IG1lc3NhZ2Vfc3RhcnQKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9zdGFydCIsIm1lc3NhZ2UiOnsiaWQiOiJtc2dfMDE0UkVocnA1VGRWOHVWVzk0NlVCQUxzIiwidHlwZSI6Im1lc3NhZ2UiLCJyb2xlIjoiYXNzaXN0YW50IiwibW9kZWwiOiJjbGF1ZGUtMy01LWhhaWt1LTIwMjQxMDIyIiwiY29udGVudCI6W10sInN0b3BfcmVhc29uIjpudWxsLCJzdG9wX3NlcXVlbmNlIjpudWxsLCJ1c2FnZSI6eyJpbnB1dF90b2tlbnMiOjUxOCwiY2FjaGVfY3JlYXRpb25faW5wdXRfdG9rZW5zIjowLCJjYWNoZV9yZWFkX2lucHV0X3Rva2VucyI6MCwib3V0cHV0X3Rva2VucyI6Mywic2VydmljZV90aWVyIjoic3RhbmRhcmQifX0gICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfc3RhcnQKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19zdGFydCIsImluZGV4IjowLCJjb250ZW50X2Jsb2NrIjp7InR5cGUiOiJ0ZXh0IiwidGV4dCI6IiJ9fQoKZXZlbnQ6IHBpbmcKZGF0YTogeyJ0eXBlIjogInBpbmcifQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiJUaGUgY3VycmVudCJ9ICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIHdlYXRoZXIgaW4gQmVybGluIGlzICJ9ICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIxNcKwQyB3aXRoIGEifSAgICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiBsaWdodCB3aW5kIG9mIDEwIn0gICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIGttL2guIn0gIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIEl0In0gICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIgc2VlbXMifSAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiBsaWtlIn0gICAgICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIGEgbWlsIn0gICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6ImQgZGF5IGluIHRoZSJ9ICAgICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIEdlcm1hbiJ9ICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIGNhcGl0YWwuIn0gICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIFdvdWwifSAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiZCB5b3UgbGlrZSB0byJ9ICAgICAgICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIga25vdyBhbnl0aGluZyJ9ICAgICAgICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIgZWxzZSBhYm91dCB0aGUgd2VhdGhlcj8ifSAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfc3RvcApkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX3N0b3AiLCJpbmRleCI6MCAgICB9CgpldmVudDogbWVzc2FnZV9kZWx0YQpkYXRhOiB7InR5cGUiOiJtZXNzYWdlX2RlbHRhIiwiZGVsdGEiOnsic3RvcF9yZWFzb24iOiJlbmRfdHVybiIsInN0b3Bfc2VxdWVuY2UiOm51bGx9LCJ1c2FnZSI6eyJvdXRwdXRfdG9rZW5zIjo0OH0gICAgICAgIH0KCmV2ZW50OiBtZXNzYWdlX3N0b3AKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9zdG9wIiAgICAgfQoK + recorded_at: Mon, 28 Jul 2025 14:28:26 GMT - request: method: post uri: https://api.anthropic.com/v1/messages body: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"What''s - the weather in Berlin? (52.5200, 13.4050)"}]},{"role":"assistant","content":[{"type":"text","text":"I''ll - help you check the current weather in Berlin using the provided coordinates."},{"type":"tool_use","id":"toolu_01YWAD23Lh8P9H5pvK81VzvC","name":"weather","input":{"latitude":"52.5200","longitude":"13.4050"}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01YWAD23Lh8P9H5pvK81VzvC","content":"Current - weather at 52.5200, 13.4050: 15°C, Wind: 10 km/h"}]},{"role":"assistant","content":[{"type":"text","text":"Based - on the weather data, here''s the current weather in Berlin:\n- Temperature: - 15°C (59°F)\n- Wind Speed: 10 km/h\n\nIt seems like a mild day in Berlin with - a moderate breeze. The temperature is comfortable, neither too hot nor too - cold. A light jacket might be suitable if you''re planning to go out."}]},{"role":"user","content":[{"type":"text","text":"What''s - the weather in Paris? (48.8575, 2.3514)"}]}],"temperature":0.7,"stream":true,"max_tokens":8192,"tools":[{"name":"weather","description":"Gets + the weather in Berlin? (52.5200, 13.4050)"}]},{"role":"assistant","content":[{"type":"text","text":"Let + me check the current weather in Berlin for you using the provided coordinates."},{"type":"tool_use","id":"toolu_01Ga6R1fyG2eu6jyLiRdPMon","name":"weather","input":{"latitude":"52.5200","longitude":"13.4050"}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01Ga6R1fyG2eu6jyLiRdPMon","content":"Current + weather at 52.5200, 13.4050: 15°C, Wind: 10 km/h"}]},{"role":"assistant","content":[{"type":"text","text":"The + current weather in Berlin is 15°C with a light wind of 10 km/h. It seems like + a mild day in the German capital. Would you like to know anything else about + the weather?"}]},{"role":"user","content":[{"type":"text","text":"What''s + the weather in Paris? (48.8575, 2.3514)"}]}],"stream":true,"max_tokens":8192,"tools":[{"name":"weather","description":"Gets current weather for a location","input_schema":{"type":"object","properties":{"latitude":{"type":"string","description":"Latitude (e.g., 52.5200)"},"longitude":{"type":"string","description":"Longitude (e.g., - 13.4050)"}},"required":["latitude","longitude"]}}]}' + 13.4050)"}},"required":["latitude","longitude"]}}],"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -281,7 +280,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 10:06:01 GMT + - Mon, 28 Jul 2025 14:28:27 GMT Content-Type: - text/event-stream; charset=utf-8 Transfer-Encoding: @@ -295,31 +294,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T10:06:01Z' + - '2025-07-28T14:28:27Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T10:06:01Z' + - '2025-07-28T14:28:26Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T10:06:01Z' + - '2025-07-28T14:28:27Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T10:06:01Z' + - '2025-07-28T14:28:26Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -334,98 +333,90 @@ http_interactions: encoding: UTF-8 string: |+ event: message_start - data: {"type":"message_start","message":{"id":"msg_01Gd6ZYuExdVY6eguP3dZZGC","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":623,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":1,"service_tier":"standard"}} } + data: {"type":"message_start","message":{"id":"msg_01EZCfTh5aBJxAKz7b3PVvLC","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":588,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":1,"service_tier":"standard"}} } event: content_block_start - data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""} } + data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""} } event: ping data: {"type": "ping"} event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"I"} } - - event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"'ll retrieve"} } - - event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" the current weather information"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"I"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" for Paris using"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"'ll"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" the coordinates"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" check the current weather in"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" you"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" Paris for you using the"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" provided."} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" provided coordinates."} } event: content_block_stop - data: {"type":"content_block_stop","index":0 } + data: {"type":"content_block_stop","index":0} event: content_block_start - data: {"type":"content_block_start","index":1,"content_block":{"type":"tool_use","id":"toolu_01M3LyUDWp6vgsB9VB4rPQMf","name":"weather","input":{}} } + data: {"type":"content_block_start","index":1,"content_block":{"type":"tool_use","id":"toolu_01GdtQdcYcbomr4HQrRPm3FA","name":"weather","input":{}} } event: content_block_delta - data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":""} } + data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":""} } event: content_block_delta - data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"{\"latitude\":"} } + data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"{\"latitud"}} event: content_block_delta - data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":" \""} } + data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"e\""} } event: content_block_delta - data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"48.8575\""} } + data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":": "} } event: content_block_delta - data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":", \"lo"}} + data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"\"48.8575\""} } event: content_block_delta - data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"ngitu"} } + data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":", \"longitu"} } event: content_block_delta - data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"de\": \""} } + data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"de\": \"2.3514"} } event: content_block_delta - data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"2.3514\"}"} } + data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":"\"}"} } event: content_block_stop - data: {"type":"content_block_stop","index":1} + data: {"type":"content_block_stop","index":1 } event: message_delta - data: {"type":"message_delta","delta":{"stop_reason":"tool_use","stop_sequence":null},"usage":{"output_tokens":90} } + data: {"type":"message_delta","delta":{"stop_reason":"tool_use","stop_sequence":null},"usage":{"output_tokens":90} } event: message_stop - data: {"type":"message_stop" } + data: {"type":"message_stop" } - recorded_at: Thu, 17 Jul 2025 10:06:03 GMT + recorded_at: Mon, 28 Jul 2025 14:28:28 GMT - request: method: post uri: https://api.anthropic.com/v1/messages body: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"What''s - the weather in Berlin? (52.5200, 13.4050)"}]},{"role":"assistant","content":[{"type":"text","text":"I''ll - help you check the current weather in Berlin using the provided coordinates."},{"type":"tool_use","id":"toolu_01YWAD23Lh8P9H5pvK81VzvC","name":"weather","input":{"latitude":"52.5200","longitude":"13.4050"}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01YWAD23Lh8P9H5pvK81VzvC","content":"Current - weather at 52.5200, 13.4050: 15°C, Wind: 10 km/h"}]},{"role":"assistant","content":[{"type":"text","text":"Based - on the weather data, here''s the current weather in Berlin:\n- Temperature: - 15°C (59°F)\n- Wind Speed: 10 km/h\n\nIt seems like a mild day in Berlin with - a moderate breeze. The temperature is comfortable, neither too hot nor too - cold. A light jacket might be suitable if you''re planning to go out."}]},{"role":"user","content":[{"type":"text","text":"What''s + the weather in Berlin? (52.5200, 13.4050)"}]},{"role":"assistant","content":[{"type":"text","text":"Let + me check the current weather in Berlin for you using the provided coordinates."},{"type":"tool_use","id":"toolu_01Ga6R1fyG2eu6jyLiRdPMon","name":"weather","input":{"latitude":"52.5200","longitude":"13.4050"}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01Ga6R1fyG2eu6jyLiRdPMon","content":"Current + weather at 52.5200, 13.4050: 15°C, Wind: 10 km/h"}]},{"role":"assistant","content":[{"type":"text","text":"The + current weather in Berlin is 15°C with a light wind of 10 km/h. It seems like + a mild day in the German capital. Would you like to know anything else about + the weather?"}]},{"role":"user","content":[{"type":"text","text":"What''s the weather in Paris? (48.8575, 2.3514)"}]},{"role":"assistant","content":[{"type":"text","text":"I''ll - retrieve the current weather information for Paris using the coordinates you - provided."},{"type":"tool_use","id":"toolu_01M3LyUDWp6vgsB9VB4rPQMf","name":"weather","input":{"latitude":"48.8575","longitude":"2.3514"}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01M3LyUDWp6vgsB9VB4rPQMf","content":"Current - weather at 48.8575, 2.3514: 15°C, Wind: 10 km/h"}]}],"temperature":0.7,"stream":true,"max_tokens":8192,"tools":[{"name":"weather","description":"Gets + check the current weather in Paris for you using the provided coordinates."},{"type":"tool_use","id":"toolu_01GdtQdcYcbomr4HQrRPm3FA","name":"weather","input":{"latitude":"48.8575","longitude":"2.3514"}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01GdtQdcYcbomr4HQrRPm3FA","content":"Current + weather at 48.8575, 2.3514: 15°C, Wind: 10 km/h"}]}],"stream":true,"max_tokens":8192,"tools":[{"name":"weather","description":"Gets current weather for a location","input_schema":{"type":"object","properties":{"latitude":{"type":"string","description":"Latitude (e.g., 52.5200)"},"longitude":{"type":"string","description":"Longitude (e.g., - 13.4050)"}},"required":["latitude","longitude"]}}]}' + 13.4050)"}},"required":["latitude","longitude"]}}],"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -442,7 +433,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 10:06:03 GMT + - Mon, 28 Jul 2025 14:28:29 GMT Content-Type: - text/event-stream; charset=utf-8 Transfer-Encoding: @@ -456,31 +447,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '99000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T10:06:03Z' + - '2025-07-28T14:28:29Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T10:06:03Z' + - '2025-07-28T14:28:28Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T10:06:03Z' + - '2025-07-28T14:28:28Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '119000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T10:06:03Z' + - '2025-07-28T14:28:28Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -494,6 +485,6 @@ http_interactions: body: encoding: ASCII-8BIT string: !binary |- - ZXZlbnQ6IG1lc3NhZ2Vfc3RhcnQKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9zdGFydCIsIm1lc3NhZ2UiOnsiaWQiOiJtc2dfMDFVcE5TcXZTYkdKQXR3NHRtNmgzcEVzIiwidHlwZSI6Im1lc3NhZ2UiLCJyb2xlIjoiYXNzaXN0YW50IiwibW9kZWwiOiJjbGF1ZGUtMy01LWhhaWt1LTIwMjQxMDIyIiwiY29udGVudCI6W10sInN0b3BfcmVhc29uIjpudWxsLCJzdG9wX3NlcXVlbmNlIjpudWxsLCJ1c2FnZSI6eyJpbnB1dF90b2tlbnMiOjc1MiwiY2FjaGVfY3JlYXRpb25faW5wdXRfdG9rZW5zIjowLCJjYWNoZV9yZWFkX2lucHV0X3Rva2VucyI6MCwib3V0cHV0X3Rva2VucyI6Miwic2VydmljZV90aWVyIjoic3RhbmRhcmQifX0gICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfc3RhcnQKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19zdGFydCIsImluZGV4IjowLCJjb250ZW50X2Jsb2NrIjp7InR5cGUiOiJ0ZXh0IiwidGV4dCI6IiJ9ICAgICAgIH0KCmV2ZW50OiBwaW5nCmRhdGE6IHsidHlwZSI6ICJwaW5nIn0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiSGVyZSJ9ICAgICAgICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IidzIn19CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiB0aGUgY3VycmVudCB3ZWF0aGVyIGluIFBhcmlzIn0gICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6Ijpcbi0gVGVtcGVyYXR1cmU6In19CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiAxNcKwQyAoIn0gICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IjU5wrBGKSJ9fQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiJcbi0gV2luZCBTcGVlZDogIn0gICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IjEwIGttL2gifSAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiXG5cbkludGVyIn0gICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6ImVzdGluZ2x5LCB0aGUifSAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiB3ZWF0aGVyIGluIFBhcmlzIGlzIHF1aXRlIn0gICAgICAgICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiBzaW1pbGFyIn0gICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIHRvIHdoYXQifSAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiB3ZSJ9ICAgICAgICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiBqdXN0In0gICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiBzYXcifSAgICAgICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIgaW4gQmVybGluIC0gYSBtaWwifSAgICAgICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiJkIHRlbXBlcmF0dXJlIn0gICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIHdpdGggYSBsaWdodCBicmVlemUifSAgICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiLiBJdCJ9ICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiJ3MgYSBwbGVhc2FudCBkYXkgaW4ifSAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIHRoZSJ9ICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIgRnJlbmNoIGNhcGl0YWwsIn0gfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIgc3VpdGFibGUifSAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIGZvciB3YWxraW5nIn0gICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIGFyb3VuZCBhbiJ9ICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6ImQgZXhwbG9yaW5nIn0gICAgICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIHRoZSBjaXR5In0gICAgICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIuIn0gICAgICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIFlvdSJ9ICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIgbWlnaHQifSAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiB3YW50IHRvIGJyaW5nIGEgbGlnaHQifSAgICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiBsYXllciJ9ICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIgbGlrZSJ9ICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIGEgc3dlIn0gIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiYXRlciBvciBqYWNrZXQsIn0gICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiBlc3BlY2lhbGx5In0gICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIGlmIHlvdSdyZSJ9ICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIgc2Vuc2l0aXZlIn0gICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiB0byBjb28ifSAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6ImxlciB0ZW1wZXJhdHVyZXMuIn0gICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfc3RvcApkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX3N0b3AiLCJpbmRleCI6MH0KCmV2ZW50OiBtZXNzYWdlX2RlbHRhCmRhdGE6IHsidHlwZSI6Im1lc3NhZ2VfZGVsdGEiLCJkZWx0YSI6eyJzdG9wX3JlYXNvbiI6ImVuZF90dXJuIiwic3RvcF9zZXF1ZW5jZSI6bnVsbH0sInVzYWdlIjp7Im91dHB1dF90b2tlbnMiOjExMH0gICAgICAgICAgICAgfQoKZXZlbnQ6IG1lc3NhZ2Vfc3RvcApkYXRhOiB7InR5cGUiOiJtZXNzYWdlX3N0b3AiICAgICAgICAgICAgIH0KCg== - recorded_at: Thu, 17 Jul 2025 10:06:05 GMT + ZXZlbnQ6IG1lc3NhZ2Vfc3RhcnQKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9zdGFydCIsIm1lc3NhZ2UiOnsiaWQiOiJtc2dfMDFXTFppMnBGUE1NNFZ3a3REdU02OHBEIiwidHlwZSI6Im1lc3NhZ2UiLCJyb2xlIjoiYXNzaXN0YW50IiwibW9kZWwiOiJjbGF1ZGUtMy01LWhhaWt1LTIwMjQxMDIyIiwiY29udGVudCI6W10sInN0b3BfcmVhc29uIjpudWxsLCJzdG9wX3NlcXVlbmNlIjpudWxsLCJ1c2FnZSI6eyJpbnB1dF90b2tlbnMiOjcxNywiY2FjaGVfY3JlYXRpb25faW5wdXRfdG9rZW5zIjowLCJjYWNoZV9yZWFkX2lucHV0X3Rva2VucyI6MCwib3V0cHV0X3Rva2VucyI6NSwic2VydmljZV90aWVyIjoic3RhbmRhcmQifX0gICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX3N0YXJ0CmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfc3RhcnQiLCJpbmRleCI6MCwiY29udGVudF9ibG9jayI6eyJ0eXBlIjoidGV4dCIsInRleHQiOiIifSAgICAgICAgICAgIH0KCmV2ZW50OiBwaW5nCmRhdGE6IHsidHlwZSI6ICJwaW5nIn0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiVGhlIGN1cnJlbnQgd2VhdGhlciBpbiJ9ICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIFBhcmlzIGlzIDE1wrAifSAgICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IkMgd2l0aCBhIHdpbiJ9IH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiZCBzcGVlIn0gICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiJkIG9mIDEwIGttIn0gICAgICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIvaC4ifSB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiBJbnRlciJ9ICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiJlc3RpbmdseSwgaXQifSAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiJ3MgcXVpdGUgc2ltaWxhciJ9IH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiIHRvIHRoZSJ9ICAgICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIgd2VhdGhlciBpbiBCZXJsaW4gdGhhdCJ9ICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiB3ZSBqdXN0IGNoZWNrZWQuIEl0In0gICAgICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiBzZWVtcyBsaWtlIGEgcGxlYXNhbnQgZGF5In0gICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiBpbiB0aGUgRnJlbmNoIGNhcGl0YWwuIn0gICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiBJcyJ9ICAgICAgICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19kZWx0YQpkYXRhOiB7InR5cGUiOiJjb250ZW50X2Jsb2NrX2RlbHRhIiwiaW5kZXgiOjAsImRlbHRhIjp7InR5cGUiOiJ0ZXh0X2RlbHRhIiwidGV4dCI6IiB0aGVyZSBhbnl0aGluZyBlbHNlIHlvdScifSAgICAgICAgICAgICAgIH0KCmV2ZW50OiBjb250ZW50X2Jsb2NrX2RlbHRhCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfZGVsdGEiLCJpbmRleCI6MCwiZGVsdGEiOnsidHlwZSI6InRleHRfZGVsdGEiLCJ0ZXh0IjoiZCBsaWtlIHRvIn0gICAgICAgICAgICAgfQoKZXZlbnQ6IGNvbnRlbnRfYmxvY2tfZGVsdGEKZGF0YTogeyJ0eXBlIjoiY29udGVudF9ibG9ja19kZWx0YSIsImluZGV4IjowLCJkZWx0YSI6eyJ0eXBlIjoidGV4dF9kZWx0YSIsInRleHQiOiIga25vdyBhYm91dCB0aGUgd2VhdGhlcj8ifSAgICAgICAgICAgICB9CgpldmVudDogY29udGVudF9ibG9ja19zdG9wCmRhdGE6IHsidHlwZSI6ImNvbnRlbnRfYmxvY2tfc3RvcCIsImluZGV4IjowICAgIH0KCmV2ZW50OiBtZXNzYWdlX2RlbHRhCmRhdGE6IHsidHlwZSI6Im1lc3NhZ2VfZGVsdGEiLCJkZWx0YSI6eyJzdG9wX3JlYXNvbiI6ImVuZF90dXJuIiwic3RvcF9zZXF1ZW5jZSI6bnVsbH0sInVzYWdlIjp7Im91dHB1dF90b2tlbnMiOjY5fSAgICAgICAgICAgICAgIH0KCmV2ZW50OiBtZXNzYWdlX3N0b3AKZGF0YTogeyJ0eXBlIjoibWVzc2FnZV9zdG9wIiAgICAgICAgICAgfQoK + recorded_at: Mon, 28 Jul 2025 14:28:30 GMT recorded_with: VCR 6.3.1 diff --git a/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_use_tools_without_parameters.yml b/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_use_tools_without_parameters.yml index 5194b351..c2d349f6 100644 --- a/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_use_tools_without_parameters.yml +++ b/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_use_tools_without_parameters.yml @@ -6,11 +6,11 @@ http_interactions: body: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"What''s - the best language to learn?"}]}],"temperature":0.7,"stream":false,"max_tokens":8192,"tools":[{"name":"best_language_to_learn","description":"Gets - the best language to learn","input_schema":{"type":"object","properties":{},"required":[]}}]}' + the best language to learn?"}]}],"stream":false,"max_tokens":8192,"tools":[{"name":"best_language_to_learn","description":"Gets + the best language to learn","input_schema":{"type":"object","properties":{},"required":[]}}],"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -27,7 +27,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 10:02:19 GMT + - Mon, 28 Jul 2025 14:28:08 GMT Content-Type: - application/json Transfer-Encoding: @@ -39,31 +39,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T10:02:18Z' + - '2025-07-28T14:28:07Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T10:02:19Z' + - '2025-07-28T14:28:08Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T10:02:18Z' + - '2025-07-28T14:28:07Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T10:02:18Z' + - '2025-07-28T14:28:07Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -76,9 +76,9 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_016SLzB6kSrVTbrwZg6RCLRZ","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"I''ll - help you find out the best language to learn by using the available tool."},{"type":"tool_use","id":"toolu_01PSdZwBxik1PyBtqQsJDzd2","name":"best_language_to_learn","input":{}}],"stop_reason":"tool_use","stop_sequence":null,"usage":{"input_tokens":327,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":58,"service_tier":"standard"}}' - recorded_at: Thu, 17 Jul 2025 10:02:19 GMT + string: '{"id":"msg_01H1T8KUvXqvsntsHH4eckX3","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"I''ll + help you find out the best language to learn by using the available tool."},{"type":"tool_use","id":"toolu_01XESzQ8dAhy7wPNSkGRMac6","name":"best_language_to_learn","input":{}}],"stop_reason":"tool_use","stop_sequence":null,"usage":{"input_tokens":327,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":58,"service_tier":"standard"}}' + recorded_at: Mon, 28 Jul 2025 14:28:08 GMT - request: method: post uri: https://api.anthropic.com/v1/messages @@ -86,11 +86,11 @@ http_interactions: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"What''s the best language to learn?"}]},{"role":"assistant","content":[{"type":"text","text":"I''ll - help you find out the best language to learn by using the available tool."},{"type":"tool_use","id":"toolu_01PSdZwBxik1PyBtqQsJDzd2","name":"best_language_to_learn","input":{}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01PSdZwBxik1PyBtqQsJDzd2","content":"Ruby"}]}],"temperature":0.7,"stream":false,"max_tokens":8192,"tools":[{"name":"best_language_to_learn","description":"Gets - the best language to learn","input_schema":{"type":"object","properties":{},"required":[]}}]}' + help you find out the best language to learn by using the available tool."},{"type":"tool_use","id":"toolu_01XESzQ8dAhy7wPNSkGRMac6","name":"best_language_to_learn","input":{}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01XESzQ8dAhy7wPNSkGRMac6","content":"Ruby"}]}],"stream":false,"max_tokens":8192,"tools":[{"name":"best_language_to_learn","description":"Gets + the best language to learn","input_schema":{"type":"object","properties":{},"required":[]}}],"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -107,7 +107,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 10:02:24 GMT + - Mon, 28 Jul 2025 14:28:12 GMT Content-Type: - application/json Transfer-Encoding: @@ -119,31 +119,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T10:02:20Z' + - '2025-07-28T14:28:08Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T10:02:24Z' + - '2025-07-28T14:28:12Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T10:02:20Z' + - '2025-07-28T14:28:08Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T10:02:20Z' + - '2025-07-28T14:28:08Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -156,17 +156,17 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_01NQHwZUyJLPogh1AYRjoH4Y","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"According + string: '{"id":"msg_01PewNVX4X9iiLFgPnPXJSe9","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"According to the tool, Ruby is the best language to learn! Ruby is a dynamic, object-oriented programming language known for its simplicity and readability. It''s particularly popular for web development, especially with the Ruby on Rails framework. - \n\nSome reasons why Ruby might be a great language to learn:\n1. Easy to - read and write with a clean, elegant syntax\n2. Great for web development\n3. - Strong community support\n4. Versatile and used in various domains like web - applications, scripting, and automation\n\nHowever, the \"best\" language - can depend on your personal goals, such as:\n- Web development\n- Data science\n- - Mobile app development\n- Game development\n- Career opportunities\n\nWould - you like to know more about why Ruby is recommended or discuss how it might - align with your specific programming goals?"}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":397,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":176,"service_tier":"standard"}}' - recorded_at: Thu, 17 Jul 2025 10:02:24 GMT + \n\nSome reasons why Ruby might be considered a great language to learn include:\n1. + Easy to read and write syntax\n2. Strong community support\n3. Versatile - + used in web development, scripting, and more\n4. Good for beginners due to + its intuitive nature\n5. Widely used in startup environments\n\nHowever, the + \"best\" language can depend on your personal goals, such as:\n- Web development\n- + Data science\n- Mobile app development\n- Game development\n\nWould you like + to know more about Ruby or discuss how it might fit your specific programming + goals?"}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":397,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":177,"service_tier":"standard"}}' + recorded_at: Mon, 28 Jul 2025 14:28:12 GMT recorded_with: VCR 6.3.1 diff --git a/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_use_tools_without_parameters_in_multi-turn_streaming_conversations.yml b/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_use_tools_without_parameters_in_multi-turn_streaming_conversations.yml index 6f28cb56..c6eaf209 100644 --- a/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_use_tools_without_parameters_in_multi-turn_streaming_conversations.yml +++ b/spec/fixtures/vcr_cassettes/chat_function_calling_anthropic_claude-3-5-haiku-20241022_can_use_tools_without_parameters_in_multi-turn_streaming_conversations.yml @@ -6,12 +6,12 @@ http_interactions: body: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"What''s - the best language to learn?"}]}],"temperature":0.7,"stream":true,"max_tokens":8192,"tools":[{"name":"best_language_to_learn","description":"Gets - the best language to learn","input_schema":{"type":"object","properties":{},"required":[]}}],"system":"{type: - \"text\", text: \"You must use tools whenever possible.\"}"}' + the best language to learn?"}]}],"stream":true,"max_tokens":8192,"tools":[{"name":"best_language_to_learn","description":"Gets + the best language to learn","input_schema":{"type":"object","properties":{},"required":[]}}],"system":"You + must use tools whenever possible.","temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -28,7 +28,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 10:03:41 GMT + - Mon, 28 Jul 2025 14:28:13 GMT Content-Type: - text/event-stream; charset=utf-8 Transfer-Encoding: @@ -42,31 +42,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T10:03:40Z' + - '2025-07-28T14:28:13Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T10:03:40Z' + - '2025-07-28T14:28:13Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T10:03:40Z' + - '2025-07-28T14:28:13Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T10:03:40Z' + - '2025-07-28T14:28:13Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -81,75 +81,75 @@ http_interactions: encoding: UTF-8 string: |+ event: message_start - data: {"type":"message_start","message":{"id":"msg_01C9wN7AeXZbKMmZtNS9XpTg","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":345,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":1,"service_tier":"standard"}} } + data: {"type":"message_start","message":{"id":"msg_01TXPXMwMoK4wbQCbJhaw68n","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":335,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":1,"service_tier":"standard"}} } event: content_block_start - data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""} } + data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""} } event: ping data: {"type": "ping"} event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"I"}} + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"I"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"'ll"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"'ll"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" help"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" help"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" you fin"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" you fin"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d out"}} + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d out"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" by"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" by"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" using"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" using"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" the"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" the"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" available"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" available"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" tool"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" tool"} } event: content_block_delta data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" to"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" determine"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" determine"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" the best language to learn"}} + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" the best language to learn"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"."} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"."} } event: content_block_stop - data: {"type":"content_block_stop","index":0 } + data: {"type":"content_block_stop","index":0 } event: content_block_start - data: {"type":"content_block_start","index":1,"content_block":{"type":"tool_use","id":"toolu_014hyMckGivBtaGfvaPJAx9m","name":"best_language_to_learn","input":{}} } + data: {"type":"content_block_start","index":1,"content_block":{"type":"tool_use","id":"toolu_01Cq68iK1GP9GUCG1UFgQa1o","name":"best_language_to_learn","input":{}} } event: content_block_delta - data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":""} } + data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":""} } event: content_block_stop - data: {"type":"content_block_stop","index":1 } + data: {"type":"content_block_stop","index":1 } event: message_delta - data: {"type":"message_delta","delta":{"stop_reason":"tool_use","stop_sequence":null},"usage":{"output_tokens":60} } + data: {"type":"message_delta","delta":{"stop_reason":"tool_use","stop_sequence":null},"usage":{"output_tokens":60} } event: message_stop - data: {"type":"message_stop" } + data: {"type":"message_stop" } - recorded_at: Thu, 17 Jul 2025 10:03:42 GMT + recorded_at: Mon, 28 Jul 2025 14:28:14 GMT - request: method: post uri: https://api.anthropic.com/v1/messages @@ -158,12 +158,12 @@ http_interactions: string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"What''s the best language to learn?"}]},{"role":"assistant","content":[{"type":"text","text":"I''ll help you find out by using the available tool to determine the best language - to learn."},{"type":"tool_use","id":"toolu_014hyMckGivBtaGfvaPJAx9m","name":"best_language_to_learn","input":{}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_014hyMckGivBtaGfvaPJAx9m","content":"Ruby"}]}],"temperature":0.7,"stream":true,"max_tokens":8192,"tools":[{"name":"best_language_to_learn","description":"Gets - the best language to learn","input_schema":{"type":"object","properties":{},"required":[]}}],"system":"{type: - \"text\", text: \"You must use tools whenever possible.\"}"}' + to learn."},{"type":"tool_use","id":"toolu_01Cq68iK1GP9GUCG1UFgQa1o","name":"best_language_to_learn","input":{}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01Cq68iK1GP9GUCG1UFgQa1o","content":"Ruby"}]}],"stream":true,"max_tokens":8192,"tools":[{"name":"best_language_to_learn","description":"Gets + the best language to learn","input_schema":{"type":"object","properties":{},"required":[]}}],"system":"You + must use tools whenever possible.","temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -180,7 +180,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 10:03:43 GMT + - Mon, 28 Jul 2025 14:28:15 GMT Content-Type: - text/event-stream; charset=utf-8 Transfer-Encoding: @@ -194,31 +194,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T10:03:43Z' + - '2025-07-28T14:28:15Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T10:03:43Z' + - '2025-07-28T14:28:15Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T10:03:43Z' + - '2025-07-28T14:28:15Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T10:03:43Z' + - '2025-07-28T14:28:15Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -233,252 +233,234 @@ http_interactions: encoding: UTF-8 string: |+ event: message_start - data: {"type":"message_start","message":{"id":"msg_01Wj7DctEHHw2wsk9CC5YERK","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":417,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":2,"service_tier":"standard"}} } + data: {"type":"message_start","message":{"id":"msg_01PKtbw5dak5oH3wqX3X3fJ4","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":407,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":2,"service_tier":"standard"}} } event: content_block_start - data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""} } + data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""} } event: ping data: {"type": "ping"} event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"According"}} - - event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" to the tool, Ruby"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"According"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" is the best language to"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" to the tool"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" learn!"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":", Ruby is the best"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" Ruby"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" language to learn right"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" is a dynamic"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" now. Ruby"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":", object"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" is a dynamic"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"-oriented programming"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":", object"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" language known"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"-oriented programming language known"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" for its simplicity an"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" for its simplicity an"} } event: content_block_delta data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d readability. It's"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" particularly"} } - - event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" popular"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" particularly"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" for web development,"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" popular"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" especially"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" for"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" with the"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" web development,"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" Ruby on Rails framework."} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" especially"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" "} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" with"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"\n\nSome reasons"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" the"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" why Ruby might"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" Ruby"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" be a great"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" on Rails framework."} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" language"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" \n\nSome"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" to learn:"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" reasons"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"\n1"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" why Ruby might"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":". Easy"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" be a great"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" to rea"}} + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" language"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d and write"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" to learn include"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" syntax"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":":"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"\n2. Strong"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"\n1"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" community support"} } - - event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"\n3. Versat"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":". Easy"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"ile"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" to rea"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" for"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d and write syntax"}} event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" web development\n4."} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"\n2. Strong"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" Goo"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" community support"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d for begin"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"\n3. Versat"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"ners due"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"ile"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" to its intu"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" for"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"itive nature"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" web"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"\n5. Use"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" development\n4. Use"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d in many start"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d in many start"} } event: content_block_delta data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"ups and tech"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" companies\n\nOf"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" companies"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" course, the"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"\n5. Goo"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" \""} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d for begin"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"best\" language can"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"ners due"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" depen"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" to its intu"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d on your specific"} } - - event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" goals, such"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"itive nature\n\nHowever"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" as web"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":", the"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" development, data science,"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" \""} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" mobile"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"best\" language can"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" apps"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" depen"}} event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":", or"} } - - event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" other"} } - - event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" programming"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d on your specific"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" objectives"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" goals,"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":". But Ruby is certainly"}} + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" such"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" an"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" as web"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" excellent choice for many"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" development, data science,"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" programm"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" mobile"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"ers,"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" app development, or"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" especially those just starting their"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" other"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" coding"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" areas. Woul"}} event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" journey.\n\nWoul"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d you like to"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d you like to"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" know more about why"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" know"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" Ruby is recommende"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" more about Ruby or discuss"}} + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d or"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" why"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" discuss"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" it might"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" how"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" be a good fit"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" it"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" for"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" might"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" your"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" align"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" programming"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" with your programming"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" goals"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" objectives"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"?"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"?"} } event: content_block_stop - data: {"type":"content_block_stop","index":0 } + data: {"type":"content_block_stop","index":0 } event: message_delta - data: {"type":"message_delta","delta":{"stop_reason":"end_turn","stop_sequence":null},"usage":{"output_tokens":189} } + data: {"type":"message_delta","delta":{"stop_reason":"end_turn","stop_sequence":null},"usage":{"output_tokens":170} } event: message_stop - data: {"type":"message_stop" } + data: {"type":"message_stop" } - recorded_at: Thu, 17 Jul 2025 10:03:47 GMT + recorded_at: Mon, 28 Jul 2025 14:28:18 GMT - request: method: post uri: https://api.anthropic.com/v1/messages @@ -487,25 +469,24 @@ http_interactions: string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"What''s the best language to learn?"}]},{"role":"assistant","content":[{"type":"text","text":"I''ll help you find out by using the available tool to determine the best language - to learn."},{"type":"tool_use","id":"toolu_014hyMckGivBtaGfvaPJAx9m","name":"best_language_to_learn","input":{}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_014hyMckGivBtaGfvaPJAx9m","content":"Ruby"}]},{"role":"assistant","content":[{"type":"text","text":"According - to the tool, Ruby is the best language to learn! Ruby is a dynamic, object-oriented - programming language known for its simplicity and readability. It''s particularly - popular for web development, especially with the Ruby on Rails framework. - \n\nSome reasons why Ruby might be a great language to learn:\n1. Easy to - read and write syntax\n2. Strong community support\n3. Versatile for web development\n4. - Good for beginners due to its intuitive nature\n5. Used in many startups and - tech companies\n\nOf course, the \"best\" language can depend on your specific - goals, such as web development, data science, mobile apps, or other programming - objectives. But Ruby is certainly an excellent choice for many programmers, - especially those just starting their coding journey.\n\nWould you like to - know more about Ruby or discuss why it might be a good fit for your programming - goals?"}]},{"role":"user","content":[{"type":"text","text":"Tell me again: - what''s the best language to learn?"}]}],"temperature":0.7,"stream":true,"max_tokens":8192,"tools":[{"name":"best_language_to_learn","description":"Gets - the best language to learn","input_schema":{"type":"object","properties":{},"required":[]}}],"system":"{type: - \"text\", text: \"You must use tools whenever possible.\"}"}' + to learn."},{"type":"tool_use","id":"toolu_01Cq68iK1GP9GUCG1UFgQa1o","name":"best_language_to_learn","input":{}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01Cq68iK1GP9GUCG1UFgQa1o","content":"Ruby"}]},{"role":"assistant","content":[{"type":"text","text":"According + to the tool, Ruby is the best language to learn right now. Ruby is a dynamic, + object-oriented programming language known for its simplicity and readability. + It''s particularly popular for web development, especially with the Ruby on + Rails framework. \n\nSome reasons why Ruby might be a great language to learn + include:\n1. Easy to read and write syntax\n2. Strong community support\n3. + Versatile for web development\n4. Used in many startups and tech companies\n5. + Good for beginners due to its intuitive nature\n\nHowever, the \"best\" language + can depend on your specific goals, such as web development, data science, + mobile app development, or other areas. Would you like to know more about + why Ruby is recommended or discuss how it might align with your programming + objectives?"}]},{"role":"user","content":[{"type":"text","text":"Tell me again: + what''s the best language to learn?"}]}],"stream":true,"max_tokens":8192,"tools":[{"name":"best_language_to_learn","description":"Gets + the best language to learn","input_schema":{"type":"object","properties":{},"required":[]}}],"system":"You + must use tools whenever possible.","temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -522,13 +503,15 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 10:03:47 GMT + - Mon, 28 Jul 2025 14:28:19 GMT Content-Type: - text/event-stream; charset=utf-8 Transfer-Encoding: - chunked Connection: - keep-alive + Cf-Ray: + - "" Cache-Control: - no-cache Anthropic-Ratelimit-Input-Tokens-Limit: @@ -536,31 +519,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '99000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T10:03:47Z' + - '2025-07-28T14:28:19Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T10:03:47Z' + - '2025-07-28T14:28:19Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T10:03:47Z' + - '2025-07-28T14:28:18Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '119000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T10:03:47Z' + - '2025-07-28T14:28:19Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -569,63 +552,58 @@ http_interactions: - none Server: - cloudflare - Cf-Ray: - - "" body: encoding: UTF-8 string: |+ event: message_start - data: {"type":"message_start","message":{"id":"msg_01HjLyJKijpvtbsqXVqYTDdo","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":621,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":1,"service_tier":"standard"}} } + data: {"type":"message_start","message":{"id":"msg_01TsiNJMQrjqKYSKVQdPWRo1","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":592,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":1,"service_tier":"standard"}} } event: content_block_start - data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""} } + data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""} } event: ping data: {"type": "ping"} event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"I"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"I"} } event: content_block_delta data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"'ll"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" check"} } - - event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" the"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" check"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" tool again to"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" the tool again to"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" confirm"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" confirm"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" the best language to learn"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" the"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"."} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" recommendation:"}} event: content_block_stop - data: {"type":"content_block_stop","index":0 } + data: {"type":"content_block_stop","index":0 } event: content_block_start - data: {"type":"content_block_start","index":1,"content_block":{"type":"tool_use","id":"toolu_01FuAXr1i1UCmFXW6j9ZF7Sy","name":"best_language_to_learn","input":{}} } + data: {"type":"content_block_start","index":1,"content_block":{"type":"tool_use","id":"toolu_01F9EyKCRdb7cnjjQnwgpL3W","name":"best_language_to_learn","input":{}} } event: content_block_delta - data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":""} } + data: {"type":"content_block_delta","index":1,"delta":{"type":"input_json_delta","partial_json":""} } event: content_block_stop data: {"type":"content_block_stop","index":1 } event: message_delta - data: {"type":"message_delta","delta":{"stop_reason":"tool_use","stop_sequence":null},"usage":{"output_tokens":55} } + data: {"type":"message_delta","delta":{"stop_reason":"tool_use","stop_sequence":null},"usage":{"output_tokens":52} } event: message_stop - data: {"type":"message_stop" } + data: {"type":"message_stop" } - recorded_at: Thu, 17 Jul 2025 10:03:48 GMT + recorded_at: Mon, 28 Jul 2025 14:28:20 GMT - request: method: post uri: https://api.anthropic.com/v1/messages @@ -634,26 +612,25 @@ http_interactions: string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"What''s the best language to learn?"}]},{"role":"assistant","content":[{"type":"text","text":"I''ll help you find out by using the available tool to determine the best language - to learn."},{"type":"tool_use","id":"toolu_014hyMckGivBtaGfvaPJAx9m","name":"best_language_to_learn","input":{}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_014hyMckGivBtaGfvaPJAx9m","content":"Ruby"}]},{"role":"assistant","content":[{"type":"text","text":"According - to the tool, Ruby is the best language to learn! Ruby is a dynamic, object-oriented - programming language known for its simplicity and readability. It''s particularly - popular for web development, especially with the Ruby on Rails framework. - \n\nSome reasons why Ruby might be a great language to learn:\n1. Easy to - read and write syntax\n2. Strong community support\n3. Versatile for web development\n4. - Good for beginners due to its intuitive nature\n5. Used in many startups and - tech companies\n\nOf course, the \"best\" language can depend on your specific - goals, such as web development, data science, mobile apps, or other programming - objectives. But Ruby is certainly an excellent choice for many programmers, - especially those just starting their coding journey.\n\nWould you like to - know more about Ruby or discuss why it might be a good fit for your programming - goals?"}]},{"role":"user","content":[{"type":"text","text":"Tell me again: + to learn."},{"type":"tool_use","id":"toolu_01Cq68iK1GP9GUCG1UFgQa1o","name":"best_language_to_learn","input":{}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01Cq68iK1GP9GUCG1UFgQa1o","content":"Ruby"}]},{"role":"assistant","content":[{"type":"text","text":"According + to the tool, Ruby is the best language to learn right now. Ruby is a dynamic, + object-oriented programming language known for its simplicity and readability. + It''s particularly popular for web development, especially with the Ruby on + Rails framework. \n\nSome reasons why Ruby might be a great language to learn + include:\n1. Easy to read and write syntax\n2. Strong community support\n3. + Versatile for web development\n4. Used in many startups and tech companies\n5. + Good for beginners due to its intuitive nature\n\nHowever, the \"best\" language + can depend on your specific goals, such as web development, data science, + mobile app development, or other areas. Would you like to know more about + why Ruby is recommended or discuss how it might align with your programming + objectives?"}]},{"role":"user","content":[{"type":"text","text":"Tell me again: what''s the best language to learn?"}]},{"role":"assistant","content":[{"type":"text","text":"I''ll - check the tool again to confirm the best language to learn."},{"type":"tool_use","id":"toolu_01FuAXr1i1UCmFXW6j9ZF7Sy","name":"best_language_to_learn","input":{}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01FuAXr1i1UCmFXW6j9ZF7Sy","content":"Ruby"}]}],"temperature":0.7,"stream":true,"max_tokens":8192,"tools":[{"name":"best_language_to_learn","description":"Gets - the best language to learn","input_schema":{"type":"object","properties":{},"required":[]}}],"system":"{type: - \"text\", text: \"You must use tools whenever possible.\"}"}' + check the tool again to confirm the recommendation:"},{"type":"tool_use","id":"toolu_01F9EyKCRdb7cnjjQnwgpL3W","name":"best_language_to_learn","input":{}}]},{"role":"user","content":[{"type":"tool_result","tool_use_id":"toolu_01F9EyKCRdb7cnjjQnwgpL3W","content":"Ruby"}]}],"stream":true,"max_tokens":8192,"tools":[{"name":"best_language_to_learn","description":"Gets + the best language to learn","input_schema":{"type":"object","properties":{},"required":[]}}],"system":"You + must use tools whenever possible.","temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -670,7 +647,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 10:03:49 GMT + - Mon, 28 Jul 2025 14:28:21 GMT Content-Type: - text/event-stream; charset=utf-8 Transfer-Encoding: @@ -684,31 +661,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '99000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T10:03:48Z' + - '2025-07-28T14:28:20Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T10:03:48Z' + - '2025-07-28T14:28:20Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T10:03:48Z' + - '2025-07-28T14:28:20Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '119000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T10:03:48Z' + - '2025-07-28T14:28:20Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -723,101 +700,149 @@ http_interactions: encoding: UTF-8 string: |+ event: message_start - data: {"type":"message_start","message":{"id":"msg_01BLgx1JBmat9gF5oiU8eN5c","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":688,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":2,"service_tier":"standard"}} } + data: {"type":"message_start","message":{"id":"msg_01YAUvH9JYJDLmw78mtNtscg","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":656,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":4,"service_tier":"standard"}} } event: content_block_start - data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""} } + data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""} } event: ping data: {"type": "ping"} event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"The"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"The tool consistently"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" tool consistently"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" recommends Ruby as the"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" recommends Ruby as the"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" best language to learn."} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" best language to learn."} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" Just"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" Just"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" like"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" like"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" in"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" in"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" my previous response"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" my previous response"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":", Ruby"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":", Ruby remains"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" remains"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" the top recommendation"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" the"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"."} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" top suggeste"} } + + event: content_block_delta + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d programming"} } + + event: content_block_delta + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" language."} } + + event: content_block_delta + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" This"} } + + event: content_block_delta + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" reinfor"} } + + event: content_block_delta + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"ces the recommendation"} } + + event: content_block_delta + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":", highlighting"} } + + event: content_block_delta + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" Ruby's consistent"} } + + event: content_block_delta + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" value"} } + + event: content_block_delta + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" for"} } + + event: content_block_delta + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" lear"} } + + event: content_block_delta + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"ners."} } + + event: content_block_delta + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" \n\nIf"} } + + event: content_block_delta + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" you're"}} + + event: content_block_delta + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" intereste"} } + + event: content_block_delta + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d in learning more about why"} } + + event: content_block_delta + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" Ruby is recommende"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" It"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d or"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"'s"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" want"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" a versatile, beg"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" to explore"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"inner-friendly programming"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" how"}} event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" language that offers"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" it might fit"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" a"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" your"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" great"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" specific"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" balance of simplicity an"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" learning"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d power"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" or"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":","} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" career goals, I'"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" making it an excellent choice"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d be happy to provide"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" for those"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" more"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" looking"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" detaile"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" to start"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"d insights"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" their programming journey."} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"."} } event: content_block_stop - data: {"type":"content_block_stop","index":0 } + data: {"type":"content_block_stop","index":0} event: message_delta - data: {"type":"message_delta","delta":{"stop_reason":"end_turn","stop_sequence":null},"usage":{"output_tokens":67} } + data: {"type":"message_delta","delta":{"stop_reason":"end_turn","stop_sequence":null},"usage":{"output_tokens":86} } event: message_stop - data: {"type":"message_stop" } + data: {"type":"message_stop" } - recorded_at: Thu, 17 Jul 2025 10:03:50 GMT + recorded_at: Mon, 28 Jul 2025 14:28:22 GMT recorded_with: VCR 6.3.1 ... diff --git a/spec/fixtures/vcr_cassettes/chat_pdf_models_anthropic_claude-3-5-haiku-20241022_can_handle_array_of_mixed_files_with_auto-detection.yml b/spec/fixtures/vcr_cassettes/chat_pdf_models_anthropic_claude-3-5-haiku-20241022_can_handle_array_of_mixed_files_with_auto-detection.yml index 20010aab..b0817e75 100644 --- a/spec/fixtures/vcr_cassettes/chat_pdf_models_anthropic_claude-3-5-haiku-20241022_can_handle_array_of_mixed_files_with_auto-detection.yml +++ b/spec/fixtures/vcr_cassettes/chat_pdf_models_anthropic_claude-3-5-haiku-20241022_can_handle_array_of_mixed_files_with_auto-detection.yml @@ -6,10 +6,10 @@ http_interactions: body: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"Analyze - these files"},{"type":"image","source":{"type":"base64","media_type":"image/png","data":"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"}},{"type":"document","source":{"type":"base64","media_type":"application/pdf","data":"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ZXNjZW50IC0yMTMgL0ZsYWdzIDk2Ci9Gb250QkJveCBbLTQwOSAtMjE0IDEwOTkgOTUxXSAvRm9udE5hbWUgL1BVQUxYQStIZWx2ZXRpY2FOZXVlLUxpZ2h0SXRhbGljCi9JdGFsaWNBbmdsZSAtMTIgL1N0ZW1WIDY3IC9MZWFkaW5nIDI4IC9NYXhXaWR0aCAxMTIwIC9TdGVtSCA1OCAvWEhlaWdodCA1MjQKL0ZvbnRGaWxlMiAyMiAwIFIgPj4KZW5kb2JqCjI1IDAgb2JqClsgMjc4IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMjc4IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAKMCAwIDY4NSAwIDUzNyAwIDAgMCAwIDAgMCAwIDAgMCA2MzAgMCAwIDAgNTU2IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDUxOQowIDAgMCA1MTkgMjU5IDAgNTM3IDE4NSAwIDAgMTg1IDgzMyA1MzcgMCA1NzQgMCAwIDQ4MSAwIDUzNyAwIDAgMCAwIDAgMCAwCjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAKMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMAowIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgNDQ0IF0KZW5kb2JqCjkgMCBvYmoKPDwgL1R5cGUgL0ZvbnQgL1N1YnR5cGUgL1RydWVUeXBlIC9CYXNlRm9udCAvUFVBTFhBK0hlbHZldGljYU5ldWUtTGlnaHRJdGFsaWMKL0ZvbnREZXNjcmlwdG9yIDI0IDAgUiAvV2lkdGhzIDI1IDAgUiAvRmlyc3RDaGFyIDMyIC9MYXN0Q2hhciAyMjIgL0VuY29kaW5nCi9NYWNSb21hbkVuY29kaW5nID4+CmVuZG9iagoxIDAgb2JqCjw8IC9UaXRsZSAoc2FtcGxlKSAvQXV0aG9yIChQaGlsaXAgSHV0Y2hpc29uKSAvQ3JlYXRvciAoUGFnZXMpIC9Qcm9kdWNlciAoTWFjIE9TIFggMTAuNS40IFF1YXJ0eiBQREZDb250ZXh0KQovQ3JlYXRpb25EYXRlIChEOjIwMDgwNzAxMDUyNDQ3WjAwJzAwJykgL01vZERhdGUgKEQ6MjAwODA3MDEwNTI0NDdaMDAnMDAnKQo+PgplbmRvYmoKeHJlZgowIDI2CjAwMDAwMDAwMDAgNjU1MzUgZiAKMDAwMDAxNzkzMCAwMDAwMCBuIAowMDAwMDAzOTgyIDAwMDAwIG4gCjAwMDAwMDUwNzMgMDAwMDAgbiAKMDAwMDAwMDAyMiAwMDAwMCBuIAowMDAwMDAzOTYyIDAwMDAwIG4gCjAwMDAwMDQwODYgMDAwMDAgbiAKMDAwMDAwNTAzNyAwMDAwMCBuIAowMDAwMDA3OTU3IDAwMDAwIG4gCjAwMDAwMTc3NDAgMDAwMDAgbiAKMDAwMDAxMzY5MiAwMDAwMCBuIAowMDAwMDA0MjA5IDAwMDAwIG4gCjAwMDAwMDUwMTcgMDAwMDAgbiAKMDAwMDAwNTE1NiAwMDAwMCBuIAowMDAwMDA1MjA2IDAwMDAwIG4gCjAwMDAwMDc0NzIgMDAwMDAgbiAKMDAwMDAwNzQ5MyAwMDAwMCBuIAowMDAwMDA3NzU1IDAwMDAwIG4gCjAwMDAwMDgxNDYgMDAwMDAgbiAKMDAwMDAxMzE0NiAwMDAwMCBuIAowMDAwMDEzMTY3IDAwMDAwIG4gCjAwMDAwMTM0MjQgMDAwMDAgbiAKMDAwMDAxMzg3NyAwMDAwMCBuIAowMDAwMDE3MDE2IDAwMDAwIG4gCjAwMDAwMTcwMzcgMDAwMDAgbiAKMDAwMDAxNzMwMiAwMDAwMCBuIAp0cmFpbGVyCjw8IC9TaXplIDI2IC9Sb290IDEzIDAgUiAvSW5mbyAxIDAgUiAvSUQgWyA8NGU5NDk1MTVhYWYxMzI0OThmNjUwZTdiZGU2Y2RjMmY+Cjw0ZTk0OTUxNWFhZjEzMjQ5OGY2NTBlN2JkZTZjZGMyZj4gXSA+PgpzdGFydHhyZWYKMTgxMzIKJSVFT0YK"}}]}],"temperature":0.7,"stream":false,"max_tokens":8192}' + these files"},{"type":"image","source":{"type":"base64","media_type":"image/png","data":"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"}},{"type":"document","source":{"type":"base64","media_type":"application/pdf","data":"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ZXNjZW50IC0yMTMgL0ZsYWdzIDk2Ci9Gb250QkJveCBbLTQwOSAtMjE0IDEwOTkgOTUxXSAvRm9udE5hbWUgL1BVQUxYQStIZWx2ZXRpY2FOZXVlLUxpZ2h0SXRhbGljCi9JdGFsaWNBbmdsZSAtMTIgL1N0ZW1WIDY3IC9MZWFkaW5nIDI4IC9NYXhXaWR0aCAxMTIwIC9TdGVtSCA1OCAvWEhlaWdodCA1MjQKL0ZvbnRGaWxlMiAyMiAwIFIgPj4KZW5kb2JqCjI1IDAgb2JqClsgMjc4IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMjc4IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAKMCAwIDY4NSAwIDUzNyAwIDAgMCAwIDAgMCAwIDAgMCA2MzAgMCAwIDAgNTU2IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDUxOQowIDAgMCA1MTkgMjU5IDAgNTM3IDE4NSAwIDAgMTg1IDgzMyA1MzcgMCA1NzQgMCAwIDQ4MSAwIDUzNyAwIDAgMCAwIDAgMCAwCjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAKMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMAowIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgNDQ0IF0KZW5kb2JqCjkgMCBvYmoKPDwgL1R5cGUgL0ZvbnQgL1N1YnR5cGUgL1RydWVUeXBlIC9CYXNlRm9udCAvUFVBTFhBK0hlbHZldGljYU5ldWUtTGlnaHRJdGFsaWMKL0ZvbnREZXNjcmlwdG9yIDI0IDAgUiAvV2lkdGhzIDI1IDAgUiAvRmlyc3RDaGFyIDMyIC9MYXN0Q2hhciAyMjIgL0VuY29kaW5nCi9NYWNSb21hbkVuY29kaW5nID4+CmVuZG9iagoxIDAgb2JqCjw8IC9UaXRsZSAoc2FtcGxlKSAvQXV0aG9yIChQaGlsaXAgSHV0Y2hpc29uKSAvQ3JlYXRvciAoUGFnZXMpIC9Qcm9kdWNlciAoTWFjIE9TIFggMTAuNS40IFF1YXJ0eiBQREZDb250ZXh0KQovQ3JlYXRpb25EYXRlIChEOjIwMDgwNzAxMDUyNDQ3WjAwJzAwJykgL01vZERhdGUgKEQ6MjAwODA3MDEwNTI0NDdaMDAnMDAnKQo+PgplbmRvYmoKeHJlZgowIDI2CjAwMDAwMDAwMDAgNjU1MzUgZiAKMDAwMDAxNzkzMCAwMDAwMCBuIAowMDAwMDAzOTgyIDAwMDAwIG4gCjAwMDAwMDUwNzMgMDAwMDAgbiAKMDAwMDAwMDAyMiAwMDAwMCBuIAowMDAwMDAzOTYyIDAwMDAwIG4gCjAwMDAwMDQwODYgMDAwMDAgbiAKMDAwMDAwNTAzNyAwMDAwMCBuIAowMDAwMDA3OTU3IDAwMDAwIG4gCjAwMDAwMTc3NDAgMDAwMDAgbiAKMDAwMDAxMzY5MiAwMDAwMCBuIAowMDAwMDA0MjA5IDAwMDAwIG4gCjAwMDAwMDUwMTcgMDAwMDAgbiAKMDAwMDAwNTE1NiAwMDAwMCBuIAowMDAwMDA1MjA2IDAwMDAwIG4gCjAwMDAwMDc0NzIgMDAwMDAgbiAKMDAwMDAwNzQ5MyAwMDAwMCBuIAowMDAwMDA3NzU1IDAwMDAwIG4gCjAwMDAwMDgxNDYgMDAwMDAgbiAKMDAwMDAxMzE0NiAwMDAwMCBuIAowMDAwMDEzMTY3IDAwMDAwIG4gCjAwMDAwMTM0MjQgMDAwMDAgbiAKMDAwMDAxMzg3NyAwMDAwMCBuIAowMDAwMDE3MDE2IDAwMDAwIG4gCjAwMDAwMTcwMzcgMDAwMDAgbiAKMDAwMDAxNzMwMiAwMDAwMCBuIAp0cmFpbGVyCjw8IC9TaXplIDI2IC9Sb290IDEzIDAgUiAvSW5mbyAxIDAgUiAvSUQgWyA8NGU5NDk1MTVhYWYxMzI0OThmNjUwZTdiZGU2Y2RjMmY+Cjw0ZTk0OTUxNWFhZjEzMjQ5OGY2NTBlN2JkZTZjZGMyZj4gXSA+PgpzdGFydHhyZWYKMTgxMzIKJSVFT0YK"}}]}],"stream":false,"max_tokens":8192,"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -26,7 +26,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 09:49:13 GMT + - Mon, 28 Jul 2025 14:26:45 GMT Content-Type: - application/json Transfer-Encoding: @@ -38,31 +38,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '98000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T09:49:09Z' + - '2025-07-28T14:26:42Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T09:49:14Z' + - '2025-07-28T14:26:46Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T09:49:07Z' + - '2025-07-28T14:26:40Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '118000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T09:49:09Z' + - '2025-07-28T14:26:42Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -75,19 +75,17 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_01DyEH4LwDJyLEhsvfjLSoki","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"Let - me analyze the files you''ve shared:\n\n1. Image: This is the logo for Ruby, - a popular programming language. The logo features a stylized red gemstone - or ruby, with smooth, curved surfaces that create a three-dimensional effect. - The logo is primarily red in color and has a sleek, modern design that reflects - the language''s elegance and simplicity.\n\n2. PDF Document: This is a sample - PDF file containing Lorem Ipsum placeholder text. The document has a title - \"Sample PDF\" and the subtitle \"This is a simple PDF file. Fun fun fun.\" - The text is standard Lorem Ipsum filler text, which is commonly used as a - placeholder in design and publishing to demonstrate the visual form of a document - without relying on meaningful content.\n\nThe PDF appears to be a full-page - document with multiple paragraphs of Lorem Ipsum text, formatted with a clean, - simple layout. It seems to be a generic example document used for testing - or demonstration purposes."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":2751,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":205,"service_tier":"standard"}}' - recorded_at: Thu, 17 Jul 2025 09:49:13 GMT + string: '{"id":"msg_01UPuvdQgf47FAZZum3rwiUb","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"Let + me analyze the files you''ve shared:\n\n1. Image:\nThe image appears to be + the logo for the Ruby programming language. It''s a stylized red gemstone + or ruby-like shape with smooth, curved surfaces and a glossy, three-dimensional + appearance. The logo uses shades of red and has a sleek, modern design that + represents the Ruby programming language.\n\n2. PDF Document:\nThe PDF is + a sample document titled \"Sample PDF\" with the subtitle \"This is a simple + PDF file. Fun fun fun.\" The content is Lorem Ipsum placeholder text, which + is commonly used as a dummy text in design and publishing. The document appears + to be a full page of Lorem Ipsum text, formatted with multiple paragraphs.\n\nThe + PDF seems to be a standard or placeholder document, likely + used for demonstrating PDF formatting or as a template for document design."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":2751,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":185,"service_tier":"standard"}}' + recorded_at: Mon, 28 Jul 2025 14:26:45 GMT recorded_with: VCR 6.3.1 diff --git a/spec/fixtures/vcr_cassettes/chat_pdf_models_anthropic_claude-3-5-haiku-20241022_handles_multiple_pdfs.yml b/spec/fixtures/vcr_cassettes/chat_pdf_models_anthropic_claude-3-5-haiku-20241022_handles_multiple_pdfs.yml index 884bf4a2..a278aee8 100644 --- a/spec/fixtures/vcr_cassettes/chat_pdf_models_anthropic_claude-3-5-haiku-20241022_handles_multiple_pdfs.yml +++ b/spec/fixtures/vcr_cassettes/chat_pdf_models_anthropic_claude-3-5-haiku-20241022_handles_multiple_pdfs.yml @@ -6,10 +6,10 @@ http_interactions: body: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"Compare - these documents"},{"type":"document","source":{"type":"base64","media_type":"application/pdf","data":"JVBERi0xLjMKJcTl8uXrp/Og0MTGCjQgMCBvYmoKPDwgL0xlbmd0aCA1IDAgUiAvRmlsdGVyIC9GbGF0ZURlY29kZSA+PgpzdHJlYW0KeAGdWsuS20YSvOMr+siJ8IzZDT6PXtmK8MbaIYfHu4cNHzAkNGoHCFIEMJ+737KZ1VUNUKRkjfYR4oCNRnVWVtYD/Oh+cx/dHP9d+eDW2+DOtfuPa933bzrvdp3zrtt9+v17N39YzeU/Lk6/LHAzvyznfruab9KtEQ/wsuqe//AZu4P7x6MrV+kq/l0H5+cr93hw37/1D3Pni8f3bvZ7dTg1tXv349s79/iX++kRxs656Wc29Bt9zEY2LEPaMDzMC++44eOH2Dn8r3JdtK3d/5r6wb0dWvc+/f9hfNiN5xQwHEgRsXsiBsNXZXpOScP5nP+62b+O5zvn125WH+7c/da7mcO/5dLN4qkbeG29LuTaYutm+2Mj60Na5ktc62LPOzbp0gZXqkPdf3cHR+mqDb7bHduu3vV1P9Tnu+Ie+/M5PmCnah9PsdvF9lmfzG9oSd3EHoeEN3Qx7nr3oerqphk6XA8lvyju/Rwf3le72MQu8osS5+EmNOa4j0fuYSb7BUyu91yFT/Io3H2ID9jpT/f4z+S9G4CSCZ8Aut5cA/pmOFdPsR94SvhZnrDACboBRzzJgYIeaAObfh2aphLokzU06qVuYN4q3buEdS3O9YD95Lzufonj/dRHuW2drvF4XX04AVyn2K4mPlwoIB6rhx47LXQrj6c08MvQAeigd25w8Z3S4hhbeFLP4QM+VE38OFQHOJgsIf5brK/PFWkgPq+f6x7AvhbNbVlIXE3pefpQGT/7c4UHGEM9bdodD4fj/kiu6QHLILbcFaT0kVywkwYe9RBBdkU/rPEBtNzHQ932QnU/B2FICb+cu1k6JSJSLgUeTYhDELgoJF6LCfhTLQhLuOKvoeuPsmalG2HBJqRA8mtYAi/ANnyQVfQLvA524M9X4hbmm2vcfm57eAHQ3UO05BnlGswigms9Y1nCNLoNnrdQWCyWxezNuSJwesrFHOdpqiwTNQ2nvTS83OLUTXweGtlZ+VOSGLvhDMozCMw1W9xUt/FApmFP3r+A9M1+qNu6AsuWGo+LFT50u7qpz7H7ONRYJ1uAtQx0wQnX9GGLOT6IUbYn9HzWi0Z8Gc0iqftlTAeIyhUL/52Mq7s+Pg2NUIXRxRN4Pn4fEUEHRgIg5dUN/pU4EcPWigASCoMU5+cJuS4QeJEA/qEXPZ1gcobFJJQsJmp/Z0q12w2HjnAmxaMIAbQKfKC1ajSD5yX2Fa5ZOPgNvlTFtbOt8UGsw+P/LF6ljQEJ4QpHFQm/SYEQqI+aUhjXlBQDZg0En5oK0Qm+qdmBuh5bLKOICyRLX8zOQ38WnyzNbh7l4xA7rlSmBqYvU0ijZCDlTkPzElvITGE2GN5ESQlrDkPBMNFsb4rpPcx9qc4x5SU73xz2QmGeyeGF7YqkMQOxobhE9XUZJyxvaCQowWQRX6qDPJ7aJeCscLU7Nk3cIR/tBThLISURRJpmhCo7S/JPZMm4HZY4bARzVIL3SSR5VtkfhRAYU8f3dbsH1Es9dknaMGXh0Lq0ZMpKMYmL6faSafCEOIX61inOTavL1bwQLtKBZh6p0QO4Humn/gboVjdkcoyWLMUSBpb8JIHoaSmXTAkMI1+qlDMkJcZTLsRXW/AsuRdstlvh8t+H7gScYteBDKV9Q4o18Yk1kWQsbJ5ZTKFm9QIQTC8DcTxUfS9lTr4q2V/KsAX2k5Jog4Vah+XMFHiN2ftCwwP9wJT93RdBva2W0JarKP+AY1rSPotVpuya5r67K3hucsgzPbWsgSB0wDVdXeLi71Kj0WSuYwWlgmX09lSPakBwoTTSZcysP6T6hNvNE/2YZFR6UsmI/UDRl2Mz9CfJf6wa+Jjtopjcz/oMVxkq7+vhOUqFw824lA5/GZrT0FdJWie2g/zNN9STYXtDM6e8EY7w4UscnQLHjymcaKTgiEs5keBUJ/NEHyV6E0EcQjWlBEItJ7+xluHP8+OfA2WENaIlI+ayVCMWM6kRWV5wI+8JDBMJ/tCAxtpUJFAlFD9WA131HJXLqUItYEXF3iFokcI0AG52vZQkpWJMx3+ZrejcrhugEvy7ZGsWfyfpwonjPt9W3YyBEoe83BVt1buJrhGVsMKxpVPSI+ACXAAFHlG6l3yYq3FWjry1ZJi/O1d1B6HE33kDfH+duzSuAmWoHdodtEahlNSlpLHWLDBCYrUb4Fy4hg8sYCu8YK6BL3LvJDlUSltcVDeGJbanLMLUzyez28CBxVfANcen4znJm1fDpUnscZU16BYJn/xQspFgqZsT42GrxOVFpaY4sibbD0hKuXpFO1NoEhwPKT3OC0rStkpmWGcrXSY2RhBYf+mZy38VlK22p0Fa+oL+aibiWgNAVM6MZyNhxZ91aAyLXPu9viUt0Q9eYTr2zKhQFTjYIJ3n7niWptHqJOrxRa/ujD64g5KBE1CMSRQWRT8mFQoKMhb1sd3F/dAyjE1dmMrQEQNlHLllr6AqTn2P+7sCl4Xr2OayJSOP8Q2FvRnYp2JXy57cvY1PH6bUK76qcy/Rul3BlATRfBs85h4TgTd524BoXXWKNetQy9WBrMM5nLX2gV2TxRCjBbTlAT3D5VB1HTHAPCZdlNSvQr0DQ3MVTC2Vkkzx8RjjaElaqDqjh8C1qd5AsdUbnhXtyzQY2LLSDso3gH6pKOuvpxkbsSv8pLUpLGN7VlTGbpNzDmSEXVAM0TKYIbCwUtbiapU8DoYUWo4aSlisAm24+9yhsCzbqI8IXwpUSzZ+DfzHyUzuHzyplAlLl0yetYeXnwagA7dRi9LoC4ayhSusI/B86mRaguWf10EdKF62nAv0Q1dgWgbNIsgmElMlTMoYAWpnoP0XrbJXogUimkZznCDJIShHWhNaJg0SgJYALCrv0YIC63qHSs1anMA0dP5wbHfSZNhoy9OuCgtdlgAOWmR4SKlQvgX2tKMOaXOKuODEZQIssbYajVy36c9umOT7gqPgm5PaT4AFOlfAjpVcKvmR75gh6wFHyL0G5wzP5+ol7hmnlgECRVoWGigla6OR0JxQJKxxXimaGHs1dk6SyWSOLQycXJinNKKDwEQsmEUtAQ0IiW5KqmFHXGEBSJ+K/0QhbKwT2JXl2S0glJQulbfWu9/AULjRgNQJtcL44NL0xk0bOfjdpuBf56f1jQD4ub1zpnosaA/VgLaKlFJ98ATqUvdSGY+RB+GWXG/84+xbelIS1eKBfs/Fz73lKiq0OFmWYTOG4Eh8IwN5Ly218V5amYvCQbnAjMEIKay98SSB5tIcnOyI/qBrdaIrxYMOr2kSvU0Tpf5CMLx2WL1AZWE+zNP/iXSQJiw+wDhgZCMAT6JZPYIS0SJEBh7tkTmQTBd5ITI6kcUsRS8yD1ZYNf37VO9ZRuQsxWjToaPtLyOEGtWrRxaQ3bnIEqfJH/HQ1w9AVBAi1qiq+Zk5zspGHbUiQHGLNX5Y9EqpXmK2aCCmQECtn+Y+OFBOfTzFj0foJ9ARFiGEqdQN3lG0kXCAumIi/m1rzjgLdva85CkyUiHBUl6QG6X0IQNUCoi1tvLYzYSEDSvBvStGp1CHtN6w5I898FYpT3ViGlKKVOD5fDzqPGybw4mKLvnaZIxhlcddajgfPlHyL4J7sx9Y3hq9ynFczjZESep9GJDQWhVajpFRCplnU/wWL1wwahmbYThApwA2kGWLxQISZ01tPafVuDYOSfgXn8P3C2nyqA7wlCEbfmGBTRA8g1ymKXCpmbOFORYZCWGxncqRluZ4C6S5DuVtAu/Dtkin+SKmN2uLJYhihJWoL0BYSVj2Lg4dlZtRVg1RvhbRaLRZB8faMtMiAxWRNToeiy4bnNp5qVcnNGx9lJ7N6CmjAakq0Bqp/+jZPNW7K0h2wUZCu+ZYMU/WKEW5ZoUlmRRzbGajXTXFZpFpqq2l9ZHpw2xkSSoU+QpQi8u6YgnRvgCVL1InrYIhyUdYJmZPzYMtMWGS2l9Vk5VsTm25IZCacvKm07pD5oZxFGNDSI5epsWtHZGtTGqOc+ZhuTVpxICHRq/0wuPozNjAGkx0bHqm1P6g+zEnilof2xHJr63Qlsh6V0hqS4faEPuPE478Jktf/WnzgiNYBg4Mwk+n4TbYlc5rzGSFsYcvfNIYERslH0ntnCYlBhy6wdSgkEGKRSDuqPzT5Fbek+r9vCsPAS6FfRy/ahz5LRnASfw3TAyXt+avNyeGkrA1//AM5jpaZ12aZ7KGE8GRasyg8iaN4aadBQfkFTIbRt3puCRl6kxkVbrIactEHg1H3jwpOtBH5QKIjvqlqncYvMjYXYnJTMaAyfNFXE9J4cIAGQ6/vipa3hq58p2PU7126f2H+BjvPx6c5HXHwuzBYUbtpi9YHGpOlyyRMg1Af77AuJkDV5gJXQXEL8fzE1+mqGRIQaoDVnFYcU/N5rQPcqnBT/xHtiOBGd1wBwsQ1VnOVZKgAGJqEzWKjp3UbHx/iDXSyowVIIVWRrULoxJDJE8vFyZOzMlTRmbpZxgx+/GBukUajrDOx0WrnJj96gHBqXQTlqZ3SaPgyK+DvqIlXMGuK3zHw9l4LIwRDB8aRSXgdeCV8ES9wFFqemum6qEjnmcZc+n4Ck2twIVjWe3q2RbYMHWFKkaQZzrYx2eMOfDDH6y2bCtlCZKf/VhhKkMcqrxJr+bS7xfYs8CY7riLguT4SOCMsebxm16grZBTr6DDKy2MSTElga32uwjCJW41XSZEh4qHyifCb1lwEW/DiIh6n0nuVJ0hJRiuif4k5vH1IBibKyweEhqxg2ZypLjU3yex0DtHvIrHG3puaxNN8gwvRulHlRTPLv0qTwi9YBeQyxW9WsYfxKTeDEaLn7ABGo8v8u92fEMsr0C0hkXs2qff9Vhu5aM7/ekQOjTTAP7kJpUNOCk+i1EEkjNynbJq1YMa2ISDEiu1bcUJltHaszyFlAFiA4gzuAxCho1jbKW/3SuvGTUF7gZgbKHsyWT7kZLtQH+OxR7sNMPxOGlSXi/gq1uTXJEVTFD0OHxzC2WGdVZHeZYWk3FUFhuSBmEmLxXzK/stFOjTH6mkOl9mMdorU87waxoyVaiEeSTgng4Xk0/lZ1xa9tsYjp3ZZHSg/uI7I3kvBVU3qFi2WCvBOE8IimP/5gXuzf5gjX7D+KiTHY5hAZVNcH77P6d6b9EKZW5kc3RyZWFtCmVuZG9iago1IDAgb2JqCjM4NjYKZW5kb2JqCjIgMCBvYmoKPDwgL1R5cGUgL1BhZ2UgL1BhcmVudCAzIDAgUiAvUmVzb3VyY2VzIDYgMCBSIC9Db250ZW50cyA0IDAgUiAvTWVkaWFCb3ggWzAgMCA2MTIgNzkyXQo+PgplbmRvYmoKNiAwIG9iago8PCAvUHJvY1NldCBbIC9QREYgL1RleHQgXSAvQ29sb3JTcGFjZSA8PCAvQ3MxIDcgMCBSID4+IC9Gb250IDw8IC9GMS4wIDggMCBSCi9GMy4wIDEwIDAgUiAvRjIuMCA5IDAgUiA+PiA+PgplbmRvYmoKMTEgMCBvYmoKPDwgL0xlbmd0aCAxMiAwIFIgL04gMSAvQWx0ZXJuYXRlIC9EZXZpY2VHcmF5IC9GaWx0ZXIgL0ZsYXRlRGVjb2RlID4+CnN0cmVhbQp4AYVST0gUURz+zTYShIhBhXiIdwoJlSmsrKDadnVZlW1bldKiGGffuqOzM9Ob2TXFkwRdojx1D6JjdOzQoZuXosCsS9cgqSAIPHXo+83s6iiEb3k73/v9/X7fe0RtnabvOylBVHNDlSulp25OTYuDHylFHdROWKYV+OlicYyx67mSv7vX1mfS2LLex7V2+/Y9tZVlYCHqLba3EPohkWYAH5mfKGWAs8Adlq/YPgE8WA6sGvAjogMPmrkw09GcdKWyLZFT5qIoKq9iO0mu+/m5xr6LtYmD/lyPZtaOvbPqqtFM1LT3RKG8D65EGc9fVPZsNRSnDeOcSEMaKfKu1d8rTMcRkSsQSgZSNWS5n2pOnXXgdRi7XbqT4/j2EKU+yWCoibXpspkdhX0AdirL7BDwBejxsmIP54F7Yf9bUcOTwCdhP2SHedatH/YXrlPge4Q9NeDOFK7F8dqKH14tAUP3VCNojHNNxNPXOXOkiO8x1BmY90Y5pgsxd5aqEzeAO2EfWapmCrFd+67qJe57AnfT4zvRmzkLXKAcSXKxFdkU0DwJWBR9i7BJDjw+zh5V4HeomMAcuYnczSj3HtURG2ejUoFWeo1Xxk/jufHF+GVsGM+Afqx213t8/+njFXXXtj48+Y163DmuvZ0bVWFWcWUL3f/HMoSP2Sc5psHToVlYa9h25A+azEywDCjEfwU+l/qSE1Xc1e7tuEUSzFA+LGwluktUbinU6j2DSqwcK9gAdnCSxCxaHLhTa7o5eHfYInpt+U1XsuuG/vr2evva8h5tyqgpKBPNs0RmlLFbo+TdeNv9ZpERnzg6vue9ilrJ/klFED+FOVoq8hRV9FZQ1sRvZw5+G7Z+XD+l5/VB/TwJPa2f0a/ooxG+DHRJz8JzUR+jSfCwaSHiEqCKgzPUTlRjjQPiKfHytFtkkf0PQBn9ZgplbmRzdHJlYW0KZW5kb2JqCjEyIDAgb2JqCjcwNAplbmRvYmoKNyAwIG9iagpbIC9JQ0NCYXNlZCAxMSAwIFIgXQplbmRvYmoKMyAwIG9iago8PCAvVHlwZSAvUGFnZXMgL01lZGlhQm94IFswIDAgNjEyIDc5Ml0gL0NvdW50IDEgL0tpZHMgWyAyIDAgUiBdID4+CmVuZG9iagoxMyAwIG9iago8PCAvVHlwZSAvQ2F0YWxvZyAvUGFnZXMgMyAwIFIgPj4KZW5kb2JqCjE0IDAgb2JqCjw8IC9MZW5ndGggMTUgMCBSIC9MZW5ndGgxIDM0MzIgL0ZpbHRlciAvRmxhdGVEZWNvZGUgPj4Kc3RyZWFtCngBrVZtaFvXGT7nXFmSpUiW5CsplmxZ17JuZEnWpyXZqT9kx7LlOHP8UTu6hiR2/J3Zq5e6IYFu9cI2Mv3o8qulsB8lHYVC6bRBg2r2I4x90LIfhnU/tmQshRXGGKM/kg3GbO05V7JZhymFTeLRed/3nPPe9zznfd8rQgkhp8guEUh2aWtxm7xInsHya6C8dHPHS0R8Cf02dM3q9tpWyDL6C+h3CWHvr23eXo2+bqlgKkuI7un6yuLyXzt9F+GwC+vT6zBof8X+AX0Tevv61s4t+6v0Q+j3oIc3X1ha1McMq9B/Cv301uKtbeYXRqB/DN37tcWtlX/95GMr9KfQ49svvLhD3qI3CDEFoHdv31jZ3iaGOegL0PUAxZd/ThEteRejl0zVLKr5f/ph2C2c4EGj2upOmDkyaWuC7sigjnpSr44GznEZfIyXSf1k4ceUvqqUaeU7ZTLc8gHWCFevdJYJDXu9uY3hEl2AwsIwBCVIQtg7UhL8I9MFn+Iteotjy0XviHd9cbmk8asjJlaKStRbIjOFDfw+X5BKWcV9LK4oyln40XA/2ILlRQUertc8YFRN0QMsqguPe0uCPFmYKpR2h92l7LDiliRvrvRwslB6OOyWFAWrtMeRIuJvbJyuxaxDzNog5vVVLzPwARdKsch9QmOyVHpYLLqLOIlq8UllSmoGnJSvEfy5Ms1OFvhU1ie5ucEn+STEoQzDd314fKaQQyQSj8TwxZQajwPF2lMIz6hSavo/UWr+MpQ2fClKLceRfo5SK2K2cEptJ1Pq+wJCjxnOnsDwbpXh3RMYbvwPhnn6MpJA2f0MxSEQHTESZEkU6RSNxf2SVfJbJSvdO9ylu4e36D09/Ux/iB3VfWlsXmAfoVabyFaZuKN7KFUTEULIbQt0QHxcJrrHg3Xk9/D9F4BdHnSjJHTYoiMdQA8wBijABnAb+B7wBvAO8AHwIWC6jMjMiIwisow1mfAwu2hmPgFiP0t1RZjv/CfptelEfPbrA08eDd660p25tJUS2X3PV+4sz70y08EeHKQDs3cXNopTEg5ACeKnf0P89aSVR645jly7X2OB4nk6PK/RKqUkaxK/5+kPD/MifZl+k3aLB2l6Hc2Vc8i5iKlcOMlLZdIELswgk3NhBg9kHzaMOvBhq/JhAx+2Iz5s4MMGPmzgwwY+bODDBj5s4MMGPmzgwwY+bODDBj5sVT4I4jviBNGpRMg+yYp4Ew6VnvNUSMz0tt1YO/yjSE3Li55UPkhzTfGx6OI1hK/Qy/OzwWynk/MhVT5jKfaI9JGZPdKK1sujb7VwbpActVttxSmMOI2RXwVkO2R7TQ7idHy+CyOfG3gMHv2Y7AGHNBkRfG1m3JqHOT2CGl1bhKV8Wg87usIzESHV1Q/Vw1ijKATOKanQpZFwMDcX6lDGoh1DM8GeqzlZpB3ja32R+Xz4zJCSiBRyoeDgpD/2fJ+fsd6ZpNMWHE11DZ5xGAyN/oF0ZCjY2NStZIcX+prt0Xyyeyhw2mQU28/GYgNygxgd5/fnqDyjnzIziZMR8voeKGhUT9z3udPvkQBv52AigNPVA8371TGxj7TWYpsDkIE0MALMAavATeC7wGvA28AD4JeA6TKK47cQPgXY5arnPOfNAd40SKNm+NRYbT3IwmQ/Pcp7nRkMOjhvmSSE52jKTCM0Za1yXHfMble/NpMW6+ankr2temf8QsqbTbRemQgMp3x6Jjk8Bqd4ijZH+tpio3EXLbhTE4lgT3uDK9zTO5AOGuhS/qI7mHC2tDbUCcwknY3lcvb2SNO5FrtIaZ25gY4Gu31mV2RAuSrnM212KeToSLYYNUzfYOa8NlWe0j+AVzdYGdhDHvGa4BnVfJxRjeCwEYdtBp8iZBEygdzCq7CNK4CRV72URpXXUiiTSGd8ZupDCvmlfoHz0knfY02ZS72h6X7ZlZ7tLdwyiqavTmUuxJz0jcNVoS0zFkxcSLoOUtcuRNpzy9mepbEAXZqfnZWHlHx6rs/rz84itAzCHEctC8S5p/5h4DcuWBAN7wdE7QdJa0ZkHx2ksQwfdQ/7DbOQGKns4adaLzGcguFEfDTxqt9He3wCoAvWkTchlKpKIzaYiAXwAjEgC0wCC8A2sAvUIz0sKC0Xd/UmcWG3q+pqH8KTqsJdueDKBVcuuHLBlQuuXHDlgisXXLlUVy1wZUFkfkToR6LJeIQFiVaNNwJrBMdtwYoEz0d+dt5r3IAesKtbKNFjyx6JggMu8V6ZtNZq2P5fIr89rc4XoTpcos6XyojOUL8cSnuMoiPY6w9mJJNokfujvYUGZprq9aTCHh1j7OCQ+kITz/maY9n2wwd0pH0w0XI63C8fvkeng7l481C6Z5DZ5YTnFZwdOZepTNK/I+dOkyB5p0zCCNRBnGq+OXAa3ov5yG+G4SBhyAZwwW1H+cdlXtsGjHK1X8vo1/JRv5bRr2X0axn9Wka/ltGvZfRrGf1aRr+W0a9l9GsZ/VpGvwa3/P3FM1lCOPwNKqm82WtSLO60Jj0o79q7rEqQz5ppk486Iq/pcWa7Pp2azrR4eqaSZ851yQYm/unKjebURDwxHm9yxsZLNDsyGzp/LX32Wj7gDPa03TuYKH/rdmJ+OBDIKYlOZbST56sK4XeDr11t6H1GrcKfYSE///526/HoqEwiox9Br1fj5RPYJ7xVCRG3ZvXwR5V5zSXVE585+hjpU5KgDlzDXZKmn5A06weWiATZgbkmcodkBAPJsCa1zprRCF4m96mG3mERdpfdF9aFf6pejWQTz20Dqv838KKF+D7mqtHbas/W4lVFJoZm83NzofzK5s2VnY2lxYmVl1Y6Zzd3bixe2Fhb3+HRVb2Qyg/4/50TPkbYBHIGl5pE9x4meXIRZTODHED1k9C/AesArfoKZW5kc3RyZWFtCmVuZG9iagoxNSAwIG9iagoyMTc2CmVuZG9iagoxNiAwIG9iago8PCAvVHlwZSAvRm9udERlc2NyaXB0b3IgL0FzY2VudCA5MzEgL0NhcEhlaWdodCA3MjMgL0Rlc2NlbnQgLTIxMyAvRmxhZ3MgMzIKL0ZvbnRCQm94IFstMzM3IC0yMTkgMTExMSA5MzFdIC9Gb250TmFtZSAvTkJVSFZWK0hlbHZldGljYU5ldWUtVWx0cmFMaWdodAovSXRhbGljQW5nbGUgMCAvU3RlbVYgMjAgL0xlYWRpbmcgMjcgL01heFdpZHRoIDExMjYgL1N0ZW1IIDIwIC9YSGVpZ2h0IDUyMAovRm9udEZpbGUyIDE0IDAgUiA+PgplbmRvYmoKMTcgMCBvYmoKWyAyNzggMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMAowIDY0OCAwIDQ4MSAwIDAgMCAwIDAgMCAwIDAgMCA1NzQgMCAwIDYxMSAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDQ4MSAwCjAgMCA1MDAgMCAwIDAgMCAwIDAgMTMwIDc3OCAwIDAgNTM3IF0KZW5kb2JqCjggMCBvYmoKPDwgL1R5cGUgL0ZvbnQgL1N1YnR5cGUgL1RydWVUeXBlIC9CYXNlRm9udCAvTkJVSFZWK0hlbHZldGljYU5ldWUtVWx0cmFMaWdodAovRm9udERlc2NyaXB0b3IgMTYgMCBSIC9XaWR0aHMgMTcgMCBSIC9GaXJzdENoYXIgMzIgL0xhc3RDaGFyIDExMiAvRW5jb2RpbmcKL01hY1JvbWFuRW5jb2RpbmcgPj4KZW5kb2JqCjE4IDAgb2JqCjw8IC9MZW5ndGggMTkgMCBSIC9MZW5ndGgxIDgzMzIgL0ZpbHRlciAvRmxhdGVEZWNvZGUgPj4Kc3RyZWFtCngBrVl7bFvXeT/nXJKSSPElihSpy6cokuJDEiWKD4kSKdqULEuyLT9iiY5fsiLHcu1EecxIgBZ1gS5DhS1pi+7VbkuWJluTIo2bwoUiDImXdU0bbKtXrMUaGEaLokPQDmgWtAuWxNR+3728spw4Qf4IiY/3nHPvPef7vvP7XoeMM8Za2UUmsfGl84ur/BviCEb+BfS9pQsPBlk7vox/EX3d6dW7zydtu/4Z/a8wJi7ffe7h08433k3h1ixjnYUzy4t3/XcqnGbM/3k8nzuDAcNPJDP6/4B+95nzDz40/VXDv6H/c/T/4ty9S4v3/fRTbzAWeAj9vecXH1oV49Ih9H+AfvCexfPLQzv3PIs+nmGp1XsfeFC3R/enuAWe2D2r9y+vrjLjYfRpvWYQx5c+rczA1nENsvnGiDJ8y49AT7pl5MM6OtzQY8YmZQ3GWpQHjcyEdRiDfPhYQFZmU9rv/7GzNuaAHp3MxTqYm3lYJx6RmZf5mJ8FwGWIdbEw62YR0jcYT82ss5a5hW9z/mhtnW/+4Tqr+l7EutKJ473rjKeCwYmV6iV+Eh2RwkAihJaUCk5ekiKTBxbCteBacG33XWvByeCZxbsu6SLKFTeW12r9wUvs4MIKfg8thC6N1+St5nKtNoJ5dDQPXsHjazXMcLYxA67KUP8NPKRPzQQvSdG5hf0Lly5W5Uvj1ZocCgUnLl2ZW7h0pSqHajU8ZdjiFBx/ZsXd4LkJPBsSuN+sznIQc2CK2toazYmeiIYuXVlbk9cgiTISDq1z1hiApPSMFJlY5+NzC3RrPBySaSAcCofAR62KuVtSMwcXJsBJiDgxfrRKTVuM4tlWsGdSVGr+hFRq+TgqtX4sldq2OL1FpXbwbCOVtt1epeGPUOiWhsdvo+GLqoYv3kbDjm0aJswLNggTfAWGJcFWTLBAfT/g1J8eiITsoYg9ZOcb9Yv8Yv0h/sVm/mZzHW/Qh7Njmw+xy+wsrCiwoQxISaDaBoBcBfVjphbMxDBTPuzMuCyiyVmSspcPJbi+ta3VFXKZzp41+WSXLmnwRpIuZYpF/NKcEpM3FCegzsk2FKunjmRLDxR5Nrx46NBZPMzE5jv4+Yx4DXwZYZ94QuGfWCC2DIzeYnhLFhLP5EMdGf7cY2vP1X8xdZhPzO+uv8Hd/J76l/kLN3LXr2MafDiLbr4lnhA/Y3F2fgOmblImCdoqMuYLwiMEWRSUA02CDoNOgy6AHgH9GejvQN8FfR9kPlbRs5+g8SuQOAZpZHgd4ku2bWDGiNI2gEee6ZPCXRbhbPeLzGBJ5MMW9PtEdqiEvl+IA9Wm7L7FzKHPHkok8FO+ezbdVNV3j8wN7jpdCQQqp3fFdhXj/K3C4aJ/7O5HpqcfOT3WM312R/pgqTtXu2+kuFrLdaQqtO9T+PkjCNwMH/eZddYBdRkhPLFlxC52gPTXANBrYP518PtrkDgGFbSg4QHFQcOg3aAaaAX0MOgLoL8EPQN6EfRDkJmkboFmafoWSM2wmLYzDnumxLND0ZhkJyGd7RYRnnr7608//fXvfGnPvVNdXVP37hGv3cjpnn/hhed1N1bF4dDU/XNz90+FaK9IjhHIYWIZWkKVoAXc665iTZ2yJq0HT6wgYQMS65V2MzTusIeyALpCU/yt+gH+aP1+/gwtN8I7R7gY0dYwY40WBi01NdZowhriKhDHFaQ1bc0PzClt2lHIps1e5Yfrz/LP0dT8kDozzb0H030Jc0usYzvMlXlV+6E59lTpPTyGjyqzFx092Z6+wY/ehneIQVVmKGBLvin+H/VVRSaBtIADtUy8i/ctbH77mhtQYrPCuglbREHSZG8bbnBCfkG1aHjaxioMt0mfnKktc6Olyp1x4AvewyY+WRW/H/+dqN71v28rcqzc+HNB9NqNR8X9qky7wNPD4MnEZm7liUI4bR3puxlkvAoi/8LBEXHFQE23cGS8lQ8OHuxhvqsq+BOzVVE/qfBw9MZTuD4ljtL6qj3UsH4z4v0X1pkHE/IGaMireUBtsAe9ag962INeswc97EEPe9DDHvSwBz3sQQ970MMe9LAHPexBD3vQwx70sAc97EH1lSbCjxFL3WobrQ0sKXocdDnbDWEORZJLyA71ifAf/3rXwsKu+o+r/5feW/D7C3vT/BzvnpqenuLHga5BOTubTs9mZdrrEHzZAfiyCvtbMgMywQ0kLl3KEmHsc4ESGWzkOiv0K7ZegGwFTbYCZCtAtgJkK0C2AmQrQLYCZCtAtgJkK0C2AmQrQLaCIpv52gbrbWzCOuvFBrmhOzN0uPMarHKs4ZfHsHwPMira3h6gNR82KI5PR1L28z5Jc3wdGRK74RkD3C8pTgKe8UxVis+eK5ePjIUdel9mZ/Rbrpjf7h+ohKMT2ZCoJqdOZmdO5tvlVDHwuGcoKUeHd3gHDpe7f7Pj+KivI9LX29OaKiV9xqTe1hnx9ORCVmd8LJ4/WPAmS5OdiZEed3PM4PCn/LF82OZITSsqrECn54AVD5mbB0MkgAfCtMJqqN2q2iIaeMDRkNah2GPDtWcBSXJ05N3tlcDOlemZlZ2Bqje3d3Bgbw7GXc/nl6aTyemlPP9hfbI0n/d48vMljj3kSsw7gvWbsLhqB2QDEtYyNJSeHkC042EpLBl48z7eMvVf4g0F9a/d+Jz4LOE9uPkWrwsHy2JT/34D8HAonFcgRaqB+5Qa8SqIeBVEvAoiXgW+o4KIV0HEqyDiVRDxKoh4FUS8CiJeBRGvokW8CiJeBUAi3DlYRcEYMcqBBfLQ/qsg9KmdQzuF6wzhYxQZN6lxFMwMwJ9Re4C0h0ChhYgmC0DQCJMZpZHLZw3hrqy9ARW9hhECUb7E87mymB31DkScpnZ/e2ZpX1ruL3dH88mwXehtPrfZbmoxRbpy1a7e6XyQ7/EN7Oh2JYKO3sk7esxdBn66PNzijgednVaDMJiDY7nYcMRu6Yx52kNusxBZXZS3DVW6ze2JHQ8fiI4mXBY54o7GXaYmYTRBA9D5KHDjxr65oeLn1lkfNszdQI8bsgvoQJCtoK1DW4d2H9qt0BeNuTDmwlgr2h7VD3lgqx7NVj1oemCrHtiqB9vqga16YKse2KoHtuqBrXpgqx7Yqge26lFslWYOkx8iMPuBKdK2H5q3wzapbVdwm8lm/FB+wwPBFJvCdq4huJGfjI4I11K5OD/i9Y7MF72FdMQo+HFHfLx3cCLpcCQnBnvH4w7C4ancSHJmCRCfSVl8CS/vqRd69pVisdK+nsaVXFUXMPobYDRMeZi3gUqvikovUOkFKr1ApReo9AKVXqDSC1R6gUovUOkFKr1ApReo9Gqo9AKVXqgMOOtABCQJOyCtDhUdtSlqIg/jmrfJDOZuTcNc/Btl0wMHi3eWgsHSncWFVXNZ6uwZ8vVWezs68FOe5KdqC6nppUIBBrxyPJiLuaKlffH4vlJ0h4oDyi8FcNDJ+tjL66wfiueABy1PsUaAtP3vR9tyFYR9p3E32m48j01nXLEoGu3EaCeesKAtX1PyVBn6kaEfGfqRoR8Z+pGhHxn6kaEfGfqRoR8Z+pGhH1nTjwz9yNCPul6EkEEZTqLhIBLQVQsSWWK2BboKUWx9X9qacfIGIjQbFKIsjJF03rcFjuHBmFHU//qD4Kj/pzfhs6RUdCRtvoTnFBfvB4dQsPEmsGGEjCcoc3EpLFHmQiU+sUd2YgJxaIfaflzJ3zC0A2gH+oGBLghLD3cpiFfrBTvaHFOqGwI8hEoS+R19KHczDKnAAE76BH++/oLOkxiNwew76t/hfyLc+YXSWK0gy4Xa2KlPtZeteyd6xxMOHg3vzAQCmR213Mr+wf49pzKwgOTJhdGp6MhuwgaHBwcGgA1Zzc3aFSYkcNwOot2ndiftCqUo1kZyZFU4VsVWijA8ZMLDJohLfSfaJHbHVUiTDatx1dWRVXHu4yjRkGBw6bQweztNLrPVbYkOeI0LC2X+o2yvs1u2SSInhKunEOrP1gf4j8Ar7UGG0x4kWIn90zorfwSOy1h8O45VX6aa4E0ck3yE4bSK4TQ2NY39TQPDaWA4DQyngeE0MJwGhtPAcBoYTgPDaWA4rWE4DQyntzA8QpUA2QLtJ9VcLYh61KZKJNnAdRJYjtjDzluwnMtnKPnCFsfCfkCgJGIUsLeBm79ZFi2hRMZXmC8GOocXSsN3uMTehc7BuE9flmLF6Vh5Puf5VWo80e5IjPf2lnvanIlSgr9ec0Z9tviuE9n84lR8JD15/C6TO+aLF6NtXeNHp8PD07GePaORaGk2GpseDqvYKAIbVKR2sv0byoEUCdEJIVBhKQLZoLtOEEUSuqreQvHtZMXkRjZQ76kJtRMveoA4yt3VjF1FuRNIUGKoAS6+WOYdYCqa8beW21K7c/mjbfBcSDJ7o5V+2Z0YDtVf4rN90xnvcD8PABNjYPXT4JHOE2LbM3kVgOTXCMEGQrCavWNtZybbhFXHyuWyeG15+fs33hM61Pa/3NzRmMvJdn74XO1a9GqGPZBKqEzQ0G9FuxWLtuIkQl0HG2qIxpyDLiWa0aLtkaa2ZpPTFEp6WtT1XwomOedDoiM25BMZssubcn1UnTYG/m/WaaMwSD3so4f9+63cm69VJPYyNo0fQ+MxrfFbtaFX9hMHBxTYJTanjFIpjg2lF3+LrKHxYqPxsjpCL7rhm93ai3SbIgKdYpiZTYkXpP0oFBIFFGLYLEkZlTGauKb4ekKJ6l3CDaSEcZN0Sl6E2j54EapKNTvQmi4FOuEuQxP5FcAnO1puixR7/AmPqWwO5uLVXPmbmSMdloOZ8n6PJHQ33uPB+ETG1x7u76w/ybu7dw4Fdo7Xn+bHLw9m4GDT82CQMxX3DkAeKOgknj8u7j+I+Q9Deva2SCcOb4P0GnhQ/N9bwoj9dUCRr6KEgdrioDA26pOrE3ugcA8U78HMVtUvWuEXrfBnVvhFK/yiFX7RCr9ohV+0wi9a4Ret8ItW+EUr/KJV84tW+EUrwAF/aESuR2o0wgvQ2Ty12+EDuXYE03B0+W3nUVSWcZeW6GhXLRNqXPl1LdvRrlktGUI1Q0kR/n6gXHgHcmEHsJpi31RzYfJyxAZBjDwYXbU8iPJgC/RKYzdjB2tUrhQzPqmMWLEBqtrU7NcB/fgbqacf+iHcZ9RYoNTiCsw/kAgr2U7Bq2U75SWX4EtarmNPTA4pibDuRokHvQmvRcuFi7lT9bqW66TmRruREENXUehKQFeUL15W80X8e6PoioK65vGpdqC2prPtuePNaKBG2E8uS6SZlSyR6oebmeH2jDE9oH9/ZEVJhnxDcyCNOkLgJM8YGxze0psvTyVE/UlNc1oJ8ZJ45VRn3G/TskQLlFj/Ob+iqW5bDQEfzIvCgkwf7NGfR4QwCTybr4LUcyTiW42JVIoy3KBz64aH68hGVU/mzUwmJ5fdQnFbjvjEoCzKUrX8MOaEjwqgVnkFe1RkzxBgAso6VEYhwCptjrYJ437F39IRmnLorfRc6smLC9Wci3w3nbK6EJxdqOZcqOZcqOZcqOZcqOZcqOZcqOZcqOZcqOZcqOZcqOZcMPJ1FoONUM47iGsM1zGqp+XGcY963pxX2Hn/efPNU5Uocp2tSm/7KQy/ryz8mZ2xrolC2BUbCux3xoMOOTHQUb5DV26+787u6WK0M56VD9miQaerO+mU0xEXP490p93WVYiFegPO5ja9xRnoQGVsrIyfOGyLFBNdg11OnUNnbvc5PV3OFrM3qeizafNd3iIeh1gPfLA6MmCLaA+bcKX6xwVpaT8p1XVoFYutccZsg+J1OHSjjdfhAdpfOuJWAYC4iraWmurRbqfolkUmiJzYgCQhl8G5Qh/P2jPZJ8pHjvDBssVrkeUu+4rQfe1r2frjOwZEVhLhAD+aVbFQBBauI4NxU55280zog3Lc9GTbq7mtrI2iF50gNTdyVDqxpnpLMZdojFp0AkJZKr9ebouOxGfGRLk9OTEwcsIDnNb/JzYzEp6a5HP1b/dNDcr5oWOKbvEfDv9X8PdR50cyzzjo/Ei8uvMfK0+IJwn1mLHI8Wcy4V2hi0+88/YJ6+jvuV2i/3vZ9x5bDWhXZG8ZZD8/Q78FPkz94D3p1c0k8+lO1Z/ZrOkmlJkaN5VLlP+ODXKYBugYaFFc2HxHXGFR8RybEvtBHpz5X2d76CrhPAr3dokLGL/AQnimIvbj+SYWFCU2imsXrlG6cokZRAp9D2z0ReRzL27+kq6YY5TGlHv0Dp7nRTbKf8ECvIc10T3UOySBF99JdpKtsff4Sf5lfoW/zt8RVfF58ab0Vel16T3dd/V79RuGo4YfNPmbftrc07y3+SvN32o50PI3xlHjj02rpqdaZ1ufbX3H7MVspMMo+zRmDoJUDSESo3kZ91QNtzX0Y6C0Z+/c3L4KjjSXz11YfnBlaXHv8h8s986u3H3mwcbbbPOv6P+823yiGJMQ+u34xzqKbKUHjiXF+lEkDbAMy+HYdphV2QSk2wXt7mbTbIbN4r+Jfcg+97MD7CA7xO5AljHPFhiSHxgQjIkl/x9NC1daCmVuZHN0cmVhbQplbmRvYmoKMTkgMCBvYmoKNDkxMAplbmRvYmoKMjAgMCBvYmoKPDwgL1R5cGUgL0ZvbnREZXNjcmlwdG9yIC9Bc2NlbnQgOTY3IC9DYXBIZWlnaHQgNzIyIC9EZXNjZW50IC0yMTMgL0ZsYWdzIDMyCi9Gb250QkJveCBbLTM0MyAtMjE0IDEwOTMgOTY3XSAvRm9udE5hbWUgL05QUE9BRCtIZWx2ZXRpY2FOZXVlLUxpZ2h0IC9JdGFsaWNBbmdsZQowIC9TdGVtViA2OCAvTGVhZGluZyAyOSAvTWF4V2lkdGggMTEyMiAvU3RlbUggNTggL1hIZWlnaHQgNTI0IC9Gb250RmlsZTIgMTggMCBSCj4+CmVuZG9iagoyMSAwIG9iagpbIDI3OCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMjc4IDAgMjc4IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwCjYzMCAwIDcwNCA2ODUgNTkzIDUzNyAwIDAgMjIyIDAgMCA1MzcgODMzIDcwNCAwIDYzMCAwIDAgNjMwIDAgNjg1IDU5MyAwIDAKMCAwIDAgMCAwIDAgMCAwIDUxOSA1NzQgNTE5IDU3NCA1MTkgMjU5IDU1NiA1MzcgMTg1IDE4NSAwIDE4NSA4MzMgNTM3IDU1Ngo1NzQgNTc0IDMxNSA0ODEgMjk2IDUzNyA0NjMgXQplbmRvYmoKMTAgMCBvYmoKPDwgL1R5cGUgL0ZvbnQgL1N1YnR5cGUgL1RydWVUeXBlIC9CYXNlRm9udCAvTlBQT0FEK0hlbHZldGljYU5ldWUtTGlnaHQgL0ZvbnREZXNjcmlwdG9yCjIwIDAgUiAvV2lkdGhzIDIxIDAgUiAvRmlyc3RDaGFyIDMyIC9MYXN0Q2hhciAxMTggL0VuY29kaW5nIC9NYWNSb21hbkVuY29kaW5nCj4+CmVuZG9iagoyMiAwIG9iago8PCAvTGVuZ3RoIDIzIDAgUiAvTGVuZ3RoMSA1MDU2IC9GaWx0ZXIgL0ZsYXRlRGVjb2RlID4+CnN0cmVhbQp4AbVYa2xb1R0/517b1zfX1/EjfsWP+MaPWyd2Hr6NnYRgO5HTpkmA0KatzUhp1uZVWpptoTwmRAVj0jJpRQixFdCExDTgw1imqVvI9qGaNrR1ExQhBtr6YZs2aUNoQojXBLX3O/fagW6F8WHY+t97zrnnnvP//37/x7EJJYTYyGnCk9KRE/Orvc6BKYz8jhDqOnJqLUra8CX0TxgzLa4uneh27P4V+n8lhDu3dPyuxfmB92J49Dgh8sbywvzRNyKxPkJc05ifW8aAMGd5Df2voR9fPrF2Z+xucjf6T6M/ffzkkfngWuRh9N9Gf8eJ+TtXuR5+PyHuEPrR2+ZPLLzm+3UE/RH0s6snv7JGf8+9gf4q+hOrX15YXSUtB9DfRN8Kofiyjw1Ni9761IsxuTmFazauuPPEtN03o3XFsgIGrCJpkbClbCethDiIc3v659xwfZb1wR/ASU9tEnGm8iNKv1XdpPUHNkk5/BwRCX/LocwmoelodHylvEEPo8OlMdCloMWno7s2+MSuvZVYNboeXd9zdD26K7o8f3TDlNDveLCwXu2NbpB9lRVcZyvKRqka3G4uVKvDWMfE1sErmL5exQrHGivgrg/1XsYkc3oqusEnZyo3VjZOl4MbpXI1qCjR8Y3zM5WN8+WgUq1ilmVbU2h8z4q/obMAnS1deG41VtmHNbBEdX2drYkel1Q2zq+vB9dhiT4SUzYpaQzAUjaHT4xv0tJMhT0qxZQgG4gpMQV6VMtYW0xP7auMQxOFadLy6ZBK24pirg3qSTqk8v8JUvtngbT1M0Hq2Nb0Ckid0NnBIHVdHdLYpwC6jXDpKgifNhA+fRWE3R9DmPk2R7KI418gLnkiEInAS3rhTr19/QnFqSScipNu1U7T07U76YNW+qa1hjfYhxIfrveTY3ivlWzhihW6QbOjr/8amo/5Zv37j2GMIwho7hHuAvKFl3xpC5s49YmCY9RM/oDO6xBubjSIUHGSACQFGYLsgVQhK5C7IN+AnIU8A3kO8huIPLdJ/JewvwyN2P6yYwu72vU2gS5uXskWuIGdPVyMurWsp83OqU88RlsOP3QkGywtX1e7eN+Tryb33lvlLlzO7brjsdnRlanU5VXuwKuT37y1xHId038J+oukA+jQXra+0Fh/C6mK19sWfS/NreQVyHfPlvfQL0i1p/L0ARtbmc4OU254G497dDyC5PYtgGIs5jXwEICH0MRDAB4C8BCAhwA8BOAhAA8BeAjAQwAeAvAQgIcAPAQdj/Al6GmHnldi4tjGJEi1bIRjUMQkqgGVBkDfKb6kDCQ9wb5S4vVHy2Mf5m4aTYS18RQ9TuNypD+uXtvlpYdgTLbjmoP51FjGz/xgHPjcC3sEEsS+vI6PwQVxAC+I+SJ4EDQeW+VvtL1zpnzmHYAyDJQfZJAQrv5+/S36W85NSmSWvLdJ9sMFD0DylxDUl3Q/kYCL1MRFAi4ScJGAiwRcJOAiARcJuEjARQIuEnCRgIsEXCQdl/1QxXsRAhU7gHve6RrC+hiNYzSOUZXkibQ9msFoBlp4MWPyEhzUQibx2iRJQnKQXZADkEXIKcjXIY9Avg/5CeR5iDwH9V9B428Qbg6eOg6cmKeOw1NHmP+gPcK8RyvwBi8WwZIU7LynLcJp2VzeZ6cer5YtUjuNdSYHdha4fIHXPbrTzpkFNtoDD9eH84WiOZzORVxqh6ejI7JPi5Wy4UD3SDz3xSBHKTcQDIiCJEhek1UWTVKLEM8V21OTwyrNtrUemvZ2Rd1dhd1hmxINW+mxaCZoszjCPq3LaqVWiyc+mErmOh39GU6wC3lzP6WC3eZPDnU7M7097li6vaUtVbrv4PjeFl8skMr4BI5yFknUOSZ2cPwPcCyRLvKvTdINZNMQBzgWDY5FcCw2ORbBsQiORXAsgmMRHIvgWATHIjgWwbEIjkVwLIJjUeeYgDOCVbvBWTva7WinDO5S4C4F7lLgLgXuUuAuBe5S4C4F7lLgLgXuUuAuBe5STe5S4C4FtVBksKKN6YzVZbRl+EwUxxERPgNm4ySssxkHs54Gsx60KXIfY5mCZaowlr2eNotZKdAmi542EJzLx5pc0mdqP7R2aqPq2BStPUUf5rl2baJ3bHkicevS3Fp70VUpJocSLpqMj2kd14+1uEu+tDczORAevPn2wuLazZWh3SA95mXxiSMMPYT49JFuxKcHKssN3ViuZMczQ7dN4oRJLGbdiFek8HwBecLry/fAwSytNKZHMA3ZFlvFZLrF3SI5os5Sweao2m5aLC7SFwcmkjETt9PMjQ1NDdT66YuMd1p/F5e/YP8O8lUGi6xv5zGynQzG5SbjMhiXGexgXAbjMhiXwbgMxmUwLoNxGYzLYFwG47LOuMKyHaOcQpywrh2nVGZRO6yLMPtADqsDmvuj+EInZ2BvEWLuM2cLQy07cqVOjxpxmfiJ4m6rr2uoc/hwkCvqyVvsvyEfafHG2uWgrfZjOrXDkxhQHMUeGkfugn3kBdj38fpJUD+R8fICNjrjLXqP3VY4yV1YWHj+8oecycCk8Q6ruExz/Q02+2zhUbYnFjTm8WbETC/5YJP0YVo/pA8USaBKQtvwQoxjLIpI8huR5Aeu/iaufuDqB65+4OoHrn7g6geufuDqB65+4OoHrn7g6geufh3XZvREsXIYu4Wxm4S2akSTimhSEU0qoklFNKmIJhXRpCKaVESTimhSEU0qoklFNKnNaFIRTSpUa9htx7JBsNbVYK0LW1ghHmzJ2jFWOxrcIWoAKJKfHkAMWxZBSXinENOdVFDzR28rDLYksoXOnpRloqhJkcy1Ka3Xsqc4wZvKU8NzEc48lhs+HOLaONPlD6klc8NwZy7pb69t/DN7cDSZTQaCtWfpjCNsH5ku9OXzhQx308f92A0/PvG5+fF/+/BH1rOKbWFGf+S5zNqreu58mHPp9n2S5x5iNnH1l+tjnBP+5Sc72FnETkJ66NiN6AzBi0JNLwrBi0LwohC8KAQvCsGLQvCiELwoBC8KwYtC8KIQvCgELwrpXtTFopOdmdx4nUWlG1GpIFmztsKqHgzSImC0cQZhXOZ9LEHidGJUu2PfLhQ5cyQ9GBldnlT9/Xuy5YMK1/a93eVQfl9ufCoyNAtbCzTRkQnJI7fcMdJ7fb5jSJtLVsZ6F2ZzM+N9S/vzBoc11KBzsHeEPMmOceyYsoWCpOnqMO9m6c9jxJAG67Wm9RrU12C9Bus1WK/Beg3Wa7Beg/UarNdgvQbrNVivwXp2ytAa54kOuDmLT7Z+10UI66NdYGfXwUY+HgQ2CeQvhk0C2ORjFnYCMJBRe1DzC+hGOEHL4TiL4o8TgsUAqocrFLhobncyMTmSUPqvCXqRygKJjKe9R3FxRRrsL6c6yoNxv5rNZtVAINnjCQ6kAk/3j6fbHImRdLyv0yeJLm/IFex0W+VQVyRT3OFydA4koxnF1+YOdLYH4j7JFsGvBcDWVn8Lpd0EA1dYOfHoKssO/YwkIzPIyAwyMoOMzCAjM8jIDDIyg4zMICMzyMgMMjKDjMzA0rh+RpKRGVgxaGQGlsutDTSsQENxx3g7b5x1cnl0YLpxQNIE+tDJ4pC0Y6AY+48UbgRC7T0jgccDSOD0uto5PYG3FnoOIWuz+viSXh+DsKeI3T0gJ4zd/3edRAIGiX4Qys65IeSqT6qb+UY1+MT6+UdWJk4WT16ljn7QLBw69gx/suvZnwVuaR15hzr5vzPX/uWZ1Y7mnUU1qsYF/PbCaYqN4oN3+J/Wu0nIdLi2VN9rmsJ7rxiPGlc3fZtkKTsyeImP+wExcwHIKUiajHNC/X1OIHYKvLgAat5zhvCj9XdZnyvUX6Z/rtfwThv9OcMUCSBE+siDZJNG6Ri3k3uT7+Of4Lf4F0wPm2rmU5Z2y2nLa0wv5Ia7wANqaUNb/BuG5jk8Y0/ZCYbd2d9CUUJm9o9OV0a7JxaOn1pYWzkyf/3C7QuZ6ZWl5bU9a/PHV45gHmyu49+u+uPst+1VPm6M8fjxqOoBnSdlMoGQniLT5AYyQ24k++CxFXIef0AgEEn3vwHogcgHCmVuZHN0cmVhbQplbmRvYmoKMjMgMCBvYmoKMzA0OQplbmRvYmoKMjQgMCBvYmoKPDwgL1R5cGUgL0ZvbnREZXNjcmlwdG9yIC9Bc2NlbnQgOTUxIC9DYXBIZWlnaHQgNzIyIC9EZXNjZW50IC0yMTMgL0ZsYWdzIDk2Ci9Gb250QkJveCBbLTQwOSAtMjE0IDEwOTkgOTUxXSAvRm9udE5hbWUgL1BVQUxYQStIZWx2ZXRpY2FOZXVlLUxpZ2h0SXRhbGljCi9JdGFsaWNBbmdsZSAtMTIgL1N0ZW1WIDY3IC9MZWFkaW5nIDI4IC9NYXhXaWR0aCAxMTIwIC9TdGVtSCA1OCAvWEhlaWdodCA1MjQKL0ZvbnRGaWxlMiAyMiAwIFIgPj4KZW5kb2JqCjI1IDAgb2JqClsgMjc4IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMjc4IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAKMCAwIDY4NSAwIDUzNyAwIDAgMCAwIDAgMCAwIDAgMCA2MzAgMCAwIDAgNTU2IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDUxOQowIDAgMCA1MTkgMjU5IDAgNTM3IDE4NSAwIDAgMTg1IDgzMyA1MzcgMCA1NzQgMCAwIDQ4MSAwIDUzNyAwIDAgMCAwIDAgMCAwCjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAKMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMAowIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgNDQ0IF0KZW5kb2JqCjkgMCBvYmoKPDwgL1R5cGUgL0ZvbnQgL1N1YnR5cGUgL1RydWVUeXBlIC9CYXNlRm9udCAvUFVBTFhBK0hlbHZldGljYU5ldWUtTGlnaHRJdGFsaWMKL0ZvbnREZXNjcmlwdG9yIDI0IDAgUiAvV2lkdGhzIDI1IDAgUiAvRmlyc3RDaGFyIDMyIC9MYXN0Q2hhciAyMjIgL0VuY29kaW5nCi9NYWNSb21hbkVuY29kaW5nID4+CmVuZG9iagoxIDAgb2JqCjw8IC9UaXRsZSAoc2FtcGxlKSAvQXV0aG9yIChQaGlsaXAgSHV0Y2hpc29uKSAvQ3JlYXRvciAoUGFnZXMpIC9Qcm9kdWNlciAoTWFjIE9TIFggMTAuNS40IFF1YXJ0eiBQREZDb250ZXh0KQovQ3JlYXRpb25EYXRlIChEOjIwMDgwNzAxMDUyNDQ3WjAwJzAwJykgL01vZERhdGUgKEQ6MjAwODA3MDEwNTI0NDdaMDAnMDAnKQo+PgplbmRvYmoKeHJlZgowIDI2CjAwMDAwMDAwMDAgNjU1MzUgZiAKMDAwMDAxNzkzMCAwMDAwMCBuIAowMDAwMDAzOTgyIDAwMDAwIG4gCjAwMDAwMDUwNzMgMDAwMDAgbiAKMDAwMDAwMDAyMiAwMDAwMCBuIAowMDAwMDAzOTYyIDAwMDAwIG4gCjAwMDAwMDQwODYgMDAwMDAgbiAKMDAwMDAwNTAzNyAwMDAwMCBuIAowMDAwMDA3OTU3IDAwMDAwIG4gCjAwMDAwMTc3NDAgMDAwMDAgbiAKMDAwMDAxMzY5MiAwMDAwMCBuIAowMDAwMDA0MjA5IDAwMDAwIG4gCjAwMDAwMDUwMTcgMDAwMDAgbiAKMDAwMDAwNTE1NiAwMDAwMCBuIAowMDAwMDA1MjA2IDAwMDAwIG4gCjAwMDAwMDc0NzIgMDAwMDAgbiAKMDAwMDAwNzQ5MyAwMDAwMCBuIAowMDAwMDA3NzU1IDAwMDAwIG4gCjAwMDAwMDgxNDYgMDAwMDAgbiAKMDAwMDAxMzE0NiAwMDAwMCBuIAowMDAwMDEzMTY3IDAwMDAwIG4gCjAwMDAwMTM0MjQgMDAwMDAgbiAKMDAwMDAxMzg3NyAwMDAwMCBuIAowMDAwMDE3MDE2IDAwMDAwIG4gCjAwMDAwMTcwMzcgMDAwMDAgbiAKMDAwMDAxNzMwMiAwMDAwMCBuIAp0cmFpbGVyCjw8IC9TaXplIDI2IC9Sb290IDEzIDAgUiAvSW5mbyAxIDAgUiAvSUQgWyA8NGU5NDk1MTVhYWYxMzI0OThmNjUwZTdiZGU2Y2RjMmY+Cjw0ZTk0OTUxNWFhZjEzMjQ5OGY2NTBlN2JkZTZjZGMyZj4gXSA+PgpzdGFydHhyZWYKMTgxMzIKJSVFT0YK"}},{"type":"document","source":{"type":"url","url":"https://pdfobject.com/pdf/sample.pdf"}}]}],"temperature":0.7,"stream":false,"max_tokens":8192}' + these documents"},{"type":"document","source":{"type":"base64","media_type":"application/pdf","data":"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ZXNjZW50IC0yMTMgL0ZsYWdzIDk2Ci9Gb250QkJveCBbLTQwOSAtMjE0IDEwOTkgOTUxXSAvRm9udE5hbWUgL1BVQUxYQStIZWx2ZXRpY2FOZXVlLUxpZ2h0SXRhbGljCi9JdGFsaWNBbmdsZSAtMTIgL1N0ZW1WIDY3IC9MZWFkaW5nIDI4IC9NYXhXaWR0aCAxMTIwIC9TdGVtSCA1OCAvWEhlaWdodCA1MjQKL0ZvbnRGaWxlMiAyMiAwIFIgPj4KZW5kb2JqCjI1IDAgb2JqClsgMjc4IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMjc4IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAKMCAwIDY4NSAwIDUzNyAwIDAgMCAwIDAgMCAwIDAgMCA2MzAgMCAwIDAgNTU2IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDUxOQowIDAgMCA1MTkgMjU5IDAgNTM3IDE4NSAwIDAgMTg1IDgzMyA1MzcgMCA1NzQgMCAwIDQ4MSAwIDUzNyAwIDAgMCAwIDAgMCAwCjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAKMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMAowIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgNDQ0IF0KZW5kb2JqCjkgMCBvYmoKPDwgL1R5cGUgL0ZvbnQgL1N1YnR5cGUgL1RydWVUeXBlIC9CYXNlRm9udCAvUFVBTFhBK0hlbHZldGljYU5ldWUtTGlnaHRJdGFsaWMKL0ZvbnREZXNjcmlwdG9yIDI0IDAgUiAvV2lkdGhzIDI1IDAgUiAvRmlyc3RDaGFyIDMyIC9MYXN0Q2hhciAyMjIgL0VuY29kaW5nCi9NYWNSb21hbkVuY29kaW5nID4+CmVuZG9iagoxIDAgb2JqCjw8IC9UaXRsZSAoc2FtcGxlKSAvQXV0aG9yIChQaGlsaXAgSHV0Y2hpc29uKSAvQ3JlYXRvciAoUGFnZXMpIC9Qcm9kdWNlciAoTWFjIE9TIFggMTAuNS40IFF1YXJ0eiBQREZDb250ZXh0KQovQ3JlYXRpb25EYXRlIChEOjIwMDgwNzAxMDUyNDQ3WjAwJzAwJykgL01vZERhdGUgKEQ6MjAwODA3MDEwNTI0NDdaMDAnMDAnKQo+PgplbmRvYmoKeHJlZgowIDI2CjAwMDAwMDAwMDAgNjU1MzUgZiAKMDAwMDAxNzkzMCAwMDAwMCBuIAowMDAwMDAzOTgyIDAwMDAwIG4gCjAwMDAwMDUwNzMgMDAwMDAgbiAKMDAwMDAwMDAyMiAwMDAwMCBuIAowMDAwMDAzOTYyIDAwMDAwIG4gCjAwMDAwMDQwODYgMDAwMDAgbiAKMDAwMDAwNTAzNyAwMDAwMCBuIAowMDAwMDA3OTU3IDAwMDAwIG4gCjAwMDAwMTc3NDAgMDAwMDAgbiAKMDAwMDAxMzY5MiAwMDAwMCBuIAowMDAwMDA0MjA5IDAwMDAwIG4gCjAwMDAwMDUwMTcgMDAwMDAgbiAKMDAwMDAwNTE1NiAwMDAwMCBuIAowMDAwMDA1MjA2IDAwMDAwIG4gCjAwMDAwMDc0NzIgMDAwMDAgbiAKMDAwMDAwNzQ5MyAwMDAwMCBuIAowMDAwMDA3NzU1IDAwMDAwIG4gCjAwMDAwMDgxNDYgMDAwMDAgbiAKMDAwMDAxMzE0NiAwMDAwMCBuIAowMDAwMDEzMTY3IDAwMDAwIG4gCjAwMDAwMTM0MjQgMDAwMDAgbiAKMDAwMDAxMzg3NyAwMDAwMCBuIAowMDAwMDE3MDE2IDAwMDAwIG4gCjAwMDAwMTcwMzcgMDAwMDAgbiAKMDAwMDAxNzMwMiAwMDAwMCBuIAp0cmFpbGVyCjw8IC9TaXplIDI2IC9Sb290IDEzIDAgUiAvSW5mbyAxIDAgUiAvSUQgWyA8NGU5NDk1MTVhYWYxMzI0OThmNjUwZTdiZGU2Y2RjMmY+Cjw0ZTk0OTUxNWFhZjEzMjQ5OGY2NTBlN2JkZTZjZGMyZj4gXSA+PgpzdGFydHhyZWYKMTgxMzIKJSVFT0YK"}},{"type":"document","source":{"type":"url","url":"https://pdfobject.com/pdf/sample.pdf"}}]}],"stream":false,"max_tokens":8192,"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -26,7 +26,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 09:49:02 GMT + - Mon, 28 Jul 2025 14:26:37 GMT Content-Type: - application/json Transfer-Encoding: @@ -36,33 +36,33 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Limit: - '100000' Anthropic-Ratelimit-Input-Tokens-Remaining: - - '96000' + - '97000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T09:49:02Z' + - '2025-07-28T14:26:36Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T09:49:02Z' + - '2025-07-28T14:26:37Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T09:48:59Z' + - '2025-07-28T14:26:33Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - - '116000' + - '117000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T09:49:02Z' + - '2025-07-28T14:26:36Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -75,14 +75,13 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_01QzqYz7VKJGva4rGHTpZcMw","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"After + string: '{"id":"msg_012u7xKPe4n3D6FqAj2DMcMT","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"After carefully examining both documents, I can confirm that they are identical. - Both PDFs:\n\n1. Have the exact same title \"Sample PDF\"\n2. Contain the - same subtitle \"This is a simple PDF file. Fun fun fun.\"\n3. Have identical - Lorem Ipsum text throughout the entire document\n4. Have the same page layout - and formatting\n\nThere are no discernible differences between the two documents. - They appear to be exact duplicates."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":5409,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":97,"service_tier":"standard"}}' - recorded_at: Thu, 17 Jul 2025 09:49:02 GMT + Both PDFs:\n\n1. Have the same title \"Sample PDF\"\n2. Have the same subtitle + \"This is a simple PDF file. Fun fun fun.\"\n3. Contain exactly the same Lorem + Ipsum text\n4. Have the same formatting and layout\n5. Are visually indistinguishable\n\nIn + other words, these are two copies of the exact same PDF document."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":5409,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":99,"service_tier":"standard"}}' + recorded_at: Mon, 28 Jul 2025 14:26:37 GMT - request: method: post uri: https://api.anthropic.com/v1/messages @@ -91,15 +90,14 @@ http_interactions: string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"Compare these documents"},{"type":"document","source":{"type":"base64","media_type":"application/pdf","data":"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ZXNjZW50IC0yMTMgL0ZsYWdzIDk2Ci9Gb250QkJveCBbLTQwOSAtMjE0IDEwOTkgOTUxXSAvRm9udE5hbWUgL1BVQUxYQStIZWx2ZXRpY2FOZXVlLUxpZ2h0SXRhbGljCi9JdGFsaWNBbmdsZSAtMTIgL1N0ZW1WIDY3IC9MZWFkaW5nIDI4IC9NYXhXaWR0aCAxMTIwIC9TdGVtSCA1OCAvWEhlaWdodCA1MjQKL0ZvbnRGaWxlMiAyMiAwIFIgPj4KZW5kb2JqCjI1IDAgb2JqClsgMjc4IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMjc4IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAKMCAwIDY4NSAwIDUzNyAwIDAgMCAwIDAgMCAwIDAgMCA2MzAgMCAwIDAgNTU2IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDUxOQowIDAgMCA1MTkgMjU5IDAgNTM3IDE4NSAwIDAgMTg1IDgzMyA1MzcgMCA1NzQgMCAwIDQ4MSAwIDUzNyAwIDAgMCAwIDAgMCAwCjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAKMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMAowIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgNDQ0IF0KZW5kb2JqCjkgMCBvYmoKPDwgL1R5cGUgL0ZvbnQgL1N1YnR5cGUgL1RydWVUeXBlIC9CYXNlRm9udCAvUFVBTFhBK0hlbHZldGljYU5ldWUtTGlnaHRJdGFsaWMKL0ZvbnREZXNjcmlwdG9yIDI0IDAgUiAvV2lkdGhzIDI1IDAgUiAvRmlyc3RDaGFyIDMyIC9MYXN0Q2hhciAyMjIgL0VuY29kaW5nCi9NYWNSb21hbkVuY29kaW5nID4+CmVuZG9iagoxIDAgb2JqCjw8IC9UaXRsZSAoc2FtcGxlKSAvQXV0aG9yIChQaGlsaXAgSHV0Y2hpc29uKSAvQ3JlYXRvciAoUGFnZXMpIC9Qcm9kdWNlciAoTWFjIE9TIFggMTAuNS40IFF1YXJ0eiBQREZDb250ZXh0KQovQ3JlYXRpb25EYXRlIChEOjIwMDgwNzAxMDUyNDQ3WjAwJzAwJykgL01vZERhdGUgKEQ6MjAwODA3MDEwNTI0NDdaMDAnMDAnKQo+PgplbmRvYmoKeHJlZgowIDI2CjAwMDAwMDAwMDAgNjU1MzUgZiAKMDAwMDAxNzkzMCAwMDAwMCBuIAowMDAwMDAzOTgyIDAwMDAwIG4gCjAwMDAwMDUwNzMgMDAwMDAgbiAKMDAwMDAwMDAyMiAwMDAwMCBuIAowMDAwMDAzOTYyIDAwMDAwIG4gCjAwMDAwMDQwODYgMDAwMDAgbiAKMDAwMDAwNTAzNyAwMDAwMCBuIAowMDAwMDA3OTU3IDAwMDAwIG4gCjAwMDAwMTc3NDAgMDAwMDAgbiAKMDAwMDAxMzY5MiAwMDAwMCBuIAowMDAwMDA0MjA5IDAwMDAwIG4gCjAwMDAwMDUwMTcgMDAwMDAgbiAKMDAwMDAwNTE1NiAwMDAwMCBuIAowMDAwMDA1MjA2IDAwMDAwIG4gCjAwMDAwMDc0NzIgMDAwMDAgbiAKMDAwMDAwNzQ5MyAwMDAwMCBuIAowMDAwMDA3NzU1IDAwMDAwIG4gCjAwMDAwMDgxNDYgMDAwMDAgbiAKMDAwMDAxMzE0NiAwMDAwMCBuIAowMDAwMDEzMTY3IDAwMDAwIG4gCjAwMDAwMTM0MjQgMDAwMDAgbiAKMDAwMDAxMzg3NyAwMDAwMCBuIAowMDAwMDE3MDE2IDAwMDAwIG4gCjAwMDAwMTcwMzcgMDAwMDAgbiAKMDAwMDAxNzMwMiAwMDAwMCBuIAp0cmFpbGVyCjw8IC9TaXplIDI2IC9Sb290IDEzIDAgUiAvSW5mbyAxIDAgUiAvSUQgWyA8NGU5NDk1MTVhYWYxMzI0OThmNjUwZTdiZGU2Y2RjMmY+Cjw0ZTk0OTUxNWFhZjEzMjQ5OGY2NTBlN2JkZTZjZGMyZj4gXSA+PgpzdGFydHhyZWYKMTgxMzIKJSVFT0YK"}},{"type":"document","source":{"type":"url","url":"https://pdfobject.com/pdf/sample.pdf"}}]},{"role":"assistant","content":[{"type":"text","text":"After carefully examining both documents, I can confirm that they are identical. - Both PDFs:\n\n1. Have the exact same title \"Sample PDF\"\n2. Contain the - same subtitle \"This is a simple PDF file. Fun fun fun.\"\n3. Have identical - Lorem Ipsum text throughout the entire document\n4. Have the same page layout - and formatting\n\nThere are no discernible differences between the two documents. - They appear to be exact duplicates."}]},{"role":"user","content":[{"type":"text","text":"go - on"}]}],"temperature":0.7,"stream":false,"max_tokens":8192}' + Both PDFs:\n\n1. Have the same title \"Sample PDF\"\n2. Have the same subtitle + \"This is a simple PDF file. Fun fun fun.\"\n3. Contain exactly the same Lorem + Ipsum text\n4. Have the same formatting and layout\n5. Are visually indistinguishable\n\nIn + other words, these are two copies of the exact same PDF document."}]},{"role":"user","content":[{"type":"text","text":"go + on"}]}],"stream":false,"max_tokens":8192,"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -116,7 +114,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 09:49:07 GMT + - Mon, 28 Jul 2025 14:26:40 GMT Content-Type: - application/json Transfer-Encoding: @@ -126,33 +124,33 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Limit: - '100000' Anthropic-Ratelimit-Input-Tokens-Remaining: - - '97000' + - '96000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T09:49:05Z' + - '2025-07-28T14:26:40Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T09:49:08Z' + - '2025-07-28T14:26:40Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T09:49:02Z' + - '2025-07-28T14:26:37Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - - '117000' + - '116000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T09:49:05Z' + - '2025-07-28T14:26:40Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -165,17 +163,12 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_01GM4n4NdV5rzUGeHqygfANH","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"Since - the documents are completely identical, there''s not much more to analyze. - To elaborate further:\n\n1. Text Content:\n- Word-for-word identical Lorem - Ipsum placeholder text\n- Same number of paragraphs\n- Identical sentence - structure and length\n\n2. Visual Layout:\n- Same font type and size\n- Identical - page margins\n- Identical text alignment\n- Matching header and body text - positioning\n\n3. Document Metadata:\n- Both are PDF files\n- Same page count - (1 page)\n- Identical file structure\n\nIn essence, these are perfect copies - of each other with no distinguishing characteristics. They could have been - created simultaneously or one could be a direct copy of the other. Without - additional context about their origin, I can only confirm their complete similarity.\n\nWould - you like me to elaborate on any specific aspect of these documents?"}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":5511,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":184,"service_tier":"standard"}}' - recorded_at: Thu, 17 Jul 2025 09:49:07 GMT + string: '{"id":"msg_01E9k35tiF7s11XV87Wrk8xt","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"There''s + not much more to add. These two documents are completely identical - from + the title, subtitle, body text, font, formatting, and even the image layout. + They appear to be exact duplicates of each other, with no discernible differences + between them. If you were expecting some variation or unique characteristic + in one of the documents, I can confirm there are none. They are 100% the same + PDF file."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":5513,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":89,"service_tier":"standard"}}' + recorded_at: Mon, 28 Jul 2025 14:26:40 GMT recorded_with: VCR 6.3.1 diff --git a/spec/fixtures/vcr_cassettes/chat_pdf_models_anthropic_claude-3-5-haiku-20241022_understands_pdfs.yml b/spec/fixtures/vcr_cassettes/chat_pdf_models_anthropic_claude-3-5-haiku-20241022_understands_pdfs.yml index 7c3408e0..0f4a6e76 100644 --- a/spec/fixtures/vcr_cassettes/chat_pdf_models_anthropic_claude-3-5-haiku-20241022_understands_pdfs.yml +++ b/spec/fixtures/vcr_cassettes/chat_pdf_models_anthropic_claude-3-5-haiku-20241022_understands_pdfs.yml @@ -6,10 +6,10 @@ http_interactions: body: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"Summarize - this document"},{"type":"document","source":{"type":"base64","media_type":"application/pdf","data":"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ZXNjZW50IC0yMTMgL0ZsYWdzIDk2Ci9Gb250QkJveCBbLTQwOSAtMjE0IDEwOTkgOTUxXSAvRm9udE5hbWUgL1BVQUxYQStIZWx2ZXRpY2FOZXVlLUxpZ2h0SXRhbGljCi9JdGFsaWNBbmdsZSAtMTIgL1N0ZW1WIDY3IC9MZWFkaW5nIDI4IC9NYXhXaWR0aCAxMTIwIC9TdGVtSCA1OCAvWEhlaWdodCA1MjQKL0ZvbnRGaWxlMiAyMiAwIFIgPj4KZW5kb2JqCjI1IDAgb2JqClsgMjc4IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMjc4IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAKMCAwIDY4NSAwIDUzNyAwIDAgMCAwIDAgMCAwIDAgMCA2MzAgMCAwIDAgNTU2IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDUxOQowIDAgMCA1MTkgMjU5IDAgNTM3IDE4NSAwIDAgMTg1IDgzMyA1MzcgMCA1NzQgMCAwIDQ4MSAwIDUzNyAwIDAgMCAwIDAgMCAwCjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAKMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMAowIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgNDQ0IF0KZW5kb2JqCjkgMCBvYmoKPDwgL1R5cGUgL0ZvbnQgL1N1YnR5cGUgL1RydWVUeXBlIC9CYXNlRm9udCAvUFVBTFhBK0hlbHZldGljYU5ldWUtTGlnaHRJdGFsaWMKL0ZvbnREZXNjcmlwdG9yIDI0IDAgUiAvV2lkdGhzIDI1IDAgUiAvRmlyc3RDaGFyIDMyIC9MYXN0Q2hhciAyMjIgL0VuY29kaW5nCi9NYWNSb21hbkVuY29kaW5nID4+CmVuZG9iagoxIDAgb2JqCjw8IC9UaXRsZSAoc2FtcGxlKSAvQXV0aG9yIChQaGlsaXAgSHV0Y2hpc29uKSAvQ3JlYXRvciAoUGFnZXMpIC9Qcm9kdWNlciAoTWFjIE9TIFggMTAuNS40IFF1YXJ0eiBQREZDb250ZXh0KQovQ3JlYXRpb25EYXRlIChEOjIwMDgwNzAxMDUyNDQ3WjAwJzAwJykgL01vZERhdGUgKEQ6MjAwODA3MDEwNTI0NDdaMDAnMDAnKQo+PgplbmRvYmoKeHJlZgowIDI2CjAwMDAwMDAwMDAgNjU1MzUgZiAKMDAwMDAxNzkzMCAwMDAwMCBuIAowMDAwMDAzOTgyIDAwMDAwIG4gCjAwMDAwMDUwNzMgMDAwMDAgbiAKMDAwMDAwMDAyMiAwMDAwMCBuIAowMDAwMDAzOTYyIDAwMDAwIG4gCjAwMDAwMDQwODYgMDAwMDAgbiAKMDAwMDAwNTAzNyAwMDAwMCBuIAowMDAwMDA3OTU3IDAwMDAwIG4gCjAwMDAwMTc3NDAgMDAwMDAgbiAKMDAwMDAxMzY5MiAwMDAwMCBuIAowMDAwMDA0MjA5IDAwMDAwIG4gCjAwMDAwMDUwMTcgMDAwMDAgbiAKMDAwMDAwNTE1NiAwMDAwMCBuIAowMDAwMDA1MjA2IDAwMDAwIG4gCjAwMDAwMDc0NzIgMDAwMDAgbiAKMDAwMDAwNzQ5MyAwMDAwMCBuIAowMDAwMDA3NzU1IDAwMDAwIG4gCjAwMDAwMDgxNDYgMDAwMDAgbiAKMDAwMDAxMzE0NiAwMDAwMCBuIAowMDAwMDEzMTY3IDAwMDAwIG4gCjAwMDAwMTM0MjQgMDAwMDAgbiAKMDAwMDAxMzg3NyAwMDAwMCBuIAowMDAwMDE3MDE2IDAwMDAwIG4gCjAwMDAwMTcwMzcgMDAwMDAgbiAKMDAwMDAxNzMwMiAwMDAwMCBuIAp0cmFpbGVyCjw8IC9TaXplIDI2IC9Sb290IDEzIDAgUiAvSW5mbyAxIDAgUiAvSUQgWyA8NGU5NDk1MTVhYWYxMzI0OThmNjUwZTdiZGU2Y2RjMmY+Cjw0ZTk0OTUxNWFhZjEzMjQ5OGY2NTBlN2JkZTZjZGMyZj4gXSA+PgpzdGFydHhyZWYKMTgxMzIKJSVFT0YK"}}]}],"temperature":0.7,"stream":false,"max_tokens":8192}' + this document"},{"type":"document","source":{"type":"base64","media_type":"application/pdf","data":"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ZXNjZW50IC0yMTMgL0ZsYWdzIDk2Ci9Gb250QkJveCBbLTQwOSAtMjE0IDEwOTkgOTUxXSAvRm9udE5hbWUgL1BVQUxYQStIZWx2ZXRpY2FOZXVlLUxpZ2h0SXRhbGljCi9JdGFsaWNBbmdsZSAtMTIgL1N0ZW1WIDY3IC9MZWFkaW5nIDI4IC9NYXhXaWR0aCAxMTIwIC9TdGVtSCA1OCAvWEhlaWdodCA1MjQKL0ZvbnRGaWxlMiAyMiAwIFIgPj4KZW5kb2JqCjI1IDAgb2JqClsgMjc4IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMjc4IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAKMCAwIDY4NSAwIDUzNyAwIDAgMCAwIDAgMCAwIDAgMCA2MzAgMCAwIDAgNTU2IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDUxOQowIDAgMCA1MTkgMjU5IDAgNTM3IDE4NSAwIDAgMTg1IDgzMyA1MzcgMCA1NzQgMCAwIDQ4MSAwIDUzNyAwIDAgMCAwIDAgMCAwCjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAKMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMAowIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgNDQ0IF0KZW5kb2JqCjkgMCBvYmoKPDwgL1R5cGUgL0ZvbnQgL1N1YnR5cGUgL1RydWVUeXBlIC9CYXNlRm9udCAvUFVBTFhBK0hlbHZldGljYU5ldWUtTGlnaHRJdGFsaWMKL0ZvbnREZXNjcmlwdG9yIDI0IDAgUiAvV2lkdGhzIDI1IDAgUiAvRmlyc3RDaGFyIDMyIC9MYXN0Q2hhciAyMjIgL0VuY29kaW5nCi9NYWNSb21hbkVuY29kaW5nID4+CmVuZG9iagoxIDAgb2JqCjw8IC9UaXRsZSAoc2FtcGxlKSAvQXV0aG9yIChQaGlsaXAgSHV0Y2hpc29uKSAvQ3JlYXRvciAoUGFnZXMpIC9Qcm9kdWNlciAoTWFjIE9TIFggMTAuNS40IFF1YXJ0eiBQREZDb250ZXh0KQovQ3JlYXRpb25EYXRlIChEOjIwMDgwNzAxMDUyNDQ3WjAwJzAwJykgL01vZERhdGUgKEQ6MjAwODA3MDEwNTI0NDdaMDAnMDAnKQo+PgplbmRvYmoKeHJlZgowIDI2CjAwMDAwMDAwMDAgNjU1MzUgZiAKMDAwMDAxNzkzMCAwMDAwMCBuIAowMDAwMDAzOTgyIDAwMDAwIG4gCjAwMDAwMDUwNzMgMDAwMDAgbiAKMDAwMDAwMDAyMiAwMDAwMCBuIAowMDAwMDAzOTYyIDAwMDAwIG4gCjAwMDAwMDQwODYgMDAwMDAgbiAKMDAwMDAwNTAzNyAwMDAwMCBuIAowMDAwMDA3OTU3IDAwMDAwIG4gCjAwMDAwMTc3NDAgMDAwMDAgbiAKMDAwMDAxMzY5MiAwMDAwMCBuIAowMDAwMDA0MjA5IDAwMDAwIG4gCjAwMDAwMDUwMTcgMDAwMDAgbiAKMDAwMDAwNTE1NiAwMDAwMCBuIAowMDAwMDA1MjA2IDAwMDAwIG4gCjAwMDAwMDc0NzIgMDAwMDAgbiAKMDAwMDAwNzQ5MyAwMDAwMCBuIAowMDAwMDA3NzU1IDAwMDAwIG4gCjAwMDAwMDgxNDYgMDAwMDAgbiAKMDAwMDAxMzE0NiAwMDAwMCBuIAowMDAwMDEzMTY3IDAwMDAwIG4gCjAwMDAwMTM0MjQgMDAwMDAgbiAKMDAwMDAxMzg3NyAwMDAwMCBuIAowMDAwMDE3MDE2IDAwMDAwIG4gCjAwMDAwMTcwMzcgMDAwMDAgbiAKMDAwMDAxNzMwMiAwMDAwMCBuIAp0cmFpbGVyCjw8IC9TaXplIDI2IC9Sb290IDEzIDAgUiAvSW5mbyAxIDAgUiAvSUQgWyA8NGU5NDk1MTVhYWYxMzI0OThmNjUwZTdiZGU2Y2RjMmY+Cjw0ZTk0OTUxNWFhZjEzMjQ5OGY2NTBlN2JkZTZjZGMyZj4gXSA+PgpzdGFydHhyZWYKMTgxMzIKJSVFT0YK"}}]}],"stream":false,"max_tokens":8192,"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -26,7 +26,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 09:48:52 GMT + - Mon, 28 Jul 2025 14:26:27 GMT Content-Type: - application/json Transfer-Encoding: @@ -38,31 +38,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '99000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T09:48:47Z' + - '2025-07-28T14:26:24Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T09:48:52Z' + - '2025-07-28T14:26:28Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T09:48:45Z' + - '2025-07-28T14:26:22Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '119000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T09:48:47Z' + - '2025-07-28T14:26:24Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -75,23 +75,21 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_01Pmhgw9bYSSVZKfetEuNg6X","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"This - document is a sample PDF file containing Lorem Ipsum placeholder text. The - document consists of several paragraphs of standard Lorem Ipsum text, which - is commonly used as a dummy text in design and publishing to demonstrate the - visual form of a document without relying on meaningful content.\n\nThe document - begins with a simple title \"Sample PDF\" and a subtitle \"This is a simple - PDF file. Fun fun fun.\" The text that follows is typical Lorem Ipsum text, - which uses Latin-like words and phrases to fill space and show the layout - of a document.\n\nThe paragraphs are structured similarly, with varying sentence - lengths and structures, but they do not convey any specific meaning. The text - is designed to have a natural flow and appearance of readable text while being - completely nonsensical.\n\nThe document appears to be a placeholder or template, - likely used for:\n- Demonstrating document layout\n- Testing typography\n- - Serving as a sample PDF file\n- Providing a generic text fill for design mockups\n\nThe - overall purpose seems to be purely illustrative, with no substantive content - intended to be read or understood."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":2712,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":233,"service_tier":"standard"}}' - recorded_at: Thu, 17 Jul 2025 09:48:52 GMT + string: '{"id":"msg_019fC6sY9prigkSh6j5VdTpu","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"This + document is a sample PDF containing Lorem Ipsum placeholder text. It consists + of multiple paragraphs of standard Lorem Ipsum text, which is commonly used + as a dummy text in design and publishing to demonstrate the visual form of + a document without relying on meaningful content. \n\nThe document has a simple + title \"Sample PDF\" with a subtitle \"This is a simple PDF file. Fun fun + fun.\" The text is purely filler text, using standard Lorem Ipsum passages + that do not convey any specific information or meaning. It''s typically used + to show the layout, typography, and general appearance of a document before + final content is added.\n\nThe text is formatted in multiple paragraphs, using + various Latin-like words and phrases that mimic the structure of normal text + but are completely nonsensical. This is a standard practice in graphic design, + publishing, and web development to visualize how text will look in a given + layout."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":2712,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":192,"service_tier":"standard"}}' + recorded_at: Mon, 28 Jul 2025 14:26:27 GMT - request: method: post uri: https://api.anthropic.com/v1/messages @@ -99,25 +97,22 @@ http_interactions: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"Summarize this document"},{"type":"document","source":{"type":"base64","media_type":"application/pdf","data":"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ZXNjZW50IC0yMTMgL0ZsYWdzIDk2Ci9Gb250QkJveCBbLTQwOSAtMjE0IDEwOTkgOTUxXSAvRm9udE5hbWUgL1BVQUxYQStIZWx2ZXRpY2FOZXVlLUxpZ2h0SXRhbGljCi9JdGFsaWNBbmdsZSAtMTIgL1N0ZW1WIDY3IC9MZWFkaW5nIDI4IC9NYXhXaWR0aCAxMTIwIC9TdGVtSCA1OCAvWEhlaWdodCA1MjQKL0ZvbnRGaWxlMiAyMiAwIFIgPj4KZW5kb2JqCjI1IDAgb2JqClsgMjc4IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMjc4IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAKMCAwIDY4NSAwIDUzNyAwIDAgMCAwIDAgMCAwIDAgMCA2MzAgMCAwIDAgNTU2IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDUxOQowIDAgMCA1MTkgMjU5IDAgNTM3IDE4NSAwIDAgMTg1IDgzMyA1MzcgMCA1NzQgMCAwIDQ4MSAwIDUzNyAwIDAgMCAwIDAgMCAwCjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAKMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMAowIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgNDQ0IF0KZW5kb2JqCjkgMCBvYmoKPDwgL1R5cGUgL0ZvbnQgL1N1YnR5cGUgL1RydWVUeXBlIC9CYXNlRm9udCAvUFVBTFhBK0hlbHZldGljYU5ldWUtTGlnaHRJdGFsaWMKL0ZvbnREZXNjcmlwdG9yIDI0IDAgUiAvV2lkdGhzIDI1IDAgUiAvRmlyc3RDaGFyIDMyIC9MYXN0Q2hhciAyMjIgL0VuY29kaW5nCi9NYWNSb21hbkVuY29kaW5nID4+CmVuZG9iagoxIDAgb2JqCjw8IC9UaXRsZSAoc2FtcGxlKSAvQXV0aG9yIChQaGlsaXAgSHV0Y2hpc29uKSAvQ3JlYXRvciAoUGFnZXMpIC9Qcm9kdWNlciAoTWFjIE9TIFggMTAuNS40IFF1YXJ0eiBQREZDb250ZXh0KQovQ3JlYXRpb25EYXRlIChEOjIwMDgwNzAxMDUyNDQ3WjAwJzAwJykgL01vZERhdGUgKEQ6MjAwODA3MDEwNTI0NDdaMDAnMDAnKQo+PgplbmRvYmoKeHJlZgowIDI2CjAwMDAwMDAwMDAgNjU1MzUgZiAKMDAwMDAxNzkzMCAwMDAwMCBuIAowMDAwMDAzOTgyIDAwMDAwIG4gCjAwMDAwMDUwNzMgMDAwMDAgbiAKMDAwMDAwMDAyMiAwMDAwMCBuIAowMDAwMDAzOTYyIDAwMDAwIG4gCjAwMDAwMDQwODYgMDAwMDAgbiAKMDAwMDAwNTAzNyAwMDAwMCBuIAowMDAwMDA3OTU3IDAwMDAwIG4gCjAwMDAwMTc3NDAgMDAwMDAgbiAKMDAwMDAxMzY5MiAwMDAwMCBuIAowMDAwMDA0MjA5IDAwMDAwIG4gCjAwMDAwMDUwMTcgMDAwMDAgbiAKMDAwMDAwNTE1NiAwMDAwMCBuIAowMDAwMDA1MjA2IDAwMDAwIG4gCjAwMDAwMDc0NzIgMDAwMDAgbiAKMDAwMDAwNzQ5MyAwMDAwMCBuIAowMDAwMDA3NzU1IDAwMDAwIG4gCjAwMDAwMDgxNDYgMDAwMDAgbiAKMDAwMDAxMzE0NiAwMDAwMCBuIAowMDAwMDEzMTY3IDAwMDAwIG4gCjAwMDAwMTM0MjQgMDAwMDAgbiAKMDAwMDAxMzg3NyAwMDAwMCBuIAowMDAwMDE3MDE2IDAwMDAwIG4gCjAwMDAwMTcwMzcgMDAwMDAgbiAKMDAwMDAxNzMwMiAwMDAwMCBuIAp0cmFpbGVyCjw8IC9TaXplIDI2IC9Sb290IDEzIDAgUiAvSW5mbyAxIDAgUiAvSUQgWyA8NGU5NDk1MTVhYWYxMzI0OThmNjUwZTdiZGU2Y2RjMmY+Cjw0ZTk0OTUxNWFhZjEzMjQ5OGY2NTBlN2JkZTZjZGMyZj4gXSA+PgpzdGFydHhyZWYKMTgxMzIKJSVFT0YK"}}]},{"role":"assistant","content":[{"type":"text","text":"This - document is a sample PDF file containing Lorem Ipsum placeholder text. The - document consists of several paragraphs of standard Lorem Ipsum text, which - is commonly used as a dummy text in design and publishing to demonstrate the - visual form of a document without relying on meaningful content.\n\nThe document - begins with a simple title \"Sample PDF\" and a subtitle \"This is a simple - PDF file. Fun fun fun.\" The text that follows is typical Lorem Ipsum text, - which uses Latin-like words and phrases to fill space and show the layout - of a document.\n\nThe paragraphs are structured similarly, with varying sentence - lengths and structures, but they do not convey any specific meaning. The text - is designed to have a natural flow and appearance of readable text while being - completely nonsensical.\n\nThe document appears to be a placeholder or template, - likely used for:\n- Demonstrating document layout\n- Testing typography\n- - Serving as a sample PDF file\n- Providing a generic text fill for design mockups\n\nThe - overall purpose seems to be purely illustrative, with no substantive content - intended to be read or understood."}]},{"role":"user","content":[{"type":"text","text":"go - on"}]}],"temperature":0.7,"stream":false,"max_tokens":8192}' + document is a sample PDF containing Lorem Ipsum placeholder text. It consists + of multiple paragraphs of standard Lorem Ipsum text, which is commonly used + as a dummy text in design and publishing to demonstrate the visual form of + a document without relying on meaningful content. \n\nThe document has a simple + title \"Sample PDF\" with a subtitle \"This is a simple PDF file. Fun fun + fun.\" The text is purely filler text, using standard Lorem Ipsum passages + that do not convey any specific information or meaning. It''s typically used + to show the layout, typography, and general appearance of a document before + final content is added.\n\nThe text is formatted in multiple paragraphs, using + various Latin-like words and phrases that mimic the structure of normal text + but are completely nonsensical. This is a standard practice in graphic design, + publishing, and web development to visualize how text will look in a given + layout."}]},{"role":"user","content":[{"type":"text","text":"go on"}]}],"stream":false,"max_tokens":8192,"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -134,7 +129,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 09:48:58 GMT + - Mon, 28 Jul 2025 14:26:33 GMT Content-Type: - application/json Transfer-Encoding: @@ -144,33 +139,33 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Limit: - '100000' Anthropic-Ratelimit-Input-Tokens-Remaining: - - '98000' + - '99000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T09:48:54Z' + - '2025-07-28T14:26:29Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T09:48:58Z' + - '2025-07-28T14:26:34Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T09:48:52Z' + - '2025-07-28T14:26:28Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - - '118000' + - '119000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T09:48:54Z' + - '2025-07-28T14:26:29Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -183,22 +178,20 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_01LeDwDZed3P1pCfgMfN1n9y","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"Since - you''ve asked me to continue, I''ll provide some additional details about - the document:\n\nThe Lorem Ipsum text is structured across five paragraphs, - each with multiple sentences. The paragraphs vary in length but follow a similar - pseudo-Latin linguistic pattern. Key characteristics include:\n\n1. Vocabulary: - Uses words that sound Latin-like but are not actual Latin\n2. Sentence structure: - Mimics natural language flow\n3. Grammatical complexity: Includes varied sentence - lengths and structures\n\nThe document''s formatting includes:\n- A large, - clean title at the top\n- Consistent paragraph spacing\n- Standard serif font\n- - Justified text alignment\n\nWhile the text looks like it contains meaningful - content, it''s actually a standard placeholder text used extensively in graphic - design, publishing, and web development to:\n- Show text layout\n- Demonstrate - font characteristics\n- Fill space in design mockups\n- Provide a realistic - text appearance without distracting from design elements\n\nThe repeated phrase - \"Fun fun fun\" in the subtitle adds a playful touch to what is otherwise - a very neutral, professional-looking document.\n\nWould you like me to elaborate - on any specific aspect of this sample PDF?"}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":2950,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":252,"service_tier":"standard"}}' - recorded_at: Thu, 17 Jul 2025 09:48:58 GMT + string: '{"id":"msg_019mnu8Ndox7CXvsTHkwaPzS","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"I + apologize, but there''s not much more to elaborate on with this document. + The PDF is essentially a standard Lorem Ipsum placeholder text document with + no substantive content. It''s a generic sample file that designers and developers + often use to document layouts, font rendering, and page + formatting.\n\nThe text is composed of pseudo-Latin phrases that are deliberately + meaningless. Each paragraph follows a similar structure, using complex-looking + sentences that are grammatically structured but semantically empty. This allows + designers to see how text will look in a particular font, size, and layout + without being distracted by actual content.\n\nThe document includes:\n- A + title and subtitle\n- Multiple paragraphs of Lorem Ipsum text\n- Consistent + formatting\n- No meaningful information\n\nIf you''re looking for more specific + details or have a particular aspect you''d like me to focus on, please let + me know, and I''ll be happy to provide more targeted information about the + document."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":2909,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":199,"service_tier":"standard"}}' + recorded_at: Mon, 28 Jul 2025 14:26:33 GMT recorded_with: VCR 6.3.1 diff --git a/spec/fixtures/vcr_cassettes/chat_real_error_scenarios_anthropic_claude-3-5-haiku-20241022_handles_context_length_exceeded_errors.yml b/spec/fixtures/vcr_cassettes/chat_real_error_scenarios_anthropic_claude-3-5-haiku-20241022_handles_context_length_exceeded_errors.yml index 7e11ff5b..42edf722 100644 --- a/spec/fixtures/vcr_cassettes/chat_real_error_scenarios_anthropic_claude-3-5-haiku-20241022_handles_context_length_exceeded_errors.yml +++ b/spec/fixtures/vcr_cassettes/chat_real_error_scenarios_anthropic_claude-3-5-haiku-20241022_handles_context_length_exceeded_errors.yml @@ -5,10 +5,10 @@ http_interactions: uri: https://api.anthropic.com/v1/messages body: encoding: UTF-8 - string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":""}]},{"role":"assistant","content":[{"type":"text","text":""}]},{"role":"user","content":[{"type":"text","text":""}]},{"role":"assistant","content":[{"type":"text","text":""}]},{"role":"user","content":[{"type":"text","text":""}]},{"role":"assistant","content":[{"type":"text","text":""}]},{"role":"user","content":[{"type":"text","text":""}]},{"role":"assistant","content":[{"type":"text","text":""}]},{"role":"user","content":[{"type":"text","text":""}]},{"role":"assistant","content":[{"type":"text","text":""}]},{"role":"user","content":[{"type":"text","text":"Hi"}]}],"temperature":0.7,"stream":false,"max_tokens":8192}' + string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":""}]},{"role":"assistant","content":[{"type":"text","text":""}]},{"role":"user","content":[{"type":"text","text":""}]},{"role":"assistant","content":[{"type":"text","text":""}]},{"role":"user","content":[{"type":"text","text":""}]},{"role":"assistant","content":[{"type":"text","text":""}]},{"role":"user","content":[{"type":"text","text":""}]},{"role":"assistant","content":[{"type":"text","text":""}]},{"role":"user","content":[{"type":"text","text":""}]},{"role":"assistant","content":[{"type":"text","text":""}]},{"role":"user","content":[{"type":"text","text":"Hi"}]}],"stream":false,"max_tokens":8192,"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.1 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -25,7 +25,7 @@ http_interactions: message: Bad Request headers: Date: - - Mon, 21 Jul 2025 01:05:33 GMT + - Mon, 28 Jul 2025 14:26:52 GMT Content-Type: - application/json Content-Length: @@ -39,7 +39,7 @@ http_interactions: Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 40072724-019e-4d79-83c0-8afb86354812 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -54,5 +54,5 @@ http_interactions: encoding: UTF-8 string: '{"type":"error","error":{"type":"invalid_request_error","message":"too many total text bytes: 10000002 > 9000000"}}' - recorded_at: Mon, 21 Jul 2025 01:05:33 GMT + recorded_at: Mon, 28 Jul 2025 14:26:52 GMT recorded_with: VCR 6.3.1 diff --git a/spec/fixtures/vcr_cassettes/chat_streaming_responses_anthropic_claude-3-5-haiku-20241022_reports_consistent_token_counts_compared_to_non-streaming.yml b/spec/fixtures/vcr_cassettes/chat_streaming_responses_anthropic_claude-3-5-haiku-20241022_reports_consistent_token_counts_compared_to_non-streaming.yml index f3aae259..50ae493c 100644 --- a/spec/fixtures/vcr_cassettes/chat_streaming_responses_anthropic_claude-3-5-haiku-20241022_reports_consistent_token_counts_compared_to_non-streaming.yml +++ b/spec/fixtures/vcr_cassettes/chat_streaming_responses_anthropic_claude-3-5-haiku-20241022_reports_consistent_token_counts_compared_to_non-streaming.yml @@ -6,10 +6,10 @@ http_interactions: body: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"Count - from 1 to 3"}]}],"temperature":0.0,"stream":true,"max_tokens":8192}' + from 1 to 3"}]}],"stream":true,"max_tokens":8192,"temperature":0.0}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -26,7 +26,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 09:57:18 GMT + - Mon, 28 Jul 2025 14:27:49 GMT Content-Type: - text/event-stream; charset=utf-8 Transfer-Encoding: @@ -40,31 +40,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T09:57:17Z' + - '2025-07-28T14:27:49Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T09:57:17Z' + - '2025-07-28T14:27:49Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T09:57:17Z' + - '2025-07-28T14:27:49Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T09:57:17Z' + - '2025-07-28T14:27:49Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -79,52 +79,52 @@ http_interactions: encoding: UTF-8 string: |+ event: message_start - data: {"type":"message_start","message":{"id":"msg_014s71Hf5N9RJhHisNehGjcB","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":15,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":1,"service_tier":"standard"}} } + data: {"type":"message_start","message":{"id":"msg_01S8zEPn6Ar9w58UcXbFhJ9V","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":15,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":1,"service_tier":"standard"}} } event: content_block_start - data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""} } + data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""} } event: ping data: {"type": "ping"} event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"Here"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"Here"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"'s"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"'s"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" counting"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" counting"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" from 1 to"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" from 1 to"}} event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" 3:\n\n1"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" 3:\n\n1"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"\n2\n3"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"\n2\n3"} } event: content_block_stop - data: {"type":"content_block_stop","index":0 } + data: {"type":"content_block_stop","index":0} event: message_delta - data: {"type":"message_delta","delta":{"stop_reason":"end_turn","stop_sequence":null},"usage":{"output_tokens":20} } + data: {"type":"message_delta","delta":{"stop_reason":"end_turn","stop_sequence":null},"usage":{"output_tokens":20} } event: message_stop - data: {"type":"message_stop" } + data: {"type":"message_stop" } - recorded_at: Thu, 17 Jul 2025 09:57:18 GMT + recorded_at: Mon, 28 Jul 2025 14:27:49 GMT - request: method: post uri: https://api.anthropic.com/v1/messages body: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"Count - from 1 to 3"}]}],"temperature":0.0,"stream":false,"max_tokens":8192}' + from 1 to 3"}]}],"stream":false,"max_tokens":8192,"temperature":0.0}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -141,7 +141,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 09:57:19 GMT + - Mon, 28 Jul 2025 14:27:51 GMT Content-Type: - application/json Transfer-Encoding: @@ -153,31 +153,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T09:57:18Z' + - '2025-07-28T14:27:50Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T09:57:19Z' + - '2025-07-28T14:27:51Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T09:57:18Z' + - '2025-07-28T14:27:49Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T09:57:18Z' + - '2025-07-28T14:27:50Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -190,8 +190,8 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_01CtmPF8tLgn2Dyxb583aV9w","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"Here''s + string: '{"id":"msg_01UhtMuLS7gnidy3YeYKWK7f","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"Here''s counting from 1 to 3:\n\n1\n2\n3"}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":15,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":20,"service_tier":"standard"}}' - recorded_at: Thu, 17 Jul 2025 09:57:19 GMT + recorded_at: Mon, 28 Jul 2025 14:27:51 GMT recorded_with: VCR 6.3.1 ... diff --git a/spec/fixtures/vcr_cassettes/chat_streaming_responses_anthropic_claude-3-5-haiku-20241022_supports_streaming_responses.yml b/spec/fixtures/vcr_cassettes/chat_streaming_responses_anthropic_claude-3-5-haiku-20241022_supports_streaming_responses.yml index a068e384..7b4aa7a6 100644 --- a/spec/fixtures/vcr_cassettes/chat_streaming_responses_anthropic_claude-3-5-haiku-20241022_supports_streaming_responses.yml +++ b/spec/fixtures/vcr_cassettes/chat_streaming_responses_anthropic_claude-3-5-haiku-20241022_supports_streaming_responses.yml @@ -6,10 +6,10 @@ http_interactions: body: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"Count - from 1 to 3"}]}],"temperature":0.7,"stream":true,"max_tokens":8192}' + from 1 to 3"}]}],"stream":true,"max_tokens":8192,"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -26,7 +26,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 09:57:16 GMT + - Mon, 28 Jul 2025 14:27:48 GMT Content-Type: - text/event-stream; charset=utf-8 Transfer-Encoding: @@ -40,31 +40,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T09:57:16Z' + - '2025-07-28T14:27:48Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T09:57:16Z' + - '2025-07-28T14:27:48Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T09:57:16Z' + - '2025-07-28T14:27:48Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T09:57:16Z' + - '2025-07-28T14:27:48Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -79,41 +79,44 @@ http_interactions: encoding: UTF-8 string: |+ event: message_start - data: {"type":"message_start","message":{"id":"msg_01B95mEgyd4E17jbZx6zY9JZ","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":15,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":1,"service_tier":"standard"}} } + data: {"type":"message_start","message":{"id":"msg_01Xf7aammyt1JT5ZgVRwMCt6","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[],"stop_reason":null,"stop_sequence":null,"usage":{"input_tokens":15,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":1,"service_tier":"standard"}} } event: content_block_start - data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""} } + data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""} } event: ping data: {"type": "ping"} event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"Here"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"Here"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"'s"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"'s"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" counting"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" counting"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" from 1 to"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" from 1 to"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" 3:\n\n1"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":" 3:"} } event: content_block_delta - data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"\n2\n3"} } + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"\n\n1\n2"} } + + event: content_block_delta + data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"\n3"} } event: content_block_stop - data: {"type":"content_block_stop","index":0 } + data: {"type":"content_block_stop","index":0 } event: message_delta - data: {"type":"message_delta","delta":{"stop_reason":"end_turn","stop_sequence":null},"usage":{"output_tokens":20} } + data: {"type":"message_delta","delta":{"stop_reason":"end_turn","stop_sequence":null},"usage":{"output_tokens":20} } event: message_stop - data: {"type":"message_stop" } + data: {"type":"message_stop" } - recorded_at: Thu, 17 Jul 2025 09:57:17 GMT + recorded_at: Mon, 28 Jul 2025 14:27:48 GMT recorded_with: VCR 6.3.1 ... diff --git a/spec/fixtures/vcr_cassettes/chat_text_models_anthropic_claude-3-5-haiku-20241022_can_understand_remote_text.yml b/spec/fixtures/vcr_cassettes/chat_text_models_anthropic_claude-3-5-haiku-20241022_can_understand_remote_text.yml index c79ea713..1da5c7ec 100644 --- a/spec/fixtures/vcr_cassettes/chat_text_models_anthropic_claude-3-5-haiku-20241022_can_understand_remote_text.yml +++ b/spec/fixtures/vcr_cassettes/chat_text_models_anthropic_claude-3-5-haiku-20241022_can_understand_remote_text.yml @@ -8,7 +8,7 @@ http_interactions: string: '' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: @@ -29,39 +29,39 @@ http_interactions: X-Origin-Cache: - HIT Last-Modified: - - Wed, 16 Jul 2025 15:35:29 GMT + - Thu, 24 Jul 2025 16:53:18 GMT Access-Control-Allow-Origin: - "*" Etag: - - W/"6877c6c1-9c6" + - W/"688264fe-9c6" Expires: - - Thu, 17 Jul 2025 07:25:20 GMT + - Mon, 28 Jul 2025 14:34:04 GMT Cache-Control: - max-age=600 X-Proxy-Cache: - MISS X-Github-Request-Id: - - A671:3B165:AFAA75:B103CB:6878A307 + - 99B5:1DD40F:53D63C1:5463F04:68878803 Accept-Ranges: - bytes Age: - '0' Date: - - Thu, 17 Jul 2025 09:42:50 GMT + - Mon, 28 Jul 2025 14:26:07 GMT Via: - 1.1 varnish X-Served-By: - - cache-fra-etou8220068-FRA + - cache-bru1480030-BRU X-Cache: - HIT X-Cache-Hits: - '0' X-Timer: - - S1752745370.408747,VS0,VE104 + - S1753712768.591832,VS0,VE101 Vary: - Accept-Encoding X-Fastly-Request-Id: - - 7e7932f75ed78838f76a1ee3e3813f894bced6ef + - 5fe6e5d6863c87023f87cea44c5a047b835ca25c body: encoding: ASCII-8BIT string: "Ruby is copyrighted free software by Yukihiro Matsumoto .\nYou @@ -97,7 +97,7 @@ http_interactions: \"AS IS\" AND WITHOUT ANY EXPRESS OR\n IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED\n WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR\n PURPOSE.\n" - recorded_at: Thu, 17 Jul 2025 09:42:50 GMT + recorded_at: Mon, 28 Jul 2025 14:26:07 GMT - request: method: post uri: https://api.anthropic.com/v1/messages @@ -137,10 +137,10 @@ http_interactions: aggregated with this\n software.\n\n 6. THIS SOFTWARE IS PROVIDED \"AS IS\" AND WITHOUT ANY EXPRESS OR\n IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED\n WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - A PARTICULAR\n PURPOSE.\n"}]}],"temperature":0.7,"stream":false,"max_tokens":8192}' + A PARTICULAR\n PURPOSE.\n"}]}],"stream":false,"max_tokens":8192,"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -157,7 +157,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 09:42:54 GMT + - Mon, 28 Jul 2025 14:26:11 GMT Content-Type: - application/json Transfer-Encoding: @@ -169,31 +169,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T09:42:51Z' + - '2025-07-28T14:26:08Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T09:42:54Z' + - '2025-07-28T14:26:11Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T09:42:50Z' + - '2025-07-28T14:26:07Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T09:42:51Z' + - '2025-07-28T14:26:08Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -206,16 +206,16 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_0146VnPHJiZya97iynubtn1d","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"This + string: '{"id":"msg_015Pzdk8V7L55df16rL9gy6A","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"This file is a license text for Ruby, the programming language. It appears to be - a modified BSD-style license written by Yukihiro Matsumoto (Matz), the creator - of Ruby. The license outlines the terms under which Ruby can be redistributed - and modified, including:\n\n1. Allowing verbatim copies of the source code\n2. - Permitting modifications under certain conditions\n3. Allowing distribution - of binaries or source code\n4. Allowing incorporation into other software\n5. - Clarifying copyright status of scripts and library files\n6. Providing the - software \"AS IS\" without warranties\n\nThe license is quite permissive, - giving users significant freedom to use, modify, and distribute the Ruby software - with relatively few restrictions."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":588,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":162,"service_tier":"standard"}}' - recorded_at: Thu, 17 Jul 2025 09:42:54 GMT + a permissive open-source license that allows redistribution and modification + of the software under certain conditions. The key points of the license include:\n\n1. + Copyright is held by Yukihiro Matsumoto (Matz)\n2. Users can redistribute + and modify the software\n3. Modifications can be made with various conditions + (such as placing them in the public domain or using them internally)\n4. Binary + distributions have specific requirements\n5. The software is provided \"AS + IS\" without warranties\n\nThe license seems to be similar to a BSD-style + license, with flexible terms for using and distributing the Ruby programming + language."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":588,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":152,"service_tier":"standard"}}' + recorded_at: Mon, 28 Jul 2025 14:26:11 GMT recorded_with: VCR 6.3.1 diff --git a/spec/fixtures/vcr_cassettes/chat_text_models_anthropic_claude-3-5-haiku-20241022_can_understand_text.yml b/spec/fixtures/vcr_cassettes/chat_text_models_anthropic_claude-3-5-haiku-20241022_can_understand_text.yml index ecf84874..c9992414 100644 --- a/spec/fixtures/vcr_cassettes/chat_text_models_anthropic_claude-3-5-haiku-20241022_can_understand_text.yml +++ b/spec/fixtures/vcr_cassettes/chat_text_models_anthropic_claude-3-5-haiku-20241022_can_understand_text.yml @@ -7,10 +7,10 @@ http_interactions: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"What''s in this file?"},{"type":"text","text":"Ruby - is the best."}]}],"temperature":0.7,"stream":false,"max_tokens":8192}' + is the best."}]}],"stream":false,"max_tokens":8192,"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -27,7 +27,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 09:42:48 GMT + - Mon, 28 Jul 2025 14:26:05 GMT Content-Type: - application/json Transfer-Encoding: @@ -39,31 +39,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T09:42:46Z' + - '2025-07-28T14:26:04Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T09:42:48Z' + - '2025-07-28T14:26:05Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T09:42:46Z' + - '2025-07-28T14:26:03Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T09:42:46Z' + - '2025-07-28T14:26:04Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -76,12 +76,11 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_01EMpGNtoReRnsSo64KcKudN","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"Based - on the provided file details, the file named ''ruby.txt'' contains the text:\n\n\"Ruby - is the best.\"\n\nThe file is a plain text file (mime type ''text/plain'') - with a simple one-line statement expressing an opinion about the Ruby programming - language."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":36,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":63,"service_tier":"standard"}}' - recorded_at: Thu, 17 Jul 2025 09:42:48 GMT + string: '{"id":"msg_017BfWvESpUKuQytF2jjk3T6","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"Based + on the provided file details, the contents of the ''ruby.txt'' file is:\n\n\"Ruby + is the best.\"\n\nThe file is a plain text file (mime_type=''text/plain'') + with a simple one-line message praising the Ruby programming language."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":36,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":61,"service_tier":"standard"}}' + recorded_at: Mon, 28 Jul 2025 14:26:05 GMT - request: method: post uri: https://api.anthropic.com/v1/messages @@ -90,15 +89,14 @@ http_interactions: string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"What''s in this file?"},{"type":"text","text":"Ruby is the best."}]},{"role":"assistant","content":[{"type":"text","text":"Based - on the provided file details, the file named ''ruby.txt'' contains the text:\n\n\"Ruby - is the best.\"\n\nThe file is a plain text file (mime type ''text/plain'') - with a simple one-line statement expressing an opinion about the Ruby programming - language."}]},{"role":"user","content":[{"type":"text","text":"and in this - one?"},{"type":"text","text":"Ruby - is the best"}]}],"temperature":0.7,"stream":false,"max_tokens":8192}' + on the provided file details, the contents of the ''ruby.txt'' file is:\n\n\"Ruby + is the best.\"\n\nThe file is a plain text file (mime_type=''text/plain'') + with a simple one-line message praising the Ruby programming language."}]},{"role":"user","content":[{"type":"text","text":"and + in this one?"},{"type":"text","text":"Ruby + is the best"}]}],"stream":false,"max_tokens":8192,"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -115,7 +113,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 09:42:50 GMT + - Mon, 28 Jul 2025 14:26:07 GMT Content-Type: - application/json Transfer-Encoding: @@ -127,31 +125,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T09:42:48Z' + - '2025-07-28T14:26:05Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T09:42:50Z' + - '2025-07-28T14:26:07Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T09:42:48Z' + - '2025-07-28T14:26:05Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T09:42:48Z' + - '2025-07-28T14:26:05Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -164,11 +162,10 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_0187xmPW46W9Royc7iVBdb3x","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"In - the file ''ruby.xml'', which is an XML document (mime type ''application/xml''), - the content is:\n\n```xml\nRuby is the best\n```\n\nThis - is a simple XML file with a custom tag `` containing the text \"Ruby - is the best\". The XML structure suggests this is a statement or declaration - about Ruby, marked as a \"truism\" (a self-evident truth)."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":137,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":101,"service_tier":"standard"}}' - recorded_at: Thu, 17 Jul 2025 09:42:50 GMT + string: '{"id":"msg_01FWAE92AXgXyv1L7Z6Zvmeg","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"In + the ''ruby.xml'' file, the contents are:\n\n```xml\nRuby is the best\n```\n\nThis + is an XML file with a simple XML structure. It contains a custom XML tag `` + with the text \"Ruby is the best\" inside it. The file''s MIME type is ''application/xml'', + which indicates it is an XML document."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":135,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":92,"service_tier":"standard"}}' + recorded_at: Mon, 28 Jul 2025 14:26:07 GMT recorded_with: VCR 6.3.1 diff --git a/spec/fixtures/vcr_cassettes/chat_vision_models_anthropic_claude-3-5-haiku-20241022_can_understand_local_images.yml b/spec/fixtures/vcr_cassettes/chat_vision_models_anthropic_claude-3-5-haiku-20241022_can_understand_local_images.yml index 0a1fe681..d0f59d17 100644 --- a/spec/fixtures/vcr_cassettes/chat_vision_models_anthropic_claude-3-5-haiku-20241022_can_understand_local_images.yml +++ b/spec/fixtures/vcr_cassettes/chat_vision_models_anthropic_claude-3-5-haiku-20241022_can_understand_local_images.yml @@ -6,10 +6,10 @@ http_interactions: body: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"What - do you see in this image?"},{"type":"image","source":{"type":"base64","media_type":"image/png","data":"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"}}]}],"temperature":0.7,"stream":false,"max_tokens":8192}' + do you see in this image?"},{"type":"image","source":{"type":"base64","media_type":"image/png","data":"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"}}]}],"stream":false,"max_tokens":8192,"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -26,7 +26,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 09:47:43 GMT + - Mon, 28 Jul 2025 14:26:15 GMT Content-Type: - application/json Transfer-Encoding: @@ -38,31 +38,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T09:47:40Z' + - '2025-07-28T14:26:13Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T09:47:43Z' + - '2025-07-28T14:26:16Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T09:47:40Z' + - '2025-07-28T14:26:13Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T09:47:40Z' + - '2025-07-28T14:26:13Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -75,13 +75,13 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_01Qzmg9ukS32u2ZEEVFTPDsb","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"This - is the logo for Ruby, a popular programming language. The logo depicts a stylized - red gemstone or ruby, with angular facets and a three-dimensional appearance. - The design uses shades of red and has a sleek, modern look that represents - the language''s elegance and simplicity. Ruby is known for being a dynamic, - object-oriented programming language that was created by Yukihiro Matsumoto - in the mid-1990s and is particularly popular for web development, especially - with the Ruby on Rails framework."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":54,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":112,"service_tier":"standard"}}' - recorded_at: Thu, 17 Jul 2025 09:47:43 GMT + string: '{"id":"msg_01GgHviZn1SHVYrCa7i278Xu","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"This + is the logo for the Ruby programming language. It depicts a stylized red gemstone + or ruby, with angular, faceted surfaces that create a three-dimensional geometric + shape. The logo is primarily red in color, with highlights and shadows that + give it depth and a sense of shine, resembling a cut precious stone. The Ruby + logo is well-known in the programming and software development community, + symbolizing the Ruby programming language, which is known for its simplicity + and readability."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":54,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":101,"service_tier":"standard"}}' + recorded_at: Mon, 28 Jul 2025 14:26:15 GMT recorded_with: VCR 6.3.1 diff --git a/spec/fixtures/vcr_cassettes/chat_vision_models_anthropic_claude-3-5-haiku-20241022_can_understand_remote_images_without_extension.yml b/spec/fixtures/vcr_cassettes/chat_vision_models_anthropic_claude-3-5-haiku-20241022_can_understand_remote_images_without_extension.yml index 354eeb6c..f1935b59 100644 --- a/spec/fixtures/vcr_cassettes/chat_vision_models_anthropic_claude-3-5-haiku-20241022_can_understand_remote_images_without_extension.yml +++ b/spec/fixtures/vcr_cassettes/chat_vision_models_anthropic_claude-3-5-haiku-20241022_can_understand_remote_images_without_extension.yml @@ -8,7 +8,7 @@ http_interactions: string: '' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 Accept-Encoding: - gzip;q=1.0,deflate;q=0.6,identity;q=0.3 Accept: @@ -20,8 +20,6 @@ http_interactions: headers: Accept-Ranges: - bytes - Content-Type: - - image/jpeg Access-Control-Allow-Origin: - "*" Content-Security-Policy-Report-Only: @@ -34,37 +32,41 @@ http_interactions: - '{"group":"images-tbn","max_age":2592000,"endpoints":[{"url":"https://csp.withgoogle.com/csp/report-to/images-tbn"}]}' Content-Length: - '8328' - Date: - - Thu, 17 Jul 2025 09:47:43 GMT - Expires: - - Fri, 17 Jul 2026 09:47:43 GMT - Cache-Control: - - public, max-age=31536000 - Last-Modified: - - Wed, 13 Nov 2019 04:20:22 GMT X-Content-Type-Options: - nosniff Server: - sffe X-Xss-Protection: - '0' + Date: + - Mon, 28 Jul 2025 14:24:06 GMT + Expires: + - Tue, 28 Jul 2026 14:24:06 GMT + Cache-Control: + - public, max-age=31536000 + Last-Modified: + - Wed, 13 Nov 2019 04:20:22 GMT + Content-Type: + - image/jpeg + Age: + - '130' Alt-Svc: - h3=":443"; ma=2592000,h3-29=":443"; ma=2592000 body: encoding: ASCII-8BIT string: !binary |- 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 - recorded_at: Thu, 17 Jul 2025 09:47:43 GMT + recorded_at: Mon, 28 Jul 2025 14:26:16 GMT - request: method: post uri: https://api.anthropic.com/v1/messages body: encoding: UTF-8 string: '{"model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"What - do you see in this image?"},{"type":"image","source":{"type":"url","url":"https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQzSCawxoHrVtf9AX-o7bp7KVxcmkYWzsIjng&s"}}]}],"temperature":0.7,"stream":false,"max_tokens":8192}' + do you see in this image?"},{"type":"image","source":{"type":"url","url":"https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQzSCawxoHrVtf9AX-o7bp7KVxcmkYWzsIjng&s"}}]}],"stream":false,"max_tokens":8192,"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.2 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -81,7 +83,7 @@ http_interactions: message: OK headers: Date: - - Thu, 17 Jul 2025 09:47:47 GMT + - Mon, 28 Jul 2025 14:26:20 GMT Content-Type: - application/json Transfer-Encoding: @@ -93,31 +95,31 @@ http_interactions: Anthropic-Ratelimit-Input-Tokens-Remaining: - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-17T09:47:43Z' + - '2025-07-28T14:26:16Z' Anthropic-Ratelimit-Output-Tokens-Limit: - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-17T09:47:47Z' + - '2025-07-28T14:26:20Z' Anthropic-Ratelimit-Requests-Limit: - '1000' Anthropic-Ratelimit-Requests-Remaining: - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-17T09:47:43Z' + - '2025-07-28T14:26:16Z' Anthropic-Ratelimit-Tokens-Limit: - '120000' Anthropic-Ratelimit-Tokens-Remaining: - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-17T09:47:43Z' + - '2025-07-28T14:26:16Z' Request-Id: - "" Strict-Transport-Security: - max-age=31536000; includeSubDomains; preload Anthropic-Organization-Id: - - 0137b15c-16bf-490d-9f90-8cfd7e325ec0 + - "" Via: - 1.1 google Cf-Cache-Status: @@ -130,16 +132,7 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_01Bq5S5XegEFjdQsWJJ6e9YZ","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"This - image depicts the iconic Eiffel Tower in Paris, France, during a stunning - sunset. The famous iron lattice tower stands tall against a dramatic sky with - soft blue and orange hues. In the foreground, there''s a well-manicured park - or garden area with a pathway and trees. The reflection of the tower can be - seen in what appears to be a water feature or wet surface, creating a beautiful - mirror effect. The lighting suggests it''s either early morning or early evening, - with the soft, warm colors of the sky creating a magical atmosphere around - this world-renowned landmark. The scene captures the beauty and romance that - Paris is known for, showcasing one of the most recognizable structures in - the world."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":98,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":150,"service_tier":"standard"}}' - recorded_at: Thu, 17 Jul 2025 09:47:47 GMT + string: !binary |- + eyJpZCI6Im1zZ18wMVJKd1N0TjJKUjE1V1JNNEFrTU44OEYiLCJ0eXBlIjoibWVzc2FnZSIsInJvbGUiOiJhc3Npc3RhbnQiLCJtb2RlbCI6ImNsYXVkZS0zLTUtaGFpa3UtMjAyNDEwMjIiLCJjb250ZW50IjpbeyJ0eXBlIjoidGV4dCIsInRleHQiOiJUaGlzIGltYWdlIHNob3dzIHRoZSBpY29uaWMgRWlmZmVsIFRvd2VyIGluIFBhcmlzLCBGcmFuY2UsIGR1cmluZyBhIGJlYXV0aWZ1bCBzdW5zZXQgb3Igc3VucmlzZS4gVGhlIGZhbW91cyBpcm9uIGxhdHRpY2UgdG93ZXIgc3RhbmRzIHRhbGwgYWdhaW5zdCBhIGRyYW1hdGljIHNreSB3aXRoIHNvZnQgYmx1ZSwgcGluaywgYW5kIHllbGxvdyBodWVzLiBJbiB0aGUgZm9yZWdyb3VuZCwgdGhlcmUncyBhIHdlbGwtbWFuaWN1cmVkIGdyZWVuIGFyZWEgd2l0aCBwYXRocyBhbmQgdHJlZXMsIHR5cGljYWwgb2YgdGhlIFRyb2NhZMOpcm8gR2FyZGVucy4gVGhlIHJlZmxlY3Rpb24gb2YgdGhlIHRvd2VyIGNhbiBiZSBzZWVuIGluIHdoYXQgYXBwZWFycyB0byBiZSBhIHdhdGVyIGZlYXR1cmUgb3Igd2V0IGdyb3VuZCwgY3JlYXRpbmcgYSBtaXJyb3ItbGlrZSBlZmZlY3QuIFRoZSBsaWdodGluZyBjYXB0dXJlcyB0aGUgbW9udW1lbnQgaW4gYSB3YXJtLCBnb2xkZW4gZ2xvdywgaGlnaGxpZ2h0aW5nIGl0cyBpbnRyaWNhdGUgc3RydWN0dXJlIGFuZCBtYWtpbmcgaXQgbG9vayBwYXJ0aWN1bGFybHkgbWFqZXN0aWMuIFRoZSBzY2VuZSBjb252ZXlzIGEgc2Vuc2Ugb2YgdHJhbnF1aWxpdHkgYW5kIGJlYXV0eSwgc2hvd2Nhc2luZyBvbmUgb2YgdGhlIHdvcmxkJ3MgbW9zdCByZWNvZ25pemFibGUgbGFuZG1hcmtzIGluIGl0cyBtb3N0IHBob3RvZ2VuaWMgbW9tZW50LiJ9XSwic3RvcF9yZWFzb24iOiJlbmRfdHVybiIsInN0b3Bfc2VxdWVuY2UiOm51bGwsInVzYWdlIjp7ImlucHV0X3Rva2VucyI6OTgsImNhY2hlX2NyZWF0aW9uX2lucHV0X3Rva2VucyI6MCwiY2FjaGVfcmVhZF9pbnB1dF90b2tlbnMiOjAsIm91dHB1dF90b2tlbnMiOjE2NCwic2VydmljZV90aWVyIjoic3RhbmRhcmQifX0= + recorded_at: Mon, 28 Jul 2025 14:26:20 GMT recorded_with: VCR 6.3.1 diff --git a/spec/fixtures/vcr_cassettes/chat_with_params_anthropic_claude-3-5-haiku-20241022_supports_service_tier_param.yml b/spec/fixtures/vcr_cassettes/chat_with_params_anthropic_claude-3-5-haiku-20241022_supports_service_tier_param.yml index 1d421fe8..23da0e86 100644 --- a/spec/fixtures/vcr_cassettes/chat_with_params_anthropic_claude-3-5-haiku-20241022_supports_service_tier_param.yml +++ b/spec/fixtures/vcr_cassettes/chat_with_params_anthropic_claude-3-5-haiku-20241022_supports_service_tier_param.yml @@ -6,10 +6,10 @@ http_interactions: body: encoding: UTF-8 string: '{"service_tier":"standard_only","model":"claude-3-5-haiku-20241022","messages":[{"role":"user","content":[{"type":"text","text":"What - is the square root of 64? Answer with a JSON object with the key `result`."}]},{"role":"assistant","content":[{"type":"text","text":"{"}]}],"temperature":0.7,"stream":false,"max_tokens":8192}' + is the square root of 64? Answer with a JSON object with the key `result`."}]},{"role":"assistant","content":[{"type":"text","text":"{"}]}],"stream":false,"max_tokens":8192,"temperature":0.7}' headers: User-Agent: - - Faraday v2.13.1 + - Faraday v2.13.4 X-Api-Key: - "" Anthropic-Version: @@ -26,7 +26,7 @@ http_interactions: message: OK headers: Date: - - Sat, 19 Jul 2025 19:53:47 GMT + - Mon, 28 Jul 2025 14:27:29 GMT Content-Type: - application/json Transfer-Encoding: @@ -34,29 +34,29 @@ http_interactions: Connection: - keep-alive Anthropic-Ratelimit-Input-Tokens-Limit: - - '25000' + - '100000' Anthropic-Ratelimit-Input-Tokens-Remaining: - - '25000' + - '100000' Anthropic-Ratelimit-Input-Tokens-Reset: - - '2025-07-19T19:53:46Z' + - '2025-07-28T14:27:29Z' Anthropic-Ratelimit-Output-Tokens-Limit: - - '5000' + - '20000' Anthropic-Ratelimit-Output-Tokens-Remaining: - - '5000' + - '20000' Anthropic-Ratelimit-Output-Tokens-Reset: - - '2025-07-19T19:53:47Z' + - '2025-07-28T14:27:29Z' Anthropic-Ratelimit-Requests-Limit: - - '5' + - '1000' Anthropic-Ratelimit-Requests-Remaining: - - '4' + - '999' Anthropic-Ratelimit-Requests-Reset: - - '2025-07-19T19:53:58Z' + - '2025-07-28T14:27:29Z' Anthropic-Ratelimit-Tokens-Limit: - - '30000' + - '120000' Anthropic-Ratelimit-Tokens-Remaining: - - '30000' + - '120000' Anthropic-Ratelimit-Tokens-Reset: - - '2025-07-19T19:53:46Z' + - '2025-07-28T14:27:29Z' Request-Id: - "" Strict-Transport-Security: @@ -75,7 +75,7 @@ http_interactions: - "" body: encoding: ASCII-8BIT - string: '{"id":"msg_01Y9cx1icSo5LmER4hv3mX6M","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"\n \"result\": + string: '{"id":"msg_01BJBUWWwaqnNNAhzookDyRc","type":"message","role":"assistant","model":"claude-3-5-haiku-20241022","content":[{"type":"text","text":"\n \"result\": 8\n}"}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":28,"cache_creation_input_tokens":0,"cache_read_input_tokens":0,"output_tokens":12,"service_tier":"standard"}}' - recorded_at: Sat, 19 Jul 2025 19:53:47 GMT + recorded_at: Mon, 28 Jul 2025 14:27:29 GMT recorded_with: VCR 6.3.1