From 26edbcc8f1f7a27dadc6f879ebb1ec0e99a74a60 Mon Sep 17 00:00:00 2001 From: Paul Gauthier Date: Sat, 1 Jun 2024 11:26:16 -0700 Subject: [PATCH] copy --- _posts/2024-05-31-both-swe-bench.md | 31 +++++++------ assets/swe_bench.jpg | Bin 43201 -> 43742 bytes assets/swe_bench.svg | 68 ++++++++++++++-------------- benchmark/swe_bench.py | 6 ++- 4 files changed, 55 insertions(+), 50 deletions(-) diff --git a/_posts/2024-05-31-both-swe-bench.md b/_posts/2024-05-31-both-swe-bench.md index 095ddedaa..29fec1851 100644 --- a/_posts/2024-05-31-both-swe-bench.md +++ b/_posts/2024-05-31-both-swe-bench.md @@ -32,7 +32,8 @@ for more details on the data presented in this chart. ## Interactive, not agentic Aider achieved this result mainly through its existing features that focus on static -code analysis, reliable LLM code editing, and pragmatic UX for AI pair programming. +code analysis, reliable LLM code editing, and pragmatic UX for automatically +fixing linting and testing errors. Aider intentionally has quite limited and narrow "agentic behavior" to avoid long delays, high token costs and the need for users to repeatedly code review incorrect solutions. @@ -203,20 +204,20 @@ The table below breaks down the benchmark outcome of each problem, showing whether aider with GPT-4o and with Opus produced plausible and/or correct solutions. -|Row|Aider
w/GPT-4o
solution
plausible?|Aider
w/GPT-4o
solution
resolved
issue?|Aider
w/Opus
solution
plausible?|Aider
w/Opus
solution
resolved
issue?|Number of
problems
with this
outcome| -|:--:|--:|--:|--:|--:|--:| -| A | plausible | resolved | n/a | n/a | 73 | -| B | plausible | not resolved | n/a | n/a | 181 | -| C | non-plausible | resolved | plausible | resolved | 1 | -| D | non-plausible | resolved | plausible | not resolved | 2 | -| E | non-plausible | resolved | non-plausible | resolved | 16 | -| F | non-plausible | resolved | non-plausible | not resolved | 5 | -| G | non-plausible | not resolved | non-plausible | resolved | 4 | -| H | non-plausible | not resolved | non-plausible | not resolved | 216 | -| I | non-plausible | not resolved | plausible | resolved | 12 | -| J | non-plausible | not resolved | plausible | not resolved | 53 | -| K | non-plausible | not resolved | n/a | n/a | 7 | -|Total|||||570| +|Row|Aider
w/GPT-4o
solution
plausible?|Aider
w/GPT-4o
solution
resolved
issue?|Aider
w/Opus
solution
plausible?|Aider
w/Opus
solution
resolved
issue?|Number of
problems
with this
outcome|Number of
problems
resolved| +|:--:|--:|--:|--:|--:|--:|--:| +| A | **plausible** | **resolved** | n/a | n/a | 73 | 73 | +| B | **plausible** | not resolved | n/a | n/a | 181 | 0 | +| C | non-plausible | **resolved** | **plausible** | **resolved** | 1 | 1 | +| D | non-plausible | **resolved** | **plausible** | not resolved | 2 | 0 | +| E | non-plausible | **resolved** | non-plausible | **resolved** | 16 | 16 | +| F | non-plausible | **resolved** | non-plausible | not resolved | 5 | 3 | +| G | non-plausible | not resolved | non-plausible | **resolved** | 4 | 2 | +| H | non-plausible | not resolved | non-plausible | not resolved | 216 | 0 | +| I | non-plausible | not resolved | **plausible** | **resolved** | 12 | 12 | +| J | non-plausible | not resolved | **plausible** | not resolved | 53 | 0 | +| K | non-plausible | not resolved | n/a | n/a | 7 | 0 | +|Total|||||570|107| Rows A-B show the cases where aider with GPT-4o found a plausible solution during the first attempt. diff --git a/assets/swe_bench.jpg b/assets/swe_bench.jpg index 73ce02c1a9700beabf76d185d755b47aec698b48..4e75c4dd6f9fef0bc7834b652fd1513db8839897 100644 GIT binary patch literal 43742 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

&hBkij6er7znl7nh6QE!=MOXVOt{I+HZ$ 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 diff --git a/assets/swe_bench.svg b/assets/swe_bench.svg index 1ffb95c8f..78892a2a8 100644 --- a/assets/swe_bench.svg +++ b/assets/swe_bench.svg @@ -6,7 +6,7 @@ - 2024-06-01T07:33:17.926838 + 2024-06-01T11:25:56.978629 image/svg+xml @@ -41,12 +41,12 @@ z - - + @@ -412,7 +412,7 @@ z - + @@ -583,7 +583,7 @@ z - + @@ -699,7 +699,7 @@ z - + @@ -894,7 +894,7 @@ z - + @@ -926,7 +926,7 @@ z - + @@ -1157,7 +1157,7 @@ z - + @@ -1339,16 +1339,16 @@ z +" clip-path="url(#pf392d01723)" style="fill: none; stroke: #b0b0b0; stroke-width: 0.2; stroke-linecap: square"/> - - + @@ -1394,11 +1394,11 @@ z +" clip-path="url(#pf392d01723)" style="fill: none; stroke: #b0b0b0; stroke-width: 0.2; stroke-linecap: square"/> - + @@ -1467,11 +1467,11 @@ z +" clip-path="url(#pf392d01723)" style="fill: none; stroke: #b0b0b0; stroke-width: 0.2; stroke-linecap: square"/> - + @@ -1487,11 +1487,11 @@ L 690 242.500879 +" clip-path="url(#pf392d01723)" style="fill: none; stroke: #b0b0b0; stroke-width: 0.2; stroke-linecap: square"/> - + @@ -1523,11 +1523,11 @@ z +" clip-path="url(#pf392d01723)" style="fill: none; stroke: #b0b0b0; stroke-width: 0.2; stroke-linecap: square"/> - + @@ -1557,11 +1557,11 @@ z +" clip-path="url(#pf392d01723)" style="fill: none; stroke: #b0b0b0; stroke-width: 0.2; stroke-linecap: square"/> - + @@ -1578,11 +1578,11 @@ L 690 144.756199 +" clip-path="url(#pf392d01723)" style="fill: none; stroke: #b0b0b0; stroke-width: 0.2; stroke-linecap: square"/> - + @@ -1599,11 +1599,11 @@ L 690 112.174638 +" clip-path="url(#pf392d01723)" style="fill: none; stroke: #b0b0b0; stroke-width: 0.2; stroke-linecap: square"/> - + @@ -1780,7 +1780,7 @@ L 170.425134 307.664 L 170.425134 170.821447 L 104.863636 170.821447 z -" clip-path="url(#p73b7253dcf)" style="fill: #b3d1e6; opacity: 0.3"/> +" clip-path="url(#pf392d01723)" style="fill: #b3e6a8; opacity: 0.3"/> +" clip-path="url(#pf392d01723)" style="fill: #b3e6a8; opacity: 0.3"/> +" clip-path="url(#pf392d01723)" style="fill: #b3e6a8; opacity: 0.3"/> +" clip-path="url(#pf392d01723)" style="fill: #b3e6a8; opacity: 0.3"/> +" clip-path="url(#pf392d01723)" style="fill: #b3e6a8; opacity: 0.3"/> +" clip-path="url(#pf392d01723)" style="fill: #155f91; opacity: 0.9"/> +" clip-path="url(#pf392d01723)" style="fill: #155f91; opacity: 0.9"/> @@ -2356,7 +2356,7 @@ z - + diff --git a/benchmark/swe_bench.py b/benchmark/swe_bench.py index edc513d3d..a1aec6c29 100644 --- a/benchmark/swe_bench.py +++ b/benchmark/swe_bench.py @@ -51,7 +51,11 @@ def plot_swe_bench(data_file, is_lite): spine.set_edgecolor("#DDDDDD") spine.set_linewidth(0.5) - colors = ["#17965A" if "Aider" in model else "#b3d1e6" for model in models] + if is_lite: + colors = ["#17965A" if "Aider" in model else "#b3d1e6" for model in models] + else: + colors = ["#155F91" if "Aider" in model else "#b3e6a8" for model in models] + bars = [] for model, pass_rate, color in zip(models, pass_rates, colors): alpha = 0.9 if "Aider" in model else 0.3