LLM-чат
В GetOLT встроен LLM-ассистент — floating-чат справа снизу на всех страницах. Под капотом ходит в self-hosted LLM, вызывает MCP-tools напрямую внутри процесса, логирует диалоги в БД.
Зачем
- Спросить «на каком OLT больше всего ONU в Москве» голосом, без копания в таблицах.
- Быстро найти ONU по обрывку MAC или ФИО абонента, не открывая отдельную форму поиска.
- Поручить агенту подготовить снимок конфигурации OLT и сравнить с эталоном.
Чат не имеет прямого доступа к БД — все действия идут через MCP-tools, которые проходят те же проверки, что и REST API.
Включение
Параметры подключения и выбор модели согласуются индивидуально при внедрении.
При выключенном модуле ни кнопка-робот, ни эндпоинты не активны — приложение ведёт себя как раньше.
Архитектура
[браузер] --SSE--> /api/llm-chat/sessions/{id}/messages | LlmChatService (tool-loop) | +---------------+----------------+ | | LLM-клиент InProcessMcpDispatcher (HTTP) (прямой вызов MCP-tools)InProcessMcpDispatcher зовёт те же бины, что и HTTP MCP-сервер — без self-loop по сети.
Что доступно из чата
Чат имеет тот же набор tools, что и MCP-сервер — см. MCP-сервер. Включая поиск ONU, поиск по конфигам, статистику по OLT, оптику, VLAN’ы, СЗО.
Логирование
Все запросы и ответы пишутся в mcp_chat_log, диалог как сущность — в chat_session / chat_message. Это нужно и для аудита, и для последующего улучшения промптов / выбора модели.
Нашли ошибку или нужно что-то дополнить? Напишите нам.
Разработка: gmasich.ru