From 997539c041fce3a35973c35273c5757ed2ac0577 Mon Sep 17 00:00:00 2001 From: Andrey Nering Date: Tue, 9 Sep 2025 17:18:07 -0300 Subject: [PATCH] test: fix gemini test to actually use pro model --- providertests/builders_test.go | 2 +- .../testdata/TestSimple/google-gemini-2.5-pro.yaml | 6 +++--- .../testdata/TestStream/google-gemini-2.5-pro.yaml | 6 +++--- .../TestStreamWithTools/google-gemini-2.5-pro.yaml | 12 ++++++------ .../testdata/TestTool/google-gemini-2.5-pro.yaml | 12 ++++++------ 5 files changed, 19 insertions(+), 19 deletions(-) diff --git a/providertests/builders_test.go b/providertests/builders_test.go index 5276dd55c26c07ef54d464a15c090f94c7c95d35..6a6c7652dd6d27af686dab72bf1b2f2ac5c3c462 100644 --- a/providertests/builders_test.go +++ b/providertests/builders_test.go @@ -64,5 +64,5 @@ func builderGoogleGemini25Pro(r *recorder.Recorder) (ai.LanguageModel, error) { google.WithAPIKey(cmp.Or(os.Getenv("GEMINI_API_KEY"), "(missing)")), google.WithHTTPClient(&http.Client{Transport: r}), ) - return provider.LanguageModel("gemini-2.5-flash") + return provider.LanguageModel("gemini-2.5-pro") } diff --git a/providertests/testdata/TestSimple/google-gemini-2.5-pro.yaml b/providertests/testdata/TestSimple/google-gemini-2.5-pro.yaml index 75d4f9b9a190dee90fd2ed3db503fe44bb3dfcf2..46fc97e4c405d48b41dabfeb43dd21c271f5f68f 100644 --- a/providertests/testdata/TestSimple/google-gemini-2.5-pro.yaml +++ b/providertests/testdata/TestSimple/google-gemini-2.5-pro.yaml @@ -14,7 +14,7 @@ interactions: - application/json User-Agent: - google-genai-sdk/1.23.0 gl-go/go1.24.5 - url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent + url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-pro:generateContent method: POST response: proto: HTTP/2.0 @@ -22,10 +22,10 @@ interactions: proto_minor: 0 content_length: -1 uncompressed: true - body: "{\n \"candidates\": [\n {\n \"content\": {\n \"parts\": [\n {\n \"text\": \"Olá!\\n\\nIn Portuguese, \\\"hi\\\" can be translated as:\\n\\n* **Oi** (very common and informal)\\n* **Olá** (a bit more formal, but also widely used)\"\n }\n ],\n \"role\": \"model\"\n },\n \"finishReason\": \"STOP\",\n \"index\": 0\n }\n ],\n \"usageMetadata\": {\n \"promptTokenCount\": 11,\n \"candidatesTokenCount\": 43,\n \"totalTokenCount\": 77,\n \"promptTokensDetails\": [\n {\n \"modality\": \"TEXT\",\n \"tokenCount\": 11\n }\n ],\n \"thoughtsTokenCount\": 23\n },\n \"modelVersion\": \"gemini-2.5-flash\",\n \"responseId\": \"_Ui7aL_qEoCsz7IPmMvIqQ4\"\n}\n" + body: "{\n \"candidates\": [\n {\n \"content\": {\n \"parts\": [\n {\n \"text\": \"Of course!\\n\\nThe most common ways to say \\\"hi\\\" in Portuguese are:\\n\\n* **Oi** (more informal, like \\\"hi\\\")\\n* **Olá** (a bit more standard, like \\\"hello\\\")\\n\\nYou can also use greetings that depend on the time of day:\\n\\n* **Bom dia** (Good morning)\\n* **Boa tarde** (Good afternoon)\\n* **Boa noite** (Good evening / Good night)\"\n }\n ],\n \"role\": \"model\"\n },\n \"finishReason\": \"STOP\",\n \"index\": 0\n }\n ],\n \"usageMetadata\": {\n \"promptTokenCount\": 11,\n \"candidatesTokenCount\": 97,\n \"totalTokenCount\": 830,\n \"promptTokensDetails\": [\n {\n \"modality\": \"TEXT\",\n \"tokenCount\": 11\n }\n ],\n \"thoughtsTokenCount\": 722\n },\n \"modelVersion\": \"gemini-2.5-pro\",\n \"responseId\": \"ZovAaND9LPiK6dkPtrLnqQM\"\n}\n" headers: Content-Type: - application/json; charset=UTF-8 status: 200 OK code: 200 - duration: 870.503208ms + duration: 7.97170275s diff --git a/providertests/testdata/TestStream/google-gemini-2.5-pro.yaml b/providertests/testdata/TestStream/google-gemini-2.5-pro.yaml index 1e5db68a70ba3ec7672a047db128cb8f4e9a3df1..496d788e27ca4cc40223f3b7844ab6acd39ac797 100644 --- a/providertests/testdata/TestStream/google-gemini-2.5-pro.yaml +++ b/providertests/testdata/TestStream/google-gemini-2.5-pro.yaml @@ -17,17 +17,17 @@ interactions: - application/json User-Agent: - google-genai-sdk/1.23.0 gl-go/go1.24.5 - url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:streamGenerateContent?alt=sse + url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-pro:streamGenerateContent?alt=sse method: POST response: proto: HTTP/2.0 proto_major: 2 proto_minor: 0 content_length: -1 - body: "data: {\"candidates\": [{\"content\": {\"parts\": [{\"text\": \"Claro:\\n\\n1. **Uno**\\n2. **Dos**\\n3. **Tres**\"}],\"role\": \"model\"},\"finishReason\": \"STOP\",\"index\": 0}],\"usageMetadata\": {\"promptTokenCount\": 16,\"candidatesTokenCount\": 24,\"totalTokenCount\": 67,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 16}],\"thoughtsTokenCount\": 27},\"modelVersion\": \"gemini-2.5-flash\",\"responseId\": \"j13AaJWDJfeHqtsPv4Tk0QY\"}\r\n\r\n" + body: "data: {\"candidates\": [{\"content\": {\"parts\": [{\"text\": \"Of course! Here is how you count from 1 to 3 in Spanish:\\n\\n1. **Uno**\"}],\"role\": \"model\"},\"index\": 0}],\"usageMetadata\": {\"promptTokenCount\": 16,\"candidatesTokenCount\": 24,\"totalTokenCount\": 717,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 16}],\"thoughtsTokenCount\": 677},\"modelVersion\": \"gemini-2.5-pro\",\"responseId\": \"IIvAaJnINPn6qtsPoq_lgQM\"}\r\n\r\ndata: {\"candidates\": [{\"content\": {\"parts\": [{\"text\": \"\\n2. **Dos**\\n3. **Tres**\"}],\"role\": \"model\"},\"finishReason\": \"STOP\",\"index\": 0}],\"usageMetadata\": {\"promptTokenCount\": 16,\"candidatesTokenCount\": 37,\"totalTokenCount\": 730,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 16}],\"thoughtsTokenCount\": 677},\"modelVersion\": \"gemini-2.5-pro\",\"responseId\": \"IIvAaJnINPn6qtsPoq_lgQM\"}\r\n\r\n" headers: Content-Type: - text/event-stream status: 200 OK code: 200 - duration: 1.10918025s + duration: 6.777174625s diff --git a/providertests/testdata/TestStreamWithTools/google-gemini-2.5-pro.yaml b/providertests/testdata/TestStreamWithTools/google-gemini-2.5-pro.yaml index f75e4dc979b82ec0ce6912c41e54451afa171e44..798dd5c468af75db1d788a0de682b4553d931e8e 100644 --- a/providertests/testdata/TestStreamWithTools/google-gemini-2.5-pro.yaml +++ b/providertests/testdata/TestStreamWithTools/google-gemini-2.5-pro.yaml @@ -17,20 +17,20 @@ interactions: - application/json User-Agent: - google-genai-sdk/1.23.0 gl-go/go1.24.5 - url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:streamGenerateContent?alt=sse + url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-pro:streamGenerateContent?alt=sse method: POST response: proto: HTTP/2.0 proto_major: 2 proto_minor: 0 content_length: -1 - body: "data: {\"candidates\": [{\"content\": {\"parts\": [{\"functionCall\": {\"name\": \"add\",\"args\": {\"b\": 27,\"a\": 15}},\"thoughtSignature\": \"CiQB0e2Kb2msJaUJQD/ryh2cHxovqVsdNAi70C56akmtxGkHt6gKTgHR7Ypv5epJU/RMVeBdHVar6Hdi2Vu9XsjQXYE5ARa7Oa0KJJ3T05dS9wFHmvtNunRmMMFDd66JrL1YdDm8jb+/UtYT8lKvI3Edn2zgXQroAQHR7YpvVJArRl+sKCbpq+eYmufcPWNqP8yj7ur46fqm4fyQqs7cRtB9PoydN2i54A8Hp5T/xVZWHdb2XSVSzlR8huRTgyoF7/1xtCKLnHdx+J4TtzayU/Niwngm7cvV2Qxy5G4KyBDrWk4zG/7laQ6iNLjvieMuMyfXvZ+7QBCW4Yqnnp4EVtuvnHK97JYVGJ3D+gzUcCgZB0RlYaXjkMHRBRJmA4iu2YZUXsYoghGLsK6Gipy0ImnNnbCHDghyS2aYBdiuMnIXA4V08ique5D81pdRkNKXUSIrfIsIpaiOrLfwcyLdqKoKMwHR7YpvFbVQa/Sg4nXKQ3YLBd3WcT0SGEiCdhPS9r0l5i3jmnwtRBeHlQUmYW3J0TfABg==\"}],\"role\": \"model\"},\"finishReason\": \"STOP\",\"index\": 0}],\"usageMetadata\": {\"promptTokenCount\": 72,\"candidatesTokenCount\": 20,\"totalTokenCount\": 165,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 72}],\"thoughtsTokenCount\": 73},\"modelVersion\": \"gemini-2.5-flash\",\"responseId\": \"kl3AaMrLIMiBmtkPlZiKgAM\"}\r\n\r\n" + body: "data: {\"candidates\": [{\"content\": {\"parts\": [{\"functionCall\": {\"name\": \"add\",\"args\": {\"a\": 15,\"b\": 27}},\"thoughtSignature\": \"CiIB0e2Kb2WCop+Zqu2/Wo6HbI76LR2pExrZuWdDHWN79KUACnQB0e2Kb9aqRpL5wNsl3ORu+0vFV3BP9ABBM4oraVuU8vqS3k62JhArdaJRm8wDAAkRx0bvWiIEWlNz0hfm0sjhAi4V79Hi3m7kJWdPcKyO6vZCwO1Xw6P+NemV2a1ls5VhlprKhvZX+ZP2S3aGtdPV7sHEuAqCAQHR7YpvR7B6hLN+zKGJOCnZ6dSa4hYHPte45veVPuY4IruZswvSNohlrDVfe8pzyiGX4RuxG3OKCTUA9lkC/t12BftGbu8eaJP9vLDvuQzBs4NODZ7QsC+zyR9+NQkM73KoV+SUqMj4W7O0Og9o+rJH/MbTGPOOBgAzOZ7eLOJjrlUKbAHR7YpvwQRxZmUkUOfB0S+vaBHLZdLLjqkCwdKdpVB0WHuFbStrkzKCnpb98vsNkEi6PIE0dAHCURCnnvGYujsMGu+3RbcbdkNbiAgf6dvILgMwwv6gr1hA7bVISzmrLucP8g+I+1iPrxaJCApmAdHtim/+e4pHd8x0iWDawyOG+CHaAZXHTGnXFC0i/q/Gq2yPcQ1zTAWHlZks+VsvZQe6rJYmQF3avaPuHK5Hc96s1InPKAU6e6w9Km7rfMuL0SWPIVw2jsmLTedRD+BB9IqJad48CmgB0e2Kb9jEN3H5P5ruCj87j9c7UJsYlYtHxCECPRL1DfUalIuhp0eER8ZhDUkuDk2Uwfm4p4kv8gUNfRUfyER3AsJQIZY3xJlhb+oQazH9BANZL+cvsQLKQekx40VCA7ZZa2oT/QYJbAqPAQHR7YpvIcbAWSIb6eUrAFH3Gu7tM/4AHJ25PmNRBPia7b4Z0vPJbEqiVhdbMDoFRqP39NT2iP14PprWBynH7Ql1+dPVAkeOI0BNvmz9A8Ssbvh23A0FLe1K09CXawDQaauP0uI87y28stJfDg/ae3JSTn06ckKpR8VPeEQa3WUMC2mai1QLGE9g1Dg98EY1CksB0e2KbzpvS3ZWRUkD7sQ5El/UIKfAPUc1e+loSXZfglBhMpJ7m4oglP9KX+X3jdtVMoSJJk2HmSBFEArERm1OUQWRB17yoXXWWrM=\"}],\"role\": \"model\"},\"finishReason\": \"STOP\",\"index\": 0}],\"usageMetadata\": {\"promptTokenCount\": 72,\"candidatesTokenCount\": 20,\"totalTokenCount\": 247,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 72}],\"thoughtsTokenCount\": 155},\"modelVersion\": \"gemini-2.5-pro\",\"responseId\": \"J4vAaIuqI5yhqtsPrIq8qAM\"}\r\n\r\n" headers: Content-Type: - text/event-stream status: 200 OK code: 200 - duration: 1.165652542s + duration: 3.417542166s - id: 1 request: proto: HTTP/1.1 @@ -47,17 +47,17 @@ interactions: - application/json User-Agent: - google-genai-sdk/1.23.0 gl-go/go1.24.5 - url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:streamGenerateContent?alt=sse + url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-pro:streamGenerateContent?alt=sse method: POST response: proto: HTTP/2.0 proto_major: 2 proto_minor: 0 content_length: -1 - body: "data: {\"candidates\": [{\"content\": {\"parts\": [{\"text\": \"The sum of \"}],\"role\": \"model\"},\"index\": 0}],\"usageMetadata\": {\"promptTokenCount\": 106,\"candidatesTokenCount\": 3,\"totalTokenCount\": 109,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 106}]},\"modelVersion\": \"gemini-2.5-flash\",\"responseId\": \"k13AaK7JJcTMqtsP5IG68QQ\"}\r\n\r\ndata: {\"candidates\": [{\"content\": {\"parts\": [{\"text\": \"15 and 27 is 42.\"}],\"role\": \"model\"},\"finishReason\": \"STOP\",\"index\": 0}],\"usageMetadata\": {\"promptTokenCount\": 106,\"candidatesTokenCount\": 14,\"totalTokenCount\": 120,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 106}]},\"modelVersion\": \"gemini-2.5-flash\",\"responseId\": \"k13AaK7JJcTMqtsP5IG68QQ\"}\r\n\r\n" + body: "data: {\"candidates\": [{\"content\": {\"parts\": [{\"text\": \"OK\"}],\"role\": \"model\"},\"index\": 0}],\"usageMetadata\": {\"promptTokenCount\": 106,\"candidatesTokenCount\": 1,\"totalTokenCount\": 107,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 106}]},\"modelVersion\": \"gemini-2.5-pro\",\"responseId\": \"K4vAaLuEFdGuqtsPk7jA2QI\"}\r\n\r\ndata: {\"candidates\": [{\"content\": {\"parts\": [{\"text\": \". 15 + 27 = 42.\\n\"}],\"role\": \"model\"},\"finishReason\": \"STOP\",\"index\": 0}],\"usageMetadata\": {\"promptTokenCount\": 106,\"candidatesTokenCount\": 14,\"totalTokenCount\": 120,\"promptTokensDetails\": [{\"modality\": \"TEXT\",\"tokenCount\": 106}]},\"modelVersion\": \"gemini-2.5-pro\",\"responseId\": \"K4vAaLuEFdGuqtsPk7jA2QI\"}\r\n\r\n" headers: Content-Type: - text/event-stream status: 200 OK code: 200 - duration: 612.576833ms + duration: 2.166403083s diff --git a/providertests/testdata/TestTool/google-gemini-2.5-pro.yaml b/providertests/testdata/TestTool/google-gemini-2.5-pro.yaml index 14b5149ce9277d4fdfc47b709590e3adfb789ac5..70f8bf364924ac2d1e69daeae3db02afc543958e 100644 --- a/providertests/testdata/TestTool/google-gemini-2.5-pro.yaml +++ b/providertests/testdata/TestTool/google-gemini-2.5-pro.yaml @@ -14,7 +14,7 @@ interactions: - application/json User-Agent: - google-genai-sdk/1.23.0 gl-go/go1.24.5 - url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent + url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-pro:generateContent method: POST response: proto: HTTP/2.0 @@ -22,13 +22,13 @@ interactions: proto_minor: 0 content_length: -1 uncompressed: true - body: "{\n \"candidates\": [\n {\n \"content\": {\n \"parts\": [\n {\n \"functionCall\": {\n \"name\": \"weather\",\n \"args\": {\n \"location\": \"Florence\"\n }\n },\n \"thoughtSignature\": \"CuoBAVSoXO61VKMhhJ8LyVTCpi9Wo5Mak4xOizBZB9m9DlJngMKxObtT2VSXeZoBWIjXv7MfNZy0wldQImsslSMFK7HGKWc84fxnvkzNydv9MJSXSD+PcNKDSgPbthGCY4nt5PVxkM4DKYvW+k3YC+yTOHzKwr30SMig0YXpYQ7RUHOk5Saz8hwegYyWR/nVoGpkDq+1vQRB5vaU2RZbTlW77yFalUgAPv6uKgGArCKNbSCdhA+bOXRhAlsc8FwRF5iEzwYQSlkaACtp3MntyPr5AWHJageAtUjujoku9ZiObIX7hJ17gnaCY3NA\"\n }\n ],\n \"role\": \"model\"\n },\n \"finishReason\": \"STOP\",\n \"index\": 0\n }\n ],\n \"usageMetadata\": {\n \"promptTokenCount\": 52,\n \"candidatesTokenCount\": 13,\n \"totalTokenCount\": 111,\n \"promptTokensDetails\": [\n {\n \"modality\": \"TEXT\",\n \"tokenCount\": 52\n }\n ],\n \"thoughtsTokenCount\": 46\n },\n \"modelVersion\": \"gemini-2.5-flash\",\n \"responseId\": \"_0i7aODLOP7gz7IPpObKgAc\"\n}\n" + body: "{\n \"candidates\": [\n {\n \"content\": {\n \"parts\": [\n {\n \"functionCall\": {\n \"name\": \"weather\",\n \"args\": {\n \"location\": \"Florence\"\n }\n },\n \"thoughtSignature\": \"CqQEAdHtim+OnMkt9f1IrDaI9fiX/zDMQre89tEPHMT7hUY8LCgMhigmIoih3mEKqTCnk7F2prHKcg6UnerobTbNBTy4r6nFCvwRAs2DZkeZ9uK+xGqYRPGTEZaFS5oUlHoANUH+bSHA1kmwgjxy3c8VrZTwnLWyQAZw6pabJqrRJe/G5ADjNX/lMCDqM/rNRiqRaZqstv0K8QjwD4pz9rAgwP7BeTu9moPXzUwv9lY+7RP1J39DQnPjlRA++5h2F3yjIgO7NKiJp+aXCKPlCYb+o6uPskH1tlahXQdnNydrFhtHXMe7+5G76fXuR+vAxz9McjLbploeLqFZgPekHWOcY6EU0lcrm/39YILOy3iyAiu42ZbTfoOVdCsyttcfJPjyZ8U75fyIX/Z+45ky8sE1Nw7+cv4Frm7sOH63lSu3uA0ml3xkZSkJ3nZKtMSRCUBJOLfndMy2gAzeo2QNeLuUPksvg318ehZP48oTnDipo+Zr5575ycekNDLueQn3a7tPUw+uckudUzQFLzJiqs01qq0+1hhxGeHUHe19UcWBTZ/AbrJKNOhUA7TSU2tbza/bf7xGBvDpwxmlDPzvkiYH83nBPUUZUo+jf3FOn+lwI2PzOlJjN0GaGyIp/GY2tPrToElqZnfzsgxp/cBb7ZlbZIwP5Sw3uepfu3Y3RhFaZk4n9yotZWWITfyQFHRQT/fmkPyuYi2zPn3R+EEf9DL5J5oHCeE=\"\n }\n ],\n \"role\": \"model\"\n },\n \"finishReason\": \"STOP\",\n \"index\": 0\n }\n ],\n \"usageMetadata\": {\n \"promptTokenCount\": 52,\n \"candidatesTokenCount\": 13,\n \"totalTokenCount\": 186,\n \"promptTokensDetails\": [\n {\n \"modality\": \"TEXT\",\n \"tokenCount\": 52\n }\n ],\n \"thoughtsTokenCount\": 121\n },\n \"modelVersion\": \"gemini-2.5-pro\",\n \"responseId\": \"aIvAaM70OfuNmtkPjZGvoAM\"\n}\n" headers: Content-Type: - application/json; charset=UTF-8 status: 200 OK code: 200 - duration: 866.858875ms + duration: 2.122576125s - id: 1 request: proto: HTTP/1.1 @@ -42,7 +42,7 @@ interactions: - application/json User-Agent: - google-genai-sdk/1.23.0 gl-go/go1.24.5 - url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent + url: https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-pro:generateContent method: POST response: proto: HTTP/2.0 @@ -50,10 +50,10 @@ interactions: proto_minor: 0 content_length: -1 uncompressed: true - body: "{\n \"candidates\": [\n {\n \"content\": {\n \"parts\": [\n {\n \"text\": \"The weather in Florence is 40 C.\"\n }\n ],\n \"role\": \"model\"\n },\n \"finishReason\": \"STOP\",\n \"index\": 0\n }\n ],\n \"usageMetadata\": {\n \"promptTokenCount\": 80,\n \"candidatesTokenCount\": 10,\n \"totalTokenCount\": 90,\n \"promptTokensDetails\": [\n {\n \"modality\": \"TEXT\",\n \"tokenCount\": 80\n }\n ]\n },\n \"modelVersion\": \"gemini-2.5-flash\",\n \"responseId\": \"AEm7aKbpJdDVz7IPlO776Ak\"\n}\n" + body: "{\n \"candidates\": [\n {\n \"content\": {\n \"parts\": [\n {\n \"text\": \"The weather in Florence is 40 C. \\n\"\n }\n ],\n \"role\": \"model\"\n },\n \"finishReason\": \"STOP\",\n \"index\": 0\n }\n ],\n \"usageMetadata\": {\n \"promptTokenCount\": 80,\n \"candidatesTokenCount\": 10,\n \"totalTokenCount\": 90,\n \"promptTokensDetails\": [\n {\n \"modality\": \"TEXT\",\n \"tokenCount\": 80\n }\n ]\n },\n \"modelVersion\": \"gemini-2.5-pro\",\n \"responseId\": \"aovAaM-PLLT4qtsPs9jkuQQ\"\n}\n" headers: Content-Type: - application/json; charset=UTF-8 status: 200 OK code: 200 - duration: 688.650291ms + duration: 1.854787917s