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: 809
10    host: generativelanguage.googleapis.com
11    body: |
12      {"contents":[{"parts":[{"text":"Add and multiply the number 2 and 3"}],"role":"user"}],"generationConfig":{"maxOutputTokens":4000},"systemInstruction":{"parts":[{"text":"You are a helpful assistant. Always use both add and multiply at the same time."}],"role":"user"},"toolConfig":{"functionCallingConfig":{"mode":"AUTO"}},"tools":[{"functionDeclarations":[{"description":"Add two numbers","name":"add","parameters":{"properties":{"a":{"description":"first number","type":"INTEGER"},"b":{"description":"second number","type":"INTEGER"}},"required":["a","b"],"type":"OBJECT"}},{"description":"Multiply two numbers","name":"multiply","parameters":{"properties":{"a":{"description":"first number","type":"INTEGER"},"b":{"description":"second number","type":"INTEGER"}},"required":["a","b"],"type":"OBJECT"}}]}]}
13    form:
14      alt:
15      - sse
16    headers:
17      Content-Type:
18      - application/json
19      User-Agent:
20      - Charm-Fantasy/0.12.2 (https://charm.land/fantasy)
21      - google-genai-sdk/1.49.0 gl-go/go1.26.1
22    url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-pro:streamGenerateContent?alt=sse
23    method: POST
24  response:
25    proto: HTTP/2.0
26    proto_major: 2
27    proto_minor: 0
28    content_length: -1
29    body: "data: {\"candidates\": [{\"content\": {\"parts\": [{\"functionCall\": {\"name\": \"add\",\"args\": {\"b\": 3,\"a\": 2}},\"thoughtSignature\": \"CiQBvj72+/5mzhxPMHPnuLp75uv0yLiXlilHJLAP+kJiaYBuOWMKXgG+Pvb7cVVqLAomoUlGHWT11Qpw9y385/61+scbxb8OIInn4iCkBmjAGUZRQzLepGleNqs5cgSE0aU7tHEqK+VFg8NkWslo6qK56AfAV92M56MTL4W2paG5/3y83G8KiwEBvj72+5i8WiXe1K5jKOI8hwA2av98K2GygjwYmqRU4cLlRqUC22+iVRdyP+8aL7LdrZ10IskKtQTiHLI52oSYRDOhAg5EvZfdwafQTsgcx1IInXYJuwe2yzeXUHZvFoacZTO2dxi4Z6JlUSUWFF1HMOhKuAAYeEQxSkX1dEbYVu8IC2Qit0JByARSCocBAb4+9vtGE2otvUtKcRXW/SSI15YSb2JZ6w9A5T+WYdHW+MAOuQm9CgtSfMKrzzXMr9UmEbHbwlVOEiW3abzN2AFojZPi6XqHyXRHBvP/8MF7nkOJDOJbO7emTzV9RVazpZPYEXqUoo2sNc59iypviQcmIulZMb0taC7WlG50gryqguU+qb5BCnABvj72+2ATXsihLeTacbu6hu7eAvbkLIYbTO0wGbeXgz7oOgYV8x8rXSHL/mIjYZH71F62NrXEYbKCZ4Od90fDb+NhnQVnGGwxyHhwn2umg6SFMO4PT/o+zJ27TprRm2PLpWopSje7GQANxH824e6NCmcBvj72+4EH9/SSwSSHoKKCfLyFentqtyuBjtmhbeeIoyED8cSb4BGrk+f/B61G38KAziEwzOvi3wKB1T6GVgVptx25df4yO7r9qJ1YcAaeh4VRF/ynpMwn9I5YiHjPdHs/uoPmn4XmCmUBvj72+0YYsEi4h6bKy5Tw8FBnsvdL0vMZBt7WBoK1NvnIGRqXL4wIDu1I/5jPBk1z/1k9zh6F6vmBjXkjN2lqPhET130bSGTY9KdAbBOMEnuVj06r8Hn4AgsdWSTx7bs8B2yn8wqTAQG+Pvb7T6xeLfI61h/hxHameQM8Hkcv0VsgZHZzJlTVfZ19G/WyZQ56NngYuaorVyscil5FilTskmPkUwlml7TWPUnZcH2H274SN0ErLS5xPPOhNMDXoNVI5IfuXCwgGQQ0q8/SQMkmTsdLhKj0l+h6Sbxj8JOR0QV8bDzLdJJc5xgnsDK1sjWqYaLU+XTajQcxAQqCAQG+Pvb7mWy6L8k7foZKaqbqbjtwr54V4QB2cf9u9co60/UFJvvtlAZ+2vt1i7OLSQOE4tb6AJ3n6BG6tGTCl855QAy4BsozAmTUacfBju7NpvFP6jyaSBydTezN/07gy2Sy8i9xLGhEslI++rQ70JckuuD/J1XFX1+9xc2k/MwgpJgKNwG+Pvb79q0WkumGwUdgGKyG0srSCxFua+rIg3C0wRHQLc/Q5Wt2ff6dhi/ni0JLeDqT2BMpVlA=\"}],\"role\": \"model\"},\"index\": 0}],\"usageMetadata\": {\"promptTokenCount\": 121,\"candidatesTokenCount\": 18,\"totalTokenCount\": 332,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 121}],\"thoughtsTokenCount\": 193},\"modelVersion\": \"gemini-2.5-pro\",\"responseId\": \"fwCzaajKAZDmz7IP9Pvy-AE\"}\r\n\r\ndata: {\"candidates\": [{\"content\": {\"parts\": [{\"functionCall\": {\"name\": \"multiply\",\"args\": {\"a\": 2,\"b\": 3}}}],\"role\": \"model\"},\"finishReason\": \"STOP\",\"index\": 0,\"finishMessage\": \"Model generated function call(s).\"}],\"usageMetadata\": {\"promptTokenCount\": 121,\"candidatesTokenCount\": 36,\"totalTokenCount\": 350,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 121}],\"thoughtsTokenCount\": 193},\"modelVersion\": \"gemini-2.5-pro\",\"responseId\": \"fwCzaajKAZDmz7IP9Pvy-AE\"}\r\n\r\n"
30    headers:
31      Content-Type:
32      - text/event-stream
33    status: 200 OK
34    code: 200
35    duration: 2.94081375s
36- id: 1
37  request:
38    proto: HTTP/1.1
39    proto_major: 1
40    proto_minor: 1
41    content_length: 2596
42    host: generativelanguage.googleapis.com
43    body: |
44      {"contents":[{"parts":[{"text":"Add and multiply the number 2 and 3"}],"role":"user"},{"parts":[{"functionCall":{"args":{"a":2,"b":3},"id":"1","name":"add"},"thoughtSignature":"CiQBvj72+/5mzhxPMHPnuLp75uv0yLiXlilHJLAP+kJiaYBuOWMKXgG+Pvb7cVVqLAomoUlGHWT11Qpw9y385/61+scbxb8OIInn4iCkBmjAGUZRQzLepGleNqs5cgSE0aU7tHEqK+VFg8NkWslo6qK56AfAV92M56MTL4W2paG5/3y83G8KiwEBvj72+5i8WiXe1K5jKOI8hwA2av98K2GygjwYmqRU4cLlRqUC22+iVRdyP+8aL7LdrZ10IskKtQTiHLI52oSYRDOhAg5EvZfdwafQTsgcx1IInXYJuwe2yzeXUHZvFoacZTO2dxi4Z6JlUSUWFF1HMOhKuAAYeEQxSkX1dEbYVu8IC2Qit0JByARSCocBAb4+9vtGE2otvUtKcRXW/SSI15YSb2JZ6w9A5T+WYdHW+MAOuQm9CgtSfMKrzzXMr9UmEbHbwlVOEiW3abzN2AFojZPi6XqHyXRHBvP/8MF7nkOJDOJbO7emTzV9RVazpZPYEXqUoo2sNc59iypviQcmIulZMb0taC7WlG50gryqguU+qb5BCnABvj72+2ATXsihLeTacbu6hu7eAvbkLIYbTO0wGbeXgz7oOgYV8x8rXSHL/mIjYZH71F62NrXEYbKCZ4Od90fDb+NhnQVnGGwxyHhwn2umg6SFMO4PT/o+zJ27TprRm2PLpWopSje7GQANxH824e6NCmcBvj72+4EH9/SSwSSHoKKCfLyFentqtyuBjtmhbeeIoyED8cSb4BGrk+f/B61G38KAziEwzOvi3wKB1T6GVgVptx25df4yO7r9qJ1YcAaeh4VRF/ynpMwn9I5YiHjPdHs/uoPmn4XmCmUBvj72+0YYsEi4h6bKy5Tw8FBnsvdL0vMZBt7WBoK1NvnIGRqXL4wIDu1I/5jPBk1z/1k9zh6F6vmBjXkjN2lqPhET130bSGTY9KdAbBOMEnuVj06r8Hn4AgsdWSTx7bs8B2yn8wqTAQG+Pvb7T6xeLfI61h/hxHameQM8Hkcv0VsgZHZzJlTVfZ19G/WyZQ56NngYuaorVyscil5FilTskmPkUwlml7TWPUnZcH2H274SN0ErLS5xPPOhNMDXoNVI5IfuXCwgGQQ0q8/SQMkmTsdLhKj0l+h6Sbxj8JOR0QV8bDzLdJJc5xgnsDK1sjWqYaLU+XTajQcxAQqCAQG+Pvb7mWy6L8k7foZKaqbqbjtwr54V4QB2cf9u9co60/UFJvvtlAZ+2vt1i7OLSQOE4tb6AJ3n6BG6tGTCl855QAy4BsozAmTUacfBju7NpvFP6jyaSBydTezN/07gy2Sy8i9xLGhEslI++rQ70JckuuD/J1XFX1+9xc2k/MwgpJgKNwG+Pvb79q0WkumGwUdgGKyG0srSCxFua+rIg3C0wRHQLc/Q5Wt2ff6dhi/ni0JLeDqT2BMpVlA="},{"functionCall":{"args":{"a":2,"b":3},"id":"2","name":"multiply"}}],"role":"model"},{"parts":[{"functionResponse":{"id":"1","name":"add","response":{"result":"5"}}},{"functionResponse":{"id":"2","name":"multiply","response":{"result":"6"}}}],"role":"user"}],"generationConfig":{"maxOutputTokens":4000},"systemInstruction":{"parts":[{"text":"You are a helpful assistant. Always use both add and multiply at the same time."}],"role":"user"},"toolConfig":{"functionCallingConfig":{"mode":"AUTO"}},"tools":[{"functionDeclarations":[{"description":"Add two numbers","name":"add","parameters":{"properties":{"a":{"description":"first number","type":"INTEGER"},"b":{"description":"second number","type":"INTEGER"}},"required":["a","b"],"type":"OBJECT"}},{"description":"Multiply two numbers","name":"multiply","parameters":{"properties":{"a":{"description":"first number","type":"INTEGER"},"b":{"description":"second number","type":"INTEGER"}},"required":["a","b"],"type":"OBJECT"}}]}]}
45    form:
46      alt:
47      - sse
48    headers:
49      Content-Type:
50      - application/json
51      User-Agent:
52      - Charm-Fantasy/0.12.2 (https://charm.land/fantasy)
53      - google-genai-sdk/1.49.0 gl-go/go1.26.1
54    url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-pro:streamGenerateContent?alt=sse
55    method: POST
56  response:
57    proto: HTTP/2.0
58    proto_major: 2
59    proto_minor: 0
60    content_length: -1
61    body: "data: {\"candidates\": [{\"content\": {\"parts\": [{\"text\": \"The\"}],\"role\": \"model\"},\"index\": 0}],\"usageMetadata\": {\"promptTokenCount\": 374,\"candidatesTokenCount\": 1,\"totalTokenCount\": 375,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 374}]},\"modelVersion\": \"gemini-2.5-pro\",\"responseId\": \"gQCzacGbM8Xgz7IPpMmF2AI\"}\r\n\r\ndata: {\"candidates\": [{\"content\": {\"parts\": [{\"text\": \" sum of 2 and 3 is 5. The product of 2 and 3\"}],\"role\": \"model\"},\"index\": 0}],\"usageMetadata\": {\"promptTokenCount\": 374,\"candidatesTokenCount\": 20,\"totalTokenCount\": 394,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 374}]},\"modelVersion\": \"gemini-2.5-pro\",\"responseId\": \"gQCzacGbM8Xgz7IPpMmF2AI\"}\r\n\r\ndata: {\"candidates\": [{\"content\": {\"parts\": [{\"text\": \" is 6.\\n\"}],\"role\": \"model\"},\"finishReason\": \"STOP\",\"index\": 0}],\"usageMetadata\": {\"promptTokenCount\": 374,\"candidatesTokenCount\": 24,\"totalTokenCount\": 398,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 374}]},\"modelVersion\": \"gemini-2.5-pro\",\"responseId\": \"gQCzacGbM8Xgz7IPpMmF2AI\"}\r\n\r\n"
62    headers:
63      Content-Type:
64      - text/event-stream
65    status: 200 OK
66    code: 200
67    duration: 1.229607833s