npm install @anthropic-ai/sdkimport Anthropic from "@anthropic-ai/sdk";
const apiKey = process.env.GUARD_API_KEY;
if (!apiKey) throw new Error("GUARD_API_KEY is not set");
const client = new Anthropic({
apiKey,
baseURL: "https://api.guardrelay.ai",
});
const message = await client.messages.create({
model: "claude-sonnet-5",
max_tokens: 64,
messages: [{ role: "user", content: "Привет!" }],
});
console.log(message.content);npm install openaiimport OpenAI from "openai";
const apiKey = process.env.GUARD_API_KEY;
if (!apiKey) throw new Error("GUARD_API_KEY is not set");
const client = new OpenAI({
apiKey,
baseURL: "https://api.guardrelay.ai/v1",
});
const response = await client.chat.completions.create({
model: "k3",
messages: [{ role: "user", content: "Привет!" }],
max_tokens: 128,
});
console.log(response.choices[0].message.content);Kimi понимает и Chat Completions, и протокол Anthropic Messages, поэтому подходит и пакет openai, и пакет @anthropic-ai/sdk: разница только в базовом адресе, у второго он без /v1. Ниже вариант на openai. Базовый адрес обязательно с /v1, ключ тот же gd-…, в поле model один из четырёх id — k3 с окном 1 048 576 токенов, а также k3-256k, kimi-for-coding и 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 оно отклоняется. Стрим включается обычным stream: true.
const stream = await client.chat.completions.create({
model: "k3",
messages: [{ role: "user", content: "Разбери задачу по шагам" }],
max_tokens: 1024,
reasoning_effort: "high",
stream: true,
});
for await (const chunk of stream) {
process.stdout.write(chunk.choices[0]?.delta?.content ?? "");
}Composer и Grok доступны через оба пакета. Ниже вариант на openai; на @anthropic-ai/sdk тот же запрос уходит на /v1/messages с полем max_tokens.
import OpenAI from "openai";
const apiKey = process.env.GUARD_API_KEY;
if (!apiKey) throw new Error("GUARD_API_KEY is not set");
const client = new OpenAI({
apiKey,
baseURL: "https://api.guardrelay.ai/v1",
});
const response = await client.chat.completions.create({
model: "composer-2.5",
messages: [{ role: "user", content: "Привет!" }],
max_tokens: 128,
});
console.log(response.choices[0].message.content);