# FacereDataset

为 **Facere** 专有模型训练与硬件设计知识库提供数据支撑的开源硬件设计数据集。

## 目标

采集、清洗、结构化互联网公开可用的硬件设计资产（原理图、PCB、BOM、Gerber、3D 模型、固件、文档），输出：

1. **训练数据集**：可直接喂给 LLM / 多模态模型做预训练、SFT、RAG 的结构化语料。
2. **检索型知识库**：按元器件、拓扑、应用领域可查的设计参考库。
3. **派生产物**：元件封装库、常见子电路模板、BOM 成本曲线等。

## 数据来源（第一批）

| 站点 | URL | 覆盖 | 许可 | 抓取复杂度 |
|------|-----|------|------|-----------|
| 立创开源平台 | oshwhub.com | 国内 PCB/EDA 设计 ~12K 精品 | 多为 GPL 3.0 / Public Domain / CC-BY-SA | 中（SPA，需 API 逆向） |
| **HF** `bshada/open-schematics` | huggingface.co | 10K+ KiCad 已预处理 schematics | CC-BY-4.0 | 极低（整包镜像） |
| 嘉立创 EDA 样例 | lceda.cn/example | 官方示例 | 开放 | 低 |
| Hackaday.io | hackaday.io | 项目叙事 + 文件 | 作者自定 | 中 |
| GitHub | github.com | KiCad/EasyEDA repo | 各 repo 自定 | 低（gh API） |
| CERN OHR | ohwr.org | 高质量工业级 | CERN-OHL | 低 |
| Wikifactory | wikifactory.com | 社区项目 | 作者自定 | 中 |

详细爬取计划见 [`plan.md`](./plan.md)；当前已入库项目清单见 [`projects.md`](./projects.md)。

## 仓库结构

```
FacereDataset/
├── README.md        项目简介（本文件）
├── CLAUDE.md        Claude Code 项目级指令
├── plan.md          分阶段爬取与处理计划
├── log.md           执行日志（时间倒序）
├── crawlers/        各站点爬虫（一站一子包）
├── schemas/         统一数据 schema（project.schema.json）
├── scripts/         去重、格式转换、完整性校验工具
├── data/            数据产出（raw/ processed/，大文件走 LFS 或外部存储）
└── docs/            设计笔记、法律合规、数据字典
```

## 合法与伦理

- 只抓取**公开可访问**、标注为开源或明确允许再分发的内容。
- 遵守目标站点的 `robots.txt` 与 ToS；登录才能访问的内容不在本项目范围内。
- 每条记录保留 `source_url`、`author`、`license`、`crawled_at` 作溯源。
- 商业使用前按许可证逐条核对（CC-BY 要求署名，CC-BY-SA 要求同许可分享，等）。

## 快速开始

```bash
# 克隆
git clone https://git.deepknow.site/Facere/FacereDataset.git
cd FacereDataset

# 安装（Python 3.11+，uv）
uv sync

# 运行某个爬虫
uv run python -m crawlers.oshwhub --limit 10
```

> 当前处于骨架初始化阶段，爬虫尚未实现。见 `plan.md` Phase 1。

## 维护

- 主要维护者：Charles（`git.deepknow.site/Knowit`）
- 远端：`git.deepknow.site/Facere/FacereDataset`
- 问题追踪：Gitea Issues
