---
version: 2
interactions:
  - id: 0
    request:
        proto: HTTP/1.1
        proto_major: 1
        proto_minor: 1
        content_length: 809
        host: generativelanguage.googleapis.com
        body: |
            {"contents":[{"parts":[{"text":"Add and multiply the number 2 and 3"}],"role":"user"}],"generationConfig":{"maxOutputTokens":4000},"systemInstruction":{"parts":[{"text":"You are a helpful assistant. Always use both add and multiply at the same time."}],"role":"user"},"toolConfig":{"functionCallingConfig":{"mode":"AUTO"}},"tools":[{"functionDeclarations":[{"description":"Add two numbers","name":"add","parameters":{"properties":{"a":{"description":"first number","type":"INTEGER"},"b":{"description":"second number","type":"INTEGER"}},"required":["a","b"],"type":"OBJECT"}},{"description":"Multiply two numbers","name":"multiply","parameters":{"properties":{"a":{"description":"first number","type":"INTEGER"},"b":{"description":"second number","type":"INTEGER"}},"required":["a","b"],"type":"OBJECT"}}]}]}
        headers:
            Content-Type:
              - application/json
            User-Agent:
              - google-genai-sdk/1.23.0 gl-go/go1.25.1
        url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent
        method: POST
    response:
        proto: HTTP/2.0
        proto_major: 2
        proto_minor: 0
        content_length: -1
        uncompressed: true
        body: |
            {
              "candidates": [
                {
                  "content": {
                    "parts": [
                      {
                        "functionCall": {
                          "name": "add",
                          "args": {
                            "a": 2,
                            "b": 3
                          }
                        },
                        "thoughtSignature": "Cr4BAdHtim+cc4R/lZZLTviErIzS7PH5kRUo4UoV6HmeP9hVsd+EF2Q8ETzs2R7kYsXQJdQGwwNdgZiJDzl3lacLJGCY83hhVDlAa8WNRPC+xpZ6MvH2CbaV0MXk5kMmRwEmpzh/RkodNQ0EsSevnTJWpQ1oQxL8clBDKGAP+Xj4EeIXqdVoYK/b1bLl1kAn6CuDhQyWsP2F2A5fNR57Yg8qtAC3qniCWsvOQo8ol8kp2HH1buVko0MhE0bBGZg7Eg=="
                      },
                      {
                        "functionCall": {
                          "name": "multiply",
                          "args": {
                            "b": 3,
                            "a": 2
                          }
                        }
                      }
                    ],
                    "role": "model"
                  },
                  "finishReason": "STOP",
                  "index": 0
                }
              ],
              "usageMetadata": {
                "promptTokenCount": 121,
                "candidatesTokenCount": 36,
                "totalTokenCount": 196,
                "promptTokensDetails": [
                  {
                    "modality": "TEXT",
                    "tokenCount": 121
                  }
                ],
                "thoughtsTokenCount": 39
              },
              "modelVersion": "gemini-2.5-flash",
              "responseId": "X9XSaI6dKcy0vdIPx7qMAQ"
            }
        headers:
            Content-Type:
              - application/json; charset=UTF-8
        status: 200 OK
        code: 200
        duration: 868.600833ms
  - id: 1
    request:
        proto: HTTP/1.1
        proto_major: 1
        proto_minor: 1
        content_length: 1156
        host: generativelanguage.googleapis.com
        body: |
            {"contents":[{"parts":[{"text":"Add and multiply the number 2 and 3"}],"role":"user"},{"parts":[{"functionCall":{"args":{"a":2,"b":3},"id":"add","name":"add"}},{"functionCall":{"args":{"a":2,"b":3},"id":"multiply","name":"multiply"}}],"role":"model"},{"parts":[{"functionResponse":{"id":"add","name":"add","response":{"result":"5"}}},{"functionResponse":{"id":"multiply","name":"multiply","response":{"result":"6"}}}],"role":"user"}],"generationConfig":{"maxOutputTokens":4000},"systemInstruction":{"parts":[{"text":"You are a helpful assistant. Always use both add and multiply at the same time."}],"role":"user"},"toolConfig":{"functionCallingConfig":{"mode":"AUTO"}},"tools":[{"functionDeclarations":[{"description":"Add two numbers","name":"add","parameters":{"properties":{"a":{"description":"first number","type":"INTEGER"},"b":{"description":"second number","type":"INTEGER"}},"required":["a","b"],"type":"OBJECT"}},{"description":"Multiply two numbers","name":"multiply","parameters":{"properties":{"a":{"description":"first number","type":"INTEGER"},"b":{"description":"second number","type":"INTEGER"}},"required":["a","b"],"type":"OBJECT"}}]}]}
        headers:
            Content-Type:
              - application/json
            User-Agent:
              - google-genai-sdk/1.23.0 gl-go/go1.25.1
        url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent
        method: POST
    response:
        proto: HTTP/2.0
        proto_major: 2
        proto_minor: 0
        content_length: -1
        uncompressed: true
        body: |
            {
              "candidates": [
                {
                  "content": {
                    "parts": [
                      {
                        "text": "The sum of 2 and 3 is 5, and the product of 2 and 3 is 6."
                      }
                    ],
                    "role": "model"
                  },
                  "finishReason": "STOP",
                  "index": 0
                }
              ],
              "usageMetadata": {
                "promptTokenCount": 181,
                "candidatesTokenCount": 25,
                "totalTokenCount": 206,
                "promptTokensDetails": [
                  {
                    "modality": "TEXT",
                    "tokenCount": 181
                  }
                ]
              },
              "modelVersion": "gemini-2.5-flash",
              "responseId": "YNXSaPzoN7K5vdIPz5uz8QY"
            }
        headers:
            Content-Type:
              - application/json; charset=UTF-8
        status: 200 OK
        code: 200
        duration: 1.234568583s
