Появление ИИ и поиск решения
Мой интерес к системам искусственного интеллекта начался с выхода ChatGPT-3,5. С первых же месяцев я стал активно использовать нейросеть в своей работе: писал посты для сообщества интерната ВКонтакте о событиях и мероприятиях, использовал для консультаций по рабочим и бытовым вопросам.
Со временем я осознал огромный потенциал ИИ как инструмента, способного значительно повысить эффективность повседневной работы. Я счёл важным дать максимальному числу коллег в психоневрологическом интернате доступ к современным ИИ-инструментам.
Сотрудники интерната для общения в локальной сети использовали устаревшую программу Net Speakerphone. Это был подходящий момент не просто заменить её, а значительно расширить функционал. Идеальным решением стало развертывание корпоративного чата Mattermost со встроенным ИИ-ассистентом. Это позволило модернизировать систему коммуникации и дать сотрудникам мощный инструмент для улучшения их работы.
Почему именно Mattermost? Mattermost — это решение с открытым исходным кодом, которое можно развернуть на собственном сервере. Это даёт полный контроль над данными, безопасностью, что критически важно в условиях госучреждения. Наличие приложений для десктопных и мобильных устройств стало дополнительным аргументом в пользу Mattermost.
Создание сервера
Для реализации проекта я использовал списанный системный блок с характеристиками: i5-2310, 16 ГБ DDR3, SSD 240 ГБ, который был преобразован в сервер.
Моей первой большой сложностью было отсутствие опыта разворачивания серверов на Linux. Раньше я работал исключительно с Windows, поэтому мне пришлось уделить время изучению принципов работы и возможностей этой ОС. Я начал с установки Ubuntu 22.04 LTS без графического интерфейса, так как для сервера графическая оболочка не нужна и только потребляет лишние ресурсы.
Для удобства администрирования был установлен Webmin — программный комплекс, позволяющий управлять системой через веб-интерфейс. Это незаменимый инструмент, так как он позволяет отслеживать системные характеристики (нагрузку на процессор, использование памяти, состояние дисков), и помогает визуально настраивать систему.

Затем был установлен Docker. Он позволяет запускать приложения в изолированных контейнерах, что упрощает их развертывание и управление. Для проекта это было особенно важно, так как появилась возможность устанавливать и удалять приложения, не боясь нарушить работу всей системы. Работа с Docker стала отдельным этапом обучения. Необходимые приложения подбирались опытным путём, тестировались различные конфигурации. Для управления контейнерами был выбран Portainer — веб-интерфейс, который позволил легко запускать, останавливать и настраивать контейнеры, не используя командную строку.

Получился такой стэк управления: Ubuntu (ОС) -> Webmin (администрирование) -> Docker (контейнеризация) -> Portainer (управление контейнерами).
Развертывание Mattermost и интеграция с ИИ
Настала очередь самого Mattermost. В Portainer я создал стек для Mattermost, в котором прописал настройки программы и базы данных PostgreSQL. После установки Mattermost запустился на порту 8065, и я смог получить доступ к веб-интерфейсу.

Далее после регистрации в качестве администратора и, перейдя в системную консоль, в разделе плагинов Agents заполнил необходимые поля: адрес сервера с LLM, API-ключ, модель по умолчанию и системный промпт. Последний особенно важен, так как он ограничивает ответы ассистента, фокусируя его исключительно на рабочих вопросах.


Безопасность и этика
Сервер не имеет открытых портов для доступа извне. Использование корпоративного чата ведётся в пределах локальной сети и Wi-Fi в стенах интерната.
Так как модель является внешней, сотрудники предупреждены о запрете на передачу в сеть личных данных и другой конфиденциальной информации.
Внедрение данного решения проходит не без сложностей. Несмотря на очевидные преимущества, переход от привычной, пусть и устаревшей, Net Speakerphone к Mattermost требует индивидуального подхода. Приходится лично объяснять сотрудникам преимущества нового решения, демонстрировать его возможности и отвечать на вопросы. Но результат того стоит.
Этот кейс — только начало пути. В следующей статье я расскажу о том, как мы развернули систему для работы с документами на базе RAG-архитектуры с помощью связки LightRAG и Open WebUI.