multi_tool_streaming_claude-sonnet-4.yaml

  1---
  2version: 2
  3interactions:
  4  - id: 0
  5    request:
  6        proto: HTTP/1.1
  7        proto_major: 1
  8        proto_minor: 1
  9        content_length: 892
 10        host: ""
 11        body: '{"messages":[{"content":"You are a helpful assistant. Always use both add and multiply at the same time.","role":"system"},{"content":"Add and multiply the number 2 and 3","role":"user"}],"model":"anthropic/claude-sonnet-4","max_tokens":4000,"stream_options":{"include_usage":true},"tool_choice":"auto","tools":[{"function":{"name":"add","strict":false,"description":"Add two numbers","parameters":{"properties":{"a":{"description":"first number","type":"integer"},"b":{"description":"second number","type":"integer"}},"required":["a","b"],"type":"object"}},"type":"function"},{"function":{"name":"multiply","strict":false,"description":"Multiply two numbers","parameters":{"properties":{"a":{"description":"first number","type":"integer"},"b":{"description":"second number","type":"integer"}},"required":["a","b"],"type":"object"}},"type":"function"}],"usage":{"include":true},"stream":true}'
 12        headers:
 13            Accept:
 14              - application/json
 15            Content-Type:
 16              - application/json
 17            User-Agent:
 18              - OpenAI/Go 2.3.0
 19        url: https://openrouter.ai/api/v1/chat/completions
 20        method: POST
 21    response:
 22        proto: HTTP/2.0
 23        proto_major: 2
 24        proto_minor: 0
 25        content_length: -1
 26        body: |+
 27            data: {"id":"gen-1758711110-d1eiw2aD7Ko72nixF4yC","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711110,"choices":[{"index":0,"delta":{"role":"assistant","content":"","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 28
 29            data: {"id":"gen-1758711110-d1eiw2aD7Ko72nixF4yC","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711110,"choices":[{"index":0,"delta":{"role":"assistant","content":"","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 30
 31            data: {"id":"gen-1758711110-d1eiw2aD7Ko72nixF4yC","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711110,"choices":[{"index":0,"delta":{"role":"assistant","content":"I'll add an","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 32
 33            data: {"id":"gen-1758711110-d1eiw2aD7Ko72nixF4yC","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711110,"choices":[{"index":0,"delta":{"role":"assistant","content":"d multiply the numbers","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 34
 35            data: {"id":"gen-1758711110-d1eiw2aD7Ko72nixF4yC","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711110,"choices":[{"index":0,"delta":{"role":"assistant","content":" 2 and 3 for","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 36
 37            data: {"id":"gen-1758711110-d1eiw2aD7Ko72nixF4yC","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711110,"choices":[{"index":0,"delta":{"role":"assistant","content":" you.","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 38
 39            data: {"id":"gen-1758711110-d1eiw2aD7Ko72nixF4yC","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711110,"choices":[{"index":0,"delta":{"role":"assistant","content":"","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 40
 41            data: {"id":"gen-1758711110-d1eiw2aD7Ko72nixF4yC","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711110,"choices":[{"index":0,"delta":{"role":"assistant","content":null,"tool_calls":[{"id":"toolu_vrtx_01Gd4wT9QPhkpPB6zkNLCkaj","index":0,"type":"function","function":{"name":"add","arguments":""}}]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 42
 43            data: {"id":"gen-1758711110-d1eiw2aD7Ko72nixF4yC","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711110,"choices":[{"index":0,"delta":{"role":"assistant","content":null,"tool_calls":[{"index":0,"type":"function","function":{"arguments":""}}]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 44
 45            data: {"id":"gen-1758711110-d1eiw2aD7Ko72nixF4yC","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711110,"choices":[{"index":0,"delta":{"role":"assistant","content":null,"tool_calls":[{"index":0,"type":"function","function":{"arguments":"{\"a\": 2"}}]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 46
 47            data: {"id":"gen-1758711110-d1eiw2aD7Ko72nixF4yC","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711110,"choices":[{"index":0,"delta":{"role":"assistant","content":null,"tool_calls":[{"index":0,"type":"function","function":{"arguments":", \"b\": "}}]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 48
 49            data: {"id":"gen-1758711110-d1eiw2aD7Ko72nixF4yC","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711110,"choices":[{"index":0,"delta":{"role":"assistant","content":null,"tool_calls":[{"index":0,"type":"function","function":{"arguments":"3}"}}]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 50
 51            data: {"id":"gen-1758711110-d1eiw2aD7Ko72nixF4yC","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711110,"choices":[{"index":0,"delta":{"role":"assistant","content":"","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 52
 53            data: {"id":"gen-1758711110-d1eiw2aD7Ko72nixF4yC","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711110,"choices":[{"index":0,"delta":{"role":"assistant","content":null,"tool_calls":[{"id":"toolu_vrtx_01AR68sZeZk9EHztGXwsQNGd","index":1,"type":"function","function":{"name":"multiply","arguments":""}}]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 54
 55            data: {"id":"gen-1758711110-d1eiw2aD7Ko72nixF4yC","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711110,"choices":[{"index":0,"delta":{"role":"assistant","content":null,"tool_calls":[{"index":1,"type":"function","function":{"arguments":""}}]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 56
 57            data: {"id":"gen-1758711110-d1eiw2aD7Ko72nixF4yC","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711110,"choices":[{"index":0,"delta":{"role":"assistant","content":null,"tool_calls":[{"index":1,"type":"function","function":{"arguments":"{\"a\":"}}]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 58
 59            data: {"id":"gen-1758711110-d1eiw2aD7Ko72nixF4yC","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711110,"choices":[{"index":0,"delta":{"role":"assistant","content":null,"tool_calls":[{"index":1,"type":"function","function":{"arguments":" 2"}}]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 60
 61            data: {"id":"gen-1758711110-d1eiw2aD7Ko72nixF4yC","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711110,"choices":[{"index":0,"delta":{"role":"assistant","content":null,"tool_calls":[{"index":1,"type":"function","function":{"arguments":", \"b\": 3}"}}]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 62
 63            data: {"id":"gen-1758711110-d1eiw2aD7Ko72nixF4yC","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711110,"choices":[{"index":0,"delta":{"role":"assistant","content":"","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 64
 65            data: {"id":"gen-1758711110-d1eiw2aD7Ko72nixF4yC","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711110,"choices":[{"index":0,"delta":{"role":"assistant","content":"","reasoning":null,"reasoning_details":[]},"finish_reason":"tool_calls","native_finish_reason":"tool_calls","logprobs":null}]}
 66
 67            data: {"id":"gen-1758711110-d1eiw2aD7Ko72nixF4yC","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711110,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"finish_reason":null,"native_finish_reason":null,"logprobs":null}],"usage":{"prompt_tokens":502,"completion_tokens":137,"total_tokens":639,"cost":0.003561,"is_byok":false,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"cost_details":{"upstream_inference_cost":null,"upstream_inference_prompt_cost":0.001506,"upstream_inference_completions_cost":0.002055},"completion_tokens_details":{"reasoning_tokens":0,"image_tokens":0}}}
 68
 69            data: [DONE]
 70
 71        headers:
 72            Content-Type:
 73              - text/event-stream
 74        status: 200 OK
 75        code: 200
 76        duration: 2.526253917s
 77  - id: 1
 78    request:
 79        proto: HTTP/1.1
 80        proto_major: 1
 81        proto_minor: 1
 82        content_length: 1410
 83        host: ""
 84        body: '{"messages":[{"content":"You are a helpful assistant. Always use both add and multiply at the same time.","role":"system"},{"content":"Add and multiply the number 2 and 3","role":"user"},{"content":"I''ll add and multiply the numbers 2 and 3 for you.","tool_calls":[{"id":"toolu_vrtx_01Gd4wT9QPhkpPB6zkNLCkaj","function":{"arguments":"{\"a\": 2, \"b\": 3}","name":"add"},"type":"function"},{"id":"toolu_vrtx_01AR68sZeZk9EHztGXwsQNGd","function":{"arguments":"{\"a\": 2, \"b\": 3}","name":"multiply"},"type":"function"}],"role":"assistant"},{"content":"5","tool_call_id":"toolu_vrtx_01Gd4wT9QPhkpPB6zkNLCkaj","role":"tool"},{"content":"6","tool_call_id":"toolu_vrtx_01AR68sZeZk9EHztGXwsQNGd","role":"tool"}],"model":"anthropic/claude-sonnet-4","max_tokens":4000,"stream_options":{"include_usage":true},"tool_choice":"auto","tools":[{"function":{"name":"add","strict":false,"description":"Add two numbers","parameters":{"properties":{"a":{"description":"first number","type":"integer"},"b":{"description":"second number","type":"integer"}},"required":["a","b"],"type":"object"}},"type":"function"},{"function":{"name":"multiply","strict":false,"description":"Multiply two numbers","parameters":{"properties":{"a":{"description":"first number","type":"integer"},"b":{"description":"second number","type":"integer"}},"required":["a","b"],"type":"object"}},"type":"function"}],"usage":{"include":true},"stream":true}'
 85        headers:
 86            Accept:
 87              - application/json
 88            Content-Type:
 89              - application/json
 90            User-Agent:
 91              - OpenAI/Go 2.3.0
 92        url: https://openrouter.ai/api/v1/chat/completions
 93        method: POST
 94    response:
 95        proto: HTTP/2.0
 96        proto_major: 2
 97        proto_minor: 0
 98        content_length: -1
 99        body: |+
100            data: {"id":"gen-1758711114-vSDMCR8AThKqPT5j7V8J","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711114,"choices":[{"index":0,"delta":{"role":"assistant","content":"","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
101
102            data: {"id":"gen-1758711114-vSDMCR8AThKqPT5j7V8J","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711114,"choices":[{"index":0,"delta":{"role":"assistant","content":"","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
103
104            data: {"id":"gen-1758711114-vSDMCR8AThKqPT5j7V8J","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711114,"choices":[{"index":0,"delta":{"role":"assistant","content":"The","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
105
106            data: {"id":"gen-1758711114-vSDMCR8AThKqPT5j7V8J","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711114,"choices":[{"index":0,"delta":{"role":"assistant","content":" results are","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
107
108            data: {"id":"gen-1758711114-vSDMCR8AThKqPT5j7V8J","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711114,"choices":[{"index":0,"delta":{"role":"assistant","content":":\n- ","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
109
110            data: {"id":"gen-1758711114-vSDMCR8AThKqPT5j7V8J","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711114,"choices":[{"index":0,"delta":{"role":"assistant","content":"2 + 3 = ","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
111
112            data: {"id":"gen-1758711114-vSDMCR8AThKqPT5j7V8J","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711114,"choices":[{"index":0,"delta":{"role":"assistant","content":"5\n- 2 × ","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
113
114            data: {"id":"gen-1758711114-vSDMCR8AThKqPT5j7V8J","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711114,"choices":[{"index":0,"delta":{"role":"assistant","content":"3 = 6","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
115
116            data: {"id":"gen-1758711114-vSDMCR8AThKqPT5j7V8J","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711114,"choices":[{"index":0,"delta":{"role":"assistant","content":"","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
117
118            data: {"id":"gen-1758711114-vSDMCR8AThKqPT5j7V8J","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711114,"choices":[{"index":0,"delta":{"role":"assistant","content":"","reasoning":null,"reasoning_details":[]},"finish_reason":"stop","native_finish_reason":"stop","logprobs":null}]}
119
120            data: {"id":"gen-1758711114-vSDMCR8AThKqPT5j7V8J","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1758711114,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"finish_reason":null,"native_finish_reason":null,"logprobs":null}],"usage":{"prompt_tokens":700,"completion_tokens":31,"total_tokens":731,"cost":0.002565,"is_byok":false,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"cost_details":{"upstream_inference_cost":null,"upstream_inference_prompt_cost":0.0021,"upstream_inference_completions_cost":0.000465},"completion_tokens_details":{"reasoning_tokens":0,"image_tokens":0}}}
121
122            data: [DONE]
123
124        headers:
125            Content-Type:
126              - text/event-stream
127        status: 200 OK
128        code: 200
129        duration: 1.979107709s