Открыть меню
Платформа Эра. Документация
Toggle preferences menu
Открыть персональное меню
Вы не представились системе
Your IP address will be publicly visible if you make any edits.

Искусственный Интеллект

Материал из Платформа Эра. Документации

Общая информация

Приложение ИИ

В составе платформы Эра, начиная с версии 1.9, доступно приложение ИИ. Данное приложение позволяет использовать большие языковые модели (LLM) в рамках платформы.

На текущий момент, основным применением LLM в рамках платформы являются чат-боты.

Приложение ИИ предоставляет следующий набор возможностей:

  • Подключение различных провайдеров LLM (с форматом API OpenAI и Ollama)
  • Создание ботов, которые взаимодействуют с конкретным провайдером
  • Создание файловых баз знаний для ботов
  • Просмотр диалогов с ботами

Имеется возможность использовать как облачные решения, так и развернутые во внутреннем контуре модели.

При работе с искусственным интеллектом, платформа использует подход RAG, который позволяет комбинировать информацию, содержащуюся в самой модели (как правило только публичная и общая информация) с инфорамцией из конкретной базы знаний бизнеса. Этот подход позволяет значительно уменьшить количество "расплывчатых" ответов ИИ, а также ограничить его нецелевое использование - пользователям будет доступен контекст, определяемый базой знаний.

Все запросы к языковым моделям осуществляются не напрямую из платформы Эра, а через специализированный сервис Era AI Proxy, который предоставляет единый интерфейс для работы с моделями, осуществляя преобразование запросов в необходимый API внутри себя.

Установка сервиса AI Proxy

Сервис AI Proxy работает как отдельный docker-контейнер и является отдельным микросервисом, не входящим в контур платформы эра. Соответственно, он не управляется доменным центром эра, не осуществляется автоматическая миграция и сборка логов. Сервис может быть развернут как на одном из сервером, обслуживающем платформу, так и на отдельном сервере (например, отдельном сервере для LLM с GPU).

Установка контейнера сервиса выполняется несколькими простыми командами:

wget https://download.era-platform.ru/ai/era_ai_proxy_1_1_0.tar.gz
docker load -i era_ai_proxy_1_1_0.tar.gz
docker run --name era_ai_proxy \
           --tmpfs /run:rw,noexec,nosuid,size=4096k \
           --publish 32443:443 --publish 32080:8080 \
           -dit \
           --restart unless-stopped \
           era/ai_proxy:1.1.0

После чего он становится доступен на портах 32443 (HTTPS) и 32080 (HTTP).

Установка адреса прокси в параметрах системы

После запуска сервиса, необходимо в вашем основном (не мастер) домене, в приложении Администратор платформы, раздел Параметры -> Система, задать значение параметра ai.service.address (пример на скриншоте).

На этом настройка прокси заканчивается и можно переходить к установке и подключению моделей.

Подготовка сервера для LLM

Необходимо понимать, что для работы больших моделей требуется достаточно мощный сервер с графическим ускорителем. Для исполнения LLM важными параметрами сервера являются ядра CPU, количество оперативной памяти, архитектура GPU и объем видеопамяти.

В зависимости от конкретной модели и её версии, так например для корректной работы модели DeepSeek-R1-Distill-Qwen-32B требуется минимум 32гб видеопамяти, а для DeepSeek-R1-Distill-Qwen-1.5B - 2гб. Каждая из моделей обеспечивает различное качество ответов, а от мощности оборудования напрямую зависит скорость ответов и допустимая параллельная нагрузка.

Конкретные требования к серверу сформировать очень сложно, так как постоянно выходят новые модели и их версии, выпускаются новые поколения оборудования. Желательно опираться на требования той модели, которая планируется к использованию.

Перед установкой любых контейнеров, использующих видеокарты, как правило, необходимо:

  • обновить ядро Linux
  • установить драйвер NVidia
  • установить nvidia-container-toolkit
  • проверить доступность видеокарт утилитой nvidia-smi

Обновление любого контейнера - это удаление и установка:

docker stop container_name

docker rm container_name

docker run --name container_name ...

Установка языковых моделей