# Python 接入 Grok API

使用 OpenAI SDK 和 Grok API Dev base URL 在 Python 中调用 Grok 4.5。本页包含普通请求、AsyncOpenAI、流式输出、超时和 API 错误处理。

## 安装 Python SDK

```bash
python -m pip install --upgrade openai
```

```bash
export GROK_API_DEV_KEY="sk-lg-YOUR_API_KEY"
```

## 发送第一个 Grok 请求

```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)
```

## 使用 AsyncOpenAI

```python
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())
```

## 流式获取 Grok 回答

```python
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 会自动重试部分临时故障。设置有限的 timeout 和 max_retries，避免请求无限等待或重复。

```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：检查 GROK_API_DEV_KEY 以及密钥是否有效。
- 404：检查 base URL 和 grok-4.5 模型 ID。
- 429：降低并发量并等待后重试。
- 临时 5xx：使用次数有限的指数退避重试。

[完整 API 错误参考](https://grok-api.dev/zh/docs/errors)

## 相关页面

- [Messages API](https://grok-api.dev/zh/docs/messages)
- [Streaming API](https://grok-api.dev/zh/docs/streaming)
- [TypeScript](https://grok-api.dev/zh/docs/typescript)
- [cURL](https://grok-api.dev/zh/docs/curl)
