---
version: 2
interactions:
- id: 0
  request:
    proto: HTTP/1.1
    proto_major: 1
    proto_minor: 1
    content_length: 509
    host: us-east5-aiplatform.googleapis.com
    body: |
      {"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"}}]}]}
    form:
      alt:
      - sse
    headers:
      Content-Type:
      - application/json
      User-Agent:
      - Charm-Fantasy/0.12.2 (https://charm.land/fantasy)
      - google-genai-sdk/1.49.0 gl-go/go1.26.1
    url: https://us-east5-aiplatform.googleapis.com/v1beta1/projects/fantasy-playground-472418/locations/us-east5/publishers/google/models/gemini-2.5-pro:streamGenerateContent?alt=sse
    method: POST
  response:
    proto: HTTP/2.0
    proto_major: 2
    proto_minor: 0
    content_length: -1
    body: "data: {\"candidates\": [{\"content\": {\"role\": \"model\",\"parts\": [{\"functionCall\": {\"name\": \"weather\",\"args\": {\"location\": \"Florence, Italy\"}},\"thoughtSignature\": \"CiIBjz1rXyc3Jt0wjS9Mp9TZrLGwfhh2I4z86q6IZHflISCYCmcBjz1rXx+KC1eUkDiRSogUY8M9UnL2bbN9IL9BFB99rjNJ8jKqVtrTC5SncrQnBBqYo8EuWgvrv1+5FSI9Cr2nhvTwyyTpoiqxks9Xz4OTzqCTha5hpdTkLT846P9pER0Xf5aVPOXtCmEBjz1rXwxN0lNIdN5KMrHQmICcs0vijgyfM9OW6oEZIVB3mMx8vGktc9TmDsrA2+CwjcR2l49yFw35r7XPxk/Ng0DRvD3DxUrB/okaGO/ZD4hxM3c2OrFup+zFvfHd/XCcCqcBAY89a1+CIQmUJvHDk2M4F+N7Fs0l3b3lZ9iWGGM/co8kDRr54mxTDiyfwqQ8aDUwwh9glTbmvAjoUvkf8UTN22Bhvv7wdSD31CCBpIsxs6Cdio0H3rP926aZqJBVDKDok8lxfUmDZeJjnQ0o2aIHJefPfibnqzcUhEisidSiOB6ykdSnJUc1wrCqntx0g9UTuF1+rqGk2kDQMiw7OYBl9tdBdtdJerYKqAEBjz1rX+ztDgupxPgCbZALhEbGh9rxJf+DYlYGm5Me0BtIKtOzaol4Mhmn/TeoFz+uzJuK70YK5HFCj82q2aEDNza9W5jO7aYoceFhS4YCyNFTMRIg6IEWVJxS3sUe78ELLsDtGz4/wwwmz5R7ewdNgAY3++XEMwWmNcur6M+kJo8A0Rdd05lcqI9x7bIeHK26JSFNKP0q92ueLb+nFwHj6tv0wWQixz0KdAGPPWtfJWCT44joV6wQkimuxiqvNYu/QESgs3eTypb23NNIgfv49xVM0VW7RHiqw/OXFXtxl5V9VST5DCLK8ShuRYYGDvCVtsGhK75pwJqLWMG/B781gSh9LChcF/n74RT6e21GTFtKGvMGywQTkZrYJVEe\"}]},\"finishReason\": \"STOP\"}],\"usageMetadata\": {\"promptTokenCount\": 28,\"candidatesTokenCount\": 5,\"totalTokenCount\": 150,\"trafficType\": \"ON_DEMAND\",\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 28}],\"candidatesTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 5}],\"thoughtsTokenCount\": 117},\"modelVersion\": \"gemini-2.5-pro\",\"createTime\": \"2026-03-12T18:06:28.449115Z\",\"responseId\": \"pACzadu0G57U8eEPzcif6QU\"}\r\n\r\n"
    headers:
      Content-Type:
      - text/event-stream
    status: 200 OK
    code: 200
    duration: 2.436108042s
- id: 1
  request:
    proto: HTTP/1.1
    proto_major: 1
    proto_minor: 1
    content_length: 1677
    host: us-east5-aiplatform.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":"CiIBjz1rXyc3Jt0wjS9Mp9TZrLGwfhh2I4z86q6IZHflISCYCmcBjz1rXx+KC1eUkDiRSogUY8M9UnL2bbN9IL9BFB99rjNJ8jKqVtrTC5SncrQnBBqYo8EuWgvrv1+5FSI9Cr2nhvTwyyTpoiqxks9Xz4OTzqCTha5hpdTkLT846P9pER0Xf5aVPOXtCmEBjz1rXwxN0lNIdN5KMrHQmICcs0vijgyfM9OW6oEZIVB3mMx8vGktc9TmDsrA2+CwjcR2l49yFw35r7XPxk/Ng0DRvD3DxUrB/okaGO/ZD4hxM3c2OrFup+zFvfHd/XCcCqcBAY89a1+CIQmUJvHDk2M4F+N7Fs0l3b3lZ9iWGGM/co8kDRr54mxTDiyfwqQ8aDUwwh9glTbmvAjoUvkf8UTN22Bhvv7wdSD31CCBpIsxs6Cdio0H3rP926aZqJBVDKDok8lxfUmDZeJjnQ0o2aIHJefPfibnqzcUhEisidSiOB6ykdSnJUc1wrCqntx0g9UTuF1+rqGk2kDQMiw7OYBl9tdBdtdJerYKqAEBjz1rX+ztDgupxPgCbZALhEbGh9rxJf+DYlYGm5Me0BtIKtOzaol4Mhmn/TeoFz+uzJuK70YK5HFCj82q2aEDNza9W5jO7aYoceFhS4YCyNFTMRIg6IEWVJxS3sUe78ELLsDtGz4/wwwmz5R7ewdNgAY3++XEMwWmNcur6M+kJo8A0Rdd05lcqI9x7bIeHK26JSFNKP0q92ueLb+nFwHj6tv0wWQixz0KdAGPPWtfJWCT44joV6wQkimuxiqvNYu/QESgs3eTypb23NNIgfv49xVM0VW7RHiqw/OXFXtxl5V9VST5DCLK8ShuRYYGDvCVtsGhK75pwJqLWMG/B781gSh9LChcF/n74RT6e21GTFtKGvMGywQTkZrYJVEe"}],"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"}}]}]}
    form:
      alt:
      - sse
    headers:
      Content-Type:
      - application/json
      User-Agent:
      - Charm-Fantasy/0.12.2 (https://charm.land/fantasy)
      - google-genai-sdk/1.49.0 gl-go/go1.26.1
    url: https://us-east5-aiplatform.googleapis.com/v1beta1/projects/fantasy-playground-472418/locations/us-east5/publishers/google/models/gemini-2.5-pro:streamGenerateContent?alt=sse
    method: POST
  response:
    proto: HTTP/2.0
    proto_major: 2
    proto_minor: 0
    content_length: -1
    body: "data: {\"candidates\": [{\"content\": {\"role\": \"model\",\"parts\": [{\"text\": \"The\"}]}}],\"usageMetadata\": {\"trafficType\": \"ON_DEMAND\"},\"modelVersion\": \"gemini-2.5-pro\",\"createTime\": \"2026-03-12T18:06:30.882336Z\",\"responseId\": \"pgCzaaDtNeLT8eEP2-rQmAc\"}\r\n\r\ndata: {\"candidates\": [{\"content\": {\"role\": \"model\",\"parts\": [{\"text\": \" weather in Florence, Italy is 40 C.\\n\"}]},\"finishReason\": \"STOP\"}],\"usageMetadata\": {\"promptTokenCount\": 155,\"candidatesTokenCount\": 13,\"totalTokenCount\": 168,\"trafficType\": \"ON_DEMAND\",\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 155}],\"candidatesTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 13}]},\"modelVersion\": \"gemini-2.5-pro\",\"createTime\": \"2026-03-12T18:06:30.882336Z\",\"responseId\": \"pgCzaaDtNeLT8eEP2-rQmAc\"}\r\n\r\n"
    headers:
      Content-Type:
      - text/event-stream
    status: 200 OK
    code: 200
    duration: 1.635674667s
