3D 模型项目的 SEO 无监督打标系统(v3.1)。从项目文本(caption + prompt)自动生成 SEO 友好标签。
两条互补管线 + anchor 锚定机制:
- NLP 受控词表:精确匹配 + 语义匹配(FAISS ANN + MMR 去冗余)
- SEO 分层规则:4 级 taxonomy(L1 品类 → L2 物体 → L3 属性 → L4 扩展)
- Anchor Tag:
llm_object列作为核心实体锚定,强制置于首位 - Fused 模式:可选融合 NLP + SEO
所有配置在 conf/tagging.yaml。
conda activate torch
pip install -r requirements.txt
python -m spacy download en_core_web_sm
make all # 完整流程:vocab → tag → dashboard
make debug-all # Debug 模式(小数据快速迭代)
make test # 运行全部测试(147 tests)├── conf/tagging.yaml # 全局配置
├── src/
│ ├── common/ # 共享工具(text, filters, embeddings)
│ ├── vocab/ # 词表构建(extract → statistics → merge → builder)
│ ├── tagger/ # 打标管线(index → match → assemble → runner)
│ ├── seo/ # SEO 规则(lexicons, rules)
│ └── dashboard/ # 评估报表(metrics, ai_eval, report)
├── data/
│ ├── interim/tag_dataset.csv # 输入数据(project_id, caption, prompt, llm_object)
│ ├── processed/v{X.Y}/ # 版本化输出
│ └── external/ # SEO 词典、banlist
├── scripts/ # 工具脚本(banlist/hierarchy 候选生成)
├── tests/ # 单元测试
└── reports/ # Dashboard HTML 报告
| 文件 | 说明 |
|---|---|
data/processed/v3.1/tag_vocabulary.csv |
受控标签词表 |
data/processed/v3.1/project_tags.csv |
项目打标结果 |
data/processed/v3.1/tag_project_counts.csv |
标签使用统计 |
reports/dashboard_v3.1.html |
交互式 Dashboard(含 AI 评估) |
make vocab # 构建词表
make tag # 项目打标
make dashboard # 生成 Dashboard + AI 评估
make test # 运行测试
make test-quick # 跳过集成测试
make eval # 运行指标评估
make gen-banlist # 生成 banlist 候选
make gen-hierarchy # 生成 hierarchy 候选
make clean # 清理输出- Banlist:
data/external/banlist_phrases.csv+conf/tagging.yaml中的banlist_phrases/banlist_regex - SEO 词典:
data/external/seo_*.csv(category, object_type, attribute, expansion, hierarchy) - AI 评估:Dashboard 内置 LLM 评估(AiHubMix API,batch 模式 2 次调用)
- 测试:147 个单元测试覆盖核心模块