RU

openai-gemini: An OpenAI-compatible API on top of free Gemini

Published: 2026-11-06 · Author: AI Release · @ai_release1
openai-gemini: An OpenAI-compatible API on top of free Gemini

⚡ The gist in 5 seconds

🔍 What happened

On GitHub sits jannybloug/openai-gemini: one commit, a README, api and src folders, configs vercel.json, netlify.toml, wrangler.toml, plus separate entry files for Node, Deno, and Bun. The task is stated plainly: the Gemini API has a free tier with generous limits, but many tools only speak the OpenAI API dialect. The proxy bridges the gap and gives you "your own OpenAI-compatible endpoint for free."

Deployment is a single command: vercel deploy, netlify deploy, or wrangler deploy. You can also paste the contents of src/worker.mjs into the Cloudflare playground. Locally, vercel dev, netlify dev, and npm run start work, with start:deno and start:bun variants. In your client, look for a field like "OpenAI proxy" (often hidden in Advanced settings) or set OPENAI_BASE_URL=https://your-proxy.vercel.app/v1. Model names are filtered by the gemini-, gemma-, and models/ prefixes; anything else falls back to defaults — gemini-flash-latest for chat/completions, gemini-embedding-001 for embeddings. Web search is enabled with a :search suffix in the model name, images and audio go through inlineData, and thinking_config is passed via the extra_body field.

🧠 Our take

Why now is clear. The OpenAI-compatible format has become the de facto integration language for the entire zoo of clients, from chat frontends to CLI utilities. And Gemini has a free tier. A person with a Google key and a GitHub account gets a bridge between them in an evening. Our assessment: this isn't a product, it's an adapter, and its value is exactly that — as long as the specs match.

What it changes for the individual user is quite a bit. A tool that only supports the OpenAI API is no longer a dead end: you feed it your own base URL and work on the free tier. You just pay not with money but with your key and rate limits, plus added latency on every request: client → your serverless instance → Gemini. How many milliseconds exactly — the README doesn't contain a single number.

Who wins: DIYers and authors of small utilities who can't be bothered to rewrite their client for the Gemini API. Who loses is a philosophical question. The more proxies like this exist, the weaker the lock-in to OpenAI and the less reason to pay for a subscription just for compatibility. At the same time, the habit of treating the free tier as your primary provider grows stronger — and it lives by Google's rules, not yours.

⚠️ What we don't know

Quite a lot, to put it mildly. The repo has one commit, no tests, no latency measurements, no data on streaming, retries, or behavior on a 429 error. The word "generous" regarding limits is a phrase from the README, not a verified figure in requests per minute. You enter your Gemini key in the client, and it passes through the instance you deployed — so only trust your own deployment, not a public proxy from the internet. Separately: the README suggests obtaining a key via VPN in regions where it isn't issued — that's a conversation about Google's terms of use, and the decision is yours.

💬 What's worth debating

  • Self-hosted proxy or a ready-made paid API: savings versus the fact that you'll be the one fixing broken streaming at 5 a.m.
  • Is it worth moving personal tools to Gemini's free tier, knowing that limits and default models change without warning?
  • One commit — honest open source or a personal script dumped on GitHub? The answer depends on whether you're willing to depend on an author who promised you nothing.

Prediction: I'd bet that within a quarter the repo will get at least one third-party issue or fork tweaking the default models — otherwise the project will remain a personal script and quietly fizzle out.

Disclaimer: one source — the repository's README; no independent tests or measurements exist.

Source: GitHub — jannybloug/openai-gemini

🤖 AI summary
#openai#gemini#прокси#api#self-hosted#AI#LLM#нейросети
← Previous“Chat memory full” after 10–15 messages: OpenAI Community debates the cause

Source: github.com · post in Telegram