Сервис предназначен для использования в качестве чат-бота. Для возможности быстрого теста применяется GPT2 модель.
- В качестве БД используется PostgreSQL;
- Запуск и инициализация БД из
docker-compose.yml.
- Реализовано приложение FastAPI в
api.py; - В качестве сервера используется
uvicorn;
- Реализована работа с очередями сообщений через RabbitMQ. Установка через docker-compose. Параметры в
docker-compose.yml; - Сообщение с запросом от пользователя информацией направляется в очередь сообщений. На очередь подписан worker, который инициирует работу модели и сохраняет предсказание в БД;
- Параметры подключения и наименование очереди в
rmworker/connection_params.py.
- Реализован интерфейс на Streamlit;
- Реализован телеграм бот в
tg.py. - Запуск так же автоматически с помощью
docker-compose.yml(при запущенном сервисе FastAPI и БД).
- Реализованы unit тесты БД и API;
- Для тестирования используется
pytest.
- приложение упаковано в контейнеры;
- установка и запуск с помощью
docker-compose; - пример переменных окружения в
.env.example.