Grok API на Python
Обновлено:
Минимальная рабочая интеграция Grok API Dev с официальным Python OpenAI SDK: синхронный запрос, async и потоковый ответ.
Установка Python SDK
Bash
python -m pip install --upgrade openaiBash
export GROK_API_DEV_KEY="sk-lg-YOUR_API_KEY"Первый запрос к Grok API Dev
Python
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["GROK_API_DEV_KEY"],
base_url="https://api.llm-gate.tech/v1",
timeout=3600.0,
max_retries=2,
)
response = client.responses.create(
model="grok-4.5",
input="Explain SSE in two sentences.",
)
print(response.output_text)
print(response.usage)Асинхронный клиент
Python async
import asyncio
import os
from openai import AsyncOpenAI
client = AsyncOpenAI(
api_key=os.environ["GROK_API_DEV_KEY"],
base_url="https://api.llm-gate.tech/v1",
)
async def main() -> None:
response = await client.responses.create(
model="grok-4.5",
input="Hello!",
)
print(response.output_text)
asyncio.run(main())Streaming
Python streaming
stream = client.responses.create(
model="grok-4.5",
input="Write a short Python example.",
stream=True,
)
for event in stream:
if event.type == "response.output_text.delta":
print(event.delta, end="", flush=True)Повторы и таймауты
В OpenAI SDK уже есть механизм повторных запросов. Свой механизм ретраев добавлять не нужно: задайте max_retries и timeout при создании клиента.
Python
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["GROK_API_DEV_KEY"],
base_url="https://api.llm-gate.tech/v1",
max_retries=2,
timeout=3600.0,
)- 401: проверьте ключ и переменную окружения. Повтор без исправления не поможет.
- 404: проверьте ID модели и Base URL.
- 429: дождитесь Retry-After и уменьшите параллелизм.
- 500, 504 или 529: ограниченно повторите запрос с backoff и jitter.
Полный список кодов и способы их обработки собраны на странице «Ошибки API».