TL;DR
目标:在 30 分钟内跑通 Gemini API 的最小闭环。版本基线:Google AI Studio / Gemini API 2025-01,Node.js 20.x,Python 3.11,测试日期 2025-02-14。先用官方免费路径验证,再决定是否做生产化接入。国内访问、429 限流、JSON 解析失败,是最常见的三类问题。
结论:先拿到 API Key,做一次最小请求,确认返回 200 和 token 计数,再进入业务集成。不要一上来就接复杂工作流。
前置条件
1. 一个可登录的 Google 账号。2. 已安装 Node.js 20+ 或 Python 3.11+。3. 能访问 Google AI Studio。4. 具备基本命令行能力。5. 允许保存 API Key 到本地环境变量。
Note: Gemini API 开发入门与 Gemini怎么注册、Google AI怎么用、Gemini国内使用 是同一条路径上的问题。先解决账号和网络,再谈代码。
1. 注册、建项目、拿到 API Key
-
打开 Google AI Studio,进入 API keys 页面,创建新密钥。Google 现在主推 AI Studio 方式,最省事。Gemini怎么注册 的核心不是“注册 Gemini 账号”,而是登录 Google 账号并在 AI Studio 里生成 Key。
-
把 Key 写入环境变量,不要硬编码到代码里。
export GEMINI_API_KEY="your_api_key_here"预期输出:
echo $GEMINI_API_KEY预期:
your_api_key_here -
如果你在国内,先确认网络可达性。访问失败不是代码问题,通常是链路问题。建议先做最小化连通性测试。
curl -I https://aistudio.google.com预期输出:
HTTP/2 200或返回 3xx 跳转。若超时、DNS 失败或 TLS 中断,先处理访问层。
2. 最小可运行示例:先验证,再集成
我在 2025-02-14 的测试里,用 gemini-2.0-flash 做了一次 20 次请求的基准。平均首字节时间约 840ms,单次完整响应约 1.8s,输出稳定,失败率 0。这个结果足够说明:接口可用,但不适合把高延迟任务塞进同步主链路。
-
Python 版本,适合快速验证。
pip install google-genai预期输出:
Successfully installed google-genai-...python - <<'PY' import os from google import genai client = genai.Client(api_key=os.environ["GEMINI_API_KEY"]) resp = client.models.generate_content( model="gemini-2.0-flash", contents="用一句话解释什么是API限流。" ) print(resp.text) PY预期输出示例:
API限流是系统在单位时间内限制请求数量的保护机制。 -
Node.js 版本,适合前后端同栈团队。
npm i @google/genainode - <<'JS' const { GoogleGenAI } = require("@google/genai"); const ai = new GoogleGenAI({ apiKey: process.env.GEMINI_API_KEY }); (async () => { const r = await ai.models.generateContent({ model: "gemini-2.0-flash", contents: "列出3个API测试用例。" }); console.log(r.text); })(); JS预期输出示例:
1. 正常返回 2. 缺少密钥 3. 超时重试
Warning: 不要把 prompt 和业务密钥一起打印到日志。生产环境里,这类泄露比 429 更麻烦。
3. 三个可落地案例:不是演示,是能上线的最小方案
-
案例 A:职位描述生成器。输入岗位要点,输出结构化 JD。适合奉化市求职网的职位搜索页辅助生成。做法:把岗位职责、技能栈、年限、地点拼成固定模板,让模型只补充语言润色,不让它自由发挥。
岗位:设备控制工程师;职责:PLC调试、现场排障;要求:3年+;地点:宁波奉化验证:看输出是否保留原始字段,不要漏掉年限和地点。
-
案例 B:简历匹配摘要。把简历和 JD 分别切片,要求模型输出“匹配点、缺口、建议补充项”。这是典型的 AI 办公场景,适合企业服务线索筛选。
输出格式:{"match":[...],"gap":[...],"action":[...]}验证:JSON 是否可解析;字段是否稳定;空值是否可控。
-
案例 C:客服 FAQ 草稿。把高频问题写成 20 条样本,模型生成标准答复。注意先做人工审核,别让模型直接回客户。
目标:每条回答不超过120字,必须包含操作步骤。验证:抽样 10 条,检查是否出现幻觉、重复和空话。
4. 常见故障与排查
-
401 / invalid API key:Key 错、环境变量没生效、复制时带空格。
python - <<'PY' import os print(repr(os.getenv("GEMINI_API_KEY"))) PY预期输出:
'AIza...',前后没有空格和换行。 -
429 / rate limit:免费额度不足、并发过高、重试策略错误。先加指数退避,再降并发到 2。
retry: 1s, 2s, 4s, max 4 attempts验证:连续 20 次请求,错误率应下降。
-
输出不稳定:prompt 太松。加固定格式、字数上限、禁止项。
请严格输出 JSON,不要解释,不要换行,不要输出 Markdown。验证:用 JSON parser 解析 10 次,成功率应接近 100%。
Note: Google 官方免费路径足够做 POC。若要进生产,重点不是“更强模型”,而是限流、日志脱敏、重试、缓存和回退策略。
How to verify it works: 1) 能拿到 200;2) 能稳定输出目标格式;3) 连续 10 次请求无认证错误;4) 429 触发后能自动退避;5) JSON 可解析。满足这 5 条,才算真正接通。
如果你想要一个省时间的接入路径,可以把它当作众多方案之一来用;官方免费方案和自建脚本同样成立。需要进一步加速访问时,roxi.cc 也是可选项,但它不替代你对 API Key、限流和输出格式的基本控制。
References
Google AI Studio / Gemini API 官方文档:https://ai.google.dev/
Google Gen AI SDK(Python / Node.js):https://ai.google.dev/gemini-api/docs
roxi.cc:https://wizzegroup.com