Information Diet Manager 用于评估用户的信息摄取结构与“信息茧房”程度,支持:
- Chrome 插件自动采集浏览信息(URL、标题、正文摘要等)
- FastAPI 后端接收、清洗、存储数据
- 分析引擎执行分类、情感、相似度与综合评估
- 可视化摘要与导出(JSON / JSONL / CSV)
- 数据采集:浏览器插件自动抓取网页信息并上报
- 数据接入:
/collect、/import支持实时与批量导入 - 数据存储:SQLite(默认)+ 标准化哈希去重
- 分析评估:
- 内容分类(category)
- 情感分析(sentiment / polarity)
- 相似度计算(similarity)
- 信息摄取质量评估(summary/report)
- 结果输出:
- 仪表盘摘要
/dashboard/summary - 可视化数据
/dashboard/visualization - 导出给分析脚本
/export/lsj、/export/lsj/training
- 仪表盘摘要
INFORMATION-DIET-MANAGER/
├── chrome-extension/ # Chrome 插件(采集端)
├── docs/ # 文档
├── frontend/ # 前端(Vite)
├── scripts/
│ ├── run_backend.py # 后端启动脚本(推荐)
│ └── run_analysis.py # 分析入口脚本(推荐)
├── src/
│ ├── backend_api/ # 语义化后端入口(推荐)
│ ├── analysis_engine/ # 语义化分析入口(推荐)
│ ├── hyh/ # legacy 后端实现(兼容保留)
│ └── lsj/ # legacy 分析实现(兼容保留)
├── requirements.txt
└── README.md
说明:
backend_api/analysis_engine是新的语义化入口层;hyh/lsj暂保留用于兼容旧代码与历史脚本。
建议在项目根目录操作:
python -m venv .venv
# Windows:
# .venv\Scripts\activate
# macOS/Linux:
# source .venv/bin/activate
pip install -r requirements.txtpython scripts/run_backend.py启动后访问:
- Swagger 文档:
http://127.0.0.1:8000/docs - ReDoc:
http://127.0.0.1:8000/redoc
cd frontend
npm install
npm run dev- 打开
chrome://extensions/ - 开启“开发者模式”
- 点击“加载已解压的扩展程序”
- 选择项目下
chrome-extension/ - 浏览网页后,插件将采集数据并上报后端
python scripts/run_analysis.py --help示例(analyze 模式):
python scripts/run_analysis.py \
--mode analyze \
--input_file data.json \
--output_file result.jsonPOST /collect:单条采集入库POST /import:文件导入(csv/json/jsonl)GET /items:分页查询原始数据POST /analyze/run:轻量分析POST /analyze/run_full:全量分析任务GET /analyze/jobs/{job_id}:任务状态GET /analyze/result/{job_id}:任务结果GET /dashboard/summary:摘要指标GET /dashboard/visualization:可视化数据GET /export/lsj:导出分析数据GET /export/lsj/training:导出训练数据
- Chrome 插件采集网页内容
- POST 到后端
/collect - 后端规范化、去重、入库
- 调用
/analyze/run_full触发分析管道 - 前端或脚本读取
/dashboard/*与/analyze/result/*结果
请确保在项目根目录运行命令,优先使用:
python scripts/run_backend.py- 确认后端已启动(
127.0.0.1:8000) - 确认插件配置的 API 地址正确
- 在扩展管理页查看 service worker 日志排错
仅供课程/研究与学习用途。 如需对外发布,请补充明确的 LICENSE 文件与隐私说明。