Gemini 原生格式 API 提供了与 Google Gemini 模型交互的原生接口,支持多模态输入和高级功能。
支持的模型
Gemini 2.0 Flash
最新一代模型,速度快、性能强
Gemini 1.5 Pro
强大的推理能力,支持长上下文
Gemini 1.5 Flash
快速响应,适合实时应用
请求参数
模型 ID,作为 URL 路径参数:
gemini-2.0-flash-exp
gemini-1.5-pro
gemini-1.5-flash
请求示例
curl https://ai.kaiho.cc/v1/models/gemini-2.0-flash-exp:generateContent \
-H "Content-Type: application/json" \
-H "x-goog-api-key: YOUR_API_KEY" \
-d '{
"contents": [
{
"role": "user",
"parts": [
{
"text": "解释量子计算的基本原理"
}
]
}
],
"generationConfig": {
"temperature": 0.7,
"maxOutputTokens": 1000,
"topP": 0.95
}
}'
响应格式
{
"candidates": [
{
"content": {
"role": "model",
"parts": [
{
"text": "量子计算是一种利用量子力学原理..."
}
]
},
"finishReason": "STOP",
"safetyRatings": [...]
}
],
"usageMetadata": {
"promptTokenCount": 12,
"candidatesTokenCount": 156,
"totalTokenCount": 168
}
}
多模态输入
Gemini 支持文本和图像的混合输入:
import PIL.Image
# 加载图像
img = PIL.Image.open('image.jpg')
# 发送文本和图像
response = model.generate_content([
"描述这张图片中的内容",
img
])
print(response.text)
流式输出
response = model.generate_content(
"写一个关于AI的故事",
stream=True
)
for chunk in response:
print(chunk.text, end="")
安全设置
控制内容过滤级别:
from google.generativeai.types import HarmCategory, HarmBlockThreshold
response = model.generate_content(
"你的提示词",
safety_settings={
HarmCategory.HARM_CATEGORY_HATE_SPEECH: HarmBlockThreshold.BLOCK_ONLY_HIGH,
HarmCategory.HARM_CATEGORY_HARASSMENT: HarmBlockThreshold.BLOCK_ONLY_HIGH,
}
)
特性对比
| 特性 | Gemini 2.0 Flash | Gemini 1.5 Pro | Gemini 1.5 Flash |
|---|
| 上下文窗口 | 100万 tokens | 200万 tokens | 100万 tokens |
| 多模态输入 | ✅ | ✅ | ✅ |
| 代码生成 | ✅ | ✅ | ✅ |
| 速度 | 极快 | 快 | 极快 |
长上下文处理: Gemini 1.5 Pro 支持最多 200 万 tokens 的上下文,适合处理长文档和视频分析。