Chat Completions API
API Chat Completions позволяет отправлять запросы к AI моделям и получать ответы.
Эндпоинт
POST
/v1/chat/completionsАутентификация: Требуется аутентификация по API ключу. Включите ваш API ключ в заголовок Authorization:-H "Authorization: Bearer gk-ваш_API_ключ..."
Формат запроса
Заголовки
Authorization: Bearer <ваш-API-ключ>
Content-Type: application/jsonПараметры запроса
| Параметр | Тип | Обязательно | Описание |
|---|---|---|---|
| model | string | Да | ID модели (например, Qwen/Qwen3-235B-A22B-Instruct-2507-FP8) |
| messages | array | Да | Массив объектов сообщений |
| stream | boolean | Нет | Включить потоковую передачу (по умолчанию: false) |
| temperature | number | Нет | Температура выборки (0-2) |
| max_tokens | integer | Нет | Максимум токенов в ответе |
Объект сообщения
| Параметр | Тип | Обязательно | Описание |
|---|---|---|---|
| role | string | Да | Одно из: system, user, assistant |
| content | string | Да | Содержимое сообщения |
Примеры
Базовый запрос
curl -X POST https://api.aigonka.ru/v1/chat/completions \
-H "Authorization: Bearer gk-ваш_API_ключ" \
-H "Content-Type: application/json" \
-d '{
"model": "Qwen/Qwen3-235B-A22B-Instruct-2507-FP8",
"messages": [
{
"role": "user",
"content": "Привет, как дела?"
}
]
}'Ответ
{
"id": "chatcmpl-abc123",
"object": "chat.completion",
"created": 1705312200,
"model": "Qwen/Qwen3-235B-A22B-Instruct-2507-FP8",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "Привет! У меня всё хорошо, спасибо, что спросили."
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 13,
"completion_tokens": 15,
"total_tokens": 28
}
}Пример на Python
from openai import OpenAI
client = OpenAI(
api_key="gk-ваш_API_ключ",
base_url="https://api.aigonka.ru/v1"
)
response = client.chat.completions.create(
model="Qwen/Qwen3-235B-A22B-Instruct-2507-FP8",
messages=[
{"role": "system", "content": "Вы полезный ассистент."},
{"role": "user", "content": "Какая сегодня погода?"}
],
temperature=0.7,
max_tokens=100
)
print(response.choices[0].message.content)Пример на TypeScript
import OpenAI from 'openai';
const client = new OpenAI({
apiKey: 'gk-ваш_API_ключ',
baseURL: 'https://api.aigonka.ru/v1'
});
const response = await client.chat.completions.create({
model: 'Qwen/Qwen3-235B-A22B-Instruct-2507-FP8',
messages: [
{ role: 'system', content: 'Вы полезный ассистент.' },
{ role: 'user', content: 'Какая сегодня погода?' }
],
temperature: 0.7,
max_tokens: 100
});
console.log(response.choices[0].message.content);Биллинг
Каждый запрос автоматически тарифицируется на основе использования токенов:
- Цена за токен: $0.000000125
- Биллинг: Вычитается из вашего баланса
- Заголовки: Информация о биллинге включена в заголовки ответа
Заголовки ответа
X-Billing-Tokens: 28
X-Billing-Cost: 0.0035
X-Balance-Remaining: 2.99Ответы с ошибками
401 Unauthorized
{
"error": {
"message": "Неверный API ключ",
"type": "unauthorized"
}
}402 Payment Required
{
"error": {
"message": "Недостаточно средств",
"type": "insufficient_balance"
}
}429 Превышен лимит
{
"error": {
"message": "Превышен лимит запросов",
"type": "rate_limit_exceeded"
}
}Потоковая передача
Включите потоковую передачу, установив stream: true:
curl -X POST https://api.aigonka.ru/v1/chat/completions \
-H "Authorization: Bearer gk-ваш_API_ключ" \
-H "Content-Type: application/json" \
-d '{
"model": "Qwen/Qwen3-235B-A22B-Instruct-2507-FP8",
"messages": [{"role": "user", "content": "Привет!"}],
"stream": true
}'