refactor-benchmark VS replacefn

Compare refactor-benchmark vs replacefn and see what are their differences.

refactor-benchmark

Aider's refactoring benchmark exercises based on popular python repos (by paul-gauthier)
Scout Monitoring - Free Django app performance insights with Scout Monitoring
Get Scout setup in minutes, and let us sweat the small stuff. A couple lines in settings.py is all you need to start monitoring your apps. Sign up for our free tier today.
www.scoutapm.com
featured
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
refactor-benchmark replacefn
2 1
23 0
- -
5.9 4.4
4 months ago 4 months ago
Python Rust
Apache License 2.0 -
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

refactor-benchmark

Posts with mentions or reviews of refactor-benchmark. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-10.
  • GPT-4 Turbo with Vision is a step backwards for coding
    5 projects | news.ycombinator.com | 10 Apr 2024
    FWIW, I agree with you that each model has its own personality and that models may do better or worse on different kinds of coding tasks. Aider leans into both of these concepts.

    The GPT-4 Turbo models have a lazy coding personality, and I spent months of effort figuring out how to both measure and reduce that laziness. This resulted in aider supporting "unified diffs" as a code editing format to reduce such laziness by 3X [0] and the aider refactoring benchmark as a way to quantify these benefits [1].

    The benchmark results I just shared about GPT-4 Turbo with Vision cover both smaller, toy coding problems [2] as well as larger edits to larger source files [3]. The new model slightly underperforms on smaller coding tasks, and significantly underperforms on the larger edits where laziness is often a culprit.

    [0] https://aider.chat/2023/12/21/unified-diffs.html

    [1] https://github.com/paul-gauthier/refactor-benchmark

    [2] https://aider.chat/2024/04/09/gpt-4-turbo.html#code-editing-...

    [3] https://aider.chat/2024/04/09/gpt-4-turbo.html#lazy-coding

  • OpenAI: Memory and New Controls for ChatGPT
    4 projects | news.ycombinator.com | 13 Feb 2024
    1-2 sentences: Rather than writing code, GPT-4 Turbo often inserts comments like "... finish implementing function here ...". I made a benchmark that provokes and quantifies that behavior.

    1-2 paragraphs:

    I found that I could provoke lazy coding by giving GPT-4 Turbo refactoring tasks, where I ask it to refactor a large method out of a large class. I analyzed 9 popular open source python repos and found 89 such methods that were conceptually easy to refactor, and built them into a benchmark [0].

    GPT succeeds on a task if it can remove the method from its original class and add it to the top level of the file with appropriate changes to the SIZE of the abstract syntax tree. By measuring the size of the AST, we infer that GPT didn't replace a bunch of code with a comment like "... insert original method here...". I also gathered other laziness metrics like counting the number of new comments that contained "...", which correlated well with the AST size test.

    [0] https://github.com/paul-gauthier/refactor-benchmark

replacefn

Posts with mentions or reviews of replacefn. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-13.
  • OpenAI: Memory and New Controls for ChatGPT
    4 projects | news.ycombinator.com | 13 Feb 2024
    Lazy coding is a feature not a bug. My guess is that it breaks aider automation, but by analyzing the AST that wouldn't be a problem. My experience with lazy coding, is it omits the irrelevant code, and focuses on the relevant part. That's good!

    As a side note, i wrote a very simple small program to analyze Rust syntax, and single out functions and methods using the syn crate [1]. My purpose was exactly to make it ignore lazy-coded functions.

    [1]https://github.com/pramatias/replacefn/tree/master/src

What are some alternatives?

When comparing refactor-benchmark and replacefn you can also consider the following projects:

llama-cpp-python - Python bindings for llama.cpp

Scout Monitoring - Free Django app performance insights with Scout Monitoring
Get Scout setup in minutes, and let us sweat the small stuff. A couple lines in settings.py is all you need to start monitoring your apps. Sign up for our free tier today.
www.scoutapm.com
featured
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured