https://aiapizz.com/gemini/v1beta/models/{模型名}:generateContent
https://aiapizz.com/gemini/v1beta/models/{模型名}:streamGenerateContent
即:把官方地址里的 https://generativelanguage.googleapis.com 换成 https://aiapizz.com/gemini。v1 前缀(/gemini/v1/...)同样支持。
三种任选:
| 方式 | 示例 |
|---|---|
| 请求头 | x-goog-api-key: sk-你的密钥 |
| URL 参数 | ?key=sk-你的密钥 |
| Authorization | Authorization: Bearer sk-你的密钥 |
| 操作 | 路径后缀 | 说明 |
|---|---|---|
generateContent | :generateContent | 一次性返回 |
streamGenerateContent | :streamGenerateContent | 流式返回 |
countTokens | :countTokens | 计算 token 数 |
embedContent | :embedContent | 文本向量 |
batchEmbedContents | :batchEmbedContents | 批量向量 |
| 列出模型 | /gemini/v1beta/models | 模型列表 |
| 单个模型信息 | /gemini/v1beta/models/{模型名} | 模型详情 |
curl "https://aiapizz.com/gemini/v1beta/models/gemini-2.5-flash:generateContent" \
-H "x-goog-api-key: sk-你的密钥" \
-H "Content-Type: application/json" \
-d '{
"contents": [
{"parts": [{"text": "用一句话介绍向量数据库"}]}
],
"generationConfig": {"temperature": 0.7, "maxOutputTokens": 1024}
}'
import requests
url = "https://aiapizz.com/gemini/v1beta/models/gemini-2.5-flash:generateContent"
r = requests.post(url,
headers={"x-goog-api-key": "sk-你的密钥", "Content-Type": "application/json"},
json={"contents": [{"parts": [{"text": "用一句话介绍向量数据库"}]}]})
print(r.json()["candidates"][0]["content"]["parts"][0]["text"])
请求体结构:
| 字段 | 说明 |
|---|---|
contents | 必填,[{"role":"user","parts":[{"text":"..."}]}],role 可为 user / model |
systemInstruction | 系统提示词 |
generationConfig | temperature、topP、topK、maxOutputTokens、stopSequences、responseMimeType |
safetySettings | 安全过滤设置 |
tools / toolConfig | 函数调用 |
原生 SDK(google-genai / google-generativeai)默认连官方域名。要用本站,两种做法:
http_options.base_url),把它设成 https://aiapizz.com/gemini,并保持 API 版本为 v1beta。Gemini 上游也能被 OpenAI 格式的请求命中(网关自动转换),所以你可以用 https://aiapizz.com/v1/chat/completions + 模型名 gemini-2.5-flash 来调用,代码里不用写 Gemini 的请求体结构。反过来,Gemini 格式的请求打到别的上游同理。跨格式时没有真流式,详见《流式输出》。