Google 为其强大的 Gemini 模型提供了免费的 API 密钥,无需绑定信用卡即可快速上手。对于开发者和小型项目而言,其免费额度相当慷慨,足以满足日常的开发、测试与学习需求。
与其他主流 AI 服务相比,Gemini 的免费政策极具吸引力。例如,OpenAI 必须绑定信用卡,而 Claude 则需要企业验证。Gemini 仅需一个 Google 账号,三分钟内即可完成申请。
免费额度详解
Google 为不同模型设定了差异化的免费配额,以满足不同场景的需求。免费额度的重置时间为太平洋时间每日午夜(北京时间下午 3 点)。
免费层级核心限制(2025 年 8 月更新)
限制项目 | Gemini 1.5 Flash | Gemini 1.5 Pro |
---|---|---|
每分钟请求数 (RPM) | 15 | 5 |
每天请求数 (RPD) | 1,500 | 50 |
每分钟 Token 数 (TPM) | 1,000,000 | 32,000 |
上下文窗口 | 1,000,000 Tokens | 2,000,000 Tokens |
免费试用期 | 永久 | 永久 |
免费版 vs. 付费版
免费层级功能齐全,包含所有模型访问、批处理和流式响应。与付费版的主要区别在于:
- 数据隐私:免费层级的数据可能被用于模型改进,而付费层级提供数据隐私保护。
- 服务等级协议 (SLA):免费层级无 SLA 保证,付费层级承诺 99.9% 的可用性。
- 请求优先级:免费层级不设优先队列,高峰时段可能出现延迟。
对于原型开发和测试,免费额度绰绰有余。若需部署到生产环境,建议评估成本后升级至付费版。
注意:自 2025 年 4 月 29 日起,新创建的项目可能无法立即访问 Gemini 1.5 Pro 和 Flash 的某些实验性功能,通常需要 7-14 天的活跃使用记录后方可申请。
如何获取免费的 Gemini API Key
获取 API 密钥的流程非常简单,全程无需支付信息或等待审核。
申请步骤
-
准备 Google 账号 确保你拥有一个活跃的 Google 账号。建议使用注册时间超过 30 天的主账号,以获取更高级模型的访问权限。
-
访问 Google AI Studio 在浏览器中打开 Google AI Studio 的 API 密钥页面。首次访问时,你需要同意 Google API 服务条款和 Gemini API 附加条款。
-
创建 API 密钥 点击 “Create API key” 按钮。系统会提示你选择一个现有的 Google Cloud 项目或创建一个新项目。建议为每个应用创建独立的项目,以便于管理配额和监控用量。
-
生成并保存密钥 项目选定后,系统会立即生成一个 API 密钥。请立即复制并妥善保存这个密钥,因为它只会出现一次。密钥通常以
AIzaSy
开头,共 39 位字符。如果遗忘,只能重新生成。
安全配置
为保障安全,强烈建议通过环境变量来管理你的 API 密钥,切勿将其硬编码在代码中或提交到 Git 仓库。
Linux / macOS
export GEMINI_API_KEY="your-api-key-here"
Windows PowerShell
$env:GEMINI_API_KEY="your-api-key-here"
在 Python 代码中,你可以这样读取和使用它:
import os
import google.generativeai as genai
# 从环境变量中读取 API 密钥
api_key = os.environ.get('GEMINI_API_KEY')
genai.configure(api_key=api_key)
# 测试调用
model = genai.GenerativeModel('gemini-1.5-flash')
response = model.generate_content("你好, Gemini!")
print(response.text)
中国开发者解决方案
由于网络访问限制,中国开发者直连 Google 服务可能会遇到困难。以下是三种经过验证的可行方案。
方案一:API 中转服务
对于追求稳定性的个人和企业开发者,使用 API 中转服务是最高效的选择。这类服务在国内架设服务器,将你的请求转发至 Google 官方 API。
优势:
- 国内直连:无需配置网络代理,延迟低。
- 支付便捷:通常支持微信、支付宝等本地支付方式。
- 格式兼容:部分服务提供与 OpenAI 兼容的 API 格式,方便迁移现有应用。
- 技术支持:提供中文技术支持。
使用中转服务时,通常会替换 API 的请求地址,并使用服务商提供的密钥。
// 示例:使用 API 中转服务
const API_ENDPOINT = '
const PROXY_API_KEY = 'your-proxy-service-api-key';
async function callGemini(prompt) {
const response = await fetch(`${API_ENDPOINT}/generate`, {
method: 'POST',
headers: {
'Authorization': `Bearer ${PROXY_API_KEY}`,
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'gemini-1.5-flash',
messages: [{ role: 'user', content: prompt }]
})
});
return await response.json();
}
方案二:自建海外服务器中转
如果你具备一定的技术能力且对数据安全有更高要求,可以在海外云服务器(如新加坡、日本或美西节点)上自行部署一个反向代理服务。
- 技术栈:可使用 Nginx、Cloudflare Workers 或 Vercel Edge Functions 等工具实现。
- 成本:每月成本约 5-20 美元。
- 优势:数据链路完全可控,安全性高。
方案三:浏览器插件(仅限测试)
对于个人学习和轻度调试,可以通过浏览器插件(如 ModHeader)修改请求头,配合合适的网络工具直接在 Google AI Studio 网页上进行操作。此方案不稳定,不适用于任何生产环境。
额度优化与扩展策略
通过合理的策略,可以最大化免费额度的使用效率。
1. 智能缓存
对于重复或相似的请求,引入缓存机制可以有效减少不必要的 API 调用。一个简单的基于哈希值的内存缓存就能将重复调用率降低 40-60%。
import hashlib
from datetime import datetime, timedelta
# 一个简单的 API 响应缓存类
class GeminiCache:
def __init__(self, ttl_hours=24):
self.cache = {}
self.ttl = timedelta(hours=ttl_hours)
def get_key(self, prompt, model):
content = f"{model}:{prompt}"
return hashlib.md5(content.encode()).hexdigest()
def get(self, prompt, model):
key = self.get_key(prompt, model)
if key in self.cache:
entry = self.cache[key]
if datetime.now() - entry['time'] < self.ttl:
return entry['response']
return None
def set(self, prompt, model, response):
key = self.get_key(prompt, model)
self.cache[key] = {'response': response, 'time': datetime.now()}
# 使用缓存调用 API
cache = GeminiCache()
def call_gemini_with_cache(prompt, model='gemini-1.5-flash'):
cached_response = cache.get(prompt, model)
if cached_response:
print("命中缓存!")
return cached_response
print("调用 API...")
model_instance = genai.GenerativeModel(model)
response = model_instance.generate_content(prompt)
cache.set(prompt, model, response.text)
return response.text
2. 批处理与请求合并
将多个独立的短请求合并成一个批处理请求,可以显著提高吞吐量。例如,将 10 个独立的翻译任务合并为一次 API 调用,请求数就能从 10 次降为 1 次,从而更好地利用 RPM(每分钟请求数)配额。
3. 多账号轮换(仅限开发测试)
在合规的前提下,开发者可以使用多个 Google 账号申请独立的免费额度,并通过轮换机制来扩展总请求量。这需要一个管理系统来监控每个密钥的用量,并在接近限额时自动切换。此方法仅适用于开发和测试阶段,生产环境应升级至付费方案。
常见问题与排查
常见错误代码
错误代码 | 信息 | 原因分析 | 解决方案 |
---|---|---|---|
400 |
Invalid API key |
密钥格式错误或已被删除。 | 重新生成密钥,并确保完整复制。 |
429 |
Rate limit exceeded |
超过了 RPM 或 RPD 限制。 | 等待 60 秒后重试,或优化调用频率。 |
403 |
Permission denied |
Google Cloud 项目权限不足或 API 未启用。 | 检查项目设置,确认 Generative Language API 已启用。 |
500 |
Internal server error |
Google 服务端临时性问题。 | 稍后重试,建议实现指数退避重试策略。 |
API 密钥无法使用怎么办?
- 检查密钥格式:确认密钥是以
AIzaSy
开头的 39 位字符串。 - 检查项目配置:确保你使用的密钥与当前配置的 Google Cloud 项目匹配。
- 确认 API 已启用:在新项目中,可能需要手动进入 Google Cloud Console 启用 “Generative Language API”。
- 检查账号状态:确认你的 Google 账号没有因违反服务条款而被限制。
👉 如果你需要 ChatGPT 代充 / Claude / Claude Code / 镜像 / 中转 API:
- 购买 / 了解更多:ai4.plus
- 备用入口:kk4099.com