Провайдеры языковых моделей
Провайдер языковых моделей (LLM) — сохранённое в платформе подключение к сервису, который отдаёт
ответы моделей: адрес эндпоинта, способ авторизации, параметры запроса. Провайдеров вы ведёте
в разделе Администрирование → LLM и сценарии → Провайдеры LLM (/settings/administration/llm/providers).
Провайдер сам по себе не даёт ассистенту модель: чтобы модель появилась в интерфейсе, её нужно
завести в реестре AI-модели и привязать к провайдеру — см. Модели и политики.
Сохранённый ключ авторизации платформа не показывает после сохранения и не отдаёт в браузер.
Модели закрытого контура появляются в каталоге сами; провайдера вручную заводят для сервисов за
пределами контура, включая централизованный OpenAI-совместимый API языковых моделей.
Что вам понадобится
- глобальная роль
admin: раздел Администрирование открыт только ей; - адрес эндпоинта генерации у выбранного сервиса;
- ключ авторизации или пара
client_id:client_secretдля OAuth; - для закрытого контура — идентификатор рабочего пространства во внешнем сервисе.
Как платформа ведёт модели системного провайдера
Состав моделей системного провайдера ведёт платформа: она сама перечитывает каталог контура и обновляет реестр, поэтому такую строку не создают кнопкой Создать провайдер и не наполняют вручную. В таблице провайдеров у неё есть бейдж Системный, а над таблицей показана строка Системный провайдер контура: ….
| Вид | Значение | Что делать |
|---|---|---|
| Нейтральная строка | в каталоге N моделей | Ничего: каталог доступен. |
| Предупреждение | шлюз ответил пустым каталогом: моделей этого класса в контуре нет | Проверьте, что в контуре развёрнуты модели нужного класса. |
| Предупреждение | шлюз не ответил каталогом, состав моделей оставлен без изменений | Повторите синхронизацию; прежний состав сохранён. |
| Предупреждение | каталог недоступен N проходов подряд — состав моделей не менялся | Обратитесь к тому, кто отвечает за контур. |
| Предупреждение | адрес шлюза задан неверно — … | В интерфейсе исправить нельзя: адрес задают при развёртывании. |
| Предупреждение | завести провайдера не удалось, платформа повторит попытку | В интерфейсе исправить нельзя: дождитесь следующей попытки или обратитесь к службе эксплуатации. |
Строка показывает время последнего прохода и интервал опроса. Кнопка Синхронизировать сейчас перечитывает каталог немедленно; при успехе платформа показывает уведомление Каталог перечитан, при отказе — Не удалось перечитать каталог. Интервал опроса в интерфейсе не настраивается.
На каждом проходе платформа восстанавливает адрес генерации, адрес каталога и состояние Провайдер активен системной строки. Провайдеры, созданные администратором, автоматика не читает, не меняет и не архивирует, даже если они подключены к тому же адресу.
Примечание. Если адрес контура не задан при развёртывании, системного провайдера в инсталляции нет: строка состояния не показывается, а состав провайдеров ведут вручную.
Как подключить провайдера языковых моделей
Нажмите Создать провайдер: платформа открывает окно Новый LLM-провайдер с пятью секциями — Основные настройки, Подключение, Модель и доступ, Параметры генерации, Расширенные параметры. Начните с поля Шаблон провайдера: платформа подставляет адреса и режимы, характерные для выбранного сервиса, а вы меняете только отличия.
| Шаблон | Что подставляется | Что задать вручную |
|---|---|---|
| Уника AI | Без авторизации, поле workspace_id в дополнительных параметрах | Адрес генерации |
| Кастомный провайдер | OpenAI-совместимый контракт и Bearer | Адреса, ключ, поля контракта |
Шаблон — только заготовка: платформа хранит явные настройки провайдера, а не тип шаблона. Перезаполнение формы работает лишь при создании: у сохранённого провайдера смена шаблона не трогает адреса, ключ и параметры.
Шаблон Кастомный провайдер открывает три дополнительных поля, от которых зависит остальная форма.
| Поле | Значения | На что влияет |
|---|---|---|
| Контракт API | OpenAI-compatible, Generic HTTP | Набор полей тела запроса и разбор ответа |
| Авторизация | Bearer / API key, OAuth, Без авторизации | Набор полей секции Подключение |
| Потоковый режим | OpenAI SSE, Отключён | Приходит ли ответ по частям |
При контракте Generic HTTP платформа принудительно ставит потоковый режим Отключён: такой
провайдер отдаёт ответ целиком.
Примечание. Если конструктор кастомных провайдеров выключен в инсталляции, шаблон называется Другой сервис, а поля Контракт API, Авторизация и Потоковый режим не отображаются.
Как заполнить подключение и авторизацию
Секция Подключение показывает ровно те поля, которые нужны выбранному режиму авторизации. Поле Endpoint генерации ответа обязательно всегда, поля Endpoint получения токена и OAuth scope появляются только при авторизации через OAuth.
| Поле | Что указать |
|---|---|
| Endpoint получения токена | Адрес выдачи access-токена: https://<хост>/oauth |
| Endpoint генерации ответа | Адрес генерации: https://<хост>/v1/chat/completions |
| Authorization key | Секрет авторизации: Bearer-токен или пара client_id:client_secret в Base64 для OAuth |
| OAuth scope | Область доступа; при авторизации через OAuth поле обязательно |
Сохранённый ключ платформа обратно не отдаёт: в таблице провайдеров вместо него показан признак Ключ сохранён или Без ключа, а в форме поле остаётся пустым. Пустое поле при сохранении означает «оставить прежний ключ», введённое значение — заменить. Переход в режим Без авторизации удаляет ранее сохранённый ключ.
Важно. Переключатель Отключить проверку сертификата (для самоподписанных) в секции Модель и доступ включайте только для доверенного сервиса внутри контура.
Как открыть провайдера рабочим пространствам
Доступность провайдера задают два переключателя секции Модель и доступ. Провайдер активен решает, используется ли провайдер для новых запросов: отключённый провайдер сохраняет настройки, но не обслуживает запросы. Глобальный провайдер — доступен во всех рабочих пространствах снимает привязку к одному пространству.
Поле Модель по умолчанию задаёт модель, которая уходит в запрос, если вызывающая сторона не выбрала конкретную. У сохранённого провайдера платформа собирает список из моделей реестра, привязанных к этому провайдеру; у нового провайдера список приходит из шаблона или модель вводится вручную.
Основной путь другой: участник выбирает не провайдера, а модель, и модель определяет провайдера. Поэтому после создания провайдера откройте кнопкой AI-модели в шапке страницы реестр моделей и заведите записи каталога. Кнопка Политики LLM открывает страницу, где вы назначаете модель по умолчанию для ассистентов.
Как задать параметры генерации
Секция Параметры генерации задаёт значения, с которыми провайдер обращается к модели, когда ассистент или узел сценария (workflow) не задал свои. Набор полей одинаков для всех шаблонов провайдера.
| Поле | Диапазон | Что делает |
|---|---|---|
| Системный промпт | Текст | Инструкция, которая уходит в запрос перед сообщением участника |
| Температура | 0–2 | Вариативность ответа: ниже — стабильнее, выше — разнообразнее |
| Top P | 0–1 | Доля распределения, из которой выбираются токены |
| Presence penalty | от −2 до 2 | Штраф за повторное обращение к уже затронутым темам |
| Frequency penalty | от −2 до 2 | Штраф за повторение одних и тех же токенов |
| Ключ лимита ответа | Имя поля API | Как называется лимит длины ответа в API: max_completion_tokens или max_tokens |
Пустое поле означает «не передавать параметр». Само число лимита длины ответа в форме провайдера не задают: провайдер хранит только имя поля, а значение живёт в карточке модели реестра AI-модели. Тонкие настройки генерации участник задаёт в ассистенте — см. Ассистенты.
Системный промпт ограничен 50 000 символов. Если текст длиннее, платформа не сохраняет провайдера и сообщает о превышении предела.
Как настроить расширенные параметры запроса
Секция Расширенные параметры нужна, когда сервис ждёт поля, которых нет в форме, или когда провайдер умеет передавать режим рассуждений. Некорректный JSON в любом поле этой секции блокирует сохранение: платформа показывает ошибку и оставляет форму открытой.
Дополнительные поля тела запроса
Поле Дополнительные параметры JSON запроса принимает JSON-объект и добавляет в тело каждого запроса те его поля, которые платформа не заполнила сама.
Для провайдера Уника AI в этом поле обязателен workspace_id — идентификатор рабочего пространства
во внешнем сервисе:
{
"workspace_id": "GENERAL"
}
Платформа применяет дополнительные поля тела запроса ко всем типам узлов сценария,
а не только к чату и узлам Шаг ИИ и Агент. Поле stream из этого JSON не пробрасывается:
режим потока задаёт сама платформа для каждого вызова.
Пять полей секции Расширенные параметры видны только у кастомного провайдера с контрактом
Generic HTTP. Поле Дополнительные заголовки принимает JSON-объект с HTTP-заголовками,
а поля Ключ модели, Ключ массива сообщений, JSON-path ответа и JSON-path токенов
описывают, как собрать тело запроса и разобрать ответ.
Режим рассуждений
Переключатель Рассуждения включает поле Конфигурация рассуждений — JSON, который описывает, как передать провайдеру выбранный режим рассуждений и откуда прочитать текст рассуждений из ответа. Готовую заготовку подставляет кнопка Unica рядом с названием поля.
Конфигурация состоит из четырёх частей: request.off.fields уходит только в режиме off,
request.mode.path получает выбранный режим, request.defaults применяется во всех режимах
кроме off, а response.reasoningText задаёт пути к тексту рассуждений в обычном и потоковом
ответе. Настройка провайдера отвечает только за транспорт рассуждений.
Примечание. Какие режимы рассуждений предлагаются участнику, задаёт карточка модели реестра AI-модели: флажок Модель поддерживает рассуждения и поле Конфигурация JSON.
Платформа проверяет связку при сохранении: для off должны быть настроены request.off.fields
или модельная заплатка request.modePatches.off, для остальных режимов — request.mode.path
или заплатка соответствующего режима. Удалить mapping, который нужен уже привязанной reasoning-модели,
нельзя. Выбранный уровень применяется одинаково к прямому LLM-вызову и к генерации ответа после RAG-поиска.
Как отключить или удалить провайдера
Отключить провайдера можно переключателем в колонке Статус прямо из списка: платформа спрашивает подтверждение и предупреждает, что провайдер перестанет использоваться для новых запросов, а его настройки сохранятся. Платформа применяет изменение сразу, отдельного нажатия Сохранить не нужно.
Удаление доступно из меню строки списка и кнопкой Удалить провайдер внизу формы. Платформа блокирует удаление, пока провайдер связан с записями реестра AI-модели, с OCR-провайдерами или с другими настройками. Сначала перенесите зависимости на другого провайдера или удалите их.
У системной строки окно Удалить LLM-провайдер? предупреждает, что платформа заведёт провайдера снова на следующем проходе. Чтобы строка не возвращалась, адрес контура убирают при развёртывании.
Важно. ⚠️ Удаление провайдера необратимо: сохранённый ключ авторизации восстановить нельзя.
Если провайдера параллельно правит другой администратор, платформа не перезаписывает его изменения: при сохранении появляется сообщение «Провайдер был изменён в другой вкладке. Обновите данные и повторите изменения». Откройте провайдера заново и повторите правку.
Частые вопросы
Почему новая модель контура не появилась в списке
Каталог перечитывается по расписанию. Проверьте строку состояния над таблицей, нажмите Синхронизировать сейчас и убедитесь, что модель отдаётся каталогом контура.
Почему узел сценария сообщает, что провайдер вернул 400
Внешний сервис отклонил запрос до обращения к модели. В закрытом контуре чаще всего не хватает обязательного поля тела запроса. Проверьте:
- в поле Дополнительные параметры JSON запроса задан
workspace_id; - в поле Ключ лимита ответа указано имя, которое понимает API сервиса;
- в дополнительных параметрах нет полей, которых сервис не знает.
Почему ответ приходит целиком, а не по мере генерации
Потоковый режим отключён на уровне провайдера или контракта. Проверьте:
- у кастомного провайдера поле Потоковый режим установлено в
OpenAI SSE; - контракт API не
Generic HTTP— при нём поток недоступен; - сервис поддерживает потоковую отдачу по OpenAI-совместимому контракту.
Почему провайдер не отвечает после смены ключа
Новый ключ не сохранился или не подошёл сервису. Проверьте:
- в таблице провайдеров у строки стоит признак Ключ сохранён;
- для OAuth заполнены Endpoint получения токена и OAuth scope;
- срок действия ключа у поставщика сервиса не истёк.
Почему модель провайдера не появилась у ассистента
Провайдер и реестр моделей — разные сущности. Проверьте:
- модель заведена на странице AI-модели и привязана к этому провайдеру;
- в карточке модели включён флажок Модель активна и доступна в реестре;
- модель включена в блоке Модели ассистентов политики LLM.
Что дальше
- Модели и политики — завести модель в реестре и назначить модель по умолчанию.
- Провайдеры эмбеддингов — подключить сервис векторизации для баз знаний.
- Первый запуск платформы — порядок настройки инсталляции с нуля.
- Центр активности — разобрать неудачные запуски LLM.
- Ассистенты — выбрать модель и параметры генерации на стороне ассистента.