← Back to context

Comment by parsimo2010

8 hours ago

One reason is that the llama.cpp team (GGML) has strict requirements that a human must understand the code they are contributing. If a project is fully vibe coded they can’t contribute. So a lot of projects where an AI went and coded a bunch of custom kernels to increase speed are left to their own devices.

I think this is a fine behavior. We can have upstream purists that are strict gatekeepers but don’t get in the way of downstream forks. Debian has some this in the Linux landscape for a long time, and it has enabled Ubuntu, Mint, etc. to flourish without compromising themselves.

>If a project is fully vibe coded they can’t contribute

The irony (however mild) is apparently lost on the rest of the field.

"A human pretends to understand it" signifies what exactly?

What you really mean is, the core team there doesn't want to lose control.

Which isn't really predicated on contributions not being "vibe coded" or whatever.

When quality is the problem, you need to be able to make your standards explicit, or you're just gatekeeping irrationally.

  • They do make their standards explicit: https://github.com/ggml-org/llama.cpp/blob/master/CONTRIBUTI...

    What part do you think is irrational gatekeeping?

    • > A proper code review usually takes something like one hour per 200-400 LOC and you should be spending at least that much time on code review alone.

      Not only is this not enforceable (how do you enforce how long someone spent working on a codebase on their own local machine?) the metric is severely off which instantly makes me question the competence of the llama.cpp dev team. You can easily review 10-100x that in an hour, even if you're being super pedantic about it.

      I also just ran _one_ of their files (with include deps) through Astra and it detected >100 vulnerabilities/correctness errors (with over 10 outright UB/memory corruption issues). It's actually outright shocking.

      6 replies →

  • > What you really mean is, the core team there doesn't want to lose control.

    It's 100% this. They basically produce vague guidelines such that only the core maintainers are allowed to use LLMs, under the guise of "well of course we understand the code" and no one else is. It's also completely unenforceable, how are they going to prove whether someone understands the code or not? Even if they show sufficient evidence/understanding the maintainers can simply sabotage them and accuse them of using an LLM to explain the code. No one wins here.

    • > how are they going to prove whether someone understands the code or not?

      By discussing the code.

      > maintainers can simply sabotage them and accuse them of using an LLM to explain the code

      Bad faith enforcement is possible no matter the rules. If you think it's bad faith, a different policy won't save you.