你有没有试过用 AI 写个小程序,结果打开 ChatGPT 网站,登录、等排队、还要付费?
Google AI Studio 不一样。注册 Google 账号就能用,Gemini API 每月有免费额度,足够个人项目跑起来。
今天教你从零开始,用 Gemini 搭一个实用工具。
一、注册和获取 API Key
打开 aistudio.google.com,用 Google 账号登录。
首页就能看到"Try the Gemini API"按钮。点进去,创建 API Key。
关键一步: 创建时选"Create API Key in Google Cloud Console"。这会帮你自动创建一个 Cloud Project,省去配置流程。
拿到 Key 后,先别急着用。把它存到环境变量里:
export GEMINI_API_KEY="你的API Key"
Windows 用户用:
set GEMINI_API_KEY=你的API Key
这样每次调用 API 都不用硬编码 Key,安全又方便。
二、Python 环境搭建
Gemini 的 Python SDK 安装很简单:
pip install google-genai
验证安装:
import google.genai as genai
client = genai.Client(api_key="你的API Key")
print("连接成功!")
跑一下,看到"连接成功"就说明环境没问题。
三、第一个项目:智能文件分类器
我做过一个实用场景:把下载文件夹里的文件按类型自动整理。
以前我手动分,后来写了个脚本。用 AI 写这个任务,比查文档快多了。
需求描述:
- 扫描指定目录
- 按文件扩展名分类
- 生成一个分类报告,说明每个类型有多少文件
- 把文件移到对应的文件夹里
给 Gemini 的 prompt:
用 Python 写一个文件分类脚本。
功能:
1. 接收一个目录路径作为参数
2. 扫描所有文件,按扩展名分类统计
3. 生成报告打印每种类型的文件数量和示例
4. 可选:把文件移动到按类型命名的子目录
5. 使用 argparse 处理命令行参数
6. 代码要有注释,异常处理要完善
Gemini 生成的代码大概长这样:
import argparse
import os
import shutil
from pathlib import Path
from collections import defaultdict
def classify_files(directory, dry_run=True):
"""分类目录中的文件"""
file_types = defaultdict(list)
for file_path in Path(directory).rglob('*'):
if file_path.is_file():
ext = file_path.suffix.lower() or '(无扩展名)'
file_types[ext].append(file_path)
# 打印报告
print(f"\n📊 {directory} 分类报告:\n")
for ext, files in sorted(file_types.items()):
print(f" {ext}: {len(files)} 个文件")
for f in files[:3]:
print(f" - {f.name}")
if len(files) > 3:
print(f" ... 还有 {len(files)-3} 个")
# 移动文件
if not dry_run:
for ext, files in file_types.items():
if ext and ext != '(无扩展名)':
target_dir = Path(directory) / ext.lstrip('.')
target_dir.mkdir(exist_ok=True)
for f in files:
shutil.move(str(f), str(target_dir / f.name))
return dict(file_types)
if __name__ == "__main__":
parser = argparse.ArgumentParser()
parser.add_argument("directory", help="要分类的目录")
parser.add_argument("--move", action="store_true", help="实际移动文件(默认只预览)")
args = parser.parse_args()
classify_files(args.directory, dry_run=not args.move)
把这段代码跑一下,看看效果。不满意?直接告诉 Gemini 哪里要改,它帮你调。
四、进阶:用 Gemini 做数据分析
Gemini 不只是写代码,它还能帮你分析数据。
比如你有个月销售数据 CSV,想看趋势分析。把数据发给 Gemini,让它生成分析代码:
import google.genai as genai
client = genai.Client(api_key="你的API Key")
# 读取数据
with open("sales.csv") as f:
data = f.read()
# 让 Gemini 分析
response = client.models.generate_content(
model="gemini-2.0-flash",
contents=f"""
这是一份月度销售数据:
{data[:2000]}
请帮我:
1. 找出销售额最高和最低的月份
2. 计算同比增长率(如果有的话)
3. 给出3条业务建议
用 Python 代码实现分析,直接可运行。
"""
)
print(response.text)
注意: 如果你的数据超过 Gemini 的 token 限制,先用 pandas 做聚合,再发给 AI 分析。这样既省钱又高效。
五、搭建一个轻量级聊天机器人
不用搭服务器,不用搞 WebSocket。用 Flask 几分钟搞定。
from flask import Flask, request, jsonify
import google.genai as genai
app = Flask(__name__)
client = genai.Client(api_key="你的API Key")
# 存储对话历史
conversations = {}
@app.route('/chat', methods=['POST'])
def chat():
data = request.json
user_id = data.get('user_id', 'default')
message = data.get('message', '')
if user_id not in conversations:
conversations[user_id] = []
conversations[user_id].append({"role": "user", "content": message})
response = client.models.generate_content(
model="gemini-2.0-flash",
contents=conversations[user_id]
)
reply = response.text
conversations[user_id].append({"role": "model", "content": reply})
# 只保留最近20条对话,避免 token 爆炸
conversations[user_id] = conversations[user_id][-20:]
return jsonify({"reply": reply})
if __name__ == '__main__':
app.run(port=5000)
前端就一个输入框和一个回复区域,调用 /chat 接口就行。
六、避坑指南
1. Token 超限怎么办?
Gemini 免费额度的上下文窗口是 1M token,但单次请求有上限。如果数据太大,分段发送或者用 embedding 做检索。
2. 响应速度慢?
gemini-2.0-flash 比 gemini-2.0-pro 快很多,适合大多数场景。非实时任务再考虑 pro 版本。
3. API Key 泄露?
别把 Key 提交到 GitHub。用 .env 文件加 python-dotenv 加载:
pip install python-dotenv
from dotenv import load_dotenv
load_dotenv()
import os
api_key = os.getenv("GEMINI_API_KEY")
七、免费额度够不够用?
Gemini API 免费 tier 每月给你 60 次/分钟的请求额度,以及一定的每日 token 额度。
个人项目、学习 demo、小型工具——完全够用。只有当你日均调用上万次,才需要考虑付费。
总结
Google AI Studio 是个人开发者入坑 AI 应用的好入口。注册简单、免费额度慷慨、Python SDK 完善。
你现在就可以去 aistudio.google.com 拿个 Key,写个脚本试试。比看完这篇教程再动手,强百倍。
有什么想问的?评论区见。