xAI Grok API: подключение Grok 4.7, цена и контекст 256K
Как вызвать grok-4.7 через OpenAI-совместимый API, что делать с лимитом контекста 256K и сколько стоят типичные запросы. Плюс сравнение с Grok 4.6.
4 мин · · модели · API-ключи
Если вам нужен xAI Grok API, но напрямую подключаться неудобно, модель grok-4.7 можно вызвать через шлюз в обычном OpenAI-совместимом формате. Ниже: как подключиться, чем отличается контекст 256K от миллиона токенов у других моделей, как отправлять картинки и сколько стоят типичные запросы. Пополнить баланс из России можно по СБП, картой MasterCard или криптой.
Что за модель
Цены на 18 октября 2026, $ за 1M токенов. «Сила» — Intelligence Index (Artificial Analysis).
| Модель | Zukko вход / выход | Кэш: чтение / запись | Официальный вход / выход | Контекст | Картинки | Сила |
|---|---|---|---|---|---|---|
grok-4.7 | 0.175 / 0.513 | 0.025 / 0.175 | 3 / 15 | 256K | да | 47 |
grok-4.6 | 0.138 / 0.4 | 0.013 / 0.138 | 3 / 15 | 256K | да | 44 |
grok-4.5 | 0.113 / 0.338 | 0.013 / 0.113 | 3 / 15 | 256K | да | 40 |
Главное отличие от большинства моделей каталога: контекст 256K, а не 1M. Для переписки, кода и документов средней длины этого хватает с запасом, но для огромных репозиториев и книг придётся резать входные данные или выбирать модель с контекстом 1M. Индекс силы Grok 4.7 выше, чем у 4.6 (47 против 44), цена в Zukko тоже выше. Контекст, приём картинок и официальные цены у них совпадают.
Подключение
Нужен ключ fetch_..., его создают в кабинете Zukko. Адрес OpenAI-формата — с /v1 на конце.
pip install openai
export ZUKKO_API_KEY="fetch_ваш_ключ"import os
from openai import OpenAI
client = OpenAI(
base_url="https://api.zukko.pro/v1",
api_key=os.environ["ZUKKO_API_KEY"],
)
resp = client.chat.completions.create(
model="grok-4.7",
messages=[
{"role": "system", "content": "Отвечай по-русски, коротко."},
{"role": "user", "content": "Объясни, что такое идемпотентность запроса."},
],
max_tokens=400,
)
print(resp.choices[0].message.content)
print(resp.usage)Через curl то же самое:
curl https://api.zukko.pro/v1/chat/completions \
-H "Authorization: Bearer $ZUKKO_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"grok-4.7","messages":[{"role":"user","content":"Привет"}],"max_tokens":100}'Если получите 404 model_not_found, сверьте id: правильно grok-4.7, с точкой.
Картинки на входе
grok-4.7 принимает изображения. В OpenAI-формате картинка передаётся блоком image_url; локальный файл кодируется в data URL:
import base64
with open("screenshot.png", "rb") as f:
b64 = base64.b64encode(f.read()).decode()
resp = client.chat.completions.create(
model="grok-4.7",
messages=[{
"role": "user",
"content": [
{"type": "text", "text": "Что на этом скриншоте не так?"},
{"type": "image_url", "image_url": {"url": f"data:image/png;base64,{b64}"}},
],
}],
max_tokens=500,
)
print(resp.choices[0].message.content)Картинка входит в счёт входных токенов, сколько именно — смотрите в поле usage.prompt_tokens после запроса, заранее число придумывать не стоит. Частые ошибки с размером и форматом разобраны в статье про ошибки при отправке изображений.
Что делать с лимитом контекста 256K
Если вход превышает окно модели, запрос завершится ошибкой. Типичные ответы: 413, если запрос слишком большой, либо сообщение провайдера о переполнении контекста; формулировка может меняться, поэтому ориентируйтесь на код ответа. Разбор таких ошибок есть в статье про context_length_exceeded. Практические приёмы:
- Режьте историю диалога: оставляйте системный промпт и последние N сообщений, а старое сворачивайте в короткую сводку.
- Для длинных документов делите их на части и обрабатывайте по очереди, а затем объединяйте результаты.
- Для действительно больших входов выбирайте модель с контекстом 1M, например
claude-sonnet-5-5илиgpt-6.1-sol. - Следите за
usage.prompt_tokensи сигнализируйте себе, когда вход приближается к 80% окна.
Простая защита от переполнения по числу символов (оценка грубая, сверяйте с usage):
MAX_CHARS = 300_000 # эвристика с запасом для русского текста
def trim_history(messages: list[dict]) -> list[dict]:
system, rest = messages[0], messages[1:]
while rest and sum(len(m["content"]) for m in rest if isinstance(m["content"], str)) > MAX_CHARS:
rest.pop(0)
return [system] + restСколько стоят типичные запросы
Формула: вход / 1M × цена входа + выход / 1M × цена выхода (+ кэш, если есть).
Чат: 3000 входных и 500 выходных токенов
- Grok 4.7: 3000 × 0.175 / 1M + 500 × 0.513 / 1M = 0.000525 + 0.0002565 = около $0.00078.
- Grok 4.6: 3000 × 0.138 / 1M + 500 × 0.4 / 1M = 0.000414 + 0.0002 = около $0.00061.
Почти заполненное окно: 200 000 входных и 2000 выходных токенов
- Grok 4.7: 200 000 × 0.175 / 1M + 2000 × 0.513 / 1M = 0.035 + 0.001026 = около $0.036.
- Grok 4.6: 200 000 × 0.138 / 1M + 2000 × 0.4 / 1M = 0.0276 + 0.0008 = около $0.028.
Тот же запрос, если 150 000 токенов читаются из кэша. Кэш учитывается, когда провайдер сообщает чтение в ответе. Для Grok 4.7: свежий вход 50 000 × 0.175 / 1M = 0.00875; чтение 150 000 × 0.025 / 1M = 0.00375; выход 0.001026; итого около $0.0135. Отдельно за запись кэша для таких моделей шлюз не списывает.
Видно, что цена растёт не от «магии модели», а от размера входа: длинный контекст стоит дорого сам по себе. Разберём эту тему отдельно в статье про стоимость длинного контекста. Актуальные цены всегда смотрите через GET https://api.zukko.pro/v1/models или на странице «Модели» в кабинете.
Grok 4.7 или 4.6
Разница по таблице: индекс 47 против 44, вход 0.175 против 0.138, выход 0.513 против 0.4. Если для вашей задачи Grok 4.6 даёт ответы нужного уровня, он обходится дешевле. Если нет, обновление оправдано, но подтвердить это можно только тестом на ваших данных, а не индексом. Обзор предыдущей версии — в статье Grok 4.6 через API.
Частые вопросы
Нужен ли отдельный аккаунт xAI?
Нет. Достаточно ключа fetch_...: он работает со всеми моделями каталога, в том числе с Claude, GPT и DeepSeek.
Подходит ли Anthropic-формат для Grok?
Любую модель можно вызывать и в OpenAI-формате, и в Anthropic-формате. Для кода на OpenAI SDK проще использовать /v1/chat/completions.
Почему контекст только 256K?
Таков лимит модели в каталоге. Если нужен миллион токенов, выбирайте из моделей с контекстом 1M в списке GET /v1/models.
Как ограничить расход?
Создайте отдельный ключ с дневным лимитом в долларах и списком разрешённых моделей, а в запросах задавайте max_tokens.
Чтобы попробовать модель, создайте ключ в кабинете Zukko: пополнение от $1.
zukko
Платите в 25×
меньше
за Claude Code & ChatGPT
Один ключ fetch_* и base URL api.zukko.pro — в Cursor, Claude Code, Codex и любом SDK.
Похожие статьи
- Grok API из России: как подключить без зарубежной картыПошагово подключаем Grok 4.7, 4.6 и 4.5 через шлюз: ключ, адрес, первый запрос на curl и Python, стриминг, картинки и оплата по СБП или в крипте.
- Claude Sonnet 5.5 через API: подключение, цены и кэш на 18 октября 2026Как вызвать claude-sonnet-5-5 из Python и curl, сколько стоит типичный запрос с кэшем и без и чем модель отличается от Sonnet 5 и Sonnet 4.6.
- Claude на Android в России: что делать, если приложение не ставитсяЕсли официальное приложение Claude не ставится на Android в России, пользоваться моделью с телефона всё равно можно: через веб-чат шлюза или клиент на своём ключе.
- API для Qwen: подключение Qwen 3.8 Max, цена и примеры на PythonПодключаем qwen3.8-max через OpenAI SDK, отправляем картинки, кормим длинный документ и считаем цену типичного запроса по формуле.