ChatPaper.aiChatPaper

KodCode: Um Conjunto de Dados Sintético Diverso, Desafiador e Verificável para Codificação

KodCode: A Diverse, Challenging, and Verifiable Synthetic Dataset for Coding

March 4, 2025
Autores: Zhangchen Xu, Yang Liu, Yueqin Yin, Mingyuan Zhou, Radha Poovendran
cs.AI

Resumo

Apresentamos o KodCode, um conjunto de dados sintético que aborda o desafio persistente de adquirir dados de treinamento de alta qualidade e verificáveis em diversas dificuldades e domínios para o treinamento de Modelos de Linguagem de Grande Escala (LLMs) voltados para codificação. Os recursos existentes focados em código geralmente falham em garantir tanto a amplitude de cobertura (por exemplo, abrangendo tarefas simples de codificação até problemas algorítmicos avançados) quanto a correção verificável (por exemplo, testes unitários). Em contraste, o KodCode consiste em triplas pergunta-solução-teste que são sistematicamente validadas por meio de um procedimento de autoverificação. Nosso pipeline começa sintetizando uma ampla gama de questões de codificação, em seguida gera soluções e casos de teste com tentativas adicionais alocadas para problemas desafiadores. Por fim, a síntese de dados pós-treinamento é realizada reescrevendo as questões em diversos formatos e gerando respostas sob um procedimento de rejeição baseado em testes a partir de um modelo de raciocínio (DeepSeek R1). Esse pipeline produz um conjunto de dados de codificação em grande escala, robusto e diversificado. O KodCode é adequado para ajuste fino supervisionado, e os testes unitários emparelhados também oferecem grande potencial para ajuste por reforço (RL). Experimentos de ajuste fino em benchmarks de codificação (HumanEval(+), MBPP(+), BigCodeBench e LiveCodeBench) demonstram que os modelos ajustados com KodCode alcançam desempenho de ponta, superando modelos como Qwen2.5-Coder-32B-Instruct e DeepSeek-R1-Distill-Llama-70B.
English
We introduce KodCode, a synthetic dataset that addresses the persistent challenge of acquiring high-quality, verifiable training data across diverse difficulties and domains for training Large Language Models for coding. Existing code-focused resources typically fail to ensure either the breadth of coverage (e.g., spanning simple coding tasks to advanced algorithmic problems) or verifiable correctness (e.g., unit tests). In contrast, KodCode comprises question-solution-test triplets that are systematically validated via a self-verification procedure. Our pipeline begins by synthesizing a broad range of coding questions, then generates solutions and test cases with additional attempts allocated to challenging problems. Finally, post-training data synthesis is done by rewriting questions into diverse formats and generating responses under a test-based reject sampling procedure from a reasoning model (DeepSeek R1). This pipeline yields a large-scale, robust and diverse coding dataset. KodCode is suitable for supervised fine-tuning and the paired unit tests also provide great potential for RL tuning. Fine-tuning experiments on coding benchmarks (HumanEval(+), MBPP(+), BigCodeBench, and LiveCodeBench) demonstrate that KodCode-tuned models achieve state-of-the-art performance, surpassing models like Qwen2.5-Coder-32B-Instruct and DeepSeek-R1-Distill-Llama-70B.

Summary

AI-Generated Summary

PDF304March 6, 2025