---
version: 2
interactions:
- id: 0
  request:
    proto: HTTP/1.1
    proto_major: 1
    proto_minor: 1
    content_length: 550
    host: generativelanguage.googleapis.com
    body: |
      {"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"}}]}]}
    form:
      alt:
      - sse
    headers:
      Content-Type:
      - application/json
      User-Agent:
      - google-genai-sdk/1.33.0 gl-go/go1.25.0
    url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:streamGenerateContent?alt=sse
    method: POST
  response:
    proto: HTTP/2.0
    proto_major: 2
    proto_minor: 0
    content_length: -1
    body: "data: {\"candidates\": [{\"content\": {\"parts\": [{\"text\": \"**Obtain Weather Information**\\n\\nI've determined that the user is requesting weather data for Florence, Italy. To fulfill this, I'm setting up a call to the 'weather' tool. My approach is to pass \\\"Florence, Italy\\\" directly as the tool's `location` argument. The execution of this should provide the necessary forecast.\\n\\n\\n\",\"thought\": true}],\"role\": \"model\"},\"index\": 0}],\"usageMetadata\": {\"promptTokenCount\": 54,\"totalTokenCount\": 104,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 54}],\"thoughtsTokenCount\": 50},\"modelVersion\": \"gemini-2.5-flash\",\"responseId\": \"VAgJac7_KP-Cz7IPkNbj8AM\"}\r\n\r\ndata: {\"candidates\": [{\"content\": {\"parts\": [{\"functionCall\": {\"name\": \"weather\",\"args\": {\"location\": \"Florence, Italy\"}},\"thoughtSignature\": \"CiQB0e2Kb8PlQ1xttw+62OLkdtWjI6TWRZh8b9qS/VT05kd8Ha0KZwHR7YpvQf3lmZCOuET4YbFxLuwXLuMu3HZ2jzf18ygViyHTycSgWJpj6wLv7fsIPOgDAClIM50cArZ8SL14unjA0SZr0bC83cRVkr366deJ57t7woE7NbmDRvvC2Ww7Zp4dwBQQM/8KrwEB0e2KbxifnDjOKb7MjLsifVm/yX34wfvONANctV/pHkix8Inu0T4R91HZuuddKV2hA7wsdJc/Z5Lq77aDDMcVCTiXo4+6ua+J7zdMa/CrarF9xmYX60MaQU5/BkoCsGY5YEuyiL3GsnRqI/YZYUZjVihthA+pm2scVOAKSL9JvDvccxrLMhgbAVe3J/vXtzqrwKKnOMSDmY6N5l2hg0yPPTBR+GW2/kK8KvOo5xzK\"}],\"role\": \"model\"},\"finishReason\": \"STOP\",\"index\": 0,\"finishMessage\": \"Model generated function call(s).\"}],\"usageMetadata\": {\"promptTokenCount\": 54,\"candidatesTokenCount\": 14,\"totalTokenCount\": 118,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 54}],\"thoughtsTokenCount\": 50},\"modelVersion\": \"gemini-2.5-flash\",\"responseId\": \"VAgJac7_KP-Cz7IPkNbj8AM\"}\r\n\r\n"
    headers:
      Content-Type:
      - text/event-stream
    status: 200 OK
    code: 200
    duration: 1.941407333s
- id: 1
  request:
    proto: HTTP/1.1
    proto_major: 1
    proto_minor: 1
    content_length: 1214
    host: generativelanguage.googleapis.com
    body: |
      {"contents":[{"parts":[{"text":"What's the weather in Florence, Italy?"}],"role":"user"},{"parts":[{"functionCall":{"args":{"location":"Florence, Italy"},"id":"1","name":"weather"},"thoughtSignature":"CiQB0e2Kb8PlQ1xttw+62OLkdtWjI6TWRZh8b9qS/VT05kd8Ha0KZwHR7YpvQf3lmZCOuET4YbFxLuwXLuMu3HZ2jzf18ygViyHTycSgWJpj6wLv7fsIPOgDAClIM50cArZ8SL14unjA0SZr0bC83cRVkr366deJ57t7woE7NbmDRvvC2Ww7Zp4dwBQQM/8KrwEB0e2KbxifnDjOKb7MjLsifVm/yX34wfvONANctV/pHkix8Inu0T4R91HZuuddKV2hA7wsdJc/Z5Lq77aDDMcVCTiXo4+6ua+J7zdMa/CrarF9xmYX60MaQU5/BkoCsGY5YEuyiL3GsnRqI/YZYUZjVihthA+pm2scVOAKSL9JvDvccxrLMhgbAVe3J/vXtzqrwKKnOMSDmY6N5l2hg0yPPTBR+GW2/kK8KvOo5xzK"}],"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"}}]}]}
    form:
      alt:
      - sse
    headers:
      Content-Type:
      - application/json
      User-Agent:
      - google-genai-sdk/1.33.0 gl-go/go1.25.0
    url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:streamGenerateContent?alt=sse
    method: POST
  response:
    proto: HTTP/2.0
    proto_major: 2
    proto_minor: 0
    content_length: -1
    body: "data: {\"candidates\": [{\"content\": {\"parts\": [{\"text\": \"The weather in Florence\"}],\"role\": \"model\"},\"index\": 0}],\"usageMetadata\": {\"promptTokenCount\": 132,\"candidatesTokenCount\": 4,\"totalTokenCount\": 136,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 132}]},\"modelVersion\": \"gemini-2.5-flash\",\"responseId\": \"VggJad_YM__Uz7IPzNqI8AY\"}\r\n\r\ndata: {\"candidates\": [{\"content\": {\"parts\": [{\"text\": \", Italy is 40 C.\"}],\"role\": \"model\"},\"finishReason\": \"STOP\",\"index\": 0}],\"usageMetadata\": {\"promptTokenCount\": 132,\"candidatesTokenCount\": 12,\"totalTokenCount\": 144,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 132}]},\"modelVersion\": \"gemini-2.5-flash\",\"responseId\": \"VggJad_YM__Uz7IPzNqI8AY\"}\r\n\r\n"
    headers:
      Content-Type:
      - text/event-stream
    status: 200 OK
    code: 200
    duration: 830.511167ms
