En el contexto de la rápida evolución del uso de modelos de lenguaje grande (LLM) en proyectos de código abierto, el equipo del proyecto Rust ha implementado una nueva política que regula su aplicación dentro de su repositorio principal, rust-lang/rust. Esta normativa responde a la necesidad de establecer directrices claras sobre cómo los LLM pueden ser utilizados por los contribuyentes, moderadores y revisores, con el fin de mantener la integridad y la calidad de la comunidad.
La adopción de esta política se justifica por varios problemas identificados en la interacción de los colaboradores con los LLM. En primer lugar, se ha observado que los productos técnicos pulidos no siempre reflejan el esfuerzo y la comprensión del autor, lo que afecta la evaluación de las contribuciones. Además, con la facilidad que ofrecen los LLM para generar código, se ha exacerbado la ya existente discrepancia entre la cantidad de contribuciones y la disponibilidad de revisores, creando una carga adicional sobre aquellos encargados de evaluar el código presentado. Por último, el simple hecho de copiar y pegar respuestas de un LLM ha llevado a una pérdida de tiempo y a una falta de autenticidad en la interacción entre los colaboradores.
Objetivos de la Nueva Política
El enfoque de esta política no es prohibir el uso de LLM, sino regular su aplicación para fomentar una comunidad más colaborativa y eficiente. Se distingue entre el uso de LLM para la asistencia en la revisión, análisis, y sugerencias, y su uso para la creación de código, que está sujeto a restricciones más estrictas. Los autores de pull requests (PR) deberán ser transparentes sobre el uso de modelos de lenguaje y garantizar que cualquier código generado cumpla con estándares superiores de calidad.
Una de las premisas clave de la política establece que el esfuerzo y la dedicación del colaborador deben ser evidentes a través de su trabajo. La política hace hincapié en que no sólo se busca el resultado final, sino también el proceso de aprendizaje y la comprensión del autor sobre el código. Esto es fundamental para asegurar que el conocimiento técnico y la experiencia se transmitan dentro de la comunidad, creando un ambiente inclusivo y de mentoría para nuevos colaboradores.
Reglas y Directrices Clave
Entre las directrices específicas de la política, se incluyen normas sobre la divulgación de contenido generado por LLM. Por ejemplo, se establece que cualquier influencia de LLM en la identificación de problemas o en la creación de PR debe ser claramente indicada. Los revisores tienen la autoridad para cerrar PRs que no cumplan con estas directrices y no están obligados a revisar contenido que consideran podría no haber sido elaborado por el autor. Asimismo, se subraya que el contenido generado por LLM no debe ser incluido en documentación pública o comentarios sin la debida identificación.
A medida que esta política se implementa, los líderes del proyecto también consideran la creación de un sub-equipo que se encargue de supervisar el uso de LLM, con el fin de facilitar la evolución de estas normas y responder a los desafíos que surjan en el futuro.
La aprobación de este nuevo marco normativo no sólo busca regular el uso de LLM, sino también servir como base para el desarrollo continuo de la comunidad Rust, alentar la colaboración y asegurar que todos los contribuyentes, independientemente de su experiencia, se sientan bienvenidos y respetados.
Esta iniciativa es un paso significativo hacia la integración responsable de la inteligencia artificial en el desarrollo de software, estableciendo un precedente sobre cómo pueden coexistir la automatización y el trabajo humano en proyectos de código abierto.
