LiveCodeBench
LiveCodeBench é um benchmark com data de publicação para modelos de programação com IA, que avalia geração e reparo de código, raciocínio sobre execução e desempenho em problemas novos.
LiveCodeBench é um benchmark atualizado continuamente para avaliar a capacidade de modelos de linguagem com IA de resolver problemas de programação. Ele verifica se um modelo consegue produzir código funcional, corrigir erros e raciocinar sobre o comportamento de programas. Seu diferencial é o tempo: os problemas têm datas de publicação, permitindo que os avaliadores testem modelos com desafios lançados após o corte de treinamento — a data mais recente abrangida pelo material de treinamento. Isso ajuda a distinguir a capacidade genuína de resolver problemas da lembrança de soluções encontradas anteriormente.
Origens e design do benchmark#
Apresentado no artigo de 2024 LiveCodeBench: avaliação abrangente e livre de contaminação de grandes modelos de linguagem para código, o LiveCodeBench foi criado por pesquisadores da UC Berkeley, do MIT e da Cornell University, liderados por Naman Jain. Ele reúne problemas de programação competitiva do LeetCode, AtCoder e Codeforces. Os primeiros resultados de referência incluíam GPT-4 Turbo e Claude 3 Opus, que tiveram bom desempenho em suas tarefas de avaliação; DeepSeek-Instruct-33B e Phind-34B estavam entre os principais modelos de acesso aberto nas comparações iniciais. Esses são pontos de referência históricos, não líderes permanentes do ranking.
A versão inicial, release_v1, continha 400 problemas publicados de maio de 2023 a março de 2024. Lançamentos posteriores no Hugging Face ampliaram a coleção, portanto o LiveCodeBench não tem um tamanho único e permanente. Para que um resultado seja reproduzível, é preciso identificar a versão e o período de avaliação.
Como outros conjuntos de dados de benchmark, ele oferece tarefas e procedimentos de avaliação compartilhados para comparar modelos. Seu design de avaliação com datas de publicação também permite que os avaliadores selecionem um período comum de problemas recém-publicados.
O que o LiveCodeBench mede#
O LiveCodeBench avalia quatro capacidades relacionadas de grandes modelos de linguagem, sistemas que geram e interpretam texto, incluindo código-fonte:
- Geração de código: produzir um programa a partir da descrição de um problema e de pares de entrada e saída de exemplo. O avaliador executa a solução com testes adicionais.
- Autor reparo: revisar uma solução incorreta após receber feedback da execução, como uma exceção ou um teste que falhou.
- Execução de código: prever a saída de um programa fornecido para uma entrada especificada. Nesse caso, “execução” descreve a tarefa de raciocínio do modelo; o avaliador compara a previsão do modelo com a execução real.
- Previsão da saída de testes: inferir a saída esperada com base na especificação do problema e em uma entrada fornecida, sem receber a implementação.
A distinção entre as duas últimas tarefas é importante. A execução de código pergunta o que um programa existente faz; a previsão da saída de testes pergunta o que uma implementação correta deve fazer. O autorreparo examina o comportamento de feedback e revisão também usado na programação agêntica, na qual sistemas de IA planejam, escrevem, executam e revisam código.
Na geração de código, correção funcional significa passar em todos os testes obrigatórios. Um programa pode ser executado com sucesso e ainda produzir respostas incorretas, enquanto um erro de execução pode impedi-lo de produzir qualquer resposta. Ambas as falhas afetam o desempenho no benchmark.
Como interpretar as pontuações e entender a contaminação#
Pass@1 mede a probabilidade de uma única solução gerada passar em todos os testes obrigatórios, calculada como média entre os problemas. Um valor informado de 60% significa que aproximadamente seis em cada dez problemas são resolvidos segundo o procedimento de avaliação especificado. Isso não significa que cada programa passe em 60% dos testes.
Para fazer comparações justas, é preciso usar a mesma versão do conjunto de dados, o mesmo período, a mesma tarefa e as mesmas configurações de geração. Engenharia de prompts, configurações de amostragem, limites de saída e oportunidades de reparo podem alterar o resultado. As divisões entre fácil, médio e difícil também revelam diferenças que uma média geral oculta.
Contaminação do benchmark ocorre quando problemas ou soluções da avaliação aparecem nos dados de treinamento de um modelo. Essa forma de vazamento de dados pode inflar as pontuações porque o modelo já encontrou o material. Selecionar problemas publicados após o corte de treinamento do modelo reduz esse risco, embora a confiabilidade do corte e as atualizações posteriores do modelo também sejam relevantes.
Por isso, uma afirmação de que determinado modelo “lidera o LiveCodeBench” precisa incluir uma captura datada do ranking e as mesmas configurações de avaliação. É difícil interpretar um ranking sem esse contexto.
Aplicações e benchmarks relacionados#
O LiveCodeBench permite comparar modelos de programação e diagnosticar se as deficiências estão na geração de soluções, na compreensão de código ou no reparo de falhas. Suas tarefas baseadas em competições fornecem evidências sobre a capacidade de programação algorítmica; uma avaliação mais ampla do desenvolvimento de software também precisa testar a navegação por repositórios, o gerenciamento de dependências e o comportamento da integração.
LiveBench é um benchmark separado e mais abrangente, que cobre áreas como raciocínio, matemática, linguagem e programação. Nomes parecidos não significam que as pontuações sejam intercambiáveis.
Para desenvolvedores que criam soluções com Ultralytics YOLO, o LiveCodeBench oferece um indicador para avaliar um assistente de programação. Um fluxo de trabalho complementar concreto é usar Ultralytics Agent Skills, que fornece a agentes de programação compatíveis instruções para preparar conjuntos de dados, treinar, fazer inferência e exportar.
Quando esse assistente ajuda a criar uma aplicação YOLO26, avalie o código gerado separadamente do modelo de visão: o modo de validação mede a qualidade das previsões, enquanto o modo de benchmark compara a precisão e a velocidade de inferência dos formatos de implantação.










