multi_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: 865
 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":"openai/gpt-5","max_completion_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"}],"stream":true}'
 12    headers:
 13      Accept:
 14      - application/json
 15      Content-Type:
 16      - application/json
 17      User-Agent:
 18      - Charm-Fantasy/0.12.2 (https://charm.land/fantasy)
 19    url: https://ai-gateway.vercel.sh/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_01KKHTQPSHJ5CM7TAQZYWNAQTV","object":"chat.completion.chunk","created":1773346216,"model":"openai/gpt-5","choices":[{"index":0,"delta":{"role":"assistant"},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_m0dg9o8dnf"}
 28
 29      data: {"id":"gen_01KKHTQPSHJ5CM7TAQZYWNAQTV","object":"chat.completion.chunk","created":1773346216,"model":"openai/gpt-5","choices":[{"index":0,"delta":{"reasoning_details":[{"type":"reasoning.encrypted","data":"gAAAAABpsx2pQu0135fKIHkL8jzcesZIQSXEkuC3AeouXns8sjKhd7HDX9f3r3n4jzIbOn1um_OpE-UfF3DB7cwCFUmjgZDKfpog00NVUrAo27YuYD_RU625vzTw0htih2CsVoPQx22pTzj5_GtCbFpocZl1X5VsBTBjk9Ca8rC3mmY1X5t_XShK155Wk_QFRNn3f8dbeEEnDkUGJw6AapPwA_Lrv1DMP_ENnVbyP-DhAjCZ45yAxzChDNJMP6LGMBs5ziR5NSfbfgxgGNIwkvYz97tCSuURIyAx30MIAFiFylmOrykJlYXt4mTHi-cnqg98itg971fC2xHymlRqtcITx5ujY7kQ9EWAPWY9LNTni8p6yklg-ADt3hY-QmmtzorKF4mLA5UZ21C9o2Rg0BZ8aaosWBBra0_Niy7Z_tkbdOmaisFQbP8cBwyJ2ALk1HVXAE1jXYmsky5xxDpvl2wMXAHQjDxU-Js56tu0pOXK7jr8oAEJFy9Gjjj3qQ0r9vvHExG74rtP2Q1pvHLs4xn-OI6hL2lhxVu-sljUybqbtnfbrqjBL5g18SZIZFEDY9fa72hBvQKYwBds5vzPD2eTUc7j9eDi8zB0Y1cANnNTFJm6f_6HJmsjOlpqL7gvuxrXlXW4c7pY_UKXkVzEIRvJZSHbaKzBzuATtx8Wu4HgJsVFNme7WwcJH2FfndNgd1DSZbcwYI9UBBXvaoOC0dAGAR9evQMlT_eW0i0k3BQWFPXQhU9t-DZpw2LWzmI4Rf87SDnZzUQ0t6ni7cIWCb1QPhkpdgYxeMJEO6GA857EPcyhO88cQfgR3ZGix_mIjARMnIiK5fd8","id":"rs_0ba39c4cbf0914b60169b31da9489c81939625ac8c4748812b","format":"openai-responses-v1","index":0}]},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_m0dg9o8dnf"}
 30
 31      data: {"id":"gen_01KKHTQPSHJ5CM7TAQZYWNAQTV","object":"chat.completion.chunk","created":1773346216,"model":"openai/gpt-5","choices":[{"index":0,"delta":{"tool_calls":[{"index":0,"id":"call_NKBrzaRfgcLAkvIldhIYsqtH","type":"function","function":{"name":"add","arguments":""}}]},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_m0dg9o8dnf"}
 32
 33      data: {"id":"gen_01KKHTQPSHJ5CM7TAQZYWNAQTV","object":"chat.completion.chunk","created":1773346216,"model":"openai/gpt-5","choices":[{"index":0,"delta":{"tool_calls":[{"index":0,"function":{"arguments":"{\"a\":2,\"b\":3}"}}]},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_m0dg9o8dnf"}
 34
 35      data: {"id":"gen_01KKHTQPSHJ5CM7TAQZYWNAQTV","object":"chat.completion.chunk","created":1773346216,"model":"openai/gpt-5","choices":[{"index":0,"delta":{"tool_calls":[{"index":1,"id":"call_RjOUujdrBGigQL7C1p7IpWtJ","type":"function","function":{"name":"multiply","arguments":""}}]},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_m0dg9o8dnf"}
 36
 37      data: {"id":"gen_01KKHTQPSHJ5CM7TAQZYWNAQTV","object":"chat.completion.chunk","created":1773346216,"model":"openai/gpt-5","choices":[{"index":0,"delta":{"tool_calls":[{"index":1,"function":{"arguments":"{\"a\":2,\"b\":3}"}}]},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_m0dg9o8dnf"}
 38
 39      data: {"id":"gen_01KKHTQPSHJ5CM7TAQZYWNAQTV","object":"chat.completion.chunk","created":1773346216,"model":"openai/gpt-5","choices":[{"index":0,"delta":{"provider_metadata":{"openai":{"responseId":"resp_0ba39c4cbf0914b60169b31da8cc048193995714a7063051e2","serviceTier":"default"},"gateway":{"routing":{"originalModelId":"openai/gpt-5","resolvedProvider":"openai","resolvedProviderApiModelId":"gpt-5-2025-08-07","internalResolvedModelId":"openai:gpt-5-2025-08-07","fallbacksAvailable":["azure"],"internalReasoning":"Selected openai as preferred provider for gpt-5. 1 fallback(s) available: azure","planningReasoning":"System credentials planned for: openai, azure. Total execution order: openai(system) → azure(system)","canonicalSlug":"openai/gpt-5","finalProvider":"openai","attempts":[{"provider":"openai","internalModelId":"openai:gpt-5-2025-08-07","providerApiModelId":"gpt-5-2025-08-07","credentialType":"system","success":true,"startTime":1235703.983183,"endTime":1245068.347047,"providerRequestId":"req_8f7cb4a574204810bf7002b2921f4e25","statusCode":200,"providerResponseId":"resp_0ba39c4cbf0914b60169b31da8cc048193995714a7063051e2"}],"modelAttemptCount":1,"modelAttempts":[{"modelId":"openai:gpt-5-2025-08-07","canonicalSlug":"openai/gpt-5","success":true,"providerAttemptCount":1,"providerAttempts":[{"provider":"openai","internalModelId":"openai:gpt-5-2025-08-07","providerApiModelId":"gpt-5-2025-08-07","credentialType":"system","success":true,"startTime":1235703.983183,"endTime":1245068.347047,"providerRequestId":"req_8f7cb4a574204810bf7002b2921f4e25","statusCode":200,"providerResponseId":"resp_0ba39c4cbf0914b60169b31da8cc048193995714a7063051e2"}]}],"totalProviderAttemptCount":1},"cost":"0.00637625","marketCost":"0.00637625","generationId":"gen_01KKHTQPSHJ5CM7TAQZYWNAQTV","billableWebSearchCalls":0}}},"logprobs":null,"finish_reason":"tool_calls"}],"usage":{"prompt_tokens":109,"completion_tokens":368,"total_tokens":477,"cost":0.00637625,"is_byok":false,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0,"video_tokens":0},"cost_details":{"upstream_inference_cost":null,"upstream_inference_prompt_cost":0,"upstream_inference_completions_cost":0},"completion_tokens_details":{"reasoning_tokens":256,"image_tokens":0},"cache_creation_input_tokens":0,"market_cost":0.00637625},"system_fingerprint":"fp_m0dg9o8dnf","service_tier":"default","generationId":"gen_01KKHTQPSHJ5CM7TAQZYWNAQTV"}
 40
 41      data: [DONE]
 42
 43    headers:
 44      Content-Type:
 45      - text/event-stream
 46    status: 200 OK
 47    code: 200
 48    duration: 338.276375ms
 49- id: 1
 50  request:
 51    proto: HTTP/1.1
 52    proto_major: 1
 53    proto_minor: 1
 54    content_length: 2299
 55    host: ""
 56    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"},{"tool_calls":[{"id":"call_NKBrzaRfgcLAkvIldhIYsqtH","function":{"arguments":"{\"a\":2,\"b\":3}","name":"add"},"type":"function"},{"id":"call_RjOUujdrBGigQL7C1p7IpWtJ","function":{"arguments":"{\"a\":2,\"b\":3}","name":"multiply"},"type":"function"}],"role":"assistant","reasoning_details":[{"data":"gAAAAABpsx2pQu0135fKIHkL8jzcesZIQSXEkuC3AeouXns8sjKhd7HDX9f3r3n4jzIbOn1um_OpE-UfF3DB7cwCFUmjgZDKfpog00NVUrAo27YuYD_RU625vzTw0htih2CsVoPQx22pTzj5_GtCbFpocZl1X5VsBTBjk9Ca8rC3mmY1X5t_XShK155Wk_QFRNn3f8dbeEEnDkUGJw6AapPwA_Lrv1DMP_ENnVbyP-DhAjCZ45yAxzChDNJMP6LGMBs5ziR5NSfbfgxgGNIwkvYz97tCSuURIyAx30MIAFiFylmOrykJlYXt4mTHi-cnqg98itg971fC2xHymlRqtcITx5ujY7kQ9EWAPWY9LNTni8p6yklg-ADt3hY-QmmtzorKF4mLA5UZ21C9o2Rg0BZ8aaosWBBra0_Niy7Z_tkbdOmaisFQbP8cBwyJ2ALk1HVXAE1jXYmsky5xxDpvl2wMXAHQjDxU-Js56tu0pOXK7jr8oAEJFy9Gjjj3qQ0r9vvHExG74rtP2Q1pvHLs4xn-OI6hL2lhxVu-sljUybqbtnfbrqjBL5g18SZIZFEDY9fa72hBvQKYwBds5vzPD2eTUc7j9eDi8zB0Y1cANnNTFJm6f_6HJmsjOlpqL7gvuxrXlXW4c7pY_UKXkVzEIRvJZSHbaKzBzuATtx8Wu4HgJsVFNme7WwcJH2FfndNgd1DSZbcwYI9UBBXvaoOC0dAGAR9evQMlT_eW0i0k3BQWFPXQhU9t-DZpw2LWzmI4Rf87SDnZzUQ0t6ni7cIWCb1QPhkpdgYxeMJEO6GA857EPcyhO88cQfgR3ZGix_mIjARMnIiK5fd8","format":"openai-responses-v1","id":"rs_0ba39c4cbf0914b60169b31da9489c81939625ac8c4748812b","index":0,"type":"reasoning.encrypted"}]},{"content":"5","tool_call_id":"call_NKBrzaRfgcLAkvIldhIYsqtH","role":"tool"},{"content":"6","tool_call_id":"call_RjOUujdrBGigQL7C1p7IpWtJ","role":"tool"}],"model":"openai/gpt-5","max_completion_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"}],"stream":true}'
 57    headers:
 58      Accept:
 59      - application/json
 60      Content-Type:
 61      - application/json
 62      User-Agent:
 63      - Charm-Fantasy/0.12.2 (https://charm.land/fantasy)
 64    url: https://ai-gateway.vercel.sh/v1/chat/completions
 65    method: POST
 66  response:
 67    proto: HTTP/2.0
 68    proto_major: 2
 69    proto_minor: 0
 70    content_length: -1
 71    body: |+
 72      data: {"id":"gen_01KKHTR02H1JD24V076NHGMQJ6","object":"chat.completion.chunk","created":1773346226,"model":"openai/gpt-5","choices":[{"index":0,"delta":{"role":"assistant"},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_vg2bpgwyp7"}
 73
 74      data: {"id":"gen_01KKHTR02H1JD24V076NHGMQJ6","object":"chat.completion.chunk","created":1773346226,"model":"openai/gpt-5","choices":[{"index":0,"delta":{"content":"Addition"},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_vg2bpgwyp7"}
 75
 76      data: {"id":"gen_01KKHTR02H1JD24V076NHGMQJ6","object":"chat.completion.chunk","created":1773346226,"model":"openai/gpt-5","choices":[{"index":0,"delta":{"content":" result"},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_vg2bpgwyp7"}
 77
 78      data: {"id":"gen_01KKHTR02H1JD24V076NHGMQJ6","object":"chat.completion.chunk","created":1773346226,"model":"openai/gpt-5","choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_vg2bpgwyp7"}
 79
 80      data: {"id":"gen_01KKHTR02H1JD24V076NHGMQJ6","object":"chat.completion.chunk","created":1773346226,"model":"openai/gpt-5","choices":[{"index":0,"delta":{"content":" "},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_vg2bpgwyp7"}
 81
 82      data: {"id":"gen_01KKHTR02H1JD24V076NHGMQJ6","object":"chat.completion.chunk","created":1773346226,"model":"openai/gpt-5","choices":[{"index":0,"delta":{"content":"5"},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_vg2bpgwyp7"}
 83
 84      data: {"id":"gen_01KKHTR02H1JD24V076NHGMQJ6","object":"chat.completion.chunk","created":1773346226,"model":"openai/gpt-5","choices":[{"index":0,"delta":{"content":"\n"},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_vg2bpgwyp7"}
 85
 86      data: {"id":"gen_01KKHTR02H1JD24V076NHGMQJ6","object":"chat.completion.chunk","created":1773346226,"model":"openai/gpt-5","choices":[{"index":0,"delta":{"content":"Multip"},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_vg2bpgwyp7"}
 87
 88      data: {"id":"gen_01KKHTR02H1JD24V076NHGMQJ6","object":"chat.completion.chunk","created":1773346226,"model":"openai/gpt-5","choices":[{"index":0,"delta":{"content":"lication"},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_vg2bpgwyp7"}
 89
 90      data: {"id":"gen_01KKHTR02H1JD24V076NHGMQJ6","object":"chat.completion.chunk","created":1773346226,"model":"openai/gpt-5","choices":[{"index":0,"delta":{"content":" result"},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_vg2bpgwyp7"}
 91
 92      data: {"id":"gen_01KKHTR02H1JD24V076NHGMQJ6","object":"chat.completion.chunk","created":1773346226,"model":"openai/gpt-5","choices":[{"index":0,"delta":{"content":":"},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_vg2bpgwyp7"}
 93
 94      data: {"id":"gen_01KKHTR02H1JD24V076NHGMQJ6","object":"chat.completion.chunk","created":1773346226,"model":"openai/gpt-5","choices":[{"index":0,"delta":{"content":" "},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_vg2bpgwyp7"}
 95
 96      data: {"id":"gen_01KKHTR02H1JD24V076NHGMQJ6","object":"chat.completion.chunk","created":1773346226,"model":"openai/gpt-5","choices":[{"index":0,"delta":{"content":"6"},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_vg2bpgwyp7"}
 97
 98      data: {"id":"gen_01KKHTR02H1JD24V076NHGMQJ6","object":"chat.completion.chunk","created":1773346226,"model":"openai/gpt-5","choices":[{"index":0,"delta":{"provider_metadata":{"openai":{"responseId":"resp_0ba39c4cbf0914b60169b31db25b4c81938ba6cc3de21e4567","serviceTier":"default"},"gateway":{"routing":{"originalModelId":"openai/gpt-5","resolvedProvider":"openai","resolvedProviderApiModelId":"gpt-5-2025-08-07","internalResolvedModelId":"openai:gpt-5-2025-08-07","fallbacksAvailable":["azure"],"internalReasoning":"Selected openai as preferred provider for gpt-5. 1 fallback(s) available: azure","planningReasoning":"System credentials planned for: openai, azure. Total execution order: openai(system) → azure(system)","canonicalSlug":"openai/gpt-5","finalProvider":"openai","attempts":[{"provider":"openai","internalModelId":"openai:gpt-5-2025-08-07","providerApiModelId":"gpt-5-2025-08-07","credentialType":"system","success":true,"startTime":1243850.788993,"endTime":1244848.245616,"providerRequestId":"req_e33036c09ec84d5997e63842a014076f","statusCode":200,"providerResponseId":"resp_0ba39c4cbf0914b60169b31db25b4c81938ba6cc3de21e4567"}],"modelAttemptCount":1,"modelAttempts":[{"modelId":"openai:gpt-5-2025-08-07","canonicalSlug":"openai/gpt-5","success":true,"providerAttemptCount":1,"providerAttempts":[{"provider":"openai","internalModelId":"openai:gpt-5-2025-08-07","providerApiModelId":"gpt-5-2025-08-07","credentialType":"system","success":true,"startTime":1243850.788993,"endTime":1244848.245616,"providerRequestId":"req_e33036c09ec84d5997e63842a014076f","statusCode":200,"providerResponseId":"resp_0ba39c4cbf0914b60169b31db25b4c81938ba6cc3de21e4567"}]}],"totalProviderAttemptCount":1},"cost":"0.000375","marketCost":"0.000375","generationId":"gen_01KKHTR02H1JD24V076NHGMQJ6","billableWebSearchCalls":0}}},"logprobs":null,"finish_reason":"stop"}],"usage":{"prompt_tokens":172,"completion_tokens":16,"total_tokens":188,"cost":0.000375,"is_byok":false,"prompt_tokens_details":{"cached_tokens":0,"audio_tokens":0,"video_tokens":0},"cost_details":{"upstream_inference_cost":null,"upstream_inference_prompt_cost":0,"upstream_inference_completions_cost":0},"completion_tokens_details":{"reasoning_tokens":0,"image_tokens":0},"cache_creation_input_tokens":0,"market_cost":0.000375},"system_fingerprint":"fp_vg2bpgwyp7","service_tier":"default","generationId":"gen_01KKHTR02H1JD24V076NHGMQJ6"}
 99
100      data: [DONE]
101
102    headers:
103      Content-Type:
104      - text/event-stream
105    status: 200 OK
106    code: 200
107    duration: 399.454625ms