本项目旨在通过Flask框架构建一个Web应用,支持数据的导入、导出以及机器学习模型的训练和预测。项目使用SQLAlchemy进行数据库操作,并集成了Celery用于异步任务处理。
根据environment.yml
文件新建conda环境:
conda env create -f environment.yml
激活新创建的环境:
conda activate your_env_name
下载并安装Redis(Celery依赖):
sudo apt-get install redis-server
brew install redis
版本要求:
启动Redis服务:
redis-server.exe redis.windows.conf
redis-server
验证Redis是否正常运行:
redis-cli ping
如果返回PONG
,则表示Redis服务正常运行。
app/
: 包含Flask应用的主要代码。
__init__.py
: 初始化Flask应用。config.py
: 配置文件。utils.py
: 工具函数。model.py
: 机器学习模型相关操作。tasks.py
: Celery任务定义。celery_app.py
: Celery配置。model_optimize/
: 包含数据处理和模型优化的代码。uploads/
: 用于存储上传的文件。ssl/
: 存储SSL证书和密钥。确保Redis服务正在运行。
激活conda环境:
conda activate your_env_name
启动Flask应用:
python run.py
启动Celery:
watchfiles --filter python "celery -A app.celery_app.celery worker --loglevel=info" .
说明:执行上述命令需要先安装 watchfiles:
pip install watchfiles
在app/config.py
中可以修改数据库路径、上传文件夹路径等配置。默认配置包括:
SoilAcidification.db
uploads/datasets
pkl
redis://localhost:6379/0
redis://localhost:6379/0
请确保已安装以下依赖: