Gemini 接口
使用原生 Google Gemini SDK 或 OpenAI 兼容协议调用 Gemini 模型
Hakan AI 的 Gemini 模型支持 原生 Google Gemini SDK 协议 和 OpenAI 兼容协议。推荐使用原生协议,可使用 Gemini 的完整能力。
协议选择
| 协议 | 端点地址 | 说明 |
|---|---|---|
| Gemini 原生 | https://hakanaiktn.com/v1beta | 推荐,支持所有 Gemini 功能 |
| OpenAI 兼容 | https://hakanaiktn.com/v1 | 简单场景,已有 OpenAI 代码可直接复用 |
cURL 请求示例(原生协议)
curl "https://hakanaiktn.com/v1beta/models/gemini-2.5-pro:generateContent" \
-H "x-goog-api-key: sk-xxxxxxxx" \
-H "Content-Type: application/json" \
-X POST \
-d '{
"contents": [
{ "parts": [{ "text": "你好!" }] }
]
}'Python SDK 实现
新版 google-genai SDK(推荐)
from google import genai
from google.genai import types
client = genai.Client(
api_key="sk-xxxxxxxx",
http_options=types.HttpOptions(
api_version="v1beta",
base_url="https://hakanaiktn.com",
),
)
response = client.models.generate_content(
model='gemini-2.5-pro',
contents="你好!",
config=types.GenerateContentConfig(),
)
print(response.text)旧版 google-generativeai SDK
import google.generativeai as genai
genai.configure(
api_key='sk-xxxxxxxx',
transport="rest",
client_options={"api_endpoint": "https://hakanaiktn.com/v1beta"},
)
model = genai.GenerativeModel('gemini-2.5-pro')
response = model.generate_content("你好!")
print(response.text)使用旧版 SDK 必须显式设置
transport="rest",否则会尝试用 gRPC 连接 Google 官方服务。
功能示例
流式输出
response = model.generate_content("讲一个故事", stream=True)
for chunk in response:
print(chunk.text, end="", flush=True)多轮对话
chat = model.start_chat(history=[])
response = chat.send_message("你好,我是小明")
print(response.text)
response = chat.send_message("我叫什么名字?")
print(response.text)图片理解
from PIL import Image
image = Image.open("image.jpg")
response = model.generate_content(["描述这张图片", image])
print(response.text)图片生成(部分模型支持)
from google import genai
from google.genai import types
response = client.models.generate_content(
model="gemini-3-pro-image-preview",
contents="A popular anime games screenshot",
config=types.GenerateContentConfig(
response_modalities=['TEXT', 'IMAGE'],
image_config=types.ImageConfig(
aspect_ratio="16:9",
image_size="4K",
),
),
)常用参数
原生协议顶层字段
| 参数 | 类型 | 说明 |
|---|---|---|
model | string | 模型名称 |
contents | string / list | 输入内容 |
config | GenerateContentConfig | 生成配置 |
GenerateContentConfig 选项
| 参数 | 类型 | 说明 |
|---|---|---|
temperature | float | 随机性,0-2 之间 |
top_p | float | 核采样参数 |
top_k | int | Top-K 采样 |
max_output_tokens | int | 最大输出 token 数 |
stop_sequences | list | 停止序列 |
response_modalities | list | 输出模态,['TEXT'] / ['TEXT','IMAGE'] |
safety_settings | list | 安全过滤等级 |
常见问题
gRPC 报错 / 连接失败
旧版 google-generativeai SDK 默认走 gRPC,必须改为 REST:
genai.configure(
api_key='sk-xxxxxxxx',
transport="rest",
client_options={"api_endpoint": "https://hakanaiktn.com/v1beta"},
)新版 SDK 通过 http_options 设置 base_url 即可。
响应超时
- 减少输入长度
- 使用流式输出
stream=True - 调高客户端 timeout 设置