QAS. Руководство администратора
Материал из Флора AI
Общее описание
Сервис предназначен для поиска ответа на заданный вопрос. Входным значением для сервиса являются данные в текстовом формате. В ответ на входящий запрос сервис возвращает данные в формате JSON.
Термины и определения
Question Answering System (QAS) – сервис ответов на вопросы.
Системные требования
Для нормальной работы сервиса на каждый 1 одновременный запрос поиска ответа необходимо обеспечить 1 CPU >= 2.20GHz с поддержкой иструкций AVX2 или новее:
- Intel Haswell
- Intel Broadwell
- Intel Skylake
- Intel Kaby Lake
- Intel Coffee Lake
- Intel Comet Lake
- Intel Rocket Lake
- Intel Alder Lake
- AMD Excavator
- AMD Zen (AMD Ryzen)
- AMD Zen 2 (AMD Ryzen)
- AMD Zen 3 (AMD Ryzen)
Оперативной памяти необходимо не менее 4Gb.
Установка/обновление сервиса
Дистрибутив распространяется в виде установочных пакетов для окружения и сервиса. Загрузите установочные пакеты на сервер и выполните команды для Вашей системы в каталоге с пакетом.
Перед установкой непосредственно сервиса необходимо установить сервисный пакет окружения.
Установка/обновление QAS осуществляется скриптом chmod +x ./qas-<версия>-<релиз>.sh && ./qas-<версия>-<релиз>.sh -i с правами администратора. Список всех ключей инсталятора можно посмотреть, запустив инсталятор ./qas-<версия>-<релиз>.sh без ключей.
Загрузить последнюю версию пакета curl -s 'https://cloud.connect2ai.net/qas/' --user 'user_nexcloud:pass_nexcloud' | bash
Устновить/обновить пакет одной командой curl -s 'https://cloud.connect2ai.net/qas/?name=s' --user 'user_nexcloud:pass_nexcloud' | bash && chmod +x ./qas.sh && ./qas.sh -i
Проверить актуальную версию пакета можно curl -s 'https://cloud.connect2ai.net/qas/?type=v'
Не забудьте запустить сервис и включить в автозапуск в системе:
sudo systemctl enable qas.service && sudo systemctl start qas.service
Удостоверьтесь, что сервис стартовал:
systemctl status qas.service
Разрешите доступ к порту 6187 на нужном интерфейсе по протоколу tcp.
Конфигурирование параметров сервиса
Настройка параметров сервиса qas производится в файле /opt/qas/config.json
Описание параметров приведено в таблице
| Параметр | По умолчанию | Назначение |
|---|---|---|
| logs.path | logs/ | Дерриктория для хранения логов. Примеры абсолютного пути: "/var/log/qas/" |
| logs.backups | 10 | Количество файлов ротации |
| logs.maxSize | 5242880 | Максимальный размер файла в байтах, триггер для ротации |
| fragments.window | 256 | Ширина окна векторизации текста |
| fragments.shift | 8 | Cдвиг окна |
| fragments.neighbours | 1 | Количество предложений слева и справа от текущего векторизируемого предложения, которые попадут в векторизируемый фрагмент. Т.е. бежим по всем предложениям документа и векторизуем фрагменты с соседями.
один. два. три. четыре.
один. один. два. один. два. три. два. три. четыре. три. четыре. четыре. |
| fragments.context | 2048 | Длина контекста (текста), максимальная, которая будет подана в генератор для поиска ответа на вопрос |
| fragments.threshold | 0.6 | Уровень достоверности при векторном поиске фрагментов в загруженных документах |
| fragments.limit | 2 | Максимальное количество фрагментов, которые должны быть найдены в документах в порядке убывания доверия |
Сбор данных об ошибках
Логи сервиса по умолчанию находятся в файле /opt/ups/logs/log.txt
Сбор данных об ошибках
Для увеличения информативности журналов можно выполнить от суперпользователя команду:
sed -i 's/log-level error/log-level debug/g' /etc/systemd/system/qas.service && systemctl daemon-reload && systemctl restart qas.service
При возникновении проблем в работе сервиса и недостаточной информативности журналов, можно запустить сервис вручную с привилегиями суперпользователя и выводом информации в stdout:
systemctl stop qas.service && source /opt/pve/bin/activate && cd /opt/qas/ && python3 api.py && deactivate
или
systemctl stop qas.service
source /opt/pve/bin/activate
cd /opt/qas/ && python3 api.py
deactivate
Удаление
Для удаления выполните команду: /opt/qas/uninstall. Команда деинсталлирует сервис и удалит рабочий каталог, включая все установленные модели.