# TagMatrix
**Repository Path**: sun977/TagMatrix
## Basic Information
- **Project Name**: TagMatrix
- **Description**: 一个高性能、可视化、高自由度的跨平台数据打标,提取桌面应用程序。
- **Primary Language**: Unknown
- **License**: Apache-2.0
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-05-29
- **Last Updated**: 2026-05-29
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
TagMatrix 是一个致力于解决海量结构化/半结构化数据打标签问题的通用系统。无论是单标签分类、多标签标记,还是主副标签的混合模式,TagMatrix 都能通过其内置的高性能无状态匹配引擎 (`matcher`) 和大语言模型 (AI) 提供极速且精准的自动化打标体验。
本系统采用 **Wails (Go + Vue3)** 构建,最终交付为开箱即用的跨平台本地单体桌面应用程序(支持 Windows `.exe`、macOS `.app` 以及 Linux 可执行文件)。相比传统的 Web B/S 架构,TagMatrix 具有以下显著优势:
- 🌍 **跨平台与开箱即用**:无需额外部署服务器或配置复杂的数据库环境,直接双击运行,完美兼容三大主流操作系统。
- 🌳 **无限极树状标签体系**:彻底打破传统扁平化标签的局限,支持创建多层级、树状结构的标签体系,精准映射复杂业务分类逻辑。
- ⚙️ **强悍的多级规则匹配引擎**:内置高性能无状态匹配引擎,支持任意层级的逻辑组嵌套(AND/OR),提供高达 **19 种专业级匹配算子**(包含正则、包含、数值范围、特殊集集合等),轻松应对最严苛的打标条件。
- 🔒 **绝对的数据隐私保护**:所有业务数据(如数百万行的敏感数据)全部通过 SQLite 集中存储在本地,物理隔离,彻底杜绝数据泄露风险(仅在用户主动授权时发起受控的 AI 模型接口请求)。
- 🚀 **原生级性能与流畅体验**:得益于 Go 语言强大的并发处理能力,系统能极速支撑海量数据的流式读取与查询;结合 Vue3 与 Element Plus,提供媲美现代 Web 应用的丝滑 UI 交互。
---
## 🖥️ 用户界面展示
以下是 TagMatrix V4.0 的主要功能界面截图,展现了其强大的可视化配置与数据管理能力:
### 仪表板 (Dashboard)
展示全局打标进度、系统标签覆盖率与任务状态监控。

### 数据集 (Dataset Management)
异构数据源的物理隔离管理,支持多表头的可视化清洗与导入导出。

### 规则配置 (Tag & Rule Engine)
无限极树状标签体系,支持可视化拖拽配置嵌套的逻辑规则组,并提供基于真实数据的“试运行 (Dry Run)”防崩机制。

### 任务管理 (Task Kanban)
控制并记录每一次的批量打标操作,支持细粒度的任务下发、状态实时追踪与“一键安全回退 (Rollback)”。

### 数据看板 (Tagged Data View)
融合系统列与用户动态列的全景数据面板,支持复杂组合过滤与 CSV 导出。

### 数据中心 (Database Admin)
*(高级开发者模式功能)* 提供对底层 SQLite 的全量控制能力,包含 SQL 控制台、物理表编辑以及全量 `.db` 快照的备份与还原中心。

### 全局设置 (Global Settings)
提供系统级的参数配置,包含 AI 模型配置、高级开发者模式开关与 MDCT 权重调整。

### 全局 AI 智能助手 (AI Copilot)
常驻侧边栏的全局 AI 助手,深度注入了 TagMatrix 系统的领域知识。支持通过自然语言生成复杂的标签提取 JSON 规则、编写正则表达式以及构建数据提取 SQL,并支持将 SQL“一键”安全带入数据库控制台执行,无缝衔接业务流。最新 V4.0 版本更引入了自动化任务执行与智能数据分析能力。
#### 🤖 AI 自动执行任务
支持通过自然语言对话下发打标等任务,大幅降低操作门槛。
#### 📊 AI 数据中心 SQL 与智能分析
结合数据中心直接生成/运行 SQL,以及对业务数据进行深度的探索与分析。
---
## 📖 如何使用 TagMatrix?
TagMatrix 拥有一套严谨且强大的“数据集隔离 -> 标签规则绑定 -> 任务执行”逻辑。为了帮助您快速上手系统并掌握高阶功能,我们编写了详细的用户使用指南:
👉 **[点击阅读详细的《TagMatrix 用户使用手册》](./docs/TagMatrix/USER_MANUAL.md)**
**🚀 极简四步工作流:**
1. **数据源管理**:导入您的 Excel/CSV,系统将自动解析表头并生成相互隔离的独立“数据集”。
2. **标签规则配置**:创建树状全局标签,并在特定数据集下挂载逻辑匹配规则(配置时支持真实数据的 Dry Run 模拟测试)。
3. **任务大盘 / 执行台**:一键下发和执行全量打标任务,支持任务级回退 (Rollback)。
4. **看板 / 数据导出**:在“数据看板”中过滤检索,并将结构化的成果导出为 CSV。
---
## 🎯 核心特性 (Core Features)
* **⚡️ 本地轻量级数据中心**
* 引入 **数据集隔离模式**,彻底解决异构文件(如活动表与订单表)的表头污染与冗余问题。
* 专为大批量数据设计,支持数百万级别数据流式读取与高效查询。
* **🏷️ 灵活的标签与打标模式**
* 支持单标签模式、多标签模式、以及主副标签混合模式。
* **数据集强绑定**:标签全局通用,打标规则必须绑定具体数据集,彻底避免规则张冠李戴的逻辑惨剧。
* **🛡️ 安全与可控的执行引擎**
* **一键回退 (Rollback)**:每次打标任务生成版本快照与操作日志,打标结果不满意随时安全撤销。
* **高阶防崩设计**:底层的物理表操作与高级导入强制剥离自增主键和生命周期字段,杜绝脏数据。
* **🤖 全局 AI 智能助手 (AI Copilot)**
* 作为系统的“全局副驾驶”常驻侧边栏,深度融合了底层的 SQLite 与 Rule Engine DSL 领域知识。
* 支持流式问答、多会话隔离管理、系统当前所在页面的上下文感知。
* 支持自然语言一键生成提取配置代码,并可通过 Action 按钮快捷直达控制台执行。
* **⚖️ 多维共识打标算法 (MDCT - V4.0 全新特性)**
* 引入多维归一化打分算法,彻底解决“多规则碰撞”时的标签优先级判定问题。
* 融合了 **人为静态权重 (Priority)**、**规则逻辑深度 (Complexity)** 以及 **数据自身置信度 (Completeness)** 进行科学的客观打分。
* **AI 语义裁判**:在遇到模棱两可的业务边界冲突时,支持智能触发大语言模型进行仲裁,并持久化裁决理由,保证定标过程的可解释性与可追溯性。
* **📦 强迁移与工程化解耦**
* 支持导出全局标签体系资产 (`tags.json`),以及将指定数据集连同专属规则打包导出 (`dataset_with_rules.json`),实现业务资产与工程环境的物理分离与无损复用。
## 🛠️ 技术栈 (Tech Stack)
* **应用框架**: `Wails` (Go + Vue3) - 跨平台本地应用级打包。
* **后端语言**: `Go` - 利用 Goroutine + Channel 提供强大的异步任务处理能力。
* **前端生态**: `Vue 3` + `Element Plus` - 提供现代化的数据管理后台体验。
* **数据库**: `SQLite` + `GORM` - 单文件数据库,完美契合本地离线应用,预留 MySQL/PostgreSQL 扩展能力。
* **核心引擎**: 基于原 `NeoScan` 项目复用的高性能 `matcher` 引擎。
* **AI 接入**: `sashabaranov/go-openai`。
## 📚 详细文档 (Documentation)
项目的需求演进、架构设计及相关操作指南存放在 `docs/` 目录下:
* [USER_MANUAL.md](./docs/TagMatrix/USER_MANUAL.md) - **新用户必看**:详尽的系统使用手册与操作指南。
* [产品需求文档.md](./docs/产品需求文档.md) - TagMatrix 从 0 到 1 的核心产品需求与全景功能矩阵定义。
* [EVOLUTION_TagMatrix.md](./docs/TagMatrix/EVOLUTION_TagMatrix.md) - 需求演进与架构决策追踪记录(记录了我们如何在 V1 到 V3 的各阶段排雷并构建核心引擎)。
* [DESIGN_TagMatrix.md](./docs/TagMatrix/DESIGN_TagMatrix.md) - 系统底层核心架构设计方案。
* [CODING_STANDARDS.md](./docs/TagMatrix/CODING_STANDARDS.md) - 项目开发与代码规范。
## 🚀 快速开始 (Getting Started)
### 环境依赖
* [Go](https://golang.org/doc/install) 1.20+
* [Node.js](https://nodejs.org/en/download/) 16+
* [Wails](https://wails.io/docs/gettingstarted/installation) CLI v2
### 本地开发与运行
1. 克隆仓库至本地:
```bash
git clone https://github.com/your-repo/TagMatrix.git
cd TagMatrix
```
2. 安装前端依赖:
```bash
cd frontend
npm install
cd ..
```
3. 启动 Wails 开发者模式(支持前端热重载):
```bash
wails dev
```
### 数据保存位置
- 🍏 macOS : ~/Library/Application Support/TagMatrix/
- 🪟 Windows : C:\Users\<用户名>\AppData\Roaming\TagMatrix\
- 🐧 Linux : ~/.config/TagMatrix/
### 编译打包
在项目根目录运行以下命令,即可生成对应平台的单体桌面可执行文件(存放于 `build/bin/` 目录下):
```bash
wails build
```
## 🔮 未来演进规划 (Future Roadmap)
在完成了核心打标引擎(V3.0)与 MDCT 多维共识算法(V4.0)的演进后,TagMatrix 未来将继续在以下方向进行深耕:
* **📊 标签体系运营与分析视图**
* 提供直观的标签质量分析面板(如标签覆盖率水位、孤儿标签预警、规则命中率分布等),指导业务人员持续优化打标规则。
* **☁️ 云端同步与团队协作 (Cloud Sync)**
* 提供轻量级的 WebDAV 或 S3 协议对接支持,允许团队内部安全地共享与同步全局标签资产 (`tags.json`) 与数据集配置。
* **🔌 插件化生态扩展 (Plugin Ecosystem)**
* 开放打标推导算法与数据导入/导出扩展点,支持以插件形式接入外部自定义的机器学习推导模型或专用数据源解析器。
---
## 👨💻 开发者信息 (Developer Information)
- **Author**: Sun977
- **Email**: jiuwei977@foxmail.com
- **GitHub**: [Sun977](https://github.com/sun977)
- **License**: [MIT](https://opensource.org/licenses/MIT)
- **Copyright**: © 2026 Sun977. All rights reserved.
欢迎提交 Issue 和 Pull Request,一起将 TagMatrix 打造得更好用!