Документация

MD версия

API VEGA - является прокси сервиса Openrouter и предоставляет единый интерфейс для доступа к сотням AI моделей. Совместимость с OpenAI и Openrouter SDK — просто измените base URL и начните работать.

VEGA работает как OpenRouter-compatible proxy. Эндпоинты discovery доступны по /api/v1/models,/api/v1/models/count,/api/v1/providers,/api/v1/key и/api/v1/keys. Бесплатные модели вида :free и модели, у которых одновременно pricing.prompt = 0 иpricing.completion = 0, блокируются и не отдаются из каталога.

Быстрый старт

Начните работу с API VEGA за несколько минут. Используйте привычный OpenAI SDK или отправляйте запросы напрямую.

Использование OpenAI SDK (TypeScript)

typescript
import OpenAI from 'openai';

const openai = new OpenAI({
  baseURL: 'https://api.vega.chat/api/v1',
  apiKey: '<VEGA_API_KEY>'
});

async function main() {
  const completion = await openai.chat.completions.create({
    model: 'openai/gpt-4o-mini',
    messages: [
      { role: 'user', content: 'Привет! Как дела?' }
    ],
  });

  console.log(completion.choices[0].message);
}

main();

Использование OpenAI SDK (Python)

python
from openai import OpenAI

client = OpenAI(
    base_url="https://api.vega.chat/api/v1",
    api_key="<VEGA_API_KEY>"
)

completion = client.chat.completions.create(
    model="openai/gpt-4o-mini",
    messages=[
        {"role": "user", "content": "Привет! Как дела?"}
    ]
)

print(completion.choices[0].message.content)

Прямой API запрос (Python)

python
import requests
import json

response = requests.post(
  url="https://api.vega.chat/api/v1/chat/completions",
  headers={
    "Authorization": "Bearer <VEGA_API_KEY>",
    "Content-Type": "application/json"
  },
  data=json.dumps({
    "model": "openai/gpt-4o-mini",
    "messages": [
      {"role": "user", "content": "Привет!"}
    ]
  })
)

print(response.json())

cURL

bash
curl https://api.vega.chat/api/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $VEGA_API_KEY" \
  -d '{
    "model": "openai/gpt-4o-mini",
    "messages": [
      {"role": "user", "content": "Привет!"}
    ]
  }'

Аутентификация

API VEGA использует API ключи для аутентификации запросов. Получите ключ в Dashboard.

API ключ передается в заголовке Authorization:

Authorization: Bearer vega_xxxxxxxxxxxxx

Безопасность: Храните API ключи в безопасности! Не публикуйте их в публичных репозиториях. Используйте переменные окружения для хранения ключей.

Модели

Доступ к 300+ моделям через единый API. Все модели совместимы с OpenAI форматом.

Список моделей

GET/models

Получить список всех доступных моделей.

curl https://api.vega.chat/api/v1/models \
  -H "Authorization: Bearer YOUR_API_KEY"

Параметры моделей

Каждая модель имеет следующие характеристики:

id

Уникальный идентификатор модели (например, openai/gpt-4o-mini)

context_length

Максимальное количество токенов в контексте

pricing

Стоимость за 1M токенов (prompt и completion)

supported_parameters

Поддерживаемые параметры (tools, streaming, temperature и др.)

API Reference

Base URL:

https://api.vega.chat/api/v1

Chat Completions

POST/chat/completions

Основной эндпоинт для генерации ответов. Полностью совместим с OpenAI Chat API.

Пример запроса:

json
{
  "model": "openai/gpt-4o-mini",
  "messages": [
    {"role": "system", "content": "Ты полезный помощник."},
    {"role": "user", "content": "Привет! Как дела?"}
  ],
  "temperature": 0.7,
  "max_tokens": 1000
}

Пример ответа:

json
{
  "id": "gen-xxxxxxxxxxxxxx",
  "choices": [
    {
      "finish_reason": "stop",
      "message": {
        "role": "assistant",
        "content": "Привет! Всё отлично, спасибо за интерес!"
      }
    }
  ],
  "usage": {
    "prompt_tokens": 20,
    "completion_tokens": 15,
    "total_tokens": 35
  },
  "model": "openai/gpt-4o-mini"
}

Формат запроса

modelstringRequired

Идентификатор модели. Пример: openai/gpt-4o-mini

messagesarrayRequired

Массив сообщений в переписке.

role — роль: "system", "user" или "assistant"

content — содержимое сообщения

name (опционально) — имя отправителя

streamboolean

Включить потоковую передачу ответа. По умолчанию: false

max_tokensinteger

Максимальное количество токенов в ответе

temperaturenumber

Температура сэмплирования (0-2). По умолчанию: 1.0

Формат ответа

id

Уникальный идентификатор генерации

object

Тип объекта: "chat.completion" или "chat.completion.chunk"

choices

Массив вариантов ответа

usage

Статистика токенов (prompt_tokens, completion_tokens, total_tokens)

Параметры

Параметры сэмплирования влияют на процесс генерации токенов моделью.

temperaturefloat, 0.0-2.0

Влияет на разнообразие ответов. Низкие значения делают ответы более предсказуемыми, высокие — более креативными. По умолчанию: 1.0

top_pfloat, 0.0-1.0

Ограничивает выбор токенов до тех, чья суммарная вероятность равна P. По умолчанию: 1.0

top_kinteger

Ограничивает выбор до K наиболее вероятных токенов. По умолчанию: 0 (отключено)

frequency_penaltyfloat, -2.0-2.0

Штраф за частоту использования токенов. По умолчанию: 0.0

presence_penaltyfloat, -2.0-2.0

Штраф за присутствие токенов. По умолчанию: 0.0

seedinteger

Зерно для детерминированной генерации. Повторные запросы с одинаковым seed должны возвращать похожие результаты.

stopstring | array

Последовательности, при которых генерация останавливается.

response_formatobject

Формат ответа. Используйте {"type": "json_object"} для JSON режима.

toolsarray

Определения функций для tool calling. Совместимо с OpenAI форматом.

tool_choicestring | object

Управляет вызовом инструментов: "none", "auto", "required" или конкретная функция.

Streaming

API VEGA поддерживает потоковую передачу ответов (Server-Sent Events) для всех моделей. Установите stream: true в запросе.

TypeScript

typescript
import OpenAI from 'openai';

const openai = new OpenAI({
  baseURL: 'https://api.vega.chat/api/v1',
  apiKey: process.env.VEGA_API_KEY
});

const stream = await openai.chat.completions.create({
  model: 'openai/gpt-4o-mini',
  messages: [{ role: 'user', content: 'Посчитай до 5' }],
  stream: true,
});

for await (const chunk of stream) {
  process.stdout.write(chunk.choices[0]?.delta?.content || '');
}

Python

python
from openai import OpenAI

client = OpenAI(
    base_url="https://api.vega.chat/api/v1",
    api_key="YOUR_API_KEY"
)

stream = client.chat.completions.create(
    model="openai/gpt-4o-mini",
    messages=[{"role": "user", "content": "Посчитай до 5"}],
    stream=True,
)

for chunk in stream:
    if chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="")

Мультимодальность

API VEGA поддерживает различные типы контента: изображения, PDF документы, аудио и видео.

Изображения

Отправляйте изображения в моделях с поддержкой зрения (vision). Поддерживаются URL и base64.

json
{
  "model": "google/gemini-2.5-flash",
  "messages": [
    {
      "role": "user",
      "content": [
        {"type": "text", "text": "Что на этом изображении?"},
        {
          "type": "image_url",
          "image_url": {
            "url": "https://example.com/image.jpg"
          }
        }
      ]
    }
  ]
}

PDF документы

Отправляйте PDF документы для анализа. Поддерживаются URL и base64.

json
{
  "model": "anthropic/claude-sonnet-4",
  "messages": [
    {
      "role": "user",
      "content": [
        {"type": "text", "text": "Основные тезисы документа?"},
        {
          "type": "file",
          "file": {
            "filename": "document.pdf",
            "file_data": "https://example.com/document.pdf"
          }
        }
      ]
    }
  ]
}

Аудио

Отправляйте аудиофайлы для транскрибации или анализа. Требуется base64 кодирование.

json
{
  "model": "google/gemini-2.5-flash",
  "messages": [
    {
      "role": "user",
      "content": [
        {"type": "text", "text": "Транскрибируй аудио"},
        {
          "type": "input_audio",
          "input_audio": {
            "data": "<base64_audio_data>",
            "format": "wav"
          }
        }
      ]
    }
  ]
}

Видео

Отправляйте видеофайлы для анализа. Поддерживаются URL (YouTube для Gemini) и base64.

json
{
  "model": "google/gemini-2.5-flash",
  "messages": [
    {
      "role": "user",
      "content": [
        {"type": "text", "text": "Опиши видео"},
        {
          "type": "video_url",
          "video_url": {
            "url": "https://www.youtube.com/watch?v=..."
          }
        }
      ]
    }
  ]
}

Обработка ошибок

API VEGA возвращает стандартные HTTP коды ошибок.

КодОписание
200Успешный запрос
400Неверный запрос — неверные параметры
401Не авторизован — неверный API ключ
402Недостаточно средств на балансе
403Запрещено — контент заблокирован
429Слишком много запросов — rate limit
502Провайдер недоступен или вернул ошибку
503Сервис временно недоступен

Формат ошибки

json
{
  "error": {
    "code": 401,
    "message": "Invalid API key",
    "metadata": {}
  }
}

Дальнейшие шаги