Rust 컴파일러, LLM 기여에 대한 공식 정책 수립
Rust 프로그래밍 언어의 공식 GitHub 조직(rust-lang/rust)에 LLM(대형 언어 모델)을 활용한 기여를 규제하는 새로운 정책이 제안되었습니다. 이 정책은 최근 급증하는 저품질의 LLM 생성 코드(이른바 'slop') PR들을 효과적으로 관리하고 중재하기 위해 마련되었습니다. AI의 도덕적, 사회적, 환경적 영향에 대한 논쟁은 배제한 채, 실무적인 관리와 명확한 규칙 적용에 초점을 맞추고 있습니다.
rust-lang / rust-forge 공지
멤버 jyn514씨가 2026년 4월 17일에 댓글을 달았습니다. (수정됨)
요약: 이 문서는 rust-lang/rust에 기여할 때 LLM(대형 언어 모델)을 어떻게 사용할 수 있는지에 대한 정책을 수립합니다. crates.io의 서브트리, 서브모듈 및 종속성은 이 정책의 적용 대상이 아닙니다. rust-lang 조직의 다른 저장소도 적용 대상에서 제외됩니다. 이 정책은 사장된 RFC(Rust RFC)가 아닌, Forge에서 살아 숨 쉬는 문서(Living document)로 존재할 예정입니다. 또한 rust-lang/rust의 CONTRIBUTING.md와 rustc 및 std 개발 가이드에서 링크될 것입니다.
중재 가이드라인 이 PR(PR)은 Zulip에서 이루어진 방대한 논의를 바탕으로 작성되었습니다. 상상할 수 있는 거의 모든 각도에서 논의가 이루어졌으며, GitHub의 논의를 세지 않더라도 3,000개 이상의 메시지가 오갔습니다. 처음에는 합의에 도달할 수 있을지조차 의심스러웠습니다. 따라서 우리는 이 PR의 범위를 정책 자체로만 엄격하게 제한할 것을 요청합니다. 특히, 아래의 몇 가지 주제는 범위를 벗어난 것으로 표시했습니다. 우리는 이러한 주제들이 여전히 중요하다고 생각하지만, 이곳이 그것을 논의할 적절한 장소가 아니라고 판단한 것입니다. 이 PR에 대한 어떤 댓글도 다음 주제를 언급해서는 안 됩니다:
- LLM의 장기적인 사회적, 경제적 영향
- LLM의 환경적 영향
- LLM 출력물의 저작권 상태와 관련된 모든 것
- LLM을 사용하는 사람들에 대한 도덕적 판단
중재팀(Moderation team)에 이 규칙들을 집행해 달라고 요청했습니다.
피드백 가이드라인 이 정책의 일부가 일부 사람들을 매우 불만스럽게 만들 것이라는 점을 알고 있습니다. 이 글을 읽으면서 다음 사항을 고려해 주시기를 바랍니다. 본인의 우려를 해결할 수 있는 정책의 구체적인 개선안이 있는지 생각해 보십시오. 또한, 그 변화가 정책을 중재하기 더 어렵게 만들지, 합의에 도달하기 더 어렵게 만들지, 그리고 그 우려가 병합(Merge)되기 전에 반드시 해결되어야 하는지 아니면 후속 조치에서 해결될 수 있는지 고려해 주십시오. 정책을 만들지 않는 데 따르는 대가를 명심하십시오. 만약 본인이나 본인의 팀과 관련된 우려라면 워크플로우 중 어떤 구체적인 부분이 방해를 받게 되는지 생각해 주십시오. 특히 우리는 rust-lang/rust와 관련된 워크플로우에만 관심이 있습니다. 다른 저장소는 이 정책의 영향을 받지 않으므로 논의 대상이 아닙니다. 그 방해를 감수할 수 있습니까? 그 정책을 지연시킬 만큼 가치 있는 일입니까? 이 문서의 이전 버전은 Zulip에서 논의되었으며, 그곳에서 제기된 제안에 따라 수정을 거쳤습니다.
동기(Motivation) 많은 사람들이 LLM이 생성한 코드와 글을 읽거나 검토하는 것을 매우 불쾌하게 느낍니다. 반면, 많은 사람들은 LLM이 학습과 탐구에 있어 상당한 도움이 된다고 생각합니다. rust-lang/rust는 현재 주로 LLM이 작성한 저노력의 쓰레기 같은('slop') PR(Pull Request)이 범람하는 상황에 직면해 있습니다. 이러한 정책이 있으면 사안별로 일일이 검토할 필요 없이 이러한 PR들을 더 쉽게 중재하고 관리할 수 있습니다. 이 정책은 LLM이 좋은 아이디어인지 나쁜 아이디어인지, 혹은 LLM의 장기적인 영향에 대한 논쟁을 위한 것이 아닙니다. 오직 rust-lang/rust 자체의 향후 정책을 설정하기 위한 목적입니다.
단점(Drawbacks)
- 이 정책은 LLM의 일부 타당한 사용 사례까지 금지합니다. 우리는 정책을 이해하고 중재하기 쉽게 만들기 위해 너무 적게 금지하는 것보다 너무 많이 금지하는 쪽으로 의도적으로 편향했습니다.
- 이 정책은 의도적으로 LLM의 도덕적, 사회적, 환경적 영향을 다루지 않습니다. 이러한 주제는 Zulip에서 광범위하게 논의되었음에도 합의에 도달하지 못했지만, 이러한 논의의 결과와 상관없이 이 정책은 필요합니다.
- 이 정책은 의도적으로 프로젝트 전체에 적용되는 정책을 설정하려고 시도하지 않습니다. 우리는 한 달 이상 합의를 이루려고 시도했지만 큰 진전이 없었습니다. 우리는 임시방편적인 중재 결정을 내리는 것보다 차라리 손실을 줄이고(cutting our losses)라도 기준이 되는 무언가를 갖기로 했습니다.
- 이 정책은 의도적으로 rust-lang/rust의 서브트리에 적용되지 않습니다. 우리는 그곳에서 동일한 중재 문제를 겪고 있지 않으므로, 동일한 압박감 속에서 정책을 세울 필요가 없습니다.