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: 550
10 host: generativelanguage.googleapis.com
11 body: |
12 {"contents":[{"parts":[{"text":"What's the weather in Florence, Italy?"}],"role":"user"}],"generationConfig":{"thinkingConfig":{"includeThoughts":true,"thinkingBudget":128}},"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 headers:
14 Content-Type:
15 - application/json
16 User-Agent:
17 - google-genai-sdk/1.34.0 gl-go/go1.25.4
18 url: https://generativelanguage.googleapis.com/v1beta/models/gemini-3-pro-preview:generateContent
19 method: POST
20 response:
21 proto: HTTP/2.0
22 proto_major: 2
23 proto_minor: 0
24 content_length: -1
25 uncompressed: true
26 body: |
27 {
28 "candidates": [
29 {
30 "content": {
31 "parts": [
32 {
33 "text": "**Breaking Down the Weather Query**\n\nOkay, here's what I'm processing. A user is asking about the weather in Florence, Italy. That's straightforward enough - they want current weather data. Looking at my toolset, I see the `weather` tool is perfect for this. It's explicitly designed for retrieving weather information based on a location. Easy. This is a classic example of intent recognition and tool selection. My next step would be to formulate the `weather` function call with the correct parameters, specifically the location, \"Florence, Italy\". I'm ready to get this user the information they need.\n\n\n",
34 "thought": true
35 },
36 {
37 "functionCall": {
38 "name": "weather",
39 "args": {
40 "location": "Florence, Italy"
41 }
42 },
43 "thoughtSignature": "EtMDCtADAdHtim/Qznjl3jYdbqtczyFkf1sarL7CYPmwkwMTU8qifm7AQe1i21NWqWvbSGT+KG/NkCBhcC0Zc8MusHqgFm2Iw+2TP0Ckp8nL5k+1G7jffxPRKsXcyq/6jvRtGvcxb199vZTNapt2/vYas7tEOZahNr/Xiuic7yVEcEEQD8Vdsp9qgRy8qu4RO1nc8Q5cnbd8fOEKfjusde2ehpTA47PUNhhIWlLBEGeMOowAoaEf9/W7cMxlg21omQYaYiIVgvI1qi2U/4nSOKDBlTA2N0LDuygPTtRsz2ZMwJGC8CIrrCW0apY1X2QcgO+s/9tNurJp/D9tiIFnwRXT8q7V90nAng9dSqHrChr2jvr4n3j5wgbvHnqLJouCKR8ME+leQZUHefdJyHeXNSjv9Rzs7cqiaUgWR7Rn11BQld3Q/myVqq7/r0LI/IchztYQVKDvE0XXbc0o8x4cfQTmtdlSwcAQxE5OG6sLNoRPAJmPfkwlppeHwNGG7ntkCKX/nG/o40w2OyFwk6WnkyNhnqTiA5knDyP51fnOiwKhFYxtDa7f2WdUPsILiJjqT7hDjtYTCnYvuWgTvqkaRtfLWES9QIVVZP63zK6PDFQLtLp8kd0="
44 }
45 ],
46 "role": "model"
47 },
48 "finishReason": "STOP",
49 "index": 0,
50 "finishMessage": "Model generated function call(s)."
51 }
52 ],
53 "usageMetadata": {
54 "promptTokenCount": 65,
55 "candidatesTokenCount": 16,
56 "totalTokenCount": 189,
57 "promptTokensDetails": [
58 {
59 "modality": "TEXT",
60 "tokenCount": 65
61 }
62 ],
63 "thoughtsTokenCount": 108
64 },
65 "modelVersion": "gemini-3-pro-preview",
66 "responseId": "mqIdabO3C5S3vdIPuPm34Ak"
67 }
68 headers:
69 Content-Type:
70 - application/json; charset=UTF-8
71 status: 200 OK
72 code: 200
73 duration: 3.163927334s
74- id: 1
75 request:
76 proto: HTTP/1.1
77 proto_major: 1
78 proto_minor: 1
79 content_length: 1414
80 host: generativelanguage.googleapis.com
81 body: |
82 {"contents":[{"parts":[{"text":"What's the weather in Florence, Italy?"}],"role":"user"},{"parts":[{"functionCall":{"args":{"location":"Florence, Italy"},"id":"1","name":"weather"},"thoughtSignature":"EtMDCtADAdHtim/Qznjl3jYdbqtczyFkf1sarL7CYPmwkwMTU8qifm7AQe1i21NWqWvbSGT+KG/NkCBhcC0Zc8MusHqgFm2Iw+2TP0Ckp8nL5k+1G7jffxPRKsXcyq/6jvRtGvcxb199vZTNapt2/vYas7tEOZahNr/Xiuic7yVEcEEQD8Vdsp9qgRy8qu4RO1nc8Q5cnbd8fOEKfjusde2ehpTA47PUNhhIWlLBEGeMOowAoaEf9/W7cMxlg21omQYaYiIVgvI1qi2U/4nSOKDBlTA2N0LDuygPTtRsz2ZMwJGC8CIrrCW0apY1X2QcgO+s/9tNurJp/D9tiIFnwRXT8q7V90nAng9dSqHrChr2jvr4n3j5wgbvHnqLJouCKR8ME+leQZUHefdJyHeXNSjv9Rzs7cqiaUgWR7Rn11BQld3Q/myVqq7/r0LI/IchztYQVKDvE0XXbc0o8x4cfQTmtdlSwcAQxE5OG6sLNoRPAJmPfkwlppeHwNGG7ntkCKX/nG/o40w2OyFwk6WnkyNhnqTiA5knDyP51fnOiwKhFYxtDa7f2WdUPsILiJjqT7hDjtYTCnYvuWgTvqkaRtfLWES9QIVVZP63zK6PDFQLtLp8kd0="}],"role":"model"},{"parts":[{"functionResponse":{"id":"1","name":"weather","response":{"result":"40 C"}}}],"role":"user"}],"generationConfig":{"thinkingConfig":{"includeThoughts":true,"thinkingBudget":128}},"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"}}]}]}
83 headers:
84 Content-Type:
85 - application/json
86 User-Agent:
87 - google-genai-sdk/1.34.0 gl-go/go1.25.4
88 url: https://generativelanguage.googleapis.com/v1beta/models/gemini-3-pro-preview:generateContent
89 method: POST
90 response:
91 proto: HTTP/2.0
92 proto_major: 2
93 proto_minor: 0
94 content_length: -1
95 uncompressed: true
96 body: |
97 {
98 "candidates": [
99 {
100 "content": {
101 "parts": [
102 {
103 "text": "It's currently 40°C (104°F) in Florence, Italy. That is quite hot!"
104 }
105 ],
106 "role": "model"
107 },
108 "finishReason": "STOP",
109 "index": 0
110 }
111 ],
112 "usageMetadata": {
113 "promptTokenCount": 201,
114 "candidatesTokenCount": 26,
115 "totalTokenCount": 227,
116 "promptTokensDetails": [
117 {
118 "modality": "TEXT",
119 "tokenCount": 201
120 }
121 ]
122 },
123 "modelVersion": "gemini-3-pro-preview",
124 "responseId": "naIdabjfC4HhvdIPo9CWoAk"
125 }
126 headers:
127 Content-Type:
128 - application/json; charset=UTF-8
129 status: 200 OK
130 code: 200
131 duration: 3.0175995s