thinking.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    headers:
 14      Content-Type:
 15      - application/json
 16      User-Agent:
 17      - Charm-Fantasy/0.12.2 (https://charm.land/fantasy)
 18      - google-genai-sdk/1.49.0 gl-go/go1.26.1
 19    url: https://generativelanguage.googleapis.com/v1beta/models/gemini-3-pro-preview:generateContent
 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: |
 28      {
 29        "candidates": [
 30          {
 31            "content": {
 32              "parts": [
 33                {
 34                  "text": "**My Thought Process: Weather in Florence**\n\nOkay, the user wants the weather in Florence, Italy. Simple enough. First, I need to identify the appropriate tool. Ah, the `default_api:weather` tool – perfect! That's exactly what I need for weather data. Now, what parameters does this tool require? Right, just a `location`. The user's provided location is \"Florence, Italy,\" so that's the value I'll use. Now to format the tool call correctly. I need a JSON object for the location, and then it's `{\"location\": \"Florence, Italy\"}`. Final step: I execute the tool call in the appropriate format: `டல்call:default_api:weather{\"location\": \"Florence, Italy\"}`. Done! I should get the weather data back shortly.\n\n\n",
 35                  "thought": true
 36                },
 37                {
 38                  "functionCall": {
 39                    "name": "weather",
 40                    "args": {
 41                      "location": "Florence, Italy"
 42                    },
 43                    "id": "v3yybtcf"
 44                  },
 45                  "thoughtSignature": "EucECuQEAb4+9vsYroJyp1uieeH5kjR2slN/TtULDJ5DWhM6IAskLN0yYqxSHckqkY3CLX/sBF+KwFP44rn+BjtIaS+rgcM+omQ3YzvLnnMVdeU97IAih7VbuWqqdpqcXrtiab4vZbhun83pab1NndOKL5M/o9RMPC8IlQNnzb3KMhmzhQ6whAePjKxI1bZpRil3s9aPHjHHwIMKhGhfjtbnli4XS93vEEWCe9YM5QYhY5afbnoJUxQXMDxH8SvUzqgTWULjDZPHNsr7jA/QvI8OFosXNjEFiyYFhsvNQxeHRW2Ce9kVJRSTskO5i+MXGVGYBZ1J7FpMAkTcbqUPHqnFd3kEMrsiGSHUDE6jCcYpN6DT215y9hnhG2cs0LqSVq8gqQqlCYeWW6fDXMhuzhOkcTOaZby8GrFumJiwbvBfZW9kEY+Dp0X1mDNuFethsFI9EsQ+3Q8Xw4OI1JaBCgriDuebHOgNrQZzMECawx7x3t1ctDwOa7Ehdh3Ct7X5+ZKur6x5JsCFqTpmbqD0mEx3xlHQsYMEpO+biVZkBHz0fb/sjAd55cvU0fyXYLt9YYPraY4jLDPr7dBlmh3/5u1yWShphIUyGdWaC5k4hhsZG4BRrm5ZERlWJdGwKj0Y9B45sbeObmT4X78WrWmghagQ29dvRYBeROneeVobZ7VY52zSfvtBmvnO614/9OjOKqKVJAdrNbo3LK3lT6dhIlesFvRV1c6O4QFf3z9ZdOKouH3vvxDg6TQsIc3dkIaKdT2G1fBUjjavEIjTWhjoe70FJGSp+5y5tWVGu+ULheKsjk7+bMX1gUw1"
 46                }
 47              ],
 48              "role": "model"
 49            },
 50            "finishReason": "STOP",
 51            "index": 0,
 52            "finishMessage": "Model generated function call(s)."
 53          }
 54        ],
 55        "usageMetadata": {
 56          "promptTokenCount": 65,
 57          "candidatesTokenCount": 16,
 58          "totalTokenCount": 219,
 59          "promptTokensDetails": [
 60            {
 61              "modality": "TEXT",
 62              "tokenCount": 65
 63            }
 64          ],
 65          "thoughtsTokenCount": 138
 66        },
 67        "modelVersion": "gemini-3.1-pro-preview",
 68        "responseId": "wgCzaf-rHeXgz7IPoryaqAU"
 69      }
 70    headers:
 71      Content-Type:
 72      - application/json; charset=UTF-8
 73    status: 200 OK
 74    code: 200
 75    duration: 4.6109495s
 76- id: 1
 77  request:
 78    proto: HTTP/1.1
 79    proto_major: 1
 80    proto_minor: 1
 81    content_length: 1626
 82    host: generativelanguage.googleapis.com
 83    body: |
 84      {"contents":[{"parts":[{"text":"What's the weather in Florence, Italy?"}],"role":"user"},{"parts":[{"functionCall":{"args":{"location":"Florence, Italy"},"id":"v3yybtcf","name":"weather"},"thoughtSignature":"EucECuQEAb4+9vsYroJyp1uieeH5kjR2slN/TtULDJ5DWhM6IAskLN0yYqxSHckqkY3CLX/sBF+KwFP44rn+BjtIaS+rgcM+omQ3YzvLnnMVdeU97IAih7VbuWqqdpqcXrtiab4vZbhun83pab1NndOKL5M/o9RMPC8IlQNnzb3KMhmzhQ6whAePjKxI1bZpRil3s9aPHjHHwIMKhGhfjtbnli4XS93vEEWCe9YM5QYhY5afbnoJUxQXMDxH8SvUzqgTWULjDZPHNsr7jA/QvI8OFosXNjEFiyYFhsvNQxeHRW2Ce9kVJRSTskO5i+MXGVGYBZ1J7FpMAkTcbqUPHqnFd3kEMrsiGSHUDE6jCcYpN6DT215y9hnhG2cs0LqSVq8gqQqlCYeWW6fDXMhuzhOkcTOaZby8GrFumJiwbvBfZW9kEY+Dp0X1mDNuFethsFI9EsQ+3Q8Xw4OI1JaBCgriDuebHOgNrQZzMECawx7x3t1ctDwOa7Ehdh3Ct7X5+ZKur6x5JsCFqTpmbqD0mEx3xlHQsYMEpO+biVZkBHz0fb/sjAd55cvU0fyXYLt9YYPraY4jLDPr7dBlmh3/5u1yWShphIUyGdWaC5k4hhsZG4BRrm5ZERlWJdGwKj0Y9B45sbeObmT4X78WrWmghagQ29dvRYBeROneeVobZ7VY52zSfvtBmvnO614/9OjOKqKVJAdrNbo3LK3lT6dhIlesFvRV1c6O4QFf3z9ZdOKouH3vvxDg6TQsIc3dkIaKdT2G1fBUjjavEIjTWhjoe70FJGSp+5y5tWVGu+ULheKsjk7+bMX1gUw1"}],"role":"model"},{"parts":[{"functionResponse":{"id":"v3yybtcf","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"}}]}]}
 85    headers:
 86      Content-Type:
 87      - application/json
 88      User-Agent:
 89      - Charm-Fantasy/0.12.2 (https://charm.land/fantasy)
 90      - google-genai-sdk/1.49.0 gl-go/go1.26.1
 91    url: https://generativelanguage.googleapis.com/v1beta/models/gemini-3-pro-preview:generateContent
 92    method: POST
 93  response:
 94    proto: HTTP/2.0
 95    proto_major: 2
 96    proto_minor: 0
 97    content_length: -1
 98    uncompressed: true
 99    body: |
100      {
101        "candidates": [
102          {
103            "content": {
104              "parts": [
105                {
106                  "text": "**My Immediate Thoughts on the Florence Weather Query**\n\nOkay, so the system just spat out \"40 C\" for Florence, Italy. That's my starting point. Now, the task is to translate this raw data into a human-readable and contextually appropriate response, and it's imperative that the language be concise and accurate. Therefore, I need to frame it in a way that is clear and easy to understand. Considering the user, the focus should be on directness. The simplest, most effective way to communicate this is: \"The current weather in Florence, Italy is 40°C.\" Done.\n\n\n",
107                  "thought": true
108                },
109                {
110                  "text": "The current weather in Florence, Italy is 40°C (104°F). Stay hydrated, it's quite hot!",
111                  "thoughtSignature": "Eo4CCosCAb4+9vsxETlwySLJFpZ/qtlMnUAM3qEDlnHqRhZSkV9xniRXKG/EpuPM4I4FAc8YTUDWYW4lWjLGQpv5dxhQrRj0nmOSYkg9ENlrg0oAM28q/BNLo6w8ggk0uVsU4Oe0XZzP6rjTSBHiNxqCigE6fi/jP2Jk43tmM6iAKcHU0ZvSelZV4aTUaJ+LiyrBjckf5yCQcnxnJNy7FYKvGsYItkvB5KqEpJji9TjPHRjdwOAMd2nRIvUFnpusEtSAG8faV4Q/dRpub6Nge5xUrtGiRSU729ZBFdXZZfJA7S4sQOn8p/AGYsMZaLjfYJVkUxWmlrq9FEYggGgggvoCLL/0w/79A1H1zUZikDUX"
112                }
113              ],
114              "role": "model"
115            },
116            "finishReason": "STOP",
117            "index": 0
118          }
119        ],
120        "usageMetadata": {
121          "promptTokenCount": 234,
122          "candidatesTokenCount": 28,
123          "totalTokenCount": 318,
124          "promptTokensDetails": [
125            {
126              "modality": "TEXT",
127              "tokenCount": 234
128            }
129          ],
130          "thoughtsTokenCount": 56
131        },
132        "modelVersion": "gemini-3.1-pro-preview",
133        "responseId": "xgCzad_bDYzUz7IPxoCRiAk"
134      }
135    headers:
136      Content-Type:
137      - application/json; charset=UTF-8
138    status: 200 OK
139    code: 200
140    duration: 3.764384209s