---
version: 2
interactions:
- id: 0
  request:
    proto: HTTP/1.1
    proto_major: 1
    proto_minor: 1
    content_length: 869
    host: ""
    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":"google/gemini-3-pro-preview","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"}],"stream":true}'
    headers:
      Accept:
      - application/json
      Content-Type:
      - application/json
      User-Agent:
      - Charm-Fantasy/0.12.2 (https://charm.land/fantasy)
    url: https://ai-gateway.vercel.sh/v1/chat/completions
    method: POST
  response:
    proto: HTTP/2.0
    proto_major: 2
    proto_minor: 0
    content_length: -1
    body: |+
      data: {"id":"gen_01KKHTRZH9EN26XH53QBYT0WY2","object":"chat.completion.chunk","created":1773346262,"model":"google/gemini-3-pro-preview","choices":[{"index":0,"delta":{"role":"assistant"},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_l6244tmz1u"}

      data: {"id":"gen_01KKHTRZH9EN26XH53QBYT0WY2","object":"chat.completion.chunk","created":1773346262,"model":"google/gemini-3-pro-preview","choices":[{"index":0,"delta":{"tool_calls":[{"index":0,"id":"WQuZA7oD8t6sGOrb","type":"function","function":{"name":"add","arguments":""}}]},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_l6244tmz1u"}

      data: {"id":"gen_01KKHTRZH9EN26XH53QBYT0WY2","object":"chat.completion.chunk","created":1773346262,"model":"google/gemini-3-pro-preview","choices":[{"index":0,"delta":{"tool_calls":[{"index":0,"function":{"arguments":"{\"a\":2,\"b\":3}"}}]},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_l6244tmz1u"}

      data: {"id":"gen_01KKHTRZH9EN26XH53QBYT0WY2","object":"chat.completion.chunk","created":1773346262,"model":"google/gemini-3-pro-preview","choices":[{"index":0,"delta":{"tool_calls":[{"index":1,"id":"pJnoRXDGFYDYCXIg","type":"function","function":{"name":"multiply","arguments":""}}]},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_l6244tmz1u"}

      data: {"id":"gen_01KKHTRZH9EN26XH53QBYT0WY2","object":"chat.completion.chunk","created":1773346262,"model":"google/gemini-3-pro-preview","choices":[{"index":0,"delta":{"tool_calls":[{"index":1,"function":{"arguments":"{\"a\":2,\"b\":3}"}}]},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_l6244tmz1u"}

      data: {"id":"gen_01KKHTRZH9EN26XH53QBYT0WY2","object":"chat.completion.chunk","created":1773346262,"model":"google/gemini-3-pro-preview","choices":[{"index":0,"delta":{"provider_metadata":{"google":{"promptFeedback":null,"groundingMetadata":null,"urlContextMetadata":null,"safetyRatings":null,"usageMetadata":{"thoughtsTokenCount":95,"promptTokenCount":57,"candidatesTokenCount":18,"totalTokenCount":170,"trafficType":"ON_DEMAND"}},"gateway":{"routing":{"originalModelId":"google/gemini-3-pro-preview","resolvedProvider":"vertex","resolvedProviderApiModelId":"gemini-3-pro-preview","internalResolvedModelId":"vertex:gemini-3-pro-preview","fallbacksAvailable":["google"],"internalReasoning":"Selected vertex as preferred provider for gemini-3-pro-preview. 1 fallback(s) available: google","planningReasoning":"System credentials planned for: vertex, google. Total execution order: vertex(system) → google(system)","canonicalSlug":"google/gemini-3-pro-preview","finalProvider":"vertex","attempts":[{"provider":"vertex","internalModelId":"vertex:gemini-3-pro-preview","providerApiModelId":"gemini-3-pro-preview","credentialType":"system","success":true,"startTime":330271.73393,"endTime":334278.299674,"statusCode":200}],"modelAttemptCount":1,"modelAttempts":[{"modelId":"vertex:gemini-3-pro-preview","canonicalSlug":"google/gemini-3-pro-preview","success":true,"providerAttemptCount":1,"providerAttempts":[{"provider":"vertex","internalModelId":"vertex:gemini-3-pro-preview","providerApiModelId":"gemini-3-pro-preview","credentialType":"system","success":true,"startTime":330271.73393,"endTime":334278.299674,"statusCode":200}]}],"totalProviderAttemptCount":1},"cost":"0.00147","marketCost":"0.00147","generationId":"gen_01KKHTRZH9EN26XH53QBYT0WY2","billableWebSearchCalls":0}}},"logprobs":null,"finish_reason":"tool_calls"}],"usage":{"prompt_tokens":57,"completion_tokens":18,"total_tokens":75,"cost":0.00147,"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":95,"image_tokens":0},"cache_creation_input_tokens":0,"market_cost":0.00147},"system_fingerprint":"fp_l6244tmz1u","generationId":"gen_01KKHTRZH9EN26XH53QBYT0WY2"}

      data: [DONE]

    headers:
      Content-Type:
      - text/event-stream
    status: 200 OK
    code: 200
    duration: 4.138351583s
- id: 1
  request:
    proto: HTTP/1.1
    proto_major: 1
    proto_minor: 1
    content_length: 1242
    host: ""
    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":"WQuZA7oD8t6sGOrb","function":{"arguments":"{\"a\":2,\"b\":3}","name":"add"},"type":"function"},{"id":"pJnoRXDGFYDYCXIg","function":{"arguments":"{\"a\":2,\"b\":3}","name":"multiply"},"type":"function"}],"role":"assistant"},{"content":"5","tool_call_id":"WQuZA7oD8t6sGOrb","role":"tool"},{"content":"6","tool_call_id":"pJnoRXDGFYDYCXIg","role":"tool"}],"model":"google/gemini-3-pro-preview","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"}],"stream":true}'
    headers:
      Accept:
      - application/json
      Content-Type:
      - application/json
      User-Agent:
      - Charm-Fantasy/0.12.2 (https://charm.land/fantasy)
    url: https://ai-gateway.vercel.sh/v1/chat/completions
    method: POST
  response:
    proto: HTTP/2.0
    proto_major: 2
    proto_minor: 0
    content_length: -1
    body: |+
      data: {"id":"gen_01KKHTS3KVRZ8MKNT4CK4F5K5G","object":"chat.completion.chunk","created":1773346266,"model":"google/gemini-3-pro-preview","choices":[{"index":0,"delta":{"role":"assistant"},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_yqhgbgmvbv"}

      data: {"id":"gen_01KKHTS3KVRZ8MKNT4CK4F5K5G","object":"chat.completion.chunk","created":1773346266,"model":"google/gemini-3-pro-preview","choices":[{"index":0,"delta":{"content":"The sum of"},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_yqhgbgmvbv"}

      data: {"id":"gen_01KKHTS3KVRZ8MKNT4CK4F5K5G","object":"chat.completion.chunk","created":1773346266,"model":"google/gemini-3-pro-preview","choices":[{"index":0,"delta":{"content":" 2 and 3 is 5, and their product is 6."},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_yqhgbgmvbv"}

      data: {"id":"gen_01KKHTS3KVRZ8MKNT4CK4F5K5G","object":"chat.completion.chunk","created":1773346266,"model":"google/gemini-3-pro-preview","choices":[{"index":0,"delta":{"content":""},"logprobs":null,"finish_reason":null}],"system_fingerprint":"fp_yqhgbgmvbv"}

      data: {"id":"gen_01KKHTS3KVRZ8MKNT4CK4F5K5G","object":"chat.completion.chunk","created":1773346266,"model":"google/gemini-3-pro-preview","choices":[{"index":0,"delta":{"provider_metadata":{"google":{"promptFeedback":null,"groundingMetadata":null,"urlContextMetadata":null,"safetyRatings":null,"usageMetadata":{"thoughtsTokenCount":280,"promptTokenCount":219,"candidatesTokenCount":19,"totalTokenCount":518}},"gateway":{"routing":{"originalModelId":"google/gemini-3-pro-preview","resolvedProvider":"vertex","resolvedProviderApiModelId":"gemini-3-pro-preview","internalResolvedModelId":"vertex:gemini-3-pro-preview","fallbacksAvailable":["google"],"internalReasoning":"Selected vertex as preferred provider for gemini-3-pro-preview. 1 fallback(s) available: google","planningReasoning":"System credentials planned for: vertex, google. Total execution order: vertex(system) → google(system)","canonicalSlug":"google/gemini-3-pro-preview","finalProvider":"google","attempts":[{"provider":"vertex","internalModelId":"vertex:gemini-3-pro-preview","providerApiModelId":"gemini-3-pro-preview","credentialType":"system","success":false,"error":"Please ensure that the number of function response parts is equal to the number of function call parts of the function call turn.","startTime":1281609.464118,"endTime":1281724.382346,"statusCode":400},{"provider":"google","internalModelId":"google:gemini-3.1-pro-preview-customtools","providerApiModelId":"gemini-3.1-pro-preview-customtools","credentialType":"system","success":true,"startTime":1281731.455021,"endTime":1285552.212428,"statusCode":200}],"modelAttemptCount":1,"modelAttempts":[{"modelId":"vertex:gemini-3-pro-preview","canonicalSlug":"google/gemini-3-pro-preview","success":true,"providerAttemptCount":2,"providerAttempts":[{"provider":"vertex","internalModelId":"vertex:gemini-3-pro-preview","providerApiModelId":"gemini-3-pro-preview","credentialType":"system","success":false,"error":"Please ensure that the number of function response parts is equal to the number of function call parts of the function call turn.","startTime":1281609.464118,"endTime":1281724.382346,"statusCode":400},{"provider":"google","internalModelId":"google:gemini-3.1-pro-preview-customtools","providerApiModelId":"gemini-3.1-pro-preview-customtools","credentialType":"system","success":true,"startTime":1281731.455021,"endTime":1285552.212428,"statusCode":200}]}],"totalProviderAttemptCount":2},"cost":"0.004026","marketCost":"0.004026","generationId":"gen_01KKHTS3KVRZ8MKNT4CK4F5K5G","billableWebSearchCalls":0}}},"logprobs":null,"finish_reason":"stop"}],"usage":{"prompt_tokens":219,"completion_tokens":19,"total_tokens":238,"cost":0.004026,"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":280,"image_tokens":0},"cache_creation_input_tokens":0,"market_cost":0.004026},"system_fingerprint":"fp_yqhgbgmvbv","generationId":"gen_01KKHTS3KVRZ8MKNT4CK4F5K5G"}

      data: [DONE]

    headers:
      Content-Type:
      - text/event-stream
    status: 200 OK
    code: 200
    duration: 3.991859459s
