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      - Charm-Fantasy/0.12.2 (https://charm.land/fantasy)
 18      - google-genai-sdk/1.49.0 gl-go/go1.26.1
 19    url: https://generativelanguage.googleapis.com/v1beta/models/gemini-3-pro-preview:generateContent
 20    method: POST
 21  response:
 22    proto: HTTP/2.0
 23    proto_major: 2
 24    proto_minor: 0
 25    content_length: -1
 26    uncompressed: true
 27    body: |
 28      {
 29        "candidates": [
 30          {
 31            "content": {
 32              "parts": [
 33                {
 34                  "functionCall": {
 35                    "name": "add",
 36                    "args": {
 37                      "b": 3,
 38                      "a": 2
 39                    },
 40                    "id": "wxvlv0tv"
 41                  },
 42                  "thoughtSignature": "Es8KCswKAb4+9vtrVmO0plQ64ERt0uQKzZonNy53D/+nFxRO1TcWH0HSxBilFjTw//xDeRj7pCIvNED3q2jhDQWHNRM4vTLAqKcGwlHjkJSQn88aU1H1O7fAsu0zLvlF1Jfoy/emXhw+YbBcYCUzZ32L+EFJNP5qVw9l97ZNqPk0vq4ZpCUMKwdWWhd0eZ4kQTPckw9e69vp9CSaf9lWlThy/KrmtxWLHijFLKQaR112BwWN/7TyzAdesZB3z5r7Cnj16o2HxJUzB+GBD1UFUNiQEVWiU4SPv1fHdR9ME6TSBDgRceBJE/AbBHVO2IDrGNxHXbrJR4GUGX+komQ7SJTD/hkF1BMnOIa2GSKf99Nv8O1jMJbMF4hUnUbZuWlvycu0CWGqx6A3Qq3DvXkX7TDXV6u6y+mA5Aox5404QzKLf1bMI6IS4zU/Zd/0AhY/tBaJgPtDTnL7Gz5Nvmtd7/7DUub+0IRSU657IZESa/UnN8A9yk+mGjE7tdfESZ2f5hMhAKAjAKBiec+H/LBI3O9ptR4wy6NzdTtqHGXJObyMkBzqPAmUDb6msoBMD0KJsH7ZYeLHCF5RPWpC+O1mpF3cK9sHHaAXkN2GjtMDc7swar3eq/JBoZMoo6N38Mwc5+oHFJlT0TcSrFaJTEeSefdIuL/hsxscQPVUY5KidWX9dZ9QQiSBxf+SgUpF+w3R++LDtcld2VW+e8bSIQwICX/PfNNRUGQ619IY5Eu53mReGV+pojgiJqDiFtLVONFJMY0oToEWZrjdkoZVRuTBXMsGAgAOQCIcmexfqs2NuzFd6vlCyGP/Lwy8ZEbkkaK2QFoSkvInsnAfCCAKt35n/SBW5tQlhlw393lsX8lRNQSL+2jQa40So32IwCE/wt6wD+6FhZWP7BKI83phPqKqz7Z9+lmbfNQPq4wRtegwhYtQTeenN69rWwB1z+zap+gRT9odg3bZaP0Do7tsIiy0Bc0rieT0C7gMWIp57wtaXTcVirLCscztBvlOlI7ZemzNWFo//HQaHBCCR4Jk5wWjyVu5sKnAHwSlmQ8tpShd3s+RWfUr2YFlf8DNCThOYy4U5iw5/TJAw2WwlpQYDPGAZpXdWmAgtjTb04QfvWJL/RX73+2Cviv3YNqWnoUln+Ppw7qSXfOhRVmVAbYLzBjxg8A/KM3rA5pSBv3bV2+9DnQHqT4xx3g+elvVM4sOvnJnfETSNUjKRG3xAnsl4rzsOJgnEVh633IiYT6TMJHIJuKforsrljN4sttp4kIafrYT9zoHXfyJLsyNf6Uj0+OshTUHYs/Suucb+ZH+HAnd9SUodCXXZtInzeo6LEm68kptq+u9QiDCXt1TkredXyNLIO6vPCUftWciCgebZ8tZ0Do7bfK0DOT8YPFSQ2Vxtb58p4gpWXVYLCb2pZ61sMkvXiKsztCPCAEJ4OTsYmeqaf1Et4NzAI0zaSAy4N4NWQBt4RUdoNNCX/WQ9gXGljw2+sERTAnhl8NzLP0+CzbMYnd/ACtHHxG2CgzHNWs7dXarz1xYzdLbQRYAoNrWQPtPacsKxt5iiYiqoyIg5w5+zgQEoUWt6CQKv9SnxFVu/jQNGB6XNJSIEhL5Wl1JkOoMnBsfyuvT4fyIT1KBBA2DZTJW5z6wspBFiRuSlBMuA04tAInhzNAeajxpitzm0czJHC8V0bMwiU/sIoJeYJ1omraxgtak7bqo7jvcp9+oksAqsqYVosaX2Shn0BwQIsfCScwKc8T8yYU3doqobL8K74gIdATos5hAHXJ3hEpabgiqCF+C+ef39KnoFtOHyqmWOn6a"
 43                },
 44                {
 45                  "functionCall": {
 46                    "name": "multiply",
 47                    "args": {
 48                      "b": 3,
 49                      "a": 2
 50                    },
 51                    "id": "75p2opbh"
 52                  }
 53                }
 54              ],
 55              "role": "model"
 56            },
 57            "finishReason": "STOP",
 58            "index": 0,
 59            "finishMessage": "Model generated function call(s)."
 60          }
 61        ],
 62        "usageMetadata": {
 63          "promptTokenCount": 299,
 64          "candidatesTokenCount": 32,
 65          "totalTokenCount": 826,
 66          "promptTokensDetails": [
 67            {
 68              "modality": "TEXT",
 69              "tokenCount": 299
 70            }
 71          ],
 72          "thoughtsTokenCount": 495
 73        },
 74        "modelVersion": "gemini-3.1-pro-preview",
 75        "responseId": "SgCzaaS4CdHVz7IPuaO42Qk"
 76      }
 77    headers:
 78      Content-Type:
 79      - application/json; charset=UTF-8
 80    status: 200 OK
 81    code: 200
 82    duration: 8.086101416s
 83- id: 1
 84  request:
 85    proto: HTTP/1.1
 86    proto_major: 1
 87    proto_minor: 1
 88    content_length: 3021
 89    host: generativelanguage.googleapis.com
 90    body: |
 91      {"contents":[{"parts":[{"text":"Add and multiply the number 2 and 3"}],"role":"user"},{"parts":[{"functionCall":{"args":{"a":2,"b":3},"id":"wxvlv0tv","name":"add"},"thoughtSignature":"Es8KCswKAb4+9vtrVmO0plQ64ERt0uQKzZonNy53D/+nFxRO1TcWH0HSxBilFjTw//xDeRj7pCIvNED3q2jhDQWHNRM4vTLAqKcGwlHjkJSQn88aU1H1O7fAsu0zLvlF1Jfoy/emXhw+YbBcYCUzZ32L+EFJNP5qVw9l97ZNqPk0vq4ZpCUMKwdWWhd0eZ4kQTPckw9e69vp9CSaf9lWlThy/KrmtxWLHijFLKQaR112BwWN/7TyzAdesZB3z5r7Cnj16o2HxJUzB+GBD1UFUNiQEVWiU4SPv1fHdR9ME6TSBDgRceBJE/AbBHVO2IDrGNxHXbrJR4GUGX+komQ7SJTD/hkF1BMnOIa2GSKf99Nv8O1jMJbMF4hUnUbZuWlvycu0CWGqx6A3Qq3DvXkX7TDXV6u6y+mA5Aox5404QzKLf1bMI6IS4zU/Zd/0AhY/tBaJgPtDTnL7Gz5Nvmtd7/7DUub+0IRSU657IZESa/UnN8A9yk+mGjE7tdfESZ2f5hMhAKAjAKBiec+H/LBI3O9ptR4wy6NzdTtqHGXJObyMkBzqPAmUDb6msoBMD0KJsH7ZYeLHCF5RPWpC+O1mpF3cK9sHHaAXkN2GjtMDc7swar3eq/JBoZMoo6N38Mwc5+oHFJlT0TcSrFaJTEeSefdIuL/hsxscQPVUY5KidWX9dZ9QQiSBxf+SgUpF+w3R++LDtcld2VW+e8bSIQwICX/PfNNRUGQ619IY5Eu53mReGV+pojgiJqDiFtLVONFJMY0oToEWZrjdkoZVRuTBXMsGAgAOQCIcmexfqs2NuzFd6vlCyGP/Lwy8ZEbkkaK2QFoSkvInsnAfCCAKt35n/SBW5tQlhlw393lsX8lRNQSL+2jQa40So32IwCE/wt6wD+6FhZWP7BKI83phPqKqz7Z9+lmbfNQPq4wRtegwhYtQTeenN69rWwB1z+zap+gRT9odg3bZaP0Do7tsIiy0Bc0rieT0C7gMWIp57wtaXTcVirLCscztBvlOlI7ZemzNWFo//HQaHBCCR4Jk5wWjyVu5sKnAHwSlmQ8tpShd3s+RWfUr2YFlf8DNCThOYy4U5iw5/TJAw2WwlpQYDPGAZpXdWmAgtjTb04QfvWJL/RX73+2Cviv3YNqWnoUln+Ppw7qSXfOhRVmVAbYLzBjxg8A/KM3rA5pSBv3bV2+9DnQHqT4xx3g+elvVM4sOvnJnfETSNUjKRG3xAnsl4rzsOJgnEVh633IiYT6TMJHIJuKforsrljN4sttp4kIafrYT9zoHXfyJLsyNf6Uj0+OshTUHYs/Suucb+ZH+HAnd9SUodCXXZtInzeo6LEm68kptq+u9QiDCXt1TkredXyNLIO6vPCUftWciCgebZ8tZ0Do7bfK0DOT8YPFSQ2Vxtb58p4gpWXVYLCb2pZ61sMkvXiKsztCPCAEJ4OTsYmeqaf1Et4NzAI0zaSAy4N4NWQBt4RUdoNNCX/WQ9gXGljw2+sERTAnhl8NzLP0+CzbMYnd/ACtHHxG2CgzHNWs7dXarz1xYzdLbQRYAoNrWQPtPacsKxt5iiYiqoyIg5w5+zgQEoUWt6CQKv9SnxFVu/jQNGB6XNJSIEhL5Wl1JkOoMnBsfyuvT4fyIT1KBBA2DZTJW5z6wspBFiRuSlBMuA04tAInhzNAeajxpitzm0czJHC8V0bMwiU/sIoJeYJ1omraxgtak7bqo7jvcp9+oksAqsqYVosaX2Shn0BwQIsfCScwKc8T8yYU3doqobL8K74gIdATos5hAHXJ3hEpabgiqCF+C+ef39KnoFtOHyqmWOn6a"},{"functionCall":{"args":{"a":2,"b":3},"id":"75p2opbh","name":"multiply"}}],"role":"model"},{"parts":[{"functionResponse":{"id":"wxvlv0tv","name":"add","response":{"result":"5"}}},{"functionResponse":{"id":"75p2opbh","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"}}]}]}
 92    headers:
 93      Content-Type:
 94      - application/json
 95      User-Agent:
 96      - Charm-Fantasy/0.12.2 (https://charm.land/fantasy)
 97      - google-genai-sdk/1.49.0 gl-go/go1.26.1
 98    url: https://generativelanguage.googleapis.com/v1beta/models/gemini-3-pro-preview:generateContent
 99    method: POST
100  response:
101    proto: HTTP/2.0
102    proto_major: 2
103    proto_minor: 0
104    content_length: -1
105    uncompressed: true
106    body: |
107      {
108        "candidates": [
109          {
110            "content": {
111              "parts": [
112                {
113                  "text": "The sum of 2 and 3 is 5, and their product is 6.",
114                  "thoughtSignature": "ErUCCrICAb4+9vuEA8Ej10Oo5t9ABqd1EGoXsM3Jd7bei8s8ro77g6l2Muq48QXLL3g9AMIqkVBxElsR5fiyzjmvX8jI3TedXqfYhj4qpkcynRdfqjvQfgwlRgzrXVbG/6EY4LtQcvJmWxL9OZ+E4jJYQCH/rewB85WvGm9W45tUuwUnpOruUtROi1Csr22iXy2kBYbUQLCvyhwDv8MDPL3okdhVApB/CXs7YZj0se1dYXcdkdWcjib56i78sBIirruhhRTIgMtkoqQfKjWmcLH7kRfDhCaVChscgxNjNp+72xfav+AxUMtfYXAwCevchm5fq7YcgjCP5nBTRtZBGxSIm1t1G/x4idWk8/EnTZBVfpPpYJGwRPM8T+YOdDQAuK8rsNu7fjY0VAA8dCgKyrtpTUeGBOM1"
115                }
116              ],
117              "role": "model"
118            },
119            "finishReason": "STOP",
120            "index": 0
121          }
122        ],
123        "usageMetadata": {
124          "promptTokenCount": 606,
125          "candidatesTokenCount": 19,
126          "totalTokenCount": 703,
127          "promptTokensDetails": [
128            {
129              "modality": "TEXT",
130              "tokenCount": 606
131            }
132          ],
133          "thoughtsTokenCount": 78
134        },
135        "modelVersion": "gemini-3.1-pro-preview",
136        "responseId": "TACzac_zK8Dtz7IPxu3IsAs"
137      }
138    headers:
139      Content-Type:
140      - application/json; charset=UTF-8
141    status: 200 OK
142    code: 200
143    duration: 2.561874375s