Бенчмарки кода LLM¶
~10 минут чтения
Предварительно: Гайд по бенчмаркам LLM, Метрики оценки LLM
HumanEval (164 задачи) и MBPP (974) полностью насыщены: frontier-модели набирают >95% и >90% соответственно. Реальный дифференциатор в 2026 -- SWE-bench Verified (500 реальных GitHub issues): Claude Opus 4.5 достиг 80.9%, GPT-5.2 -- 80.0%, а годом ранее потолок был ~50%. Разрыв между open-source (DeepSeek V3.1, 62%) и closed-source (80.9%) составляет 18 пунктов, но open-source дешевле в 55x ($0.27 vs $15 за 1M токенов). Reasoning-модели дают premium +15-20% на кодинг-бенчмарках по сравнению со standard-моделями.
Ключевые концепции¶
Иерархия бенчмарков¶
| Бенчмарк | Фокус | Сложность | Реализм | Статус 2026 |
|---|---|---|---|---|
| HumanEval | Function completion | Low-Medium | Low | Saturated (>95%) |
| MBPP | Basic Python | Low | Low | Saturated (>90%) |
| LiveCodeBench | Contest problems | Medium-High | Medium | Active |
| SWE-bench Verified | Real GitHub issues | High | High | Gold standard |
| Terminal-Bench | CLI/shell tasks | Medium | High | New |
Эволюция: simple correctness tests (HumanEval) -> real-world repository tasks (SWE-bench). Frontier models >95% на HumanEval, поэтому фокус сместился на SWE-bench Verified.
1. HumanEval¶
| Аспект | Детали |
|---|---|
| Developer | OpenAI (2021) |
| Type | Function completion |
| Language | Python |
| Problems | 164 |
| Metric | pass@k |
Пример задачи:
def has_close_elements(numbers: List[float], threshold: float) -> bool:
"""Check if there are two elements closer than threshold."""
# Model must complete this function
...
pass@k метрика:
- \(n\) = total generated samples
- \(c\) = correct samples (pass all tests)
- \(k\) = number of samples considered
Ограничения: simple standalone functions, Python only, 164 problems (too small), no library usage, no context/codebase navigation.
2. MBPP (Most Basic Python Problems)¶
| Аспект | Детали |
|---|---|
| Developer | Austin et al. (2021) |
| Problems | 974 (sanitized: 427) |
| Difficulty | Basic |
MBPP vs HumanEval: MBPP проще (basic Python), больше задач (974 vs 164), дает description + test case вместо docstring.
MBPP Sanitized: 427 задач -- убраны ambiguous/problematic problems. Более надежная оценка.
3. SWE-bench¶
| Аспект | Детали |
|---|---|
| Developer | Princeton (2024) |
| Type | Real repository fixes |
| Problems | 2,294 (Verified: 500) |
| Languages | Python (primarily) |
| Metric | % resolved |
Структура задачи:
Input:
- GitHub issue description
- Repository at specific commit
- Hints about affected files (optional)
Expected Output:
- Patch that resolves the issue
- Must pass all tests
- Must not break existing functionality
Evaluation:
- Apply patch to repo -> Run test suite -> Check if issue tests pass
SWE-bench Verified: cleaner subset (500 из 2,294) с verified test cases и clearer problem definitions.
Почему это gold standard: тестирует весь SE workflow -- понимание bug reports, навигация по codebase, написание fix, passing tests.
4. LiveCodeBench¶
| Аспект | Детали |
|---|---|
| Type | Contest problems (Codeforces, AtCoder) |
| Difficulty | 800-2400 (Elo-like scale) |
| Languages | Multiple |
| Update | Continuous (post-training cutoff) |
Ключевая фича: contamination-free -- использует только задачи published после training cutoff модели. Тестирует true reasoning ability.
5. Другие бенчмарки¶
| Бенчмарк | Тип | Размер | Фокус |
|---|---|---|---|
| CodeContests | Competitive programming | 10,000+ | Codeforces и др. |
| APPS | Interview + contest | 5,000 (5 difficulty levels) | Programming progress |
| MultiPL-E | Multi-language HumanEval | 18+ languages | Cross-language |
| HumanEval-X | Cross-lingual | 5 languages (Py/Java/JS/C++/Go) | Generation + translation |
| DS-1000 | Data science | 1,000 | Pandas, NumPy, Matplotlib |
| Terminal-Bench | CLI/shell tasks | New | Practical command-line |
SOTA Leaderboard 2026¶
SWE-bench Verified (February 2026)¶
| Rank | Model | Score | Notes |
|---|---|---|---|
| 1 | Claude Opus 4.5 | 80.9% | Anthropic, reasoning model |
| 2 | GPT-5.2 | 80.0% | OpenAI, latest flagship |
| 3 | Gemini 2.5 Pro | 63.8% | Google, multimodal |
| 4 | DeepSeek V3.1 | 62.0% | Open-source leader |
| 5 | Kimi K2.5 | 58.9% | Moonshot AI |
| 6 | Qwen3-Coder | 55.3% | Alibaba |
| 7 | Claude 3.5 Sonnet | 49.0% | Previous generation |
| 8 | GPT-4o | 45.2% | Previous generation |
80% barrier: Claude Opus 4.5 и GPT-5.2 первыми преодолели 80% на SWE-bench Verified -- near-human expert performance на real-world debugging. Reasoning premium: модели с explicit reasoning (thinking, o-series) дают +15-20% vs standard models.
LiveCodeBench¶
| Model | Score |
|---|---|
| GPT-5.2 | 89.2% |
| Claude Opus 4.5 | 88.1% |
| Gemini 2.5 Pro | 82.4% |
HumanEval / MBPP (saturated)¶
| Model | HumanEval pass@1 | MBPP pass@1 |
|---|---|---|
| Claude 3.5 Sonnet | 92.0% | 88.0% |
| GPT-4o | 90.2% | 86.5% |
| DeepSeek V3 | 89.2% | 85.5% |
| Qwen 2.5 Coder 32B | 88.5% | 86.0% |
| Llama 3.1 70B | 82.0% | 78.0% |
Open Source Leaders¶
| Model | Size | HumanEval | SWE-bench | License |
|---|---|---|---|---|
| DeepSeek V3.1 | MoE | -- | 62.0% | MIT |
| Qwen 2.5 Coder 32B | 32B | 88.5% | 35.0% | Apache 2.0 |
| DeepSeek Coder V2 | 33B | 85.0% | -- | MIT |
| StarCoder2 15B | 15B | 72.0% | -- | BigCode |
Historical Progress (SWE-bench Verified)¶
| Year | Best Score | Model |
|---|---|---|
| 2024 | ~50% | GPT-4 |
| 2025 | ~49-53% | Claude 3.5 Sonnet |
| 2026 | 80.9% | Claude Opus 4.5 |
Детали и сравнения¶
Benchmark Quality Issues¶
Test Adequacy (arXiv 2511.04355):
| Проблема | Описание |
|---|---|
| Low mutation scores | High complexity problems имеют weak test coverage |
| No correlation with coverage | More tests != better detection |
| False positives | Possible на HumanEval и MBPP |
Benchmark Contamination:
| Проблема | Описание |
|---|---|
| Data leakage | Models trained на benchmark data |
| Overfitting | Models optimize для конкретных бенчмарков |
| Temporal drift | Бенчмарки устаревают быстро |
Saturation: HumanEval >95%, MBPP >90% для frontier models. Нужны более сложные бенчмарки.
Coding Tools Ecosystem (2026)¶
| Tool | Model | Key Features |
|---|---|---|
| Cursor | Claude/GPT | GUI IDE, composer mode, tab autocomplete |
| Claude Code | Claude Opus 4.5 | Terminal-native, agentic, git integration |
| GitHub Copilot | GPT-4o/GPT-5 | IDE integration, code completion |
| Windsurf | Cascade | Context-aware suggestions |
| Aider | Multiple | Terminal, git integration |
Cursor vs Claude Code: GUI IDE experience vs terminal-native agentic execution. 2026 тренд: gap blurring -- оба заимствуют фичи друг у друга.
Model Selection Guide¶
| Сценарий | Модель | Причина |
|---|---|---|
| Complex debugging | Claude Opus 4.5 | Best reasoning |
| High-volume coding | GPT-5.2 или Gemini | Cost/performance |
| Self-hosted | DeepSeek V3.1 | Best open-source |
| Long context | Gemini или Kimi | 1M+ context |
| Cost-sensitive | DeepSeek или Qwen | 10-50x cheaper |
Pricing (February 2026)¶
| Model | Input / Output per 1M tokens |
|---|---|
| Claude Opus 4.5 | $15 / $75 |
| GPT-5.2 | $10 / $30 |
| Gemini 2.5 Pro | $7 / $21 |
| DeepSeek V3.1 | $0.27 / $1.10 |
Benchmark Selection Guide¶
| Use Case | Бенчмарк | Причина |
|---|---|---|
| Algorithm practice | HumanEval | Function-level |
| Basic coding | MBPP | Simple problems |
| Contest prep | LiveCodeBench | Real contests, no contamination |
| Real-world fixes | SWE-bench | Repository-level |
| Multi-language | MultiPL-E | Cross-language |
| Data science | DS-1000 | Pandas/NumPy |
| CLI skills | Terminal-Bench | Practical |
Для интервью¶
Q: "Какие code бенчмарки LLM наиболее релевантны в 2026?"¶
SWE-bench Verified -- gold standard (real GitHub issues, 500 задач). Claude Opus 4.5: 80.9%, GPT-5.2: 80.0%. LiveCodeBench -- contamination-free (post-training cutoff problems). HumanEval/MBPP saturated (>90-95% для frontier). Новый: Terminal-Bench (CLI skills).
Q: "Что такое pass@k и как интерпретировать?"¶
pass@k = вероятность что хотя бы 1 из k сгенерированных решений пройдет все тесты. Формула: \(\text{pass@}k = \mathbb{E}[1 - \binom{n-c}{k}/\binom{n}{k}]\). pass@1 -- самый строгий (одна попытка). 90%+ HumanEval = production-ready для простого кода. 80-90% = reliable, needs review. <70% = significant errors.
Q: "Как работает SWE-bench?"¶
GitHub issue description + repo at specific commit. Модель генерирует patch. Evaluation: apply patch -> run test suite -> check if issue tests pass + no regressions. SWE-bench Verified: 500 cleaned задач из 2,294. Тестирует полный SE workflow: bug understanding, codebase navigation, fix writing. 2026 SOTA: ~80% (near-human expert).
Q: "Open-source vs closed-source для coding?"¶
Closed-source лидирует: Claude Opus 4.5 (80.9% SWE-bench) и GPT-5.2 (80.0%). Open-source: DeepSeek V3.1 = 62.0% (gap ~18%). Reasoning premium: +15-20% для models с explicit reasoning. Но open-source дешевле в 10-50x ($0.27 vs $15 за 1M tokens).
Q: "Проблемы с текущими code бенчмарками?"¶
(1) Saturation: HumanEval >95%, MBPP >90%. (2) Data contamination: models trained on benchmark data. (3) Weak test cases: high complexity problems have low mutation scores (arXiv 2511.04355). (4) Temporal drift: бенчмарки устаревают. Solution: LiveCodeBench (continuous, post-cutoff), SWE-bench (real issues), Terminal-Bench (new).
Ключевые числа¶
| Факт | Значение |
|---|---|
| SWE-bench Verified SOTA | 80.9% (Claude Opus 4.5) |
| SWE-bench 2024 SOTA | ~50% |
| SWE-bench improvement 2024->2026 | +30 points |
| HumanEval problems | 164 |
| MBPP problems | 974 (sanitized: 427) |
| SWE-bench problems | 2,294 (Verified: 500) |
| HumanEval frontier saturation | >95% |
| Reasoning premium | +15-20% |
| Open-source gap (SWE-bench) | ~18 points |
| DeepSeek vs Claude cost ratio | ~55x cheaper |
Заблуждение: 95% на HumanEval = модель отлично кодит
HumanEval -- 164 standalone-функции на Python без контекста кодовой базы. Это уровень "напиши has_close_elements". Frontier-модели все набирают >95%, что делает бенчмарк бесполезным для сравнения. Та же модель с 95% HumanEval может показать 49% на SWE-bench (реальные GitHub issues с навигацией по репозиторию, пониманием bug reports, написанием патчей). Разрыв 46 пунктов -- HumanEval не предсказывает реальную coding ability.
Заблуждение: open-source модели непригодны для кодинга
DeepSeek V3.1 набирает 62% на SWE-bench Verified -- gap с лидером (Claude Opus 4.5, 80.9%) составляет 18 пунктов. Но DeepSeek стоит $0.27/M tokens vs $15/M у Claude -- в 55 раз дешевле. Для задач уровня HumanEval/MBPP (function-level) open-source модели дают 85-89%, что достаточно для autocomplete и простой кодогенерации. Выбор зависит от задачи: repo-level debugging -- closed-source, function-level генерация -- open-source при 55x экономии.
Заблуждение: pass@1 -- единственная важная метрика кодинга
Pass@1 показывает результат первой попытки, но production-системы (Cursor, Claude Code, Copilot) генерируют несколько вариантов. Pass@10 у модели с 70% pass@1 может быть >95%. Формула \(\text{pass@}k = \mathbb{E}[1 - \binom{n-c}{k}/\binom{n}{k}]\) нелинейна -- маленький рост pass@1 даёт большой рост pass@10. Кроме того, test adequacy -- отдельная проблема: arXiv 2511.04355 показывает low mutation scores для complex problems, то есть сами тесты ненадёжны.
Interview Questions¶
Q: Почему HumanEval и MBPP больше не используются для сравнения frontier-моделей?
Red flag: "Они всё ещё полезны, просто нужно больше задач"
Strong answer: "HumanEval (164 задачи) и MBPP (974) полностью насыщены -- frontier-модели набирают >95% и >90% соответственно. Проблемы: (1) saturation -- нет дискриминирующей способности, (2) data contamination -- модели тренируются на benchmark data, (3) тестируют standalone functions без контекста репозитория. Замена: SWE-bench Verified для real-world debugging (500 GitHub issues), LiveCodeBench для contamination-free оценки (post-cutoff задачи с Codeforces/AtCoder), Terminal-Bench для CLI skills."
Q: Как работает SWE-bench и почему это gold standard?
Red flag: "Это просто набор задач на программирование"
Strong answer: "Input: описание GitHub issue + репозиторий на конкретном коммите. Модель генерирует patch. Evaluation: apply patch, run test suite, проверить что issue-тесты проходят и existing тесты не сломаны. SWE-bench Verified -- 500 cleaned задач из 2294 с верифицированными test cases. Тестирует полный SE workflow: понимание bug report, навигация по codebase, написание fix. SOTA 2026: 80.9% (Claude Opus 4.5) vs ~50% в 2024 -- прирост +30 пунктов за 2 года."
Q: Как reasoning-модели влияют на результаты кодинг-бенчмарков?
Red flag: "Reasoning-модели просто больше, поэтому и лучше"
Strong answer: "Модели с explicit reasoning (o-series, thinking mode) дают +15-20% на SWE-bench по сравнению со standard-моделями того же семейства. Причина: SWE-bench требует multi-step рассуждений -- понять баг, найти файлы, спланировать fix, написать patch, проверить side effects. Пример: Claude 3.5 Sonnet (standard) = 49%, Claude Opus 4.5 (reasoning) = 80.9%. Но reasoning стоит дороже по compute и latency -- для простых autocomplete задач standard модель выгоднее."
Источники¶
- MarkTechPost -- "The Ultimate 2025 Guide to Coding LLM Benchmarks"
- EvidentlyAI -- "15 LLM Coding Benchmarks"
- ToLearn Blog -- "LLM Coding Benchmark Showdown 2026"
- arXiv -- "Where Do LLMs Still Struggle? Code Generation Analysis" (2511.04355)
- SWE-bench -- Official Leaderboard
- LiveCodeBench -- Contamination-free Benchmark
- Terminal-Bench -- CLI Task Evaluation
- HackerNoon -- "Evaluation Benchmarks for Code LLMs"
See Also¶
- Гайд по бенчмаркам LLM -- coding benchmarks в контексте полной таксономии 30+ LLM бенчмарков
- Последние статьи бенчмарки -- февраль 2026 leaderboards для SWE-bench, LiveCodeBench и новые papers
- Бенчмарки Function Calling -- BFCL и MCPMark -- agentic coding требует tool use, не только code generation
- Open-Source LLM модели -- DeepSeek V3, Qwen3-Coder, CodeLlama -- open-source альтернативы для coding
- Ценообразование API LLM -- cost/quality tradeoff: $0.27 (DeepSeek) vs $15 (Claude Opus) per 1M tokens