Google Gemini SDK — GPUShare
用 Google Gemini SDK 调用 GPUShare 网关 (Python / TypeScript / curl)
Google Gemini SDK 接入 GPUShare
适用场景: 已经在用 Google
genaiSDK 的项目可直接切换 base URL,代码零改动。 也可以用 Gemini SDK 调用非 Gemini 模型 (Claude / GLM / Grok / DeepSeek 等)。
端点
| 项 | 值 |
|---|---|
| Base URL | https://api.dflop.top |
| 端点 | /v1beta/models/{model}:generateContent (兼容 Gemini Native API) |
| 流式端点 | /v1beta/models/{model}:streamGenerateContent |
| 鉴权 | ?key=sk-gpushare-xxx 或 x-api-key: sk-gpushare-xxx (SDK 自动用 key=) |
| 协议 | Google Generative AI Native (HTTP / SSE 流式) |
安装
pip install google-genai # Python
npm install @google/genai # TypeScript
Google 在 2024-2025 把 SDK 从
google-generativeai切到了新的google-genai。本文档用新 SDK。
Python
基础调用
from google import genai
client = genai.Client(
api_key="sk-gpushare-xxx",
http_options={"base_url": "https://api.dflop.top"},
)
response = client.models.generate_content(
model="gemini-2.5-pro",
contents="Say hello in one word.",
)
print(response.text)
流式输出
stream = client.models.generate_content_stream(
model="gemini-2.5-pro",
contents="Stream a haiku about latency",
)
for chunk in stream:
print(chunk.text, end="", flush=True)
跨厂商调用 (重点)
Gemini SDK 可以调用任何支持 Gemini Native 协议的模型 —— 不只是 Gemini:
# 用 Gemini SDK 调 Claude
response = client.models.generate_content(
model="claude-sonnet-4-5-20250929",
contents="Hello",
)
# 调 GLM
response = client.models.generate_content(
model="glm-5.1",
contents="Hello",
)
# 调 Grok
response = client.models.generate_content(
model="grok-4-fast-reasoning",
contents="Hello",
)
# 调 DeepSeek
response = client.models.generate_content(
model="deepseek-v3.2",
contents="Hello",
)
多模态 (图像输入)
from google.genai import types
with open("photo.jpg", "rb") as f:
image_bytes = f.read()
response = client.models.generate_content(
model="gemini-2.5-pro",
contents=[
types.Part.from_bytes(data=image_bytes, mime_type="image/jpeg"),
"Describe this image",
],
)
print(response.text)
System Instruction
response = client.models.generate_content(
model="gemini-3-pro-preview",
config=types.GenerateContentConfig(
system_instruction="You are a terse expert. Answer in one sentence.",
),
contents="Why is the sky blue?",
)
print(response.text)
TypeScript
基础调用
import { GoogleGenAI } from "@google/genai";
const client = new GoogleGenAI({
apiKey: process.env.GPUSHARE_API_KEY,
httpOptions: { baseUrl: "https://api.dflop.top" },
});
const response = await client.models.generateContent({
model: "gemini-2.5-pro",
contents: "Say hello in one word.",
});
console.log(response.text);
流式输出
const stream = await client.models.generateContentStream({
model: "gemini-2.5-pro",
contents: "Stream a haiku",
});
for await (const chunk of stream) {
process.stdout.write(chunk.text ?? "");
}
跨厂商调用
// 用 Gemini SDK 调 Claude
await client.models.generateContent({
model: "claude-opus-4-5-20251101",
contents: "Hello",
});
// 调 GLM
await client.models.generateContent({
model: "glm-4.7",
contents: "Hello",
});
curl
非流式
curl "https://api.dflop.top/v1beta/models/gemini-2.5-pro:generateContent?key=$GPUSHARE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"contents": [
{"parts": [{"text": "Say hello in one word."}]}
]
}'
流式
curl "https://api.dflop.top/v1beta/models/gemini-2.5-pro:streamGenerateContent?key=$GPUSHARE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"contents": [
{"parts": [{"text": "Stream a haiku"}]}
]
}' \
--no-buffer
跨厂商 (curl 调 Claude)
curl "https://api.dflop.top/v1beta/models/claude-sonnet-4-5-20250929:generateContent?key=$GPUSHARE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"contents": [
{"parts": [{"text": "Hello"}]}
]
}'
注意事项
- URL 模型占位
{model}—— SDK 自动从model参数填,curl 直调时手动替换路径 :generateContentvs:streamGenerateContent—— SDK 根据generate_contentvsgenerate_content_stream自动切换- Key 鉴权 —— SDK 默认走
?key=query param;x-api-keyheader 也可用 (三回退) - 错误格式 统一返回 Gemini 风格:
{"error": {"code": 400, "message": "...", "status": "INVALID_ARGUMENT"}} - 不支持组合:
- GPT-5.x (
gpt-5.4,gpt-5.5) 暂不支持 Gemini Native 端点 (sub2api 上游限制) - 调 GPT-5.x 请改用 OpenAI Chat 或 Anthropic Messages 端点
- GPT-5.x (
- 配额耗尽 返回 HTTP 412 + Gemini 风格错误对象
完整模型列表
支持 Gemini Native 的所有模型(除 GPT-5.x):
| 厂商 | 模型 |
|---|---|
gemini-2.5-flash, gemini-2.5-pro, gemini-3-flash-preview, gemini-3-pro-preview (原生直通) | |
| Anthropic | claude-opus-4-5-20251101, claude-sonnet-4-5-20250929 |
| xAI | grok-4, grok-4.1, grok-4.2, grok-4-fast-reasoning, grok-4-fast-non-reasoning |
| 智谱 | glm-4.5/-air/-airx/-flash/-x, glm-4.6, glm-4.7, glm-5, glm-5-turbo, glm-5.1 |
| DeepSeek | deepseek-v3.1, deepseek-v3.2, deepseek-v4-flash, deepseek-v4-pro |
| Moonshot | kimi-k2.5, kimi-k2.6 |
| MiniMax | MiniMax-M2.5, MiniMax-M2.7 |
| Alibaba | qwen3.5-plus, qwen3.6-plus |
完整矩阵: 兼容矩阵