Generate Content
Вызов моделей Google Gemini через нативный протокол Gemini. OfoxAI совместим с Google GenAI SDK.
Эндпоинты
POST https://api.ofox.ai/gemini/v1beta/models/{model}:generateContent
POST https://api.ofox.ai/gemini/v1beta/models/{model}:streamGenerateContentАутентификация
Протокол Gemini использует заголовок x-goog-api-key:
x-goog-api-key: <Ваш OFOXAI_API_KEY>Пример запроса
cURL
curl "https://api.ofox.ai/gemini/v1beta/models/google/gemini-3.1-flash-lite-preview:generateContent" \
-H "x-goog-api-key: $OFOX_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"contents": [
{
"parts": [{"text": "Реализуй простой веб-сервер на Python"}]
}
]
}'Потоковый ответ
Python
response = client.models.generate_content_stream(
model="google/gemini-3.1-flash-lite-preview",
contents="Напиши статью об ИИ"
)
for chunk in response:
print(chunk.text, end="", flush=True)Мультимодальный ввод
Gemini нативно поддерживает мультимодальный ввод, включая изображения, аудио и видео:
import base64
# Анализ изображения
with open("photo.jpg", "rb") as f:
image_data = base64.b64encode(f.read()).decode()
response = client.models.generate_content(
model="google/gemini-3.1-flash-lite-preview",
contents=[
{"text": "Опиши содержимое этого изображения"},
{"inline_data": {"mime_type": "image/jpeg", "data": image_data}}
]
)Генерация и редактирование изображений
В нативном протоколе Gemini один эндпоинт generateContent отвечает одновременно за генерацию (text → image) и редактирование изображений (image + text → image). Рекомендуемая модель — google/gemini-3.1-flash-image-preview.
POST https://api.ofox.ai/gemini/v1beta/models/google/gemini-3.1-flash-image-preview:generateContentТу же модель можно вызывать для генерации через OpenAI-совместимый эндпоинт, но редактирование изображений доступно только в нативном протоколе Gemini.
Генерация: text → image
Python
from google import genai
client = genai.Client(
api_key="YOUR_OFOX_API_KEY",
http_options={"api_version": "v1beta", "base_url": "https://api.ofox.ai/gemini"},
)
resp = client.models.generate_content(
model="google/gemini-3.1-flash-image-preview",
contents="A simple red apple on a white table, photorealistic",
)
for part in resp.candidates[0].content.parts:
if part.inline_data and part.inline_data.data:
with open("output.png", "wb") as f:
f.write(part.inline_data.data)
breakРеальный результат:

Редактирование: image + text → image
Достаточно поместить исходное изображение через inlineData рядом с текстовой инструкцией в parts:
Python
from google import genai
from google.genai import types
client = genai.Client(
api_key="YOUR_OFOX_API_KEY",
http_options={"api_version": "v1beta", "base_url": "https://api.ofox.ai/gemini"},
)
with open("apple.png", "rb") as f:
image_bytes = f.read()
resp = client.models.generate_content(
model="google/gemini-3.1-flash-image-preview",
contents=[
"Сделай яблоко зелёным, остальное оставь без изменений",
types.Part.from_bytes(data=image_bytes, mime_type="image/png"),
],
)
for part in resp.candidates[0].content.parts:
if part.inline_data and part.inline_data.data:
with open("apple_edited.png", "wb") as out:
out.write(part.inline_data.data)
breakСравнение результатов:
| Оригинал | После редактирования |
|---|---|
![]() | ![]() |
Ответ
{
"candidates": [{
"content": {
"role": "model",
"parts": [
{ "text": "...", "thought": true },
{ "inlineData": { "mimeType": "image/png", "data": "<Base64 изображения>" } }
]
},
"finishReason": "STOP"
}],
"modelVersion": "google/gemini-3.1-flash-image-preview",
"usageMetadata": {
"promptTokenCount": 1097,
"candidatesTokenCount": 1120,
"thoughtsTokenCount": 1306,
"totalTokenCount": 3523,
"candidatesTokensDetails": [
{ "modality": "IMAGE", "tokenCount": 1120 }
]
}
}- Изображение находится в
candidates[0].content.parts[].inlineData.dataв виде Base64-строки - В
partsмогут встречаться элементыtextсthought: true— это шаги рассуждения модели; при обходе берите толькоinlineData - В
usageMetadata.candidatesTokensDetailsполеtokenCountдляmodality: IMAGEотражает токены, израсходованные на вывод изображения
Поддерживаемые модели
В таблице ниже перечислены только наиболее частые варианты. Полный список доступных моделей см.:
- Программный API: GET /gemini/v1beta/models — запрашивает в реальном времени модели, доступные вашему аккаунту через шлюз
- Веб-каталог: Каталог моделей — визуальный поиск с указанием цен
| Модель | Описание |
|---|---|
google/gemini-3.1-pro-preview | Gemini 3.1 Pro — сильнейшие возможности рассуждения |
google/gemini-3-pro-preview | Gemini 3 Pro — сбалансированная производительность |
google/gemini-3.1-flash-lite-preview | Gemini 3 Flash — высокая скорость и экономичность |
google/gemini-3.1-flash-image-preview | Gemini Flash Image — генерация и редактирование изображений |
Протокол Gemini в OfoxAI поддерживает ключевые возможности Google GenAI SDK, включая Function Calling, Code Execution, Grounding, генерацию и редактирование изображений и другие.
