redhat-et / redhat-et/code-agent

Code benchmarks

Open
#5 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
1
Forks
4
PR merge metrics
No merged PRs in 30d

Description

While we are starting with SWE-bench Verified, we should explore other python benchmarks. In increasing order of difficulty:

  • HumanEval: ~160 hand-crafted python functions. Difficulty - Easy
  • ODEX: Open-domain execution-based python. Library API use. Difficulty - Easy-Medium
  • BigCodeBench: ~1700 tasks using composition of the standard library + third-party libraries. Difficulty - Medium
  • LiveCodeBench: Competitive programming. Contamination resistant. Difficulty: Medium-Very Hard
  • SWE-bench Verified: 500 human-validated GitHub issues from real python repos. Difficulty: Hard

Warning: See paper for issues with memorization.

Agentic coverage:

  • SWT-Bench: Test generation for a given codebase. Includes categories like Test Generation, Test Repair, Coverage Improvement.
  • Terminal-Bench 2.0: Tasks in a terminal/shell environment.
  • FeatureBench: Feature request implementation and not just bug fixes.

Python DS code:

  • DS-1000: ~1000 data science problems in numpy, pandas, matplotlib, sklearn, pytorch, scipy.
  • MLE-bench: Kaggle competitions benchmark

Contamination resistance:

  • EvoEval: Semantic perturbations of HumanEval problems.

Possible curriculum for RL:

  1. Easy HumanEval -> EvoEval -> ODEX
  2. Medium BigCodeBench -> DS-1000 -> LiveCodeBench (easy/medium)
  3. Hard SWE-bench Verified -> SWT-Bench -> Terminal Bench 2.0
  4. Very Hard MLE-Bench -> LiveCodeBench (hard) -> FeatureBench

Important point about environment

Most of these benchmarks have examples that fit in the context window. For practical use, once codebases get large enough, retrieval plays an important role. Might need custom harness to reproduce this e.g. cap the number of files that can be read for any instance. Don't worry about this now!

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no repository files, tests, or entry points. Start by reviewing the linked benchmark descriptions and the existing benchmark setup, if one is present; done would require a decided benchmark scope and a concrete plan for evaluation and environment handling.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
machine-learning
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.