VisCode-200K
收藏资源简介:
VisCode-200K是一个大规模的Python可视化指令调整数据集,包含超过20万个示例,分为两个来源:(1) 从开源代码库中验证的可执行绘图代码,与自然语言指令和渲染的图表配对;(2) 来自Code-Feedback的45K多轮校正对话,使模型能够使用运行时反馈来修订错误的代码。该数据集旨在支持跨多种绘图库的鲁棒代码生成,并通过多轮监督实现迭代改进。
VisCode-200K is a large-scale Python visualization instruction tuning dataset containing over 200,000 examples, sourced from two distinct origins: (1) Executable plotting code verified from open-source code repositories, paired with matching natural language instructions and rendered charts; (2) 45K multi-turn correction dialogs from Code-Feedback, which enable models to revise erroneous code using runtime feedback. This dataset is designed to support robust code generation across multiple plotting libraries and facilitate iterative model improvement via multi-turn supervision.
VisCoder 数据集概述
数据集基本信息
- 名称: VisCode-200K
- 类型: 监督式指令调优数据集
- 领域: Python可视化代码生成与自我修正
- 规模: 超过200K样本
- 来源:
- 开源仓库中的已验证绘图代码(105K来自stack-edu,50K来自CoSyn-400K)
- Code-Feedback数据集中的45K多轮修正对话
数据集构成
1. 代码提取与验证
- 来源库: matplotlib, seaborn等主流可视化库
- 处理流程:
- 库过滤 → 代码块提取 → 运行时验证 → 指令生成
- 验证方法:
- 在隔离Jupyter环境中执行代码
- 超时处理和错误拦截机制
- 仅保留成功生成有效图像文件的样本
2. 指令生成
- 组件:
- 设置描述
- 数据描述
- 数据块预览
- 高级绘图描述
- 样式描述
- 生成方法: 使用GPT-4o基于代码和对应图像合成
3. 多轮反馈集成
- 来源: Code-Feedback数据集
- 规模: 45K多轮对话
- 内容: 用户指令→生成代码→执行反馈→修正提示
实验评估
评估基准
- PandasPlotBench
- 评估指标:
- 执行通过率(Exec Pass)
- 平均视觉和任务分数(Mean)
- 高分样本比例(Good)
主要结果
-
VisCoder表现:
- 显著优于开源基线模型(Qwen2.5-Coder-Instruct)
- 3B版本在plotly和seaborn上改进明显
- 7B版本在部分库上超越GPT-4o-mini
-
自我调试评估:
- VisCoder-7B在matplotlib和seaborn上达到90%+执行率
- 多轮修正带来持续性能提升
-
跨库差异:
- matplotlib/seaborn表现较好
- plotly挑战最大(开源模型执行率<35%)
自我调试分析
- 调试轮次: 初始生成+3轮修正
- 关键发现:
- 首轮修正效果最显著
- VisCoder-7B在seaborn上接近GPT-4o
- 所有模型均存在无法修复的失败案例
相关资源
- 论文: arXiv
- 代码: GitHub
- 模型: 🤗 VisCoder-7B/3B
- 数据集: 🤗 VisCode-200K

- 1VisCoder: Fine-Tuning LLMs for Executable Python Visualization Code Generation滑铁卢大学, 卡内基梅隆大学, Netmind.ai, 独立研究者 · 2025年



