# CardioAI - 心血管疾病智能辅助系统 多模块应用,集成了数据可视化、机器学习预测和AI问答功能。 ## 项目结构 ``` CardioAI/ ├── data/ # 数据文件目录 │ └── 心血管疾病.xlsx # 心血管疾病数据集 ├── module1_dashboard/ # 模块1: Streamlit 交互式仪表盘 │ └── cardio_dashboard.py ├── module2_predictor/ # 模块2: XGBoost 风险预测模型 │ ├── train_and_save.py # 模型训练脚本 │ ├── cardio_predictor_model.pkl # 训练好的模型 │ ├── app.py # Flask API 服务 │ └── templates/ │ └── index.html # 预测前端页面 ├── requirements.txt # 项目依赖 ├── .env.example # 环境变量模板 └── .gitignore # Git 忽略文件 ``` ## 环境配置 ### 1. 创建 conda 环境 ```bash conda create -n cardioenv python=3.10 conda activate cardioenv ``` ### 2. 安装依赖 ```bash cd F:\My_Git_Project\CardioAI pip install -r requirements.txt ``` ### 3. 配置环境变量 复制 `.env.example` 为 `.env`,并填入您的 API Key: ```bash copy .env.example .env ``` 编辑 `.env` 文件,填入您的 DeepSeek API Key。 ## 模块说明 ### 模块1: 交互式仪表盘 (Streamlit) 心血管数据的交互式可视化界面。 **启动命令:** ```bash cd F:\My_Git_Project\CardioAI streamlit run module1_dashboard/cardio_dashboard.py ``` **功能特性:** - 年龄范围筛选 - 性别和心血管疾病状态筛选 - 统计数据展示 - BMI分布可视化 ### 模块2: 心血管风险预测模型 (Flask + XGBoost) 基于 XGBoost 的心血管疾病风险预测 API。 **训练模型:** ```bash cd F:\My_Git_Project\CardioAI python module2_predictor/train_and_save.py ``` **启动预测服务:** ```bash cd F:\My_Git_Project\CardioAI\module2_predictor set FLASK_APP=app.py flask run --host=0.0.0.0 --port=5000 ``` **API 接口:** - `POST /predict_cardio` - 提交11个特征值,返回预测概率和结果 ## 依赖说明 - pandas, openpyxl - 数据处理 - numpy, scikit-learn - 数值计算 - xgboost, joblib - 机器学习 - streamlit, plotly - 数据可视化 - Flask - Web 服务 - python-dotenv - 环境变量 - langchain-openai, dashscope, requests - AI 集成 ## 注意事项 1. 数据文件路径可通过 `.env` 中的 `DATA_PATH` 配置 2. 确保 `.env` 文件不提交到版本库(已加入 .gitignore) 3. 使用前请确保已正确配置 DeepSeek API Key