AI - сервис — платформа AI-агентов EmplDocs
AI - сервис — веб-сервис для настройки и тестирования AI-ассистентов, которые используются в продуктах EmplDocs.
Доступ
Учётные данные для входа выдаёт администратор платформы. После регистрации новый аккаунт должен быть одобрен суперадмином в разделе «Пользователи».
Основные сущности
| Сущность | Назначение |
|---|---|
| Ассистент | Отдельный AI-агент со своими моделями, навыками, документами и настройками |
| Навык (skill) | Набор инструкций, сценариев и инструментов для конкретной задачи (отпуск, заявка и т.д.) |
| Документы | База знаний ассистента в формате Markdown; поддерживается загрузка pdf/docx/xlsx |
| MCP-сервер | Внешний сервер Model Context Protocol — даёт навыкам ресурсы и инструменты |
| Провайдер | Подключение к LLM-бэкенду (OpenAI, Anthropic, OpenRouter, LM Studio) |
| Модель | Конкретная chat- или embedding-модель провайдера |
| Тестовый пользователь | Логин/пароль Empldocs для тестирования навыков в админ панели |
Структура интерфейса
После входа в шапке выбирается ассистент, который настраивается для конкретной системы.
Боковое меню делится на блоки:
Ассистент
| Раздел | URL (шаблон) | Назначение |
|---|---|---|
| Обзор | /a/{id} | Краткая сводка параметров ассистента |
| Навыки | /a/{id}/skills | Список и редактор навыков |
| Playground | /a/{id}/playground | Тестовый чат с ассистентом для проверки навыков |
Ресурсы
| Раздел | URL | Назначение |
|---|---|---|
| Документы | /a/{id}/documents | База знаний |
| MCP серверы | /a/{id}/mcp-servers | Подключение внешних MCP |
Инфраструктура
| Раздел | URL | Назначение |
|---|---|---|
| Провайдеры | /a/{id}/providers | LLM-провайдеры и модели |
| Настройки | /a/{id}/settings/... | Настройка провайдеров, моделей, API, тестовых пользователей |
Администрирование (глобально)
| Раздел | Назначение |
|---|---|
| Пользователи | Модерация аккаунтов: одобрение, блокировка, удаление |
Вход и регистрация
| Поле | Описание |
|---|---|
| Электронная почта | Логин. Должен быть корректным email |
| Пароль | Минимум 8 символов |
Кнопки: Войти, ссылка Зарегистрироваться (если аккаунта нет).
После входа открывается список ассистентов. Если ассистентов ещё нет — предлагается Создать ассистента.
Обзор ассистента
Краткая панель управления выбранным ассистентом.
Показывает:
- название и базовые параметры;
- количество навыков, документов, моделей;
- ссылки на разделы Настройки, Playground, Навыки;
- статистику сообщений и расхода токенов (появляется после первых диалогов).
Создание и редактирование ассистента
| Поле | Обязательное | Описание |
|---|---|---|
| Название | Да | Отображаемое имя ассистента (например, EmplAI HR) |
| Инструкции ассистента | Нет | Общие правила работы в формате Markdown: тон, ограничения, приоритеты |
| URL API Empldocs | Да | Адрес API EmplDocs, с которым работает ассистент (например, https://api.example.empldocs.app) |

После создания настройте провайдеры, модели, навыки и тестовых пользователей.
Навыки
Список навыков
- Поиск — по названию, инструментам, сценариям.
- Кнопка Создать навык.
- Карточка навыка: название и краткое описание (первый сценарий или фрагмент инструкций).
- Действия: редактирование, удаление.
Создание навыка
Два варианта:
- Создать с нуля — пустая форма.
- Шаблон — готовая основа с инструкциями, сценариями, примерами и инструментами. Есть поиск по шаблонам.
Редактор навыка
Слева — форма, справа — ИИ-ассистент конструктора навыков (чат для уточнения логики и автоприменения правок к черновику).
Основные поля
| Поле | Обязательное | Описание |
|---|---|---|
| Название / системное имя | Да | Короткое имя навыка (минимум 2 символа). Используется для идентификации |
| Сценарии использования | Да | По одному сценарию на строку — когда навык должен включаться |
| Примеры вопросов | Нет | По одному примеру на строку — типичные запросы пользователя |
| Инструкции навыка | Да | Подробные правила в Markdown: порядок действий, ссылки на документы, ограничения |
База знаний
| Поле | Описание |
|---|---|
| Разрешить поиск по документам | Включает семантический поиск по базе знаний ассистента |
| Выбор папок и документов | Ограничивает доступ навыка конкретными папками/файлами. Если ничего не выбрано — доступна вся база знаний |
Инструменты
| Блок | Описание |
|---|---|
| Встроенные инструменты | Выбор из registry платформы |
| MCP-доступы | Ресурсы, инструменты и шаблоны ресурсов с подключённых MCP-серверов |
| Пользовательские функции | Собственный код навыка (см. ниже) |
Для MCP-каталога может потребоваться настроенный runtimeContext (тестовый пользователь в шапке playground).
Пользовательская функция (custom function)
| Поле | Описание |
|---|---|
| Имя (name) | Системное имя функции, латиница (например, getVacationDays) |
| Заголовок (title) | Человекочитаемое название |
| Действие (actionTitle) | Короткий текст для UI во время вызова (например, «Оформляю отпуск») |
| Описание | Что делает функция и когда её вызывать |
| Схема входа | JSON Schema аргuments |
| Схема выхода | JSON Schema результата |
| Код функции | Исполняемый скрипт функции |
Каждая функция доступна только этому навыку.
Кнопки: Сохранить, Отмена. При несохранённых изменениях появляется предупреждение «Покинуть страницу?».
Документы (база знаний)
Левая панель — дерево папок и файлов, правая — редактор Markdown.
Действия с папками
| Действие | Описание |
|---|---|
| Создать папку | Новая папка в базе знаний |
| Переименовать папку | Изменить название |
| Удалить папку | Удаляется только пустая папка |
Действия с документами
| Действие | Описание |
|---|---|
| Создать документ | Новый markdown-документ |
| Загрузить документы | Файлы pdf, docx, xlsx — автоматически конвертируются в Markdown |
| Редактировать | Markdown-редактор содержимого |
| Удалить документ | Безвозвратное удаление |
При загрузке генерируются заголовок и краткое описание (summary) — для этого используется chat-модель из настроек Модели → Summary документов.
Статусы индексации документов отображаются на карточках (очередь, индексация, готово, ошибка).
MCP серверы
Подключение внешних MCP-серверов. Их ресурсы и инструменты становятся доступны навыкам.
Список
- Поиск по названию или URL.
- На карточке: имя, URL, статус авторизации, число HTTP-заголовков.
- Быстрые действия: обновить ресурсы, инструменты, шаблоны ресурсов, редактировать, удалить.
Форма MCP-сервера
| Поле | Обязательное | Описание |
|---|---|---|
| Название | Да | Имя сервера в интерфейсе |
| URL | Да | Адрес MCP-сервера (корректный URL) |
| HTTP-заголовки (JSON) | Нет | Объект JSON: ключи и значения — строки. По умолчанию {} |
| Передавать Empldocs авторизацию | Нет | Если включено — в запросы добавляются заголовки X-Token и Employee-Id из runtimeContext |
Для серверов с пробросом авторизации нужен настроенный runtimeContext (тестовый пользователь или ручной JSON в playground).
Провайдеры и модели
Подключения к LLM и список моделей ассистента.
Провайдер
| Поле | Обязательное | Описание |
|---|---|---|
| Название | Да | Имя подключения (например, OpenAI) |
| Тип | Да | openai, anthropic, openrouter, lmstudio |
| Пользовательский URL | Нет | Свой endpoint API вместо стандартного |
| Прокси-сервер | Нет | URL прокси (http:// или https://) |
| API-ключ | Нет | Ключ доступа к провайдеру |
На карточке провайдера отображаются статусы: задан ли api-ключ, задан ли прокси.
Модель
| Поле | Обязательное | Описание |
|---|---|---|
| Провайдер | Да | К какому провайдеру относится модель |
| Название | Да | Отображаемое имя (например, GPT-5 mini) |
| ID модели | Да | Технический идентификатор для API (например, gpt-5-mini-2025-08-07) |
| Тип модели | Да | Чат или Эмбеддинг |
| Reasoning Effort | Нет | Уровень «размышления» для поддерживаемых моделей: xhigh, high, medium, low, minimal, none |
Настройки
Модели
Модели по умолчанию
| Поле | Описание |
|---|---|
| Default chat-модель | Основная модель диалога и fallback для chat-функций |
| Default embedding-модель | Модель для индекса документов и встроенных инструментов skill-builder |
Переопределения для chat-функционалов
Для каждого можно задать отдельную модель или оставить «по умолчанию»:
| Функция | Назначение |
|---|---|
| Автосжатие контекста | Сжимает длинную историю чата |
| Долговременная память | Memory-collector обновляет память по итогам сессии |
| Summary документов | Заголовок и описание при загрузке документа |
| Извлечение из документов | Субагент для точечных запросов к одному документу |
| Assistant pane конструктора навыков | ИИ-помощник на экране редактирования навыка |
Дополнительно для извлечения:
| Поле | Описание |
|---|---|
| Максимальный размер документа для inline-режима (байты) | Документы меньше порога читаются целиком; крупные — через поиск по тексту. По умолчанию 32768 байт |
Переопределения для embedding-функционалов
| Функция | Назначение |
|---|---|
| Индекс документов | Индексация и поиск по базе знаний |
| Индекс встроенных инструментов skill-builder | Векторный поиск инструментов в конструкторе навыков |
При смене effective embedding-модели система предложит переиндексировать документы и/или встроенные инструменты.
Доступ к API
| Элемент | Описание |
|---|---|
| Endpoint ассистента | POST /api/assistant/{assistantId} — streaming-запросы к ассистенту. assistantId передаётся в URL |
| Разрешённые origin | Список origin для CORS (например, https://lks.example.com). Добавляются по одному. Глобальные origin из конфигурации сервера действуют всегда |
Конструктор форм AI
Специализированный API для генерации JSON-схемы заявки EmplDocs из текстового описания (используется ИИ-Ассистентом в конструкторе заявок ЛКС).
| Элемент | Описание |
|---|---|
| Endpoint | POST /api/assistant/{id}/issue-template-builder/generate |
| Тело запроса | { message, current_form_json?, model?, session_id? } |
| Ответ | { result: { json, changes }, session_id } |
| Включить API | Если выключено — endpoint возвращает 404 |
| Модель | Override chat-модели; иначе — default chat-модель ассистента |
Долговременная память
| Поле | Описание |
|---|---|
| Включить память | Сбор и использование фактов о пользователе между сессиями |
| Порог неактивности сессии (секунд) | После этого времени без сообщений сессия считается завершённой. По умолчанию 120 сек |
Автосжатие истории
| Поле | Описание |
|---|---|
| Включить автосжатие | Автоматическое сжатие ранних сообщений |
| Порог токенов истории | При превышении запускается сжатие (по умолчанию ~20000) |
| Лимит токенов сохраняемого хвоста | Последние сообщения сохраняются без изменений (по умолчанию ~4000) |
Интерактивные инструменты
| Переключатель | Описание |
|---|---|
| Задавать уточняющие вопросы | Включает инструмент askUserQuestions — ассистент может прервать ответ и показать список вопросов с вариантами |
| Запрашивать подтверждение действия | Включает askForConfirmation — подтверждение перед рискованными действиями |
Тестовые пользователи
| Поле | Обязательное | Описание |
|---|---|---|
| Логин | Да | Учётная запись Empldocs для тестовой авторизации |
| Пароль | Да | Пароль; хранится в sandbox-хранилище платформы |
Используются для быстрой авторизации и сборки runtimeContext в playground.
Playground (среда тестирования)
Изолированный чат для проверки ассистента и навыков.
Панель «Среда тестирования» (шапка)
| Элемент | Описание |
|---|---|
| Выбор ассистента | Какой ассистент тестируется |
| Тестовый пользователь | Sandbox-пользователь для авторизации в Empldocs |
| Должность тестового пользователя | Если у пользователя несколько должностей |
| runtimeContext | JSON с полями employeeId, accessToken, userId — контекст для вызовов Empldocs API и MCP |
| Обновить авторизацию | Пересобрать runtimeContext после смены пользователя |
| Ручной runtimeContext | Альтернатива автоматической сборке — вставить JSON вручную |
Без настроенного runtimeContext отправка сообщений недоступна.
Чат
| Элемент | Описание |
|---|---|
| Поле сообщения | Текст запроса ассистенту |
| Выбор навыка | Подключить/отключить конкретный skill для turn |
| Ответы на вопросы ассистента | Если включены интерактивные инструменты — UI для уточнений и подтверждений |
| Сбросить сессию | Очистить историю текущего теста |
История чата в playground не сохраняется между перезагрузками страницы.
Типовой порядок настройки
- Войти на ai.empldogs.ru и дождаться одобрения аккаунта.
- Создать ассистента — название, URL API Empldocs, общие инструкции.
- В Провайдеры — добавить LLM-провайдера и chat- и embedding-модели.
- В Настройки → Модели — выбрать default chat- и embedding-модели.
- В Документы — загрузить или создать базу знаний (при необходимости).
- В MCP серверы — подключить внешние инструменты (при необходимости).
- В Навыки — создать навыки под сценарии (отпуск, заявки и т.д.).
- В Настройки → Тестовые пользователи — добавить sandbox-логин Empldocs.
- В Playground — проверить диалог с нужным runtimeContext.
- В Настройки → Доступ к API — добавить origin фронтенда (ЛКС, «Доки»), если API вызывается из браузера.
Связь с EmplDocs
| Интеграция | Где настраивается в EmplDocs | Что делает Emplai |
|---|---|---|
| ИИ-Ассистент в конструкторе заявок | Админ → Конструктор заявок → вкладка «Основное» | API Конструктор форм AI генерирует JSON-схему формы |
| Создание заявок через чат | Флаг «Включить создание заявки через ИИ-Ассистента» + «Дополнительная информация для ИИ» | Навык ассистента + runtimeContext пользователя ЛКС |
| «Доки», интеллектуальный режим | Помощник документации | Ассистент с подключёнными навыками и документами |