Первый запрос к API
Один проверенный путь: регистрация → ключ → список моделей → Chat Completions.
Канонический base URL: https://api.42gpu.ru/vllm/v1
Единственная публичная модель: Qwen/Qwen3.5-397B-A17B-FP8
Зарегистрируйтесь и получите ключ
Создайте аккаунт на 42gpu.ru/register. При регистрации по паролю Welcome Key показывается один раз и сохраняется локально для Quickstart в дашборде.
Если полный ключ уже не виден, откройте API-ключи, нажмите «Создать ключ» и сразу скопируйте секрет. Позже список показывает только безопасный префикс.
Ключ имеет формат sk- + 32 шестнадцатеричных символа. Не публикуйте его и не вставляйте в исходный код.
Сохраните ключ в текущей shell-сессии
read -rsp "42gpu API key: " GPU42_API_KEY && echo
export GPU42_API_KEYread -s не показывает ключ на экране и не записывает его в историю команд. Для проекта используйте secret manager или некоммитящийся .env.
Проверьте доступную модель
curl -sS https://api.42gpu.ru/vllm/v1/models \
-H "Authorization: Bearer $GPU42_API_KEY"{
"object": "list",
"data": [
{
"id": "Qwen/Qwen3.5-397B-A17B-FP8",
"object": "model",
"owned_by": "42gpu",
"context_length": 262144,
"endpoint": "/vllm/v1/chat/completions"
}
]
}Список должен содержать ровно один ID. Этот полный ID требуется передавать в поле model.
Отправьте Chat Completions запрос
curl -i -sS https://api.42gpu.ru/vllm/v1/chat/completions \
-H "Authorization: Bearer $GPU42_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "Qwen/Qwen3.5-397B-A17B-FP8",
"messages": [
{"role": "user", "content": "Ответь одним предложением: что такое GPU?"}
],
"chat_template_kwargs": {"enable_thinking": false},
"max_tokens": 256
}'HTTP/2 200
x-request-id: 8ed0d3d2-…
x-42gpu-request-id: 8ed0d3d2-…
{
"id": "chatcmpl-…",
"object": "chat.completion",
"model": "Qwen/Qwen3.5-397B-A17B-FP8",
"choices": [
{
"index": 0,
"message": {"role": "assistant", "content": "GPU — это …"},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 24,
"completion_tokens": 18,
"total_tokens": 42
}
}Тот же путь на Python
1# pip install openai2import os3from openai import OpenAI45client = OpenAI(6 base_url="https://api.42gpu.ru/vllm/v1",7 api_key=os.environ["GPU42_API_KEY"],8)910models = client.models.list()11print([model.id for model in models.data])1213response = client.chat.completions.create(14 model="Qwen/Qwen3.5-397B-A17B-FP8",15 messages=[16 {"role": "user", "content": "Ответь одним предложением: что такое GPU?"}17 ],18 max_tokens=256,19 extra_body={"chat_template_kwargs": {"enable_thinking": False}},20)2122print(response.choices[0].message.content)23print(response.usage)Как читать ответ
choices[0].message.content — итоговый текст модели.
usage.prompt_tokens и usage.completion_tokens — основа тарификации; total_tokens — их сумма.
X-Request-ID и X-42GPU-Request-ID — идентификаторы для отладки. Сохраните их при ошибке.
Дальше
Reasoning, streaming, tools и multimodal форматы описаны отдельно — без предположения о полной совместимости со всеми полями OpenAI.