--- title: Chart QA Review System emoji: 📊 colorFrom: blue colorTo: purple sdk: gradio sdk_version: "5.9.1" python_version: "3.10" app_file: app.py pinned: false --- # 📊 图表问答数据集审核系统 一个基于 Gradio 的人工审核系统,用于审核图表问答数据集中的问题和答案是否合理正确。 ## 功能特点 - 📊 **图表展示**:支持 HTML 格式的交互式图表展示 - 📁 **目录导航**:按 Source → Chart Type → Chart → Model 层级浏览 - ✅ **审核操作**:支持正确、错误、需修改、待定四种状态 - ✏️ **内容编辑**:可修改问题和答案,添加评论备注 - 📈 **统计面板**:实时显示审核进度和统计信息 - 📥 **数据导出**:一键导出审核记录为 JSON 格式 - ⌨️ **快捷键**:支持键盘导航和状态选择 ## 目录结构 ``` project/ ├── app.py # 主应用 ├── data_manager.py # 数据管理模块 ├── requirements.txt # 依赖列表 │ ├── dataset/ # 数据集目录(需要自行放置) │ ├── web/ # 图表 HTML 文件 │ │ └── {source}/ │ │ └── {chart_type}/ │ │ └── *.html │ ├── label/ # 图表标签信息 │ │ └── {source}/ │ │ └── {chart_type}/ │ │ └── *.json │ └── question_answer/ # QA 数据 │ └── {source}/ │ └── {chart_type}/ │ └── {model}/ │ └── *.json │ └── reviews/ # 审核记录(自动创建) └── reviews.json ``` ## 数据格式 ### Label JSON 格式 ```json { "Number": "0001", "Type": "bar", "Source": "Apache Echarts", "Weblink": "https://example.com/chart", "Topic": "Weather Statistics by City", "Describe": "The chart compares...", "Other": "" } ``` ### QA JSON 格式 ```json { "id": "chart_0001_bar_q1", "chart": "chart_0001_bar", "question": "Weather Statistics图表中,三个城市在Showers天气下的总天数是多少?", "answer": "203" } ``` ### 审核记录格式 ```json { "review_id": "uuid", "chart_id": "chart_0001_bar", "qa_id": "chart_0001_bar_q1", "source": "Apache Echarts", "chart_type": "bar", "model": "gpt-4", "original_question": "...", "original_answer": "...", "status": "correct", "modified_question": "", "modified_answer": "", "issue_type": "", "comment": "", "reviewer": "default", "review_time": "2024-01-01T00:00:00" } ``` ## 快速开始 ### 1. 安装依赖 ```bash pip install -r requirements.txt ``` ### 2. 准备数据集 将你的数据集放置到 `dataset/` 目录下,按照上述目录结构组织。 ### 3. 启动应用 ```bash python app.py ``` 应用将在 `http://localhost:7860` 启动。 ## 快捷键 | 按键 | 功能 | |------|------| | ← | 上一个图表 | | → | 下一个图表 | | 1 | 标记为正确 | | 2 | 标记为错误 | | 3 | 标记为需修改 | | 4 | 标记为待定 | ## 部署到 Hugging Face Spaces ### 方法 1:通过网页界面上传 1. 在 Hugging Face 创建一个新的 Space 2. 上传所有文件:`app.py`、`data_manager.py`、`requirements.txt`、`README.md` 3. 在 Files 标签页创建 `dataset/` 目录结构 4. 上传你的数据集文件 ### 方法 2:通过 Git 推送 ```bash # 克隆 Space git clone https://huggingface.co/spaces/YOUR_USERNAME/YOUR_SPACE_NAME cd YOUR_SPACE_NAME # 复制项目文件 cp /path/to/app.py . cp /path/to/data_manager.py . cp /path/to/requirements.txt . cp /path/to/README.md . # 创建数据集目录并上传数据 mkdir -p dataset/web dataset/label dataset/question_answer # 提交并推送 git add . git commit -m "Initial commit" git push ``` ## 注意事项 - 免费版 Spaces 有存储限制 - Spaces 重启后审核记录会丢失,请定期导出 - 大数据集建议使用 Hugging Face Datasets 存储 ## 许可证 MIT License