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: 509
10    host: generativelanguage.googleapis.com
11    body: |
12      {"contents":[{"parts":[{"text":"What's the weather in Florence,Italy?"}],"role":"user"}],"generationConfig":{"maxOutputTokens":4000},"systemInstruction":{"parts":[{"text":"You are a helpful assistant"}],"role":"user"},"toolConfig":{"functionCallingConfig":{"mode":"AUTO"}},"tools":[{"functionDeclarations":[{"description":"Get weather information for a location","name":"weather","parameters":{"properties":{"location":{"description":"the city","type":"STRING"}},"required":["location"],"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-flash: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\": \"weather\",\"args\": {\"location\": \"Florence,Italy\"}},\"thoughtSignature\": \"CiQBvj72+xCKZ6n2ewHIHg3nIWfu6zy4Znh/TJTlgZMDBj7UcfoKZwG+Pvb7HC0+ds8yTx13X71T68CdLhgHBq/EHSe1cdetUYt/hbcv5aJy5o7Bhux5fWqkmSsGNBs9HiMdsbRqRN4YXh9UR3LTnYuV7Bp0gR8nIE/QLK2BQtGNxrxaD8scXwvrZ2q3izMKmgEBvj72++/EmTKY6Vq77EISxk0GbpbjN6ypU29fapjcLCRtNSNfgpdcqgMgWIGqH6E9d20r2UYGXgyGsx5cdtWBvI0q5dQwy2xATovEZNRPNJC/+vY0yBsTojt61TKhp26PJ5fIdu02X8RN89S15Xr3egRayx72aPeUzfheqRxqGWjiMcbK4EWyiX+UxHHFqKTppeSRhBjtMdse\"}],\"role\": \"model\"},\"finishReason\": \"STOP\",\"index\": 0,\"finishMessage\": \"Model generated function call(s).\"}],\"usageMetadata\": {\"promptTokenCount\": 54,\"candidatesTokenCount\": 15,\"totalTokenCount\": 112,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 54}],\"thoughtsTokenCount\": 43},\"modelVersion\": \"gemini-2.5-flash\",\"responseId\": \"WQCzaayhL8Xmz7IP-63dqQk\"}\r\n\r\n"
30    headers:
31      Content-Type:
32      - text/event-stream
33    status: 200 OK
34    code: 200
35    duration: 1.022032708s
36- id: 1
37  request:
38    proto: HTTP/1.1
39    proto_major: 1
40    proto_minor: 1
41    content_length: 1144
42    host: generativelanguage.googleapis.com
43    body: |
44      {"contents":[{"parts":[{"text":"What's the weather in Florence,Italy?"}],"role":"user"},{"parts":[{"functionCall":{"args":{"location":"Florence,Italy"},"id":"1","name":"weather"},"thoughtSignature":"CiQBvj72+xCKZ6n2ewHIHg3nIWfu6zy4Znh/TJTlgZMDBj7UcfoKZwG+Pvb7HC0+ds8yTx13X71T68CdLhgHBq/EHSe1cdetUYt/hbcv5aJy5o7Bhux5fWqkmSsGNBs9HiMdsbRqRN4YXh9UR3LTnYuV7Bp0gR8nIE/QLK2BQtGNxrxaD8scXwvrZ2q3izMKmgEBvj72++/EmTKY6Vq77EISxk0GbpbjN6ypU29fapjcLCRtNSNfgpdcqgMgWIGqH6E9d20r2UYGXgyGsx5cdtWBvI0q5dQwy2xATovEZNRPNJC/+vY0yBsTojt61TKhp26PJ5fIdu02X8RN89S15Xr3egRayx72aPeUzfheqRxqGWjiMcbK4EWyiX+UxHHFqKTppeSRhBjtMdse"}],"role":"model"},{"parts":[{"functionResponse":{"id":"1","name":"weather","response":{"result":"40 C"}}}],"role":"user"}],"generationConfig":{"maxOutputTokens":4000},"systemInstruction":{"parts":[{"text":"You are a helpful assistant"}],"role":"user"},"toolConfig":{"functionCallingConfig":{"mode":"AUTO"}},"tools":[{"functionDeclarations":[{"description":"Get weather information for a location","name":"weather","parameters":{"properties":{"location":{"description":"the city","type":"STRING"}},"required":["location"],"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-flash: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 weather in Florence\"}],\"role\": \"model\"},\"index\": 0}],\"usageMetadata\": {\"promptTokenCount\": 127,\"candidatesTokenCount\": 4,\"totalTokenCount\": 131,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 127}]},\"modelVersion\": \"gemini-2.5-flash\",\"responseId\": \"WgCzaZzmMLnoz7IP_czm6Q4\"}\r\n\r\ndata: {\"candidates\": [{\"content\": {\"parts\": [{\"text\": \",Italy is 40 C.\"}],\"role\": \"model\"},\"finishReason\": \"STOP\",\"index\": 0}],\"usageMetadata\": {\"promptTokenCount\": 127,\"candidatesTokenCount\": 12,\"totalTokenCount\": 139,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 127}]},\"modelVersion\": \"gemini-2.5-flash\",\"responseId\": \"WgCzaZzmMLnoz7IP_czm6Q4\"}\r\n\r\n"
62    headers:
63      Content-Type:
64      - text/event-stream
65    status: 200 OK
66    code: 200
67    duration: 714.666833ms