Why Gemini API Returns RECITATION as finish_reason — and How to Fix It
When Gemini API silently truncates responses with finish_reason RECITATION, the request technically succeeds with HTTP 200 — but the output is gone. Here's what actually triggers it and how to recover.
Why Gemini Deep Research Stops Mid-Way and How to Fix It
A practical guide to diagnosing and fixing Gemini Deep Research stopping before it finishes — covering query structure, language settings, browser tips, and retry strategies.
What to Do When Gemini Shows 'This Model Is Overloaded Right Now'
Seeing the 'This model is overloaded' message in Gemini? Learn why it happens, what you can do right now, and how to handle it gracefully in API applications with retry logic.
Gemini API PDF Input Troubleshooting: When Your Document Just Won't Read
When Gemini returns nothing for your PDF, hits the 20MB ceiling, or quietly skips pages, the symptom usually points to one of five very specific causes. Here's how to narrow it down quickly.
Why 'contents must alternate between user and model' Won't Go Away in the Gemini API — and How to Fix It
A focused guide to the Gemini API's 'contents must alternate between user and model' error — what really triggers it, why role names from OpenAI break it, and how to fix Function Calling and system_instruction pitfalls with copy-pasteable code.
Migrating to @google/genai: Seven Errors That Will Eat Your Afternoon
A field-tested guide to the seven errors you are most likely to hit when migrating from @google/generative-ai to @google/genai, with copy-paste fixes for Node.js and TypeScript codebases.
Why Gemini Says It Cannot See Your Image — A Practical Diagnosis Guide
If Gemini API replies 'I don't see an image' despite an attached file, the cause is almost always client-side. This guide walks through the four checks — mime_type, payload size, SDK version, and model selection — with copy-pasteable fixes.
Fixing 'Thoughts must be present in conversation history' in Gemini API: Thought Signatures in Multi-Turn Tool Calls
If you're hitting 'Thoughts must be present in conversation history when using thinking signature' in Gemini 2.5/3.x with multi-turn function calling, this guide walks through what's actually happening and how to fix it in five minutes — Python SDK, REST, and streaming all covered.
Gemini API Won't Connect Through Corporate Proxy or SSL Verification — A Troubleshooting Walkthrough
Your Gemini API script worked on your personal laptop, but the corporate Windows machine just hangs. Isolate proxy, SSL, and certificate issues layer by layer with working Python and Node.js examples.
Gemini API: GEMINI_API_KEY vs GOOGLE_API_KEY — Which One Should You Actually Use?
A practical, SDK-by-SDK guide to the GEMINI_API_KEY vs GOOGLE_API_KEY confusion. Covers precedence rules, the Vertex AI auto-switch, and four real-world traps with diagnostic snippets you can paste into a running app.
When Gemini Deep Research Returns Shallow Reports or Gets Stuck — A Practical Troubleshooting Guide
Why Gemini Deep Research sometimes produces thin reports or fails midway, and how to fix it through plan editing, source distribution, and PDF citation tuning.
When Gemini API Returns Mojibake: 4 Places to Check First
Mojibake in Gemini API responses almost never comes from the API itself — it lives in your client code. Walk through the four layers (HTTP decoding, streaming chunks, output encoding, surrogate pairs) where the corruption hides.