2311020116_CreditCardFraudD.../install.sh
2311020116lhh 5db2c75492 feat: 添加一键安装脚本实现开箱即用
- 添加 install.bat Windows一键安装脚本
- 添加 install.sh Linux/Mac一键安装脚本
- 添加 auto_install.py 跨平台自动化安装脚本
- 更新 README.md 添加详细的一键安装说明
- 测试环境检查脚本功能正常
2026-01-15 22:01:53 +08:00

97 lines
2.9 KiB
Bash
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/bin/bash
set -e
echo "============================================================"
echo "信用卡欺诈检测系统 - 一键安装脚本"
echo "============================================================"
echo ""
# 检查Python是否安装
if ! command -v python3 &> /dev/null; then
echo "[错误] 未检测到Python请先安装Python 3.10或更高版本"
echo "Ubuntu/Debian: sudo apt-get install python3 python3-pip"
echo "CentOS/RHEL: sudo yum install python3 python3-pip"
echo "macOS: brew install python3"
exit 1
fi
echo "[步骤 1/5] 检查Python版本..."
PYTHON_VERSION=$(python3 --version 2>&1 | awk '{print $2}')
echo "Python版本: $PYTHON_VERSION"
echo ""
# 检查Python版本是否满足要求
PYTHON_MAJOR=$(echo $PYTHON_VERSION | cut -d. -f1)
PYTHON_MINOR=$(echo $PYTHON_VERSION | cut -d. -f2)
if [ "$PYTHON_MAJOR" -lt 3 ] || ([ "$PYTHON_MAJOR" -eq 3 ] && [ "$PYTHON_MINOR" -lt 10 ]); then
echo "[错误] Python版本过低需要3.10或更高版本"
exit 1
fi
echo "[步骤 2/5] 安装Python依赖..."
echo "正在安装依赖包,这可能需要几分钟..."
pip3 install -r requirements.txt
if [ $? -ne 0 ]; then
echo "[错误] 依赖安装失败"
echo "请检查网络连接或尝试使用国内镜像源:"
echo "pip3 install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple"
exit 1
fi
echo "依赖安装完成"
echo ""
echo "[步骤 3/5] 检查数据文件..."
if [ ! -f "data/creditcard.csv" ]; then
echo "[警告] 未找到数据文件 data/creditcard.csv"
echo ""
echo "请从以下地址下载数据集:"
echo "https://www.kaggle.com/datasets/mlg-ulb/creditcardfraud"
echo ""
echo "下载后将 creditcard.csv 文件放入 data/ 目录"
echo ""
read -p "数据文件已准备好吗?(Y/N): " DATA_READY
if [[ ! "$DATA_READY" =~ ^[Yy]$ ]]; then
echo "安装已取消"
exit 1
fi
else
echo "数据文件已存在"
fi
echo ""
echo "[步骤 4/5] 检查模型文件..."
if [ ! -f "models/random_forest_model.joblib" ]; then
echo "模型文件不存在,开始训练模型..."
echo "这可能需要几分钟,请耐心等待..."
python3 src/train.py
if [ $? -ne 0 ]; then
echo "[错误] 模型训练失败"
exit 1
fi
echo "模型训练完成"
else
echo "模型文件已存在"
fi
echo ""
echo "[步骤 5/5] 运行环境检查..."
python3 check_environment.py
if [ $? -ne 0 ]; then
echo "[警告] 环境检查发现问题,但将继续启动应用"
fi
echo ""
echo "============================================================"
echo "安装完成正在启动Web界面..."
echo "============================================================"
echo ""
echo "提示:"
echo "- Web界面将在浏览器中自动打开"
echo "- 如果没有自动打开,请访问: http://localhost:8501"
echo "- 按 Ctrl+C 可以停止服务"
echo ""
python3 src/agent_app.py