multi_tool.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: 828
10    host: ""
11    body: '{"messages":[{"content":"You are a helpful assistant. CRITICAL: Always use both add and multiply at the same time ALWAYS.","role":"system"},{"content":"Add and multiply the number 2 and 3","role":"user"}],"model":"google/gemini-2.5-flash","max_tokens":4000,"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"}]}'
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    uncompressed: true
27    body: '{"id":"gen_01KKHTPKWBG8QMV69ADP3FXZ25","object":"chat.completion","created":1773346182,"model":"google/gemini-2.5-flash","choices":[{"index":0,"message":{"role":"assistant","content":null,"tool_calls":[{"id":"znKlKOZZ9Maku6Hv","type":"function","function":{"name":"add","arguments":"{\"a\":2,\"b\":3}"}},{"id":"Gh46WGm1FE1U70hx","type":"function","function":{"name":"multiply","arguments":"{\"b\":3,\"a\":2}"}}],"provider_metadata":{"google":{"promptFeedback":null,"groundingMetadata":null,"urlContextMetadata":null,"safetyRatings":null,"usageMetadata":{"thoughtsTokenCount":96,"promptTokenCount":61,"candidatesTokenCount":10,"totalTokenCount":167,"trafficType":"ON_DEMAND"}},"gateway":{"routing":{"originalModelId":"google/gemini-2.5-flash","resolvedProvider":"vertex","resolvedProviderApiModelId":"gemini-2.5-flash","internalResolvedModelId":"vertex:gemini-2.5-flash","fallbacksAvailable":["google","deepinfra"],"internalReasoning":"Selected vertex as preferred provider for gemini-2.5-flash. 2 fallback(s) available: google, deepinfra","planningReasoning":"System credentials planned for: vertex, google, deepinfra. Total execution order: vertex(system) → google(system) → deepinfra(system)","canonicalSlug":"google/gemini-2.5-flash","finalProvider":"vertex","attempts":[{"provider":"vertex","internalModelId":"vertex:gemini-2.5-flash","providerApiModelId":"gemini-2.5-flash","credentialType":"system","success":true,"startTime":1198603.120483,"endTime":1199628.934601,"statusCode":200,"providerResponseId":"hR2zae_CA82JueUPg4GAwQU"}],"modelAttemptCount":1,"modelAttempts":[{"modelId":"vertex:gemini-2.5-flash","canonicalSlug":"google/gemini-2.5-flash","success":true,"providerAttemptCount":1,"providerAttempts":[{"provider":"vertex","internalModelId":"vertex:gemini-2.5-flash","providerApiModelId":"gemini-2.5-flash","credentialType":"system","success":true,"startTime":1198603.120483,"endTime":1199628.934601,"statusCode":200,"providerResponseId":"hR2zae_CA82JueUPg4GAwQU"}]}],"totalProviderAttemptCount":1},"cost":"0.0002833","marketCost":"0.0002833","generationId":"gen_01KKHTPKWBG8QMV69ADP3FXZ25","billableWebSearchCalls":0}}},"logprobs":null,"finish_reason":"tool_calls"}],"usage":{"prompt_tokens":61,"completion_tokens":10,"total_tokens":71,"cost":0.0002833,"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":96,"image_tokens":0},"cache_creation_input_tokens":0,"market_cost":0.0002833},"system_fingerprint":"fp_1z72xgpovv","generationId":"gen_01KKHTPKWBG8QMV69ADP3FXZ25"}'
28    headers:
29      Content-Type:
30      - application/json
31    status: 200 OK
32    code: 200
33    duration: 1.186645125s
34- id: 1
35  request:
36    proto: HTTP/1.1
37    proto_major: 1
38    proto_minor: 1
39    content_length: 1201
40    host: ""
41    body: '{"messages":[{"content":"You are a helpful assistant. CRITICAL: Always use both add and multiply at the same time ALWAYS.","role":"system"},{"content":"Add and multiply the number 2 and 3","role":"user"},{"tool_calls":[{"id":"znKlKOZZ9Maku6Hv","function":{"arguments":"{\"a\":2,\"b\":3}","name":"add"},"type":"function"},{"id":"Gh46WGm1FE1U70hx","function":{"arguments":"{\"b\":3,\"a\":2}","name":"multiply"},"type":"function"}],"role":"assistant"},{"content":"5","tool_call_id":"znKlKOZZ9Maku6Hv","role":"tool"},{"content":"6","tool_call_id":"Gh46WGm1FE1U70hx","role":"tool"}],"model":"google/gemini-2.5-flash","max_tokens":4000,"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"}]}'
42    headers:
43      Accept:
44      - application/json
45      Content-Type:
46      - application/json
47      User-Agent:
48      - Charm-Fantasy/0.12.2 (https://charm.land/fantasy)
49    url: https://ai-gateway.vercel.sh/v1/chat/completions
50    method: POST
51  response:
52    proto: HTTP/2.0
53    proto_major: 2
54    proto_minor: 0
55    content_length: -1
56    uncompressed: true
57    body: '{"id":"gen_01KKHTPN1QBWX0ERVPTF7D28P2","object":"chat.completion","created":1773346182,"model":"google/gemini-2.5-flash","choices":[{"index":0,"message":{"role":"assistant","content":"The sum of 2 and 3 is 5, and the product of 2 and 3 is 6.","provider_metadata":{"google":{"promptFeedback":null,"groundingMetadata":null,"urlContextMetadata":null,"safetyRatings":null,"usageMetadata":{"promptTokenCount":197,"candidatesTokenCount":25,"totalTokenCount":222}},"gateway":{"routing":{"originalModelId":"google/gemini-2.5-flash","resolvedProvider":"vertex","resolvedProviderApiModelId":"gemini-2.5-flash","internalResolvedModelId":"vertex:gemini-2.5-flash","fallbacksAvailable":["google","deepinfra"],"internalReasoning":"Selected vertex as preferred provider for gemini-2.5-flash. 2 fallback(s) available: google, deepinfra","planningReasoning":"System credentials planned for: vertex, google, deepinfra. Total execution order: vertex(system) → google(system) → deepinfra(system)","canonicalSlug":"google/gemini-2.5-flash","finalProvider":"google","attempts":[{"provider":"vertex","internalModelId":"vertex:gemini-2.5-flash","providerApiModelId":"gemini-2.5-flash","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":332273.972708,"endTime":332398.058905,"statusCode":400},{"provider":"google","internalModelId":"google:gemini-2.5-flash","providerApiModelId":"gemini-2.5-flash","credentialType":"system","success":true,"startTime":332409.701098,"endTime":332999.008556,"statusCode":200,"providerResponseId":"hh2zaYWTF-q8-sAPxoLZsQQ"}],"modelAttemptCount":1,"modelAttempts":[{"modelId":"vertex:gemini-2.5-flash","canonicalSlug":"google/gemini-2.5-flash","success":true,"providerAttemptCount":2,"providerAttempts":[{"provider":"vertex","internalModelId":"vertex:gemini-2.5-flash","providerApiModelId":"gemini-2.5-flash","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":332273.972708,"endTime":332398.058905,"statusCode":400},{"provider":"google","internalModelId":"google:gemini-2.5-flash","providerApiModelId":"gemini-2.5-flash","credentialType":"system","success":true,"startTime":332409.701098,"endTime":332999.008556,"statusCode":200,"providerResponseId":"hh2zaYWTF-q8-sAPxoLZsQQ"}]}],"totalProviderAttemptCount":2},"cost":"0.0001216","marketCost":"0.0001216","generationId":"gen_01KKHTPN1QBWX0ERVPTF7D28P2","billableWebSearchCalls":0}}},"logprobs":null,"finish_reason":"stop"}],"usage":{"prompt_tokens":197,"completion_tokens":25,"total_tokens":222,"cost":0.0001216,"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.0001216},"system_fingerprint":"fp_bh73j2eaay","generationId":"gen_01KKHTPN1QBWX0ERVPTF7D28P2"}'
58    headers:
59      Content-Type:
60      - application/json
61    status: 200 OK
62    code: 200
63    duration: 899.65075ms