@@ -4,25 +4,82 @@ layout: home
44hero :
55 name : CleanBook
66 text : 智能书签清理与分类
7- tagline : 规则 + 机器学习 + 可选 LLM, 默认离线可用
7+ tagline : 规则 + ML + 可选 LLM · 默认离线可用 · Python 3.10+
88 actions :
99 - theme : brand
1010 text : 快速上手
1111 link : /quickstart_zh
1212 - theme : alt
13- text : 设计文档
14- link : /DESIGN
13+ text : 系统架构
14+ link : /design/system_architecture
1515 - theme : alt
1616 text : GitHub
1717 link : https://github.com/LessUp/bookmarks-cleaner
1818
1919features :
20- - title : 规则优先
21- details : 基于受控词表与分面分类,配置驱动,无需改代码即可定制规则与权重。
22- - title : ML 辅助
23- details : 高置信度样本自动沉淀为训练集,轻量 sklearn 模型增强分类准确率。
24- - title : LLM 可选
25- details : 支持 OpenAI 兼容接口(GPT-4o-mini 等),失败自动降级到离线路径。
26- - title : 多格式导出
27- details : 输出 HTML(Netscape 格式可导入浏览器)、Markdown、JSON,结构最多两级。
20+ - title : 🎯 规则优先 · 配置驱动
21+ details : 基于受控词表(Controlled Vocabulary)与分面分类(Faceted Classification),在 config.json 和 taxonomy/*.yaml 中定义规则与权重,无需改代码即可定制。
22+ - title : 🤖 ML 辅助 · 自动沉淀
23+ details : 高置信度样本自动沉淀为训练集,轻量 scikit-learn 模型渐进增强分类准确率;--train 一键训练。
24+ - title : 💡 LLM 可选 · 自动降级
25+ details : 支持 OpenAI 兼容接口(GPT-4o-mini 等),含二次聚类组织器;未配置或调用失败时自动回退到离线路径。
26+ - title : 📦 多格式导出
27+ details : 输出 HTML(Netscape 格式可直接导入浏览器)、Markdown、JSON;分类结构最多两级,结果简洁可读。
28+ - title : 🧹 统一 Emoji 清理
29+ details : 读入 → 标准化 → 导出三处兜底清理标题 emoji 前缀,避免跨浏览器导出时叠加重复。
30+ - title : 🔗 去重 · 健康巡检
31+ details : 快速去重 + 高级去重全时开启,合并跨浏览器导出更稳;可选 --health-check 链接可达性巡检。
2832---
33+
34+ ## 处理流水线
35+
36+ ```
37+ 浏览器书签 HTML
38+ │
39+ ▼
40+ ┌─────────────────────────────────────────────┐
41+ │ BookmarkProcessor │
42+ │ 加载 → 快速去重 → 高级去重 → emoji 清理 │
43+ ├─────────────────────────────────────────────┤
44+ │ AIBookmarkClassifier │
45+ │ ┌──────┐ ┌────┐ ┌──────┐ ┌────┐ ┌─────┐ │
46+ │ │ 规则 │→│ ML │→│ 语义 │→│画像│→│ LLM │ │
47+ │ └──────┘ └────┘ └──────┘ └────┘ └─────┘ │
48+ │ 加权投票 → 融合置信度 │
49+ ├─────────────────────────────────────────────┤
50+ │ TaxonomyStandardizer │
51+ │ 受控词表映射 → subject + resource_type │
52+ ├─────────────────────────────────────────────┤
53+ │ DataExporter │
54+ │ HTML · Markdown · JSON │
55+ └─────────────────────────────────────────────┘
56+ ```
57+
58+ ## 最小示例
59+
60+ ``` powershell
61+ # 安装(推荐 pipx)
62+ pipx install .
63+
64+ # 处理书签
65+ cleanbook -i examples/demo_bookmarks.html -o output
66+
67+ # 批处理 + 训练 ML
68+ cleanbook -i "tests/input/*.html" --train
69+
70+ # 交互向导
71+ cleanbook-wizard
72+ ```
73+
74+ ## 技术栈
75+
76+ | 组件 | 技术 |
77+ | ------| ------|
78+ | 语言 | Python 3.10+ |
79+ | CLI | Click + Rich(交互向导) |
80+ | 解析 | BeautifulSoup4 + lxml |
81+ | ML | scikit-learn · jieba · langdetect |
82+ | LLM | OpenAI 兼容接口(可选) |
83+ | 导出 | HTML (Netscape) · Markdown · JSON |
84+ | 分类体系 | 受控词表 + 分面分类(YAML 配置) |
85+ | 质量 | pytest · flake8 · mypy |
0 commit comments