multi_tool.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: 826
 10    host: generativelanguage.googleapis.com
 11    body: |
 12      {"contents":[{"parts":[{"text":"Add and multiply the number 2 and 3"}],"role":"user"}],"generationConfig":{"maxOutputTokens":4000},"systemInstruction":{"parts":[{"text":"You are a helpful assistant. CRITICAL: Always use both add and multiply at the same time ALWAYS."}],"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"}}]}]}
 13    headers:
 14      Content-Type:
 15      - application/json
 16      User-Agent:
 17      - google-genai-sdk/1.29.0 gl-go/go1.25.1
 18    url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-pro: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                  "functionCall": {
 34                    "name": "add",
 35                    "args": {
 36                      "a": 2,
 37                      "b": 3
 38                    }
 39                  },
 40                  "thoughtSignature": "CsoFAdHtim+KBwj8VhhtWPwHBKgsH6dtIfSN4UcLG1h1wVl+dlvTMhaJM6YG/Kk6nkH9eFwqxegt0E36kNDU0Bpvqu9I8HBczBdrHD88KH0J1dfJFlmAOPrpNQo9wCsGFYPNcMxWd4daJem3NseOfDV+M5dsbhjGT8HQ+g8ZAe02xHjPnaogeq5ehnVDwK1iEqTkhZ01916zrjpqkCI0g4Shecz5CMLXO9KWGv4uGqTPPtw8qr+WEUdz86jVsmIfehGL3wZYvu87BoUfAdapQMJKhl+jHf1NUHGTIrXpx+4ytQuI966SvC36SRj5SgfMiFHYz6Whf/dtD6733w2DfOD1V8ks8yp/r8qNQkXjZHQUXypbEBnW/snrtbNuRRF+l0V1vz9FaKcHL5QhVwLDsH9H//hVmtFs+UA79DPSJL/kqtdhyAewQ15MOU4IpeoUhoofGSEaT7zmji5/Tr2RT3bTIW0o6itpcKKHft9+jYWkAzXO4JN97ceWwJbA/wRTF9DrqPERbUDxsAZdLfPjJRwm+Cg6sjtZA8sPhdlHKVJrnM6LnyAVr9jGtgjNRcJRa0M3IrP64JJ1JHp+6Cpdi/jU6JdJ0s/awYgDg5OpEX8STUSMjqOoWCVBOsLEFj0VzRpa3ABbidMYj/enEdZ4jCGAVGxrXLAYxWf5CO+DXN6flUMAPMcD+LkaMhdROa6+q9Oe0uCLOGL2DT2xZof2FWw0vks2DzkVHGr/QQVWNZQdhIEQinGrQBaqgfw3jtxnZs+LYWAD5s2Hev+2BY/MqPCw3/yxxTbU+FFoA44AkbfW6eKlCHvoXXVaijZ/+M0t4pAtEkqKzEnk5HVi7aXcSj2nNR4DvpHifDOQ7zOZBumDU6EHYnFT9nJh/GjvUUKK0daXTc9IPwfxyeIn/0hAExQlWIlErjHoHtk8UU9OwLcNIpy7bH+VYDaFxNkb"
 41                },
 42                {
 43                  "functionCall": {
 44                    "name": "multiply",
 45                    "args": {
 46                      "b": 3,
 47                      "a": 2
 48                    }
 49                  }
 50                }
 51              ],
 52              "role": "model"
 53            },
 54            "finishReason": "STOP",
 55            "index": 0,
 56            "finishMessage": "Model generated function call(s)."
 57          }
 58        ],
 59        "usageMetadata": {
 60          "promptTokenCount": 125,
 61          "candidatesTokenCount": 36,
 62          "totalTokenCount": 347,
 63          "promptTokensDetails": [
 64            {
 65              "modality": "TEXT",
 66              "tokenCount": 125
 67            }
 68          ],
 69          "thoughtsTokenCount": 186
 70        },
 71        "modelVersion": "gemini-2.5-pro",
 72        "responseId": "hNH5aIqjLcjz7M8PsbmN8AI"
 73      }
 74    headers:
 75      Content-Type:
 76      - application/json; charset=UTF-8
 77    status: 200 OK
 78    code: 200
 79    duration: 5.258761542s
 80- id: 1
 81  request:
 82    proto: HTTP/1.1
 83    proto_major: 1
 84    proto_minor: 1
 85    content_length: 1155
 86    host: generativelanguage.googleapis.com
 87    body: |
 88      {"contents":[{"parts":[{"text":"Add and multiply the number 2 and 3"}],"role":"user"},{"parts":[{"functionCall":{"args":{"a":2,"b":3},"id":"1","name":"add"}},{"functionCall":{"args":{"a":2,"b":3},"id":"2","name":"multiply"}}],"role":"model"},{"parts":[{"functionResponse":{"id":"1","name":"add","response":{"result":"5"}}},{"functionResponse":{"id":"2","name":"multiply","response":{"result":"6"}}}],"role":"user"}],"generationConfig":{"maxOutputTokens":4000},"systemInstruction":{"parts":[{"text":"You are a helpful assistant. CRITICAL: Always use both add and multiply at the same time ALWAYS."}],"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"}}]}]}
 89    headers:
 90      Content-Type:
 91      - application/json
 92      User-Agent:
 93      - google-genai-sdk/1.29.0 gl-go/go1.25.1
 94    url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-pro:generateContent
 95    method: POST
 96  response:
 97    proto: HTTP/2.0
 98    proto_major: 2
 99    proto_minor: 0
100    content_length: -1
101    uncompressed: true
102    body: |
103      {
104        "candidates": [
105          {
106            "content": {
107              "parts": [
108                {
109                  "text": "The sum is 5 and the product is 6.\n"
110                }
111              ],
112              "role": "model"
113            },
114            "finishReason": "STOP",
115            "index": 0
116          }
117        ],
118        "usageMetadata": {
119          "promptTokenCount": 185,
120          "candidatesTokenCount": 12,
121          "totalTokenCount": 197,
122          "promptTokensDetails": [
123            {
124              "modality": "TEXT",
125              "tokenCount": 185
126            }
127          ]
128        },
129        "modelVersion": "gemini-2.5-pro",
130        "responseId": "h9H5aKLELY7gnsEP56C2iAs"
131      }
132    headers:
133      Content-Type:
134      - application/json; charset=UTF-8
135    status: 200 OK
136    code: 200
137    duration: 3.176918083s