Документация
Selector: инструкция
Зачем нужен Selector
Selector это единая точка входа к разным LLM-провайдерам; сам Selector предоставляет Ollama-совместимый API.
Он позволяет:
- Использовать одну и ту же схему запросов (
/api/chat, /api/generate) для разных провайдеров.
- Подключать локальные Ollama/LM Studio и облачные OpenAI-compatible сервисы в один пул.
- Вызывать модель
selector, чтобы сервер сам выбрал подходящую доступную модель/провайдера.
- Следить за состоянием провайдеров и лимитами в веб-панели
/info.
Ключевая идея: клиент всегда говорит с одним сервером Selector, а внутри можно менять пул моделей без изменения клиента.
Единый API
Автовыбор модели
Как пользоваться (практически)
1) Откройте веб-панель
/info мониторинг: провайдеры, модели, последние запросы и ошибки.
/docs эта инструкция.
/docs/api подробный API reference с примерами.
2) Зарегистрируйтесь и дождитесь подтверждения администратором
- Регистрация отправляет пользователя в очередь (pending).
- Администратор переводит пользователя в active или rejected.
3) Создайте API ключ
- В веб-панели кнопкой
New API Key (после логина).
- Ключ используется для запросов к API через заголовок
Authorization: Bearer ....
4) Делайте запросы как в Ollama, но на адрес Selector
Основной рабочий режим: используйте model: \"selector\" и передавайте ваш текст.
curl -X POST http://HOST:11400/api/chat \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <SELECTOR_API>" \
-d '{
"model":"selector",
"messages":[{"role":"user","content":"Ты кто?"}],
"stream":false
}'
Что показывает сайт /info
- Верхняя строка метрик: текущее время сервера, uptime, общее число запросов, число ошибок.
- Для пользователя отображается карточка Confidentiality с переключателем проверки конфиденциальности.
- Для гостя карточка Confidentiality и таблицы Recent Requests/Recent Errors скрыты.
- Версия Selector выводится рядом с заголовком Selector Monitor.
Таблица Providers
- Показывает провайдеры и их статус: available, limit, unavailable.
- Показывает занятость провайдера (анимированный индикатор busy, пока идёт обработка запроса).
- Показывает счётчики локальных и облачных моделей по каждому провайдеру.
- Клик по провайдеру открывает модальное окно со списком его local/cloud моделей.
Таблица Models
- Список моделей постраничный: 30 моделей на страницу, пагинация расположена сверху таблицы.
- Есть фильтр по части имени модели.
- Есть переключатель показа: только рабочие модели или все модели.
- Модель показывается одной строкой, повторы объединяются, количество дубликатов отображается в скобках.
- Модели сортируются по размеру; неизвестные размеры (включая < 0.01 Gb) идут в конец.
- Есть отдельная колонка Icons: поддержка изображений (иконка глаза), поддержка инструментов.
- Есть точечная занятость модели: если модель обрабатывает запрос, это видно в её статусе.
- При наведении на модель показывается подсказка с исходными провайдерами экземпляров.
Роли и права
- guest может только смотреть публичный мониторинг; адреса локальных и глобальных узлов маскируются.
- user может работать с API ключами, менять пароль и отправлять запросы в пределах баланса.
- admin может подтверждать регистрации, управлять пользователями, паролями, ролями и балансом.
Баллы и ограничения
- Стартовый баланс пользователя: 1000 баллов.
- Если баланс перестаёт быть положительным, инференс для обычного пользователя блокируется.
- Стоимость зависит от токенов, размера модели и типа модели (локальная/облачная).
- Администраторы могут выполнять запросы независимо от баланса.
Конфиденциальность и чувствительный контент
- Для пользователя можно включать/выключать проверку конфиденциальности в UI.
- Если для облачного запроса обнаружена важная идея, показывается окно подтверждения маршрутизации.
- Конфиденциальные запросы направляются на локальные модели; если выбрана облачная модель, запрос переходит в selector-выбор.
- Работают проверки evil/safety, события логируются для администраторов.
Публикация своих ресурсов
- Пользователь может предоставить в общий пул свой локальный сервер
ollama или LM Studio.
- Для этого используется утилита
scripts/share_resource_agent.py и её обёртки для Linux/Windows.
- После регистрации и heartbeat ресурс появляется в Selector как обычный upstream и его модели участвуют в маршрутизации.
- Если запрос был обработан через ваш ресурс, вам начисляются баллы.
- В кабинете пользователя есть отдельная история начислений по ресурсам: ресурс, модель, токены, баллы, время.
Linux
./share_resource_linux.sh \
--selector-url https://selector.chat-artin.ru \
--selector-api-key sel_ВАШ_API_КЛЮЧ \
--kind ollama \
--base-url http://127.0.0.1:11434 \
--label "home-ollama"
Windows
share_resource_windows.bat ^
--selector-url https://selector.chat-artin.ru ^
--selector-api-key sel_ВАШ_API_КЛЮЧ ^
--kind lmstudio ^
--base-url http://127.0.0.1:1234 ^
--label "home-lmstudio"
Автозапуск
- Linux:
scripts/install_share_resource_systemd.sh
- Windows:
scripts/install_share_resource_task_windows.ps1
В личном кабинете на странице /info есть панель Shared Resources с готовыми командами запуска и кнопками копирования для Linux и Windows.
Настройка Codex на Selector
Codex в режиме --oss может работать через Selector как через Ollama-compatible endpoint.
Для этого укажите адрес Selector в CODEX_OSS_BASE_URL и передайте API ключ в URL (Basic auth).
Быстрый запуск (Linux/macOS)
#!/usr/bin/env bash
export CODEX_OSS_BASE_URL="https://sel_ВАШ_API_КЛЮЧ:@selector.chat-artin.ru"
codex --oss --model gpt-oss:20b
Важно
- Не добавляйте
/v1 в CODEX_OSS_BASE_URL.
- Selector поддерживает маршруты
/api/*, /v1/chat/completions и /responses, которые использует Codex.
Проверка подключения
curl -sS -u "sel_ВАШ_API_КЛЮЧ:" https://selector.chat-artin.ru/api/tags
Если возвращается JSON с моделями, Codex сможет подключиться.
Где смотреть состояние системы
/healthz машинный health.
/info мониторинг для человека.
- В
/info видно: доступность провайдеров, лимиты (limit), занятость (busy), список моделей и их статусы.
- Для администратора доступны детальные служебные логи запросов.
API reference
Подробный список всех endpoint-ов, назначение каждого, форматы запросов/ответов и примеры:
Перейти к API reference
Работа с моделями из UI (admin/user)
- Правый клик по модели открывает модальное окно чата с этой моделью.
- Если модель доступна через несколько провайдеров, в окне доступен выпадающий список выбора провайдера.
- В окне чата есть отправка запроса, редактирование/удаление/перегенерация сообщений и сохранение диалога в файл.
Регистрация и администрирование
- Новая регистрация попадает в waiting list и отображается администратору.
- Админ может approve/reject пользователя, менять роль, пароль и баланс.
- Админ может открыть статистику пользователя: IP-адреса, модели и счётчики запросов.