橘子不是唯一的水果,但 Tagger 可以是五彩斑斓的 😊 如果这个小工具对你有帮助,请顺手点点小星星⭐️,这对我是莫大的鼓励!🥺
轻量、灵活、自定义、本地优先的 CSV/TSV 数据标注器
Tagger 用普通表格查看数据,用快捷键对单元格、行、列或整张表添加标签。标签定义、颜色和标注位置可保存在配套 JSON 中,表格仍保持普通 CSV/TSV 格式。支持复用与配合大模型分析数据。
详细功能说明见 CURRENT_FEATURES.md。
- ⌨️ 键盘优先 — 选中数据,按快捷键打标签,标注速度极快
- 🎯 四种标注范围 — 单元格、行、列、数据集,选什么标什么
- 📂 标签不污染数据 — 标签存独立 JSON,CSV 始终干净
- 🤖 AI 友好 — 一键导出结构化 JSON
- 🔒 本地优先 — 无需注册或联网
- 💻 双端可用 — 浏览器版零安装即用,桌面版支持大文件
- 基因-疾病关联标注
- 实验数据分类
- 文献筛选
- 数据质量评估
- 异常值标记
- 数据分类
- 训练数据标注
- 模型评估
- 数据清洗
- 文本分类
- 情感分析
- 内容筛选
开发时不需要 Rust,使用 Vite 启动本地浏览器版:
# 克隆仓库
git clone https://github.com/your-username/tagger.git
cd tagger
npm ci
npm run dev终端会显示本地地址,复制到浏览器打开即可。不要直接打开仓库里的 index.html,它是 Vite 源文件,不是浏览器可直接运行的构建文件。
需要离线打开时运行 npm run build,然后打开 dist/index.html。构建产物使用相对路径,可以直接用浏览器打开。
📌 浏览器版适合 3 MB 以内的文件,数据保存在浏览器本地存储中。清除网站数据、无痕窗口关闭、换浏览器或换设备可能丢失,重要工作请导出配套 ZIP。
# 环境要求:Node.js 18+(https://nodejs.org)
# 1️⃣ 克隆仓库
git clone https://github.com/your-username/tagger.git
cd tagger
# 2️⃣ 安装依赖
npm ci
# 3️⃣ 启动(三选一)
npm run dev # 浏览器开发版
npm run tauri dev # 桌面开发版(需要 Rust)
npm run tauri build # 构建安装包(需要 Rust)📌 构建安装包需要先安装 ++Rust++。如果只想用浏览器版,不需要 Rust。
在存档界面导入 CSV/TSV。恢复已有标注时,点击“导入 ZIP”,选择配套 ZIP;也可以同时选择 CSV/TSV 与标签 JSON。默认进入标注模式。选择单元格、拖动范围、点击行号或表头,再点击标签或按标签快捷键。
工作区中的“保存”按钮或 Cmd/Ctrl+S 会保存当前修改。桌面端打开已有文件时写回原路径并提示位置;从 ZIP 恢复且没有原路径时,首次保存会弹出系统保存对话框;“另存为”可随时选择新位置,并同时写入对应的标签 JSON。
点击标签栏「+ 创建标签」,设置四个属性:
| 属性 | 说明 | 示例 |
|---|---|---|
| 名称 | 标签标识 | important |
| 定义 | 语义含义 | 高置信度候选,应保留 |
| 颜色 | 视觉标记 | 🔵 #4A90E2 |
| 快捷键 | 快速操作 | Cmd+1 |
选中数据 → 按快捷键 → 完成 ✅
Tagger 会根据你的选择自动判断标注范围:
| 你的操作 | 标注结果 |
|---|---|
选中一个单元格,按 Cmd+1 |
给这个单元格打标签 |
点击行号选中一行,按 Cmd+1 |
给整行打标签 |
点击表头选中一列,按 Cmd+1 |
给整列打标签 |
不选任何内容,按 Cmd+1 |
给整个数据集打标签 |
一个单元格可以叠加多个标签,行标签、列标签、数据集标签也会一起显示 🌈
| 操作 | 快捷键 |
|---|---|
| 🔄 切换标注/编辑模式 | Shift+L |
| ➕ 添加标签 | Cmd+1 / Cmd+2 … |
| ➖ 移除标签 | Shift+Cmd+1 / Shift+Cmd+2 … |
| 📏 选择整行 | 点击行号 |
| 📐 选择整列 | 点击表头 |
| 🔀 多选行 | Cmd + Click |
| ✅ 全选 | Cmd+A |
| 🔍 搜索 | Cmd+K 或 Cmd+F |
| 💾 保存 | Cmd/Ctrl+S 或工作区“保存”按钮 |
| ↩️ 撤销 / ↪️ 重做 | Cmd+Z / Cmd+Shift+Z |
| ❌ 清除选择 | Esc |
点击右上角「导出」按钮会直接生成配套 ZIP;悬停后也可以选择单独导出:
| 选项 | 格式 | 用途 |
|---|---|---|
| 📦 配套 ZIP | .zip |
包含 CSV/TSV、标签 JSON 和样例 JSON,可重新导入 |
| 📄 只导出 CSV | .csv / .tsv |
给其他工具使用 |
| 🏷️ 只导出标签 | .tags.json |
给 AI / Python 分析,包含每个标注的 ISO 8601 时间戳 |
不想自己写标签?
很简单:
1.点击样例json导出
2.告诉大模型自己的打标要求,类别,让它根据任务需求以及给到的样例json去设计标签
3.将大模型返回的标签文件重新导入到你的目标文件
4.开始标注!
不想自己分析怎么办?
导出标签 JSON 后,可以这样发给大模型:
我有一个数据集,已用 Tagger 进行人工标注。
标签定义:
- important: 高置信度候选
- review: 需要进一步审查
标注情况:
- row-0、row-1 标记为 important
- row-2 标记为 review
请分析标注模式,给出建议。
大模型能直接理解标签含义和标注位置 🔮
records.csv ← 你的原始数据(不被修改)
records.tags.json ← 标签定义 + 标注位置
CSV 保持干净,标签独立存储。用 Excel 打开 CSV 看不到标签,但 Tagger 可以同时读取两者恢复完整状态。
标签 JSON 的 annotations.timestamps 保存表格、行、列和单元格级别的标注时间;annotation_events 是按条目展开的时间事件,便于大模型直接读取。
npm run tauri build安装包输出在 src-tauri/target/release/bundle/。请在目标操作系统上分别构建和测试。也可以使用:
./dev.sh
./build.sh使用中遇到任何问题或有建议,欢迎邮件联系:
每封邮件都会认真阅读,你的反馈会直接帮助 Tagger 变得更好 🙏