On 4/5/26 10:01, Nguyễn Gia Phong via Development of GNU Guix and the
GNU System distribution. wrote:
Now that the discussion periods for GCD 6-7 are over,
I'm open to proposing a common stance regarding LLM.
Linking back to an earlier thread [2], I think it should cover
incorporating LLM ouput into Guix itself as well.
I suggest we tackle Guix itself first, before worrying about the
software we package.
I like OpenJDK interim policy [3]:
Contributions in the OpenJDK Community must not include content
generated, in part or in full, by large language models,
diffusion models, or similar deep-learning systems. [...]
Contributors in the OpenJDK Community may use generative AI tools
privately to help comprehend, debug, and review OpenJDK code
and other content, and to do research related to OpenJDK Projects,
so long as they do not contribute content generated by such tools.
I could be OK with such a policy (as an LLM proponent). But I don't
understand how this works in practice.
Developer: "Claude/Codex/.., please check this code I just wrote"
Claude: "There is a subtle security problem, which can easily be
remedied by rewriting the code as such:"
Then what? The OpenJDK policy as written seems to indicate that the
rewrite cannot be used. The only way I can think of that would adhere
to the policy if the developer then goes to a second developer and
explains the problem and have the other developer do the rewrite without
being exposed to the LLM output. To me that just seems wasteful theater.
I suppose we could try to prompt the LLM to never actually give any
concrete code suggestions. And then deploy the workaround above in case
the LLM did output code anyway. Is that the idea?
That still sounds like a waste, because then we'd still have to write
code that a machine can write for us. But I'd be okayish with such a
policy, as I primarily use LLMs to explore and to learn. Writing the
code is the easy part.
But I still don't understand. Say I use an LLM to figure out how to do
"list comprehension in guile", then I would never be allowed to use list
comprehension in Guix? (Deliberately using an example that is not
realistic, I think, I didn't actually try.)
Or would it be OK if I then launder my knowledge by also looking up how
to 'list comprehension' in the guile manual, or ask someone? That just
sounds silly, because I'd already know the answer.
If LLMs are the one true evil, then the above all applies. Like if I
learned how to do 'list comprehension in guile' through human sacrifice,
then I should be banned from Guix and jailed.
Is that the crux of the matter? That we have a relatively high amount
of people who consider LLMs so bad that any use is always bad and always
leads to tainted code?
Can I also add things to the list of unacceptable evils? (I can assure
you there would be no contributors left, certainly not myself.)
As mentioned in the linked thread,
while we wait for legal advisories from the FSF or FSFE, a similar
temporary policy should be in place.
We should also think for ourselves and discuss amongst ourselves. Well,
assuming we can all stay respectful of each other.
[2]: https://yhetil.org/guix-devel/[email protected]/t/
[3]: https://openjdk.org/legal/ai
Best wishes,
Phong