Для получения чистого Markdown любой страницы добавьте .md к URL страницы.
Для полного индекса документации см. https://api.vega.chat/docs/llms.txt.
Для полного содержания документации см. https://api.vega.chat/docs/llms-full.txt.
Для интеграции AI‑клиента (Claude Code, Cursor и др.) подключитесь к MCP‑серверу по адресу https://api.vega.chat/docs/_mcp/server.

Резервные модели

MD версия

Параметр models позволяет автоматически переключаться на другие модели, если провайдеры основной модели недоступны, ограничены по скорости запросов или отказываются отвечать из‑за модерации контента.

Как это работает

Укажите массив идентификаторов моделей в порядке приоритета. Если первая модель вернёт ошибку, VEGA автоматически попробует следующую модель из списка.

typescript
import { OpenRouter } from '@openrouter/sdk';

const client = new OpenRouter({
  apiKey: '<VEGA_API_KEY>',
});

const completion = await client.chat.send({
  models: ['~anthropic/claude-sonnet-latest', 'gryphe/mythomax-l2-13b'],
  messages: [
    {
      role: 'user',
      content: 'What is the meaning of life?',
    },
  ],
});

console.log(completion.choices[0].message.content);
typescript
const response = await fetch('https://api.vega.chat/api/v1/chat/completions', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer <VEGA_API_KEY>',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    models: ['~anthropic/claude-sonnet-latest', 'gryphe/mythomax-l2-13b'],
    messages: [
      {
        role: 'user',
        content: 'What is the meaning of life?',
      },
    ],
  }),
});

const data = await response.json();
console.log(data.choices[0].message.content);
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({
    "models": ["~anthropic/claude-sonnet-latest", "gryphe/mythomax-l2-13b"],
    "messages": [
      {
        "role": "user",
        "content": "What is the meaning of life?"
      }
    ]
  })
)

data = response.json()
print(data['choices'][0]['message']['content'])

Поведение при переключении

Если выбранная модель возвращает ошибку, VEGA попытается использовать резервную модель. Если резервная модель недоступна или тоже возвращает ошибку, VEGA вернёт эту ошибку.

По умолчанию любой тип ошибки может вызвать использование резервной модели, включая:

  • Ошибки проверки длины контекста
  • Флаги модерации для отфильтрованных моделей
  • Ограничения по скорости запросов
  • Время простоя

Ценообразование

Запросы оплачиваются по тарифу модели, которая в конечном итоге была использована; её идентификатор будет возвращён в атрибуте model тела ответа.

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

Чтобы использовать массив models с SDK OpenAI, включите его в параметр extra_body. В примере ниже сначала будет попытка использовать ~openai/gpt-latest, а массив models будет применяться последовательно в качестве резервных вариантов.

python
from openai import OpenAI

openai_client = OpenAI(
  base_url="https://api.vega.chat/api/v1",
  api_key={{API_KEY_REF}},
)

completion = openai_client.chat.completions.create(
    model="~openai/gpt-latest",
    extra_body={
        "models": ["~anthropic/claude-sonnet-latest", "gryphe/mythomax-l2-13b"],
    },
    messages=[
        {
            "role": "user",
            "content": "What is the meaning of life?"
        }
    ]
)

print(completion.choices[0].message.content)
typescript
import OpenAI from 'openai';

const client = new OpenAI({
  baseURL: 'https://api.vega.chat/api/v1',
  apiKey: '{{API_KEY_REF}}',
});

async function main() {
  // @ts-expect-error
  const completion = await client.chat.completions.create({
    model: '~openai/gpt-latest',
    models: ['~anthropic/claude-sonnet-latest', 'gryphe/mythomax-l2-13b'],
    messages: [
      {
        role: 'user',
        content: 'What is the meaning of life?',
      },
    ],
  });
  console.log(completion.choices[0].message);
}

main();