python -m pip install anthropicimport os
import anthropic
api_key = os.environ.get("GUARD_API_KEY")
if not api_key:
raise RuntimeError("GUARD_API_KEY is not set")
client = anthropic.Anthropic(
api_key=api_key,
base_url="https://api.guardrelay.ai",
)
message = client.messages.create(
model="claude-sonnet-5",
max_tokens=64,
messages=[{"role": "user", "content": "Привет!"}],
)
print(message.content)python -m pip install openaiimport os
from openai import OpenAI
api_key = os.environ.get("GUARD_API_KEY")
if not api_key:
raise RuntimeError("GUARD_API_KEY is not set")
client = OpenAI(
api_key=api_key,
base_url="https://api.guardrelay.ai/v1",
)
response = client.chat.completions.create(
model="k3",
messages=[{"role": "user", "content": "Привет!"}],
max_tokens=128,
)
print(response.choices[0].message.content)Kimi понимает и Chat Completions, и протокол Anthropic Messages, поэтому подходит и пакет openai, и пакет anthropic: разница только в базовом адресе, у anthropic он без /v1. Ниже вариант на openai как самый привычный. Базовый адрес обязательно с /v1, ключ тот же gd-…, в поле model один из четырёх id.
Значение model | Окно контекста |
|---|---|
k3 | 1 048 576 токенов |
k3-256k | 262 144 токена |
kimi-for-coding | 262 144 токена |
kimi-for-coding-highspeed | 262 144 токена |
Глубину рассуждения задаёт reasoning_effort, и его принимают все четыре модели: значение уходит наверх как прислано, а сам Kimi документирует уровни low, high и max. У kimi-for-coding и kimi-for-coding-highspeed есть ещё поле thinking ровно в виде {"type": "enabled", "keep": "all"}; у моделей K3 оно отклоняется. Подробности на странице Thinking / effort.
response = client.chat.completions.create(
model="k3",
messages=[{"role": "user", "content": "Разбери задачу по шагам"}],
max_tokens=1024,
reasoning_effort="high",
stream=True,
)
for chunk in response:
piece = chunk.choices[0].delta.content
if piece:
print(piece, end="")Composer и Grok работают на всех трёх поверхностях, поэтому подойдёт и anthropic, и openai. Поле tools они принимают: модель вернёт вызов, а исполнить его и вернуть результат должен ваш код.
import os
from openai import OpenAI
api_key = os.environ.get("GUARD_API_KEY")
if not api_key:
raise RuntimeError("GUARD_API_KEY is not set")
client = OpenAI(
api_key=api_key,
base_url="https://api.guardrelay.ai/v1",
)
response = client.chat.completions.create(
model="cursor-grok-4.6-high",
messages=[{"role": "user", "content": "Привет!"}],
max_tokens=128,
)
print(response.choices[0].message.content)