Быстрый старт c VseLLM
Начните работу с VseLLM
VseLLM – это единый API для доступа к различным LLM и мультимодальным AI‑моделям без необходимости напрямую работать с зарубежными вендорами. Платформа берёт на себя маршрутизацию запросов, биллинг и стабильность доступа.
- Платёжная система (минимум 500 ₽)
- Активация купона
- Договор для юрлиц
Пример использования
import openai
client = openai.OpenAI(
api_key="your-api-key",
base_url="https://api.vsellm.ru/v1"
)
response = client.chat.completions.create(
model="openai/gpt-5",
messages=[
{"role": "user", "content": "Привет!"}
]
)
print(response.choices[0].message.content)
Модели
Список доступных моделей и их характеристик. Полный список моделей доступен в каталоге на сайте.
Текстовые модели
Используются для работы с текстом: генерация, анализ, классификация, суммаризация и другие задачи.
import openai
client = openai.OpenAI(
api_key="your-api-key",
base_url="https://api.vsellm.ru/v1"
)
response = client.chat.completions.create(
model="openai/gpt-5",
messages=[
{"role": "user", "content": "Привет!"}
]
)
print(response.choices[0].message.content)
Эмбеддинги
Преобразование текста в числовые векторы для поиска и RAG.
import openai
client = openai.OpenAI(
api_key="your-api-key",
base_url="https://api.vsellm.ru/v1"
)
response = client.embeddings.create(
model="openai/text-embedding-3-small",
input="Текст для векторизации"
)
embedding = response.data[0].embedding
print(f"Embedding dimension: {len(embedding)}")
Аудио
Работа с аудио (Speech-to-Text).
import openai
from pathlib import Path
client = openai.OpenAI(
api_key="your-api-key",
base_url="https://api.vsellm.ru/v1"
)
audio_path = Path("speech.mp3")
with audio_path.open("rb") as audio_file:
response = client.audio.transcriptions.create(
file=audio_file,
model="openai/whisper-1"
)
print("Распознанный текст:")
print(response.text)
Изображения
Генерация изображений по текстовому описанию.
import openai
import base64
import time
from pathlib import Path
client = openai.OpenAI(
api_key="your-api-key",
base_url="https://api.vsellm.ru/v1"
)
model = "MODEL_ID"
prompt = (
"Сгенерируй фотореалистичный цветок оранжевой лилии "
"на зеленом фоне, без текста, формат 1024x1024"
)
size = "1024x1024"
n = 1
quality = "low"
response = client.images.generate(
model=model,
prompt=prompt,
size=size,
n=n,
quality=quality
)
Path("out").mkdir(exist_ok=True)
if not response.data:
raise RuntimeError("В ответе нет изображений")
for i, img in enumerate(response.data, 1):
if not img.b64_json:
continue
raw = base64.b64decode(img.b64_json)
fp = Path("out") / f"Google: Nano Banana Pro (Gemini 3 Pro Image Preview)_{int(time.time())}_{i}.png"
fp.write_bytes(raw)
print("Saved:", fp)
Коды ошибок
Со своей стороны VseLLM никак дополнительно не лимитирует запросы к API, однако у провайдеров существуют свои ограничения. Они отличаются от провайдера к провайдеру, а также от модели к модели.
Создание дополнительных API ключей не влияет на ваши лимиты, так как мы управляем пропускной способностью глобально. Однако для разных моделей действуют разные лимиты, поэтому вы можете распределить нагрузку, если столкнётесь с ограничениями.
Если для вашего проекта необходимы бóльшие лимиты, чем доступны в данный момент, VseLLM может предложить дополнительные решения. Пожалуйста, свяжитесь с нами в этом случае.
Отслеживание использования
Вы можете отслеживать статистику использования и управлять API ключами в соответствующих разделах Личного кабинета.
Коды ошибок
При превышении лимитов API возвращает следующие коды ошибок:
FAQ
Баланс учитывается в рублях. Списание происходит по факту обработки запросов в модели pay-as-you-go — вы платите только за использованные токены.
Да. Вы сами выбираете тариф для каждого запроса, направляя его на соответствующий Base URL.
Для обеспечения стабильности VseLLM использует несколько upstream-провайдеров. В зависимости от маршрута и текущей нагрузки задержка может отличаться.
Основные причины:
- временные проблемы у конкретного провайдера;
- высокая нагрузка;
- автоматическое переключение между источниками.
Рекомендуется использовать fallback-модели.
Да. Ограничения могут устанавливаться на стороне провайдеров и меняться в зависимости от нагрузки.
При высокой нагрузке могут срабатывать ограничения частоты запросов или временная защита источников.
Поведение модели может изменяться из-за:
- обновлений у провайдера;
- смены upstream-источника;
- изменений нагрузки.
VseLLM не модифицирует ответы моделей.
Да. Отдельные модели могут временно отключаться. Для продакшена рекомендуется заранее настраивать fallback-модели.
VseLLM не логирует и не кэширует запросы на своей стороне.
Если конкретный провайдер поддерживает кэширование, ответ может быть отдан из его кэша при повторяющихся запросах в короткий промежуток времени. Это зависит от модели и источника и происходит не всегда.
VseLLM работает со всеми инструментами, использующими OpenAI-совместимый API, включая:
- официальный OpenAI SDK;
- LangChain;
- n8n;
- Msty;
- CLI-клиенты и самописные решения.
Да, при корректных архитектурных ожиданиях.
В продакшене необходимо учитывать:
- вариативность latency;
- возможные таймауты и ошибки;
- временную недоступность отдельных моделей;
- автоматическое переключение между провайдерами.
Интеграции
VseLLM работает со всеми инструментами, которые используют OpenAI-совместимый API.
Claude Code
Claude Code — это продвинутый CLI-инструмент для работы с моделями Anthropic. С VseLLM вы можете использовать этот инструмент, направляя запросы через наш единый API.
Установка
Мы рекомендуем использовать npm для установки. Убедитесь, что у вас установлен Node.js.
npm install -g @anthropic-ai/claude-code
Переменные окружения
Для корректной работы с VseLLM вам нужно переопределить адрес API. Claude Code использует стандартные переменные для OpenAI-совместимых эндпоинтов.
export OPENAI_BASE_URL="https://api.vsellm.ru/v1"
export OPENAI_API_KEY="sk-..."
$env:OPENAI_BASE_URL="https://api.vsellm.ru/v1"
$env:OPENAI_API_KEY="sk-..."
Если вы используете версию, требующую именно Anthropic API, попробуйте: export ANTHROPIC_BASE_URL="https://api.vsellm.ru"
Использование
Запустите инструмент и начните работу.
claude
Или с конкретным промптом:
claude "Напиши скрипт на Python для парсинга сайтов"
Cursor + VseLLM
Cursor — это самый популярный AI-редактор кода. Подключив его к VseLLM, вы получаете доступ к моделям уровня Pro (Claude 4.5 Sonnet, GPT-5) без ежемесячной подписки, оплачивая только то, что используете.
Откройте Settings
В правом верхнем углу Cursor нажмите на иконку шестеренки ⚙️ (Settings) или используйте комбинацию клавиш Ctrl + Shift + J.
Выберите вкладку Models
В меню настроек перейдите в раздел Models.
Активируйте OpenAI Compatible
Найдите секцию "OpenAI API Key" (иногда она скрыта под "Override OpenAI Base URL").
- Base URL:
https://api.vsellm.ru/v1 - API Key: введите ваш ключ VseLLM (начинается на sk-...)
Добавьте модели
Cursor по умолчанию может не видеть все модели. В разделе "Model Names" нажмите + Add model и вручную добавьте:
openai/gpt-5anthropic/claude-sonnet-4.5google/gemini-3.1-pro-preview
Затем отключите стандартные модели Cursor (gpt-4, gpt-3.5) переключателями, чтобы убедиться, что используются именно ваши настроенные модели.
Частые проблемы
Убедитесь, что вы вставили ключ именно в поле для OpenAI API Key, а не Anthropic или Azure.
Функция Tab (Copilot++) в Cursor работает на их собственных серверах и требует подписки Pro. VseLLM обеспечивает работу Чата (Ctrl+L) и Composer (Ctrl+I).
LangChain
LangChain — это фреймворк для разработки приложений на базе больших языковых моделей. VseLLM легко интегрируется с LangChain.
Установка
pip install langchain-openai
Использование
from langchain_openai import ChatOpenAI
from langchain_core.messages import HumanMessage, SystemMessage
chat = ChatOpenAI(
model="openai/gpt-5",
openai_api_key="sk-...",
openai_api_base="https://api.vsellm.ru/v1"
)
messages = [
SystemMessage(content="Ты - полезный ассистент."),
HumanMessage(content="Как подключить VseLLM к LangChain?")
]
response = chat.invoke(messages)
print(response.content)
n8n
VseLLM предоставляет доступ к Enterprise‑серверу n8n для действующих клиентов.
Активация
Перейдите в раздел «Аккаунт» в Личном кабинете, найдите блок «Сервис n8n» и нажмите «Активировать n8n».
Добавьте ноду AI Agent
В workflow добавьте ноду AI Agent через Node Picker.
Настройка credentials
- Credential Name — VseLLM
- API Key — ваш API ключ
- Base URL —
https://api.vsellm.ru
Примечание: Приглашение в n8n должно быть принято в течение 24 часов.
Gemini CLI
Используйте мощные модели Google Gemini 3.1 Pro Preview прямо из терминала через VseLLM.
Установка
Вы можете использовать любой OpenAI-совместимый CLI инструмент. Мы рекомендуем простой Python-скрипт или chatblade.
pip install chatblade
Настройка
Настройте Chatblade на использование VseLLM.
export OPENAI_API_BASE="https://api.vsellm.ru/v1"
export OPENAI_API_KEY="sk-..."
Запуск
Обращайтесь к модели Gemini через VseLLM:
chatblade -c "google/gemini-3.1-pro-preview" "Расскажи о машинном обучении"
Kilo Code
Kilo — это легкий и быстрый редактор кода для терминала. Настройте его на работу с VseLLM.
Установка
cargo install kilo
Конфигурация
Добавьте в config.toml:
[llm]
api_base = "https://api.vsellm.ru/v1"
api_key = "sk-..."
model = "openai/gpt-5"
Проверка
kilo --ask "Как отсортировать массив в Rust?"
OpenClaw
Официальная документация OpenClaw: docs.openclaw.ai
OpenClaw — это мощный open-source агент, который завоевал популярность благодаря своей гибкости и способности выполнять сложные задачи автономно.
Установка
curl -fsSL https://openclaw.bot/install.sh | bash -s -- --no-onboard
Зачем
это нужно: OpenClaw написан на Node.js и требует глобальной установки в
систему. Этот единый скрипт автоматически скачает нужную версию среды выполнения
(Node.js v22) и установит сам пакет openclaw, чтобы вы могли вызывать
его из любого места в терминале.
Конфигурация (~/.openclaw/openclaw.json)
Файл конфигурации определяет "мозг" агента. По умолчанию он не создаётся, вам нужно создать его вручную.
Зачем это нужно: Без этого файла OpenClaw не знает, к какой
нейросети подключаться и какой ключ использовать. baseUrl указывает
агенту обращаться к API VseLLM, api: "openai-completions" говорит
использовать стандартный формат запросов, а блок models фиксирует
доступные лимиты контекста.
Вставьте туда следующий рабочий эталон конфигурации:
Строгий парсер JSON: OpenClaw использует сверхстрогую проверку
формата (Zod). apiKey обязана быть прямой строкой. В массиве
models запрещены любые сторонние ключи вроде reasoning
или input. Шаг вправо, шаг влево — и модель отбрасывается,
сбрасывая лимит токенов в дефолтные 4096.
{
"models": {
"mode": "merge",
"providers": {
"custom-api-vsellm-ru": {
"baseUrl": "https://api.vsellm.ru/v1",
"apiKey": "sk-ВАШ_КЛЮЧ",
"api": "openai-completions",
"models": [
{
"id": "deepseek/deepseek-v3.2",
"name": "deepseek/deepseek-v3.2",
"contextWindow": 128000,
"maxTokens": 4096
}
]
}
}
},
"tools": {
"byProvider": {
"custom-api-vsellm-ru": {
"deny": ["*"]
}
}
},
"agents": {
"defaults": {
"model": {
"primary": "custom-api-vsellm-ru/deepseek/deepseek-v3.2"
}
}
}
}
Блок
tools.byProvider.deny: ["*"] жёстко запрещает агенту использовать
встроенные утилиты файловой системы. Это нужно, чтобы бот не уходил в бесконечные
циклы чтения системных файлов (вроде SOUL.md) и общался с вами
напрямую.
Проверка подключения
# Исправление проблем со схемой JSON
openclaw doctor --fix
# Список подхваченных моделей и их контекстное окно
openclaw models list
Зачем
это нужно: Команда doctor проверит ваш свежий файл
openclaw.json на предмет скрытых опечаток в структуре JSON и попытается
их исправить. Команда models list устанавливает тестовое соединение с
VseLLM. Если интеграция прошла успешно, она выдаст таблицу с моделью
deepseek-v3.2 и подтвердит лимит контекста в 128k токенов.
Как общаться с ботом?
Самый простой способ — общаться прямо в терминале:
openclaw chat
Зачем это нужно: Запускает локальную оболочку чата прямо в вашем окне терминала. Это самый быстрый способ протестировать бота, проверить, как он вызывает функции и читает файлы, без необходимости сразу настраивать сторонние мессенджеры.
Также вы
можете привязать агента к Telegram-боту, добавив в корневой конфиг
openclaw.json блок:
{
"channels": {
"telegram": {
"enabled": true,
"botToken": "XXXXXXXXX:YYYYYYYYYYYYYYYYYYYYYYYYYYYYY"
}
}
}
Зачем это нужно: Привязка к Telegram позволяет боту работать в фоновом режиме (если запущен gateway-сервис). Вам больше не нужно держать открытым терминал — вы можете давать агенту задачи с телефона, а он будет автономно кодить и выполнять их на вашем сервере.
Запуск как фоновый сервис (systemd)
Для
серверного деплоя без интерфейса — используйте openclaw gateway через
systemd.
cat > /etc/systemd/system/openclaw.service << 'EOF'
[Unit]
Description=OpenClaw Gateway Service
After=network.target
[Service]
Type=simple
User=root
ExecStart=/usr/bin/openclaw gateway
Restart=always
RestartSec=10
Environment=NODE_ENV=production
[Install]
WantedBy=multi-user.target
EOF
systemctl daemon-reload
systemctl enable --now openclaw
Зачем
это нужно: Если запустить бота для Telegram банальной командой
openclaw gateway, то при закрытии SSH-сессии или окна консоли бот
умрёт. Systemd-юнит превращает это в системный фоновый процесс. Бот будет
автоматически стартовать при перезагрузке сервера и подниматься в случае неожиданных
падений благодаря параметру Restart=always.
Важно: Никогда не пытайтесь устанавливать deepseek-r1 в
качестве основного агента для Telegram или чата. R1 — это модель с цепочкой рассуждений
(reasoning model), которая на
стороне OpenRouter/VseLLM обрушит весь шлюз OpenClaw 400 ошибкой при попытке передать ей
встроенные penalty-параметры. Используйте строго V3.2.
Рекомендуемые модели для OpenClaw
Используйте
deepseek/deepseek-v3.2 в качестве основного агента. Это самая стабильная модель,
которая полностью поддерживает Tool Calls, Streaming и Penalty Parameters, встроенные в ядро
OpenClaw.
# Модель ID | Контекст
# deepseek/deepseek-v3.2 | 128k ✅ рекомендуется
# anthropic/claude-sonnet-4.5 | 200k ✅ рекомендуется
# openai/gpt-5 | 128k
# openai/gpt-5-nano | 128k (простые чаты)
# google/gemini-2.5-flash | 1M
# qwen/qwen3-235b-a22b | 128k
Решение возможных проблем
Вызовите дебаг командой openclaw gateway status --deep. Главные причины:
- Конфликт портов (EADDRINUSE): какой-то другой инстанс или софт (например, локальный Ollama) занял нужный порт.
- Падение парсера конфига: проверьте синтаксис
openclaw.jsonчерезopenclaw doctor.
Проверьте статус каналов: openclaw channels status --probe. Если пишет
"connected", но ответов нет — убедитесь, что в Telegram (через BotFather) у бота
выключен Privacy Mode. По умолчанию OpenClaw игнорирует сообщения в группах, если
нет прямого упоминания бота ("mention required").
Проверьте, что вы используете https в Base URL. VseLLM работает
только по защищённому протоколу:
"baseUrl": "https://api.vsellm.ru/v1" ✅
"baseUrl": "http://api.vsellm.ru/v1" ❌
OpenClaw использует крайне строгий парсер формата конфигурации. Если вы добавили в
раздел models нестандартные ключи (например, `"reasoning": false` или
`"input": ["text"]`), валидатор крашнется, отбросит всю вашу кастомную конфигурацию
и откатится на безопасные настройки с лимитом в 4096 токенов.
Решение: уберите всю отсебятину из models, оставьте
строго id, name, contextWindow и
maxTokens. Затем перезагрузите шлюз.
Помечается как Non-fatal — gateway не падает. Это heartbeat или
Telegram-polling в момент нестабильной сети. Ограничьте активные часы:
openclaw config set agents.defaults.heartbeat '{"every":"30m","activeHours":{"start":"08:00","end":"22:00"}}'
Логи без шума: journalctl -u openclaw -f | grep -v "Non-fatal"
OpenClaw перемещает некоторые ключи между версиями. Автоматическое исправление:
openclaw doctor --fix
Для задач, требующих сложной логики (например, написание кода), используйте
deepseek/deepseek-v3.2 или anthropic/claude-sonnet-4.5.
Для простых чатов подойдет openai/gpt-5-nano.
OpenDevin
OpenDevin — это автономный AI-инженер, способный писать код, исправлять баги и деплоить приложения. Используйте VseLLM как мозговой центр для OpenDevin.
Установка
docker run -it \
--pull=always \
-e SANDBOX_USER_ID=$(id -u) \
-e LLM_API_KEY="sk-..." \
-e LLM_BASE_URL="https://api.vsellm.ru/v1" \
-e LLM_MODEL="openai/gpt-5" \
-v $(pwd)/workspace:/opt/workspace_base \
-v /var/run/docker.sock:/var/run/docker.sock \
-p 3000:3000 \
ghcr.io/opendevin/opendevin:main
Конфигурация через UI
- Model:
openai/gpt-5 - Base URL:
https://api.vsellm.ru/v1 - API Key: Ваш ключ
Выбор модели: Для сложных задач программирования рекомендуем anthropic/claude-3-5-sonnet.
Roo Code
Roo Code — это популярное расширение для VS Code, которое интегрирует AI прямо в ваш редактор. Ранее известный как Roo.
Установка
Найдите Roo Code в маркетплейсе VS Code и установите расширение.
Настройки провайдера
Откройте панель Roo Code (иконка в левом сайдбаре) и перейдите в настройки (шестеренка).
Выберите API Provider: OpenAI Compatible.
Параметры подключения
- Base URL:
https://api.vsellm.ru/v1 - API Key: Ваш ключ (sk-...)
- Model ID:
openai/gpt-5илиanthropic/claude-sonnet-4.5
Ошибка "404 Not Found": Убедитесь, что вы добавили /v1 в конце Base URL: https://api.vsellm.ru/v1
Универсальная интеграция
VseLLM совместим практически с любым инструментом, который поддерживает OpenAI API и смену Base URL.
https://api.vsellm.ru/v1
Протестированные инструменты
| Инструмент | Тип | Настройка |
|---|---|---|
| LibreChat | Чат-интерфейс | В librechat.yaml укажите endpoint |
| SillyTavern | RP интерфейс | Выберите "OpenAI Compatible" в настройках API |
| Jan.ai | Локальный клиент | Добавьте Custom Model Provider |
| Continue.dev | VS Code Ext | В config.json добавьте провайдера "openai" |
Поддержка
Каналы обращения
Как составить запрос
Важно: Все запросы без указания необходимой информации рассматриваться не будут.
Регламент ответа
Что не входит в поддержку
Примечание: Поддержка не включает консультации по программированию и разработке сторонних интеграций.
Плановые работы
Возможны окна обслуживания; уведомление направляется в Telegram.