thinking-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: 552
10    host: generativelanguage.googleapis.com
11    body: |
12      {"contents":[{"parts":[{"text":"What's the weather in Florence, Italy?"}],"role":"user"}],"generationConfig":{"thinkingConfig":{"includeThoughts":true,"thinkingLevel":"HIGH"}},"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-3-pro-preview: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\"},\"id\": \"9d532gc9\"},\"thoughtSignature\": \"Eu0DCuoDAb4+9vvdbiOpT/hdj5NfRT0HGI7d3Q7aVsxdntWDDSAKWXd1W9yIApz+DNkxyuQZqEvgwGM6LYZRZE/2z+fKT2HwZqDlmQRTO4vzrBPS5P0Huj7eqdBFa9+XO0oS7Yi5YB18JmoulO+EWsjqqKFj/t3MUBraxQQ8LL15aL+LH1odHwx6iVnYuDkt53RO6bAN3mXghFFajymaMQsCBgRHWiCoCMovUHP7CkMOPhWlH8QN0yuo1x+vvcToSq9c5xd1toNrGCUOziUUOxlYiCzPteckR8xVveXLw3OpCms7+rVoYME6ms/tF2rIKitwGx1GDcDs2UvtKsTCoWH63cipK+Yab1EG4pafOl0nDV8GWx7N3tufNsWD+1Wxow2zbjLJoVHsdsyEU7rmkmV2fHCH2KZug7qNaGtJMr51aMxqfVNOSXyQUhGMhaqbloGd4jFUpwptQcV/JDlREhegNuSI8asmwf0DuI/ftKXN0NlFTrBI8Ey3BCCNjh3XHYwFb5JexKmif5HoQgNDTgKsHn91PoTgXF8kviyWYYbCf78O6ipcPPqA3DKDFC3KN1NAXxw6KDjsu7RPHra8JyaxNS2xFVCaB1WjM0F38+KtI9pLBkzpqgjSc6yoLXm3jP1+V6quuL35Dm/vF6Otiw==\"}],\"role\": \"model\"},\"index\": 0}],\"usageMetadata\": {\"promptTokenCount\": 65,\"candidatesTokenCount\": 16,\"totalTokenCount\": 175,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 65}],\"thoughtsTokenCount\": 94},\"modelVersion\": \"gemini-3.1-pro-preview\",\"responseId\": \"yACzaZiFOp3Uz7IP577z4Qk\"}\r\n\r\ndata: {\"candidates\": [{\"content\": {\"parts\": [{\"text\": \"\"}],\"role\": \"model\"},\"finishReason\": \"STOP\",\"index\": 0}],\"usageMetadata\": {\"promptTokenCount\": 65,\"candidatesTokenCount\": 16,\"totalTokenCount\": 175,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 65}],\"thoughtsTokenCount\": 94},\"modelVersion\": \"gemini-3.1-pro-preview\",\"responseId\": \"yACzaZiFOp3Uz7IP577z4Qk\"}\r\n\r\n"
30    headers:
31      Content-Type:
32      - text/event-stream
33    status: 200 OK
34    code: 200
35    duration: 2.760922792s
36- id: 1
37  request:
38    proto: HTTP/1.1
39    proto_major: 1
40    proto_minor: 1
41    content_length: 1466
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":"9d532gc9","name":"weather"},"thoughtSignature":"Eu0DCuoDAb4+9vvdbiOpT/hdj5NfRT0HGI7d3Q7aVsxdntWDDSAKWXd1W9yIApz+DNkxyuQZqEvgwGM6LYZRZE/2z+fKT2HwZqDlmQRTO4vzrBPS5P0Huj7eqdBFa9+XO0oS7Yi5YB18JmoulO+EWsjqqKFj/t3MUBraxQQ8LL15aL+LH1odHwx6iVnYuDkt53RO6bAN3mXghFFajymaMQsCBgRHWiCoCMovUHP7CkMOPhWlH8QN0yuo1x+vvcToSq9c5xd1toNrGCUOziUUOxlYiCzPteckR8xVveXLw3OpCms7+rVoYME6ms/tF2rIKitwGx1GDcDs2UvtKsTCoWH63cipK+Yab1EG4pafOl0nDV8GWx7N3tufNsWD+1Wxow2zbjLJoVHsdsyEU7rmkmV2fHCH2KZug7qNaGtJMr51aMxqfVNOSXyQUhGMhaqbloGd4jFUpwptQcV/JDlREhegNuSI8asmwf0DuI/ftKXN0NlFTrBI8Ey3BCCNjh3XHYwFb5JexKmif5HoQgNDTgKsHn91PoTgXF8kviyWYYbCf78O6ipcPPqA3DKDFC3KN1NAXxw6KDjsu7RPHra8JyaxNS2xFVCaB1WjM0F38+KtI9pLBkzpqgjSc6yoLXm3jP1+V6quuL35Dm/vF6Otiw=="}],"role":"model"},{"parts":[{"functionResponse":{"id":"9d532gc9","name":"weather","response":{"result":"40 C"}}}],"role":"user"}],"generationConfig":{"thinkingConfig":{"includeThoughts":true,"thinkingLevel":"HIGH"}},"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-3-pro-preview: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 current weather in Florence, Italy is 40°C (104°F). Stay cool,\"}],\"role\": \"model\"},\"index\": 0}],\"usageMetadata\": {\"promptTokenCount\": 95,\"candidatesTokenCount\": 23,\"totalTokenCount\": 186,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 95}],\"thoughtsTokenCount\": 68},\"modelVersion\": \"gemini-3.1-pro-preview\",\"responseId\": \"ywCzae2oL5ODz7IP29qJmQw\"}\r\n\r\ndata: {\"candidates\": [{\"content\": {\"parts\": [{\"text\": \" it's quite hot!\"}],\"role\": \"model\"},\"index\": 0}],\"usageMetadata\": {\"promptTokenCount\": 95,\"candidatesTokenCount\": 29,\"totalTokenCount\": 192,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 95}],\"thoughtsTokenCount\": 68},\"modelVersion\": \"gemini-3.1-pro-preview\",\"responseId\": \"ywCzae2oL5ODz7IP29qJmQw\"}\r\n\r\ndata: {\"candidates\": [{\"content\": {\"parts\": [{\"text\": \"\",\"thoughtSignature\": \"EtACCs0CAb4+9vvhaZ9sAhdYaVytJYwmXqKqaWpz/eh42dBI7nhCPbwYxYT0MjpBx4xP0Vc+k+Rvpm9Era3U/h9DeLbsgvJiA/x00qpPXPp3lGvSwW/jyqbVjzskp3fHZ5N8wscTWbLpGVG5n8lznGM0gCFq7YISYHKff1PCSWXcXxs6jiJiP4KsMQRzPtjhVAND5AehdypML/dY7z2z9xF8aIt+0nqELeIDAKTnWjC70vo7wrnt6VUEnDiCDP3FnILYV1ZPWIKsK/Ohbqvigto4wTVYTazxUuphChgPK7sc5cc+tOHG6ac98ibym7t08rijSgBufR7VAWdCB03WyVgOIOp+upXtL2V6WFqfu4oo7dPBhI7FoHNo+b0RKcS52ZotTstjEJiVWtkGCCwN4mNgeP6m8tN3+SK1ZYCRq0N7qCbf7RgP0DWA2zlE21lKeyR8\"}],\"role\": \"model\"},\"finishReason\": \"STOP\",\"index\": 0}],\"usageMetadata\": {\"promptTokenCount\": 189,\"candidatesTokenCount\": 29,\"totalTokenCount\": 286,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 189}],\"thoughtsTokenCount\": 68},\"modelVersion\": \"gemini-3.1-pro-preview\",\"responseId\": \"ywCzae2oL5ODz7IP29qJmQw\"}\r\n\r\n"
62    headers:
63      Content-Type:
64      - text/event-stream
65    status: 200 OK
66    code: 200
67    duration: 2.711688042s