15,075
edits
(Created page with " {{Draft}} == Troubleshooting of Google Gemini API == === How to fix "Request contains an invalid argument" === Error message <pre> 無法提交提示 錯誤訊息:「Request contains an invalid argument.」 狀態:400 錯誤代碼:3 要求 ID:xxx </pre> Workaround solution: * If you upload a video file for API analysis, you might consider shortening the video duration, for example, using ffmpeg to reduce an hour-long video to half its length. This will help...") |
m (→How to resolve: Gemini Text-to-Image: 16:9 Aspect Ratio Not Working, Always Generates 1:1 Images) |
||
| (16 intermediate revisions by the same user not shown) | |||
| Line 2: | Line 2: | ||
{{Draft}} | {{Draft}} | ||
== Troubleshooting of Google Gemini | == Troubleshooting of Google Gemini == | ||
=== How to fix "Request contains an invalid argument" === | === How to fix "Request contains an invalid argument" === | ||
Error message | '''Error message''' | ||
<pre> | <pre> | ||
無法提交提示 | 無法提交提示 | ||
| Line 14: | Line 14: | ||
</pre> | </pre> | ||
Workaround solution: | '''Model Affected''': gemini-1.5-pro-preview-0409 or gemini-1.5-flash-preview-0514 | ||
'''Workaround solution:''' | |||
* If you upload a video file for API analysis, you might consider shortening the video duration, for example, using ffmpeg to reduce an hour-long video to half its length. This will help reduce the input token length. | * If you upload a video file for API analysis, you might consider shortening the video duration, for example, using ffmpeg to reduce an hour-long video to half its length. This will help reduce the input token length. | ||
=== How to fix: The File XXX is not in an ACTIVE state and usage is not allowed === | |||
After upload the video to Gemini API | |||
'''Error message''' | |||
<pre> | |||
Processing video... | |||
$response is: Array | |||
( | |||
[error] => Array | |||
( | |||
[code] => 400 | |||
[message] => The File XXX is not in an ACTIVE state and usage is not allowed. | |||
[status] => FAILED_PRECONDITION | |||
) | |||
) | |||
</pre> | |||
Solution | |||
* "You need to check its status and wait until it becomes ACTIVE" [https://stackoverflow.com/questions/79033795/google-generativeai-unable-to-load-video-files python - Google GenerativeAI unable to load video files - Stack Overflow] | |||
=== How to fix: Invalid or unsupported file uri === | |||
After upload the video, when I tried to analysis the video by the Gemini API | |||
'''Error message''' | |||
<pre> | |||
Uncaught Exception: API request failed with HTTP code 400 | |||
Response: { | |||
"error": { | |||
"code": 400, | |||
"message": "Invalid or unsupported file uri: ZGFkYjY0Njg0MDIyYmM3ZDc2YmIwY2Q5YzI4ZTllYzBhN2E1OGMzNDk2YWVkMmVlZWY0NDhlY2FhZGVjZTM1Ng==", | |||
"status": "INVALID_ARGUMENT" | |||
} | |||
} | |||
</pre> | |||
Solution | |||
* Please verify the format of your file URL. It should follow this pattern: | |||
`https://generativelanguage.googleapis.com/v1beta/files/XXXXX` | |||
=== How to fix: Invalid JSON payload received. Unknown name "responseSchema" at 'generation_config' === | |||
After upload the video, when I tried to analysis the video by the Gemini API | |||
'''Error message''' | |||
<pre> | |||
{ | |||
"error": { | |||
"code": 400, | |||
"message": "Invalid JSON payload received. Unknown name \"responseSchema\" at 'generation_config': Proto field is not repeating, cannot start list.", | |||
"status": "INVALID_ARGUMENT", | |||
"details": [ | |||
{ | |||
"@type": "type.googleapis.com/google.rpc.BadRequest", | |||
"fieldViolations": [ | |||
{ | |||
"field": "generation_config", | |||
"description": "Invalid JSON payload received. Unknown name \"responseSchema\" at 'generation_config': Proto field is not repeating, cannot start list." | |||
} | |||
] | |||
} | |||
] | |||
} | |||
} | |||
</pre> | |||
Solution | |||
* The parameter "responseSchema" could not be an empty array | |||
=== Resolving "Model not found for API version v1beta" Error with Gemini API === | |||
'''Error Details''' | |||
<pre> | |||
{ | |||
"error" : { | |||
"code" : 404, | |||
"message" : "models/gemini-2.0-flash-exp-image is not found for API version v1beta, or is not supported for generateContent. Call ListModels to see the list of available models and their supported methods.", | |||
"status" : "NOT_FOUND" | |||
} | |||
} | |||
</pre> | |||
'''Problematic Command''' | |||
<pre> | |||
curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash-exp-image:generateContent" \ | |||
-H 'Content-Type: application/json' \ | |||
-H 'X-goog-api-key: GEMINI_API_KEY' \ | |||
-X POST \ | |||
-d '{ | |||
"contents": [ | |||
{ | |||
"parts": [ | |||
{ | |||
"text": "Generate an image of a cute baby turtle in a 3d digital art style" | |||
} | |||
] | |||
} | |||
] | |||
}' | |||
</pre> | |||
'''Affected Model:''' gemini-2.0-flash-exp-image-generation | |||
'''Troubleshooting Steps:''' | |||
<pre> | |||
# Set your API key | |||
API_KEY="YOUR_API_KEY_HERE" | |||
echo "Retrieving available Gemini models..." | |||
curl -s "https://generativelanguage.googleapis.com/v1beta/models" \ | |||
-H "X-goog-api-key: $API_KEY" | jq -r '.models[] | select(.name | contains("gemini")) | {name: .name, supportedGenerationMethods: .supportedGenerationMethods}' | |||
</pre> | |||
Expected Output | |||
<pre> | |||
{ | |||
"name": "models/gemini-2.0-flash-exp-image-generation", | |||
"supportedGenerationMethods": [ | |||
"generateContent", | |||
"countTokens", | |||
"bidiGenerateContent" | |||
] | |||
} | |||
</pre> | |||
Issue Identified: Incorrect model name used. The valid model name is "models/gemini-2.0-flash-exp-image-generation", not "models/gemini-2.0-flash-exp-image" | |||
Fixed Command | |||
<pre> | |||
curl "https://generativelanguage.googleapis.com/v1beta/models/gemini-2.0-flash-exp-image-generation:generateContent" \ | |||
-H 'Content-Type: application/json' \ | |||
-H 'X-goog-api-key: GEMINI_API_KEY' \ | |||
-X POST \ | |||
-d '{ | |||
"contents": [ | |||
{ | |||
"parts": [ | |||
{ | |||
"text": "Generate an image of a cute baby turtle in a 3d digital art style" | |||
} | |||
] | |||
} | |||
] | |||
}' | |||
</pre> | |||
=== How to resolve: Gemini Text-to-Image: 16:9 Aspect Ratio Not Working, Always Generates 1:1 Images === | |||
'''Question:''' | |||
Has anyone experienced issues with Gemini's text-to-image function where you specify 16:9 aspect ratio but keep getting 1:1 square images? | |||
'''Problematic prompt''' for Models: 2.5 Pro & 2.5 Flash | |||
<pre> | |||
Generate a cute young turtle, 3D style | |||
Image size 16:9 | |||
</pre> | |||
<pre> | |||
Generate a cute young turtle, 3D style | |||
landscape orientation, wide format | |||
</pre> | |||
'''Answer:''' | |||
A Google Product Expert acknowledged this issue in official forums, describing it as a "known limitation." However, no timeline has been provided for when the functionality might be restored.<ref>Gemini Nano Banana users report 1:1 aspect ratio lock on image generation https://piunikaweb.com/2025/09/11/gemini-image-generator-aspect-ratio-problems/</ref><ref>What happened to imagegen quality?? - Gemini Apps Community https://support.google.com/gemini/thread/372012804?hl=en&msgid=372013964</ref> | |||
I've actually tested both Gemini 2.5 Pro and 2.5 Flash models, specifying image dimensions in the prompt (Image size: 16:9) or generating landscape orientation (landscape orientation, wide format), and both have the same problem. If you can make API calls, you might try using the API to call other models. | |||
If you want an online solution that works, you can try Google Whisk directly: https://labs.google/fx/tools/whisk/ | |||
The interface allows you to directly set three aspect ratios: square 1:1, portrait 9:16, and landscape 16:9. | |||
== Further reading == | |||
* [https://ai.google.dev/gemini-api/docs/troubleshooting?hl=zh-tw 疑難排解指南 | Google AI for Developers | Google for Developers] | |||
[[Category:Tools]] [[Category:Google]] | [[Category:Tools]] [[Category:Google]] | ||
[[Category:Generative AI]] | [[Category:Generative AI]] | ||