Упаковка веб-приложения на Python в исполняемый оффлайн файл
- Описание задачи:
- Требуется упаковать рабочее веб-приложение на Streamlit в исполняемый оффлайн автономный файл который сможет запустить конечный пользователь у себя на компьютере.
- Необходимо написать руководство, описывающее процедуру сборки этого приложения.
- Требования:
- Оболочка приложения реализована на Streamlit.
- Приложение должно использовать CatBoostPerSegment и Pipeline из библиотеки ETNA.
- Автономное приложение должно быть упаковано в исполняемый файл .exe или установщик .msi.
- Приложение должно открывать окно в веб-браузере и выполнять модель свои функции.
- Приложение должно работать оффлайн, без подключения к интернету.
- Требуемые шаги:
- Упаковать приложение в исполняемый файл:
- Использовать PyInstaller или Briefcase для упаковки приложения в исполняемый файл .exe или установщик .msi.
- Предложить другие способы упаковки, если они считаются более подходящими.
- При использовании Briefcase для сборки приложения, выполнить команду "briefcase build".
- Упаковать приложение в исполняемый файл:
- Создать инструкцию по установке:
- Предоставить инструкцию о том, как создать автономное приложение из предоставленного репозитория.
- Инструкция должна содержать следующие шаги:
- Установка необходимых зависимостей, перечисленных в файле requirements.txt.
- Сборка приложения в исполняемый файл .exe или установщик .msi с помощью PyInstaller или Briefcase.
- Включить в архив следующие файлы:
- Все необходимые *.py файлы.
- Конфигурационные файлы.
- Файл requirements.txt с перечисленными зависимостями.
- Данные, необходимые для работы приложения.
- ReadMe.txt или другие документы, если требуется.
- Проверка корректности выполнения:
- Заказчик должен иметь возможность выполнить все шаги из описанной инструкции на компьютере с операционной системой Windows.
- После установки приложение должно корректно выполнять все функции, которые доступны при запуске из исходного кода (streamlit run src/app/run.exe) или использую Briefcase через briefcase dev или briefcase run.
- Если потребуются правки исходного кода приложения, они должны быть согласованы с заказчиком.
Примечание: При необходимости обсуждения или согласования деталей проекта, исполнитель должен связаться с заказчиком для получения дополнительной информации.
Во вложении пример приложения. Настоящее будет передано исполнителю и будет больше, но логика и структура такая же.