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-2.5-pro: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                  },
 41                  "thoughtSignature": "CrIJAb4+9vsevRLWMg/DbSUUnH+a5Hr8Vg5V+4qx3ROznUuRtiK4FNftUpY7Z9qgj1VA1q0/8pOlUG379d3XIV9dn8iAI0xwobN3c861BdSYjwL1Gvsbx5SKTDbDWuLTReZOPWjQQsuEoC5Y7s5kWt9MWvnmdbS27H6Sb3Q1mWyqncoDsztgRo2lLdnDHqZkxfaYTEmVpxzHqgigcrkdfSh+hHS9EAOfZKWsE9+XynQsbHPUXmpae/i5AkL873FDn5B0WuybY8mKTShyZ8rdv03C/DUpTarD7LVuLGNy3qxWGzxjyyGMlM5s0dZ+LTYrHCqseEKDXgnI/gR9gCjChgvOI91wuU4AxJtMrexhQe3acRF6GswPKhhmmnM23+0MIv7pj9gQ8NC1CJ8fp7lOtxM09Gb8agpSMOxbGulUsTWdHnT8XVS4u8VLygIWgQUBZryES0Cs+YwnUCZvrFTWwy/KnkoZkcLw9owlHMnGO6uNGdm3DiN4ISAux1AdwVzCQ2VshLXMfDk4Q2ZSIRtcyEwdth1G+lBVX8LhQ6LETNiaFVbwbIwMfVlUnrHvcMQ5fxccLzyzE/BFiaMcTun5juo8+DTKb/j0hBEu+z0HMywhBjck1lV+5DCRBuJIE5XPCjh2vE+wHjNLC9h0PAhNEAJ6wYp+27jS362Is7BwuFe6I7kDTkhtPrtkrSHrG5ANIkb/XHw//lfsErV1/4I+VZLmVwgU2rFXyuIVIDngmJ4c4HlDkhsgTH1/Xmihd9SDwD/Av3HkbrdOQ9+L3tsZt3r5VD1BVsG/IcQ00rR695L9G2eP1T2kmSctDr7vYMPNZsdeKUiPupqRr/e45tW3HqbDAydK1C4zYfJnyAlBtiuoIoFEyr1l2mnPPkJU+jv8EhEHpZcpCyhpDCvUno7D2wGA0JDlc8ewN5tXgLRulIX8fjG1CoztJCZJb6otUm5SITdo3jZ/NCN8TwzGAkOb3tcI/P9zaztVqr4mwNYBPGuelHBBE6BwZQYP31rWGRBNLXdZb4NUoRq5ijObMAN6kjV0tPTt7uoRNgAT4gPD2+xXsU7OvKlCG62jFS230vJ6ZiO63hPTG5LYYWlcoYLE/Gp0NpeZNmRo7Wwpat2UGJ9GqCEaRXMeWvBnGk2SzvM7lVlVtXRfdrsHwPrbo3WGwxU+P3FuldzoWYmkbUwN7P6Ib2uFO4FzdsOy16G/fNY095GOaTz+XYYVMnQx8nFOLke25RCz82ITeAK4dwao+fN0Pn7eFRyFXr5IYGe/gbg5mH+n39enkoBKkKDOes3RsCeFmabm8bbltIq1sLchA1TqZ0JJnVHqTq2syQLWbo40s6Yiz5yOT8mYnIjSsUeJaP244zbUckJudOAAhOoOUJJyTH69Ns5iVg3//6mMsHnbwfDIRhsoujKqnd/YIYoZgQefGvMKsbNRGF3LASN2v52fFOXo5e95j5HU8cvuMGabw0wjcQlmWaQ40FTJ1lQFjCF/KTi5ZoHT6kCmUpzgae5sIKubNIs3x24Y9rwwjydTNYgjeICeqky0JirHP+lYZQai6D5vVu/nLMFCnqpbt4eSsdFz/YV8Ok7vOEMLRX7vyhldEnk="
 42                },
 43                {
 44                  "functionCall": {
 45                    "name": "multiply",
 46                    "args": {
 47                      "b": 3,
 48                      "a": 2
 49                    }
 50                  }
 51                }
 52              ],
 53              "role": "model"
 54            },
 55            "finishReason": "STOP",
 56            "index": 0,
 57            "finishMessage": "Model generated function call(s)."
 58          }
 59        ],
 60        "usageMetadata": {
 61          "promptTokenCount": 125,
 62          "candidatesTokenCount": 36,
 63          "totalTokenCount": 503,
 64          "promptTokensDetails": [
 65            {
 66              "modality": "TEXT",
 67              "tokenCount": 125
 68            }
 69          ],
 70          "thoughtsTokenCount": 342
 71        },
 72        "modelVersion": "gemini-2.5-pro",
 73        "responseId": "CiKzadPvHanUz7IPhsKmmQw"
 74      }
 75    headers:
 76      Content-Type:
 77      - application/json; charset=UTF-8
 78    status: 200 OK
 79    code: 200
 80    duration: 4.354329875s
 81- id: 1
 82  request:
 83    proto: HTTP/1.1
 84    proto_major: 1
 85    proto_minor: 1
 86    content_length: 2785
 87    host: generativelanguage.googleapis.com
 88    body: |
 89      {"contents":[{"parts":[{"text":"Add and multiply the number 2 and 3"}],"role":"user"},{"parts":[{"functionCall":{"args":{"a":2,"b":3},"id":"1","name":"add"},"thoughtSignature":"CrIJAb4+9vsevRLWMg/DbSUUnH+a5Hr8Vg5V+4qx3ROznUuRtiK4FNftUpY7Z9qgj1VA1q0/8pOlUG379d3XIV9dn8iAI0xwobN3c861BdSYjwL1Gvsbx5SKTDbDWuLTReZOPWjQQsuEoC5Y7s5kWt9MWvnmdbS27H6Sb3Q1mWyqncoDsztgRo2lLdnDHqZkxfaYTEmVpxzHqgigcrkdfSh+hHS9EAOfZKWsE9+XynQsbHPUXmpae/i5AkL873FDn5B0WuybY8mKTShyZ8rdv03C/DUpTarD7LVuLGNy3qxWGzxjyyGMlM5s0dZ+LTYrHCqseEKDXgnI/gR9gCjChgvOI91wuU4AxJtMrexhQe3acRF6GswPKhhmmnM23+0MIv7pj9gQ8NC1CJ8fp7lOtxM09Gb8agpSMOxbGulUsTWdHnT8XVS4u8VLygIWgQUBZryES0Cs+YwnUCZvrFTWwy/KnkoZkcLw9owlHMnGO6uNGdm3DiN4ISAux1AdwVzCQ2VshLXMfDk4Q2ZSIRtcyEwdth1G+lBVX8LhQ6LETNiaFVbwbIwMfVlUnrHvcMQ5fxccLzyzE/BFiaMcTun5juo8+DTKb/j0hBEu+z0HMywhBjck1lV+5DCRBuJIE5XPCjh2vE+wHjNLC9h0PAhNEAJ6wYp+27jS362Is7BwuFe6I7kDTkhtPrtkrSHrG5ANIkb/XHw//lfsErV1/4I+VZLmVwgU2rFXyuIVIDngmJ4c4HlDkhsgTH1/Xmihd9SDwD/Av3HkbrdOQ9+L3tsZt3r5VD1BVsG/IcQ00rR695L9G2eP1T2kmSctDr7vYMPNZsdeKUiPupqRr/e45tW3HqbDAydK1C4zYfJnyAlBtiuoIoFEyr1l2mnPPkJU+jv8EhEHpZcpCyhpDCvUno7D2wGA0JDlc8ewN5tXgLRulIX8fjG1CoztJCZJb6otUm5SITdo3jZ/NCN8TwzGAkOb3tcI/P9zaztVqr4mwNYBPGuelHBBE6BwZQYP31rWGRBNLXdZb4NUoRq5ijObMAN6kjV0tPTt7uoRNgAT4gPD2+xXsU7OvKlCG62jFS230vJ6ZiO63hPTG5LYYWlcoYLE/Gp0NpeZNmRo7Wwpat2UGJ9GqCEaRXMeWvBnGk2SzvM7lVlVtXRfdrsHwPrbo3WGwxU+P3FuldzoWYmkbUwN7P6Ib2uFO4FzdsOy16G/fNY095GOaTz+XYYVMnQx8nFOLke25RCz82ITeAK4dwao+fN0Pn7eFRyFXr5IYGe/gbg5mH+n39enkoBKkKDOes3RsCeFmabm8bbltIq1sLchA1TqZ0JJnVHqTq2syQLWbo40s6Yiz5yOT8mYnIjSsUeJaP244zbUckJudOAAhOoOUJJyTH69Ns5iVg3//6mMsHnbwfDIRhsoujKqnd/YIYoZgQefGvMKsbNRGF3LASN2v52fFOXo5e95j5HU8cvuMGabw0wjcQlmWaQ40FTJ1lQFjCF/KTi5ZoHT6kCmUpzgae5sIKubNIs3x24Y9rwwjydTNYgjeICeqky0JirHP+lYZQai6D5vVu/nLMFCnqpbt4eSsdFz/YV8Ok7vOEMLRX7vyhldEnk="},{"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"}}]}]}
 90    headers:
 91      Content-Type:
 92      - application/json
 93      User-Agent:
 94      - Charm-Fantasy/0.12.2 (https://charm.land/fantasy)
 95      - google-genai-sdk/1.49.0 gl-go/go1.26.1
 96    url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-pro:generateContent
 97    method: POST
 98  response:
 99    proto: HTTP/2.0
100    proto_major: 2
101    proto_minor: 0
102    content_length: -1
103    uncompressed: true
104    body: |
105      {
106        "candidates": [
107          {
108            "content": {
109              "parts": [
110                {
111                  "text": "The sum of 2 and 3 is 5, and the product is 6."
112                }
113              ],
114              "role": "model"
115            },
116            "finishReason": "STOP",
117            "index": 0
118          }
119        ],
120        "usageMetadata": {
121          "promptTokenCount": 185,
122          "candidatesTokenCount": 19,
123          "totalTokenCount": 204,
124          "promptTokensDetails": [
125            {
126              "modality": "TEXT",
127              "tokenCount": 185
128            }
129          ]
130        },
131        "modelVersion": "gemini-2.5-pro",
132        "responseId": "CyKzaY_zNemtz7IP9PSe8Ak"
133      }
134    headers:
135      Content-Type:
136      - application/json; charset=UTF-8
137    status: 200 OK
138    code: 200
139    duration: 1.340707083s