ChatPaper.aiChatPaper

VisCoder: Feinabstimmung von LLMs zur Generierung von ausführbarem Python-Visualisierungscode

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

June 4, 2025
Autoren: Yuansheng Ni, Ping Nie, Kai Zou, Xiang Yue, Wenhu Chen
cs.AI

Zusammenfassung

Große Sprachmodelle (LLMs) haben oft Schwierigkeiten mit Visualisierungsaufgaben wie dem Erstellen von Diagrammen und Grafiken, bei denen der Erfolg sowohl von der Korrektheit des Codes als auch von der visuellen Semantik abhängt. Bestehende Instruction-Tuning-Datensätze bieten keine ausführungsbasierte Überwachung und nur begrenzte Unterstützung für iterative Code-Korrekturen, was zu fragiler und unzuverlässiger Diagrammerstellung führt. Wir präsentieren VisCode-200K, einen groß angelegten Instruction-Tuning-Datensatz für Python-basierte Visualisierung und Selbstkorrektur. Er enthält über 200.000 Beispiele aus zwei Quellen: (1) validierte Plotting-Codes aus Open-Source-Repositories, gepaart mit natürlichen Sprachanweisungen und gerenderten Diagrammen; und (2) 45.000 mehrstufige Korrekturdialoge aus Code-Feedback, die es Modellen ermöglichen, fehlerhaften Code mithilfe von Laufzeit-Feedback zu überarbeiten. Wir feintunen Qwen2.5-Coder-Instruct auf VisCode-200K, um VisCoder zu erstellen, und evaluieren es auf PandasPlotBench. VisCoder übertrifft starke Open-Source-Baselines deutlich und nähert sich der Leistung proprietärer Modelle wie GPT-4o-mini an. Darüber hinaus führen wir ein Selbstdebug-Evaluationsprotokoll ein, um iterative Reparaturen zu bewerten, und demonstrieren die Vorteile des feedbackgesteuerten Lernens für die Erstellung von ausführbarem, visuell präzisem Code.
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