ChatPaper.aiChatPaper

VisCoder: Тонкая настройка крупных языковых моделей для генерации исполняемого кода визуализаций на Python

VisCoder: Fine-Tuning LLMs for Executable Python Visualization Code Generation

June 4, 2025
Авторы: Yuansheng Ni, Ping Nie, Kai Zou, Xiang Yue, Wenhu Chen
cs.AI

Аннотация

Крупные языковые модели (LLMs) часто испытывают трудности с задачами визуализации, такими как построение диаграмм и графиков, где успех зависит как от корректности кода, так и от визуальной семантики. Существующие наборы данных для настройки инструкций не содержат контроля на основе выполнения и предлагают ограниченную поддержку итеративной коррекции кода, что приводит к хрупкому и ненадежному созданию графиков. Мы представляем VisCode-200K, крупномасштабный набор данных для настройки инструкций, ориентированный на визуализацию и самокоррекцию на Python. Он содержит более 200 тысяч примеров из двух источников: (1) проверенный код для построения графиков из открытых репозиториев, сопряженный с инструкциями на естественном языке и визуализированными графиками; и (2) 45 тысяч многошаговых диалогов коррекции из Code-Feedback, позволяющих моделям исправлять ошибочный код с использованием обратной связи во время выполнения. Мы донастраиваем Qwen2.5-Coder-Instruct на VisCode-200K для создания VisCoder и оцениваем его на PandasPlotBench. VisCoder значительно превосходит сильные открытые базовые модели и приближается к производительности проприетарных моделей, таких как GPT-4o-mini. Мы также применяем протокол самоотладки для оценки итеративного исправления, демонстрируя преимущества обучения на основе обратной связи для генерации исполняемого и визуально точного кода.
English
Large language models (LLMs) often struggle with visualization tasks like plotting diagrams, charts, where success depends on both code correctness and visual semantics. Existing instruction-tuning datasets lack execution-grounded supervision and offer limited support for iterative code correction, resulting in fragile and unreliable plot generation. We present VisCode-200K, a large-scale instruction tuning dataset for Python-based visualization and self-correction. It contains over 200K examples from two sources: (1) validated plotting code from open-source repositories, paired with natural language instructions and rendered plots; and (2) 45K multi-turn correction dialogues from Code-Feedback, enabling models to revise faulty code using runtime feedback. We fine-tune Qwen2.5-Coder-Instruct on VisCode-200K to create VisCoder, and evaluate it on PandasPlotBench. VisCoder significantly outperforms strong open-source baselines and approaches the performance of proprietary models like GPT-4o-mini. We further adopt a self-debug evaluation protocol to assess iterative repair, demonstrating the benefits of feedback-driven learning for executable, visually accurate code generation.
PDF212June 5, 2025