tool_streaming.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: 620
 10    host: ""
 11    body: '{"messages":[{"content":"You are a helpful assistant","role":"system","cache_control":{"type":"ephemeral"}},{"content":"What''s the weather in Florence,Italy?","role":"user","cache_control":{"type":"ephemeral"}}],"model":"anthropic/claude-sonnet-4","max_tokens":4000,"stream_options":{"include_usage":true},"tool_choice":"auto","tools":[{"function":{"name":"weather","strict":false,"description":"Get weather information for a location","parameters":{"properties":{"location":{"description":"the city","type":"string"}},"required":["location"],"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.7.1
 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-1761040265-t01bhiOqW2wY3pKo18Xy","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040265,"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-1761040265-t01bhiOqW2wY3pKo18Xy","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040265,"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-1761040265-t01bhiOqW2wY3pKo18Xy","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040265,"choices":[{"index":0,"delta":{"role":"assistant","content":"I'll get","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 32
 33      data: {"id":"gen-1761040265-t01bhiOqW2wY3pKo18Xy","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040265,"choices":[{"index":0,"delta":{"role":"assistant","content":" the weather information for Florence, Italy for","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 34
 35      data: {"id":"gen-1761040265-t01bhiOqW2wY3pKo18Xy","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040265,"choices":[{"index":0,"delta":{"role":"assistant","content":" you.","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 36
 37      data: {"id":"gen-1761040265-t01bhiOqW2wY3pKo18Xy","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040265,"choices":[{"index":0,"delta":{"role":"assistant","content":"","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 38
 39      data: {"id":"gen-1761040265-t01bhiOqW2wY3pKo18Xy","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040265,"choices":[{"index":0,"delta":{"role":"assistant","content":null,"tool_calls":[{"id":"toolu_vrtx_0158fGNhdp5B4wCThp4zjSD8","index":0,"type":"function","function":{"name":"weather","arguments":""}}]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 40
 41      data: {"id":"gen-1761040265-t01bhiOqW2wY3pKo18Xy","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040265,"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}]}
 42
 43      data: {"id":"gen-1761040265-t01bhiOqW2wY3pKo18Xy","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040265,"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-1761040265-t01bhiOqW2wY3pKo18Xy","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040265,"choices":[{"index":0,"delta":{"role":"assistant","content":null,"tool_calls":[{"index":0,"type":"function","function":{"arguments":"location\": "}}]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 46
 47      data: {"id":"gen-1761040265-t01bhiOqW2wY3pKo18Xy","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040265,"choices":[{"index":0,"delta":{"role":"assistant","content":null,"tool_calls":[{"index":0,"type":"function","function":{"arguments":"\"Flore"}}]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 48
 49      data: {"id":"gen-1761040265-t01bhiOqW2wY3pKo18Xy","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040265,"choices":[{"index":0,"delta":{"role":"assistant","content":null,"tool_calls":[{"index":0,"type":"function","function":{"arguments":"nce"}}]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 50
 51      data: {"id":"gen-1761040265-t01bhiOqW2wY3pKo18Xy","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040265,"choices":[{"index":0,"delta":{"role":"assistant","content":null,"tool_calls":[{"index":0,"type":"function","function":{"arguments":",Ital"}}]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 52
 53      data: {"id":"gen-1761040265-t01bhiOqW2wY3pKo18Xy","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040265,"choices":[{"index":0,"delta":{"role":"assistant","content":null,"tool_calls":[{"index":0,"type":"function","function":{"arguments":"y\"}"}}]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 54
 55      data: {"id":"gen-1761040265-t01bhiOqW2wY3pKo18Xy","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040265,"choices":[{"index":0,"delta":{"role":"assistant","content":"","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 56
 57      data: {"id":"gen-1761040265-t01bhiOqW2wY3pKo18Xy","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040265,"choices":[{"index":0,"delta":{"role":"assistant","content":"","reasoning":null,"reasoning_details":[]},"finish_reason":"tool_calls","native_finish_reason":"tool_calls","logprobs":null}]}
 58
 59      data: {"id":"gen-1761040265-t01bhiOqW2wY3pKo18Xy","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040265,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"finish_reason":null,"native_finish_reason":null,"logprobs":null}],"usage":{"prompt_tokens":394,"completion_tokens":67,"total_tokens":461,"cost":0.002187,"is_byok":false,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"cost_details":{"upstream_inference_cost":null,"upstream_inference_prompt_cost":0.001182,"upstream_inference_completions_cost":0.001005},"completion_tokens_details":{"reasoning_tokens":0,"image_tokens":0}}}
 60
 61      data: [DONE]
 62
 63    headers:
 64      Content-Type:
 65      - text/event-stream
 66    status: 200 OK
 67    code: 200
 68    duration: 3.163571709s
 69- id: 1
 70  request:
 71    proto: HTTP/1.1
 72    proto_major: 1
 73    proto_minor: 1
 74    content_length: 958
 75    host: ""
 76    body: '{"messages":[{"content":"You are a helpful assistant","role":"system","cache_control":{"type":"ephemeral"}},{"content":"What''s the weather in Florence,Italy?","role":"user"},{"content":"I''ll get the weather information for Florence, Italy for you.","tool_calls":[{"id":"toolu_vrtx_0158fGNhdp5B4wCThp4zjSD8","function":{"arguments":"{\"location\": \"Florence,Italy\"}","name":"weather"},"type":"function","cache_control":{"type":"ephemeral"}}],"role":"assistant"},{"content":"40 C","tool_call_id":"toolu_vrtx_0158fGNhdp5B4wCThp4zjSD8","role":"tool"}],"model":"anthropic/claude-sonnet-4","max_tokens":4000,"stream_options":{"include_usage":true},"tool_choice":"auto","tools":[{"function":{"name":"weather","strict":false,"description":"Get weather information for a location","parameters":{"properties":{"location":{"description":"the city","type":"string"}},"required":["location"],"type":"object"}},"type":"function"}],"usage":{"include":true},"stream":true}'
 77    headers:
 78      Accept:
 79      - application/json
 80      Content-Type:
 81      - application/json
 82      User-Agent:
 83      - OpenAI/Go 2.7.1
 84    url: https://openrouter.ai/api/v1/chat/completions
 85    method: POST
 86  response:
 87    proto: HTTP/2.0
 88    proto_major: 2
 89    proto_minor: 0
 90    content_length: -1
 91    body: |+
 92      data: {"id":"gen-1761040268-tegmh9zIGsP6DUfTBKIq","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040268,"choices":[{"index":0,"delta":{"role":"assistant","content":"","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 93
 94      data: {"id":"gen-1761040268-tegmh9zIGsP6DUfTBKIq","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040268,"choices":[{"index":0,"delta":{"role":"assistant","content":"","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 95
 96      data: {"id":"gen-1761040268-tegmh9zIGsP6DUfTBKIq","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040268,"choices":[{"index":0,"delta":{"role":"assistant","content":"The","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 97
 98      data: {"id":"gen-1761040268-tegmh9zIGsP6DUfTBKIq","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040268,"choices":[{"index":0,"delta":{"role":"assistant","content":" current weather in Florence, Italy is ","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
 99
100      data: {"id":"gen-1761040268-tegmh9zIGsP6DUfTBKIq","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040268,"choices":[{"index":0,"delta":{"role":"assistant","content":"40°C (104°F).","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
101
102      data: {"id":"gen-1761040268-tegmh9zIGsP6DUfTBKIq","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040268,"choices":[{"index":0,"delta":{"role":"assistant","content":" That's quite hot! If you're planning to visit or","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
103
104      data: {"id":"gen-1761040268-tegmh9zIGsP6DUfTBKIq","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040268,"choices":[{"index":0,"delta":{"role":"assistant","content":" are currently there, make sure to","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
105
106      data: {"id":"gen-1761040268-tegmh9zIGsP6DUfTBKIq","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040268,"choices":[{"index":0,"delta":{"role":"assistant","content":" stay hydrated and seek shade during the hottest parts of the","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
107
108      data: {"id":"gen-1761040268-tegmh9zIGsP6DUfTBKIq","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040268,"choices":[{"index":0,"delta":{"role":"assistant","content":" day.","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
109
110      data: {"id":"gen-1761040268-tegmh9zIGsP6DUfTBKIq","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040268,"choices":[{"index":0,"delta":{"role":"assistant","content":"","reasoning":null,"reasoning_details":[]},"finish_reason":null,"native_finish_reason":null,"logprobs":null}]}
111
112      data: {"id":"gen-1761040268-tegmh9zIGsP6DUfTBKIq","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040268,"choices":[{"index":0,"delta":{"role":"assistant","content":"","reasoning":null,"reasoning_details":[]},"finish_reason":"stop","native_finish_reason":"stop","logprobs":null}]}
113
114      data: {"id":"gen-1761040268-tegmh9zIGsP6DUfTBKIq","provider":"Google","model":"anthropic/claude-sonnet-4","object":"chat.completion.chunk","created":1761040268,"choices":[{"index":0,"delta":{"role":"assistant","content":""},"finish_reason":null,"native_finish_reason":null,"logprobs":null}],"usage":{"prompt_tokens":476,"completion_tokens":54,"total_tokens":530,"cost":0.002238,"is_byok":false,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0},"cost_details":{"upstream_inference_cost":null,"upstream_inference_prompt_cost":0.001428,"upstream_inference_completions_cost":0.00081},"completion_tokens_details":{"reasoning_tokens":0,"image_tokens":0}}}
115
116      data: [DONE]
117
118    headers:
119      Content-Type:
120      - text/event-stream
121    status: 200 OK
122    code: 200
123    duration: 1.179744666s