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-flash: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": "CrwBAdHtim/FP8KqTMIQ2DVD+5BAiIXjN0k+ERNVFbVGtenSKcR/G6MtoIcIE/2nxX2ysKRnwClCPnq5+/KJSzS8uFjvU0577RF+LrP7bRIXSNoufBoAJV0aKusqd1DtXQBZif76FBAMtgiG42NALcM0+Jxs2JaKOhFof+1GhNOi8Zbnj+S/YYkU34CvqANixzHQCFkLpFpHbOmsqfYaiMol4juPFMVOJg2w1WZMS/0mE36gP5C8i8p3B0njO9E="
 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": 201,
 63          "promptTokensDetails": [
 64            {
 65              "modality": "TEXT",
 66              "tokenCount": 125
 67            }
 68          ],
 69          "thoughtsTokenCount": 40
 70        },
 71        "modelVersion": "gemini-2.5-flash",
 72        "responseId": "WtH5aJy3I4K0nsEPiZnbmQs"
 73      }
 74    headers:
 75      Content-Type:
 76      - application/json; charset=UTF-8
 77    status: 200 OK
 78    code: 200
 79    duration: 1.046624584s
 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-flash: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 of 2 and 3 is 5. The product of 2 and 3 is 6."
110                }
111              ],
112              "role": "model"
113            },
114            "finishReason": "STOP",
115            "index": 0
116          }
117        ],
118        "usageMetadata": {
119          "promptTokenCount": 185,
120          "candidatesTokenCount": 24,
121          "totalTokenCount": 209,
122          "promptTokensDetails": [
123            {
124              "modality": "TEXT",
125              "tokenCount": 185
126            }
127          ]
128        },
129        "modelVersion": "gemini-2.5-flash",
130        "responseId": "W9H5aO2FIdbj7M8Pjvyl8QI"
131      }
132    headers:
133      Content-Type:
134      - application/json; charset=UTF-8
135    status: 200 OK
136    code: 200
137    duration: 1.09843275s