Разработчиците на програмния език Rust работят над публикуването на правила за използване на AI асистенти в проекта. Предложените правила са усъвършенствани след обсъждане, включващо повече от 3000 съобщения, одобрени от 4 придружаващи и очакват публикуване. С изключение на отделни случаи, правилата забраняват предаването на код, генериран чрез AI, в основния репозиторий rust-lang/rust, но не важат за подмодулите, клоновете и зависимостите от каталога crates.io, както и за други репозитории на организацията. В същото време правилата разрешават използването на AI за анализ, изучаване, рецензиране и проверка на кода.
Използването на AI е допустимо в случаите, когато получената информация чрез AI се използва само от един разработчик в частен порядък и не се разпространява публично. Например, когато разработчик задава въпроси на AI относно кода, формира резюме от коментарите на PR или issue за себе си, привлича AI за рецензиране на изменения, създава инструменти за лична употреба чрез AI, или се консултира с AI за възможни варианти за избор на решение. Също така, допустимо е създаването на експериментални изменения чрез AI, които не подлежат на рецензиране от други участници.
Забранено е използването на AI за генериране на коментари, отчет за проблеми и описания на изменения, публикувани от името на участник. В същото време е разрешено цитиране на резултатите от AI с явна отметка, че съдържанието е генерирано чрез AI (например, прикачване на диагностични резултати от AI). Забранено е създаването на документация чрез AI. При рецензиране е забранено разглеждането на изводите от AI като достатъчни за приемане или отхвърляне на изменения — резултатите от проверката чрез AI могат да имат само препоръчителен характер.
С оговорки и ясна уговорка, че резултатът е получен чрез AI, е разрешено използването на AI за машинен превод на други езици, търсене и проверка на грешки, както и за извършване на незначителни изменения в кода и текстовете (например, корекция на печатни грешки и подбор на синоними).
В контекста на експеримента се допуска предаване на предварително одобрени, некритични, старателно проверени и добре тествани промени, първоначално генерирани чрез AI. Преди да изпрати pull-заявка с подобна промяна, разработчикът трябва предварително да се споразумеe с рецензентите. Предложените промени трябва да бъдат обозначени с етикет „ai-assisted“ и могат да засягат вторични инструменти, като tidy и linkchecker, но не трябва да се отнасят за ключови функции и елементи на езика. За проследяване на резултатите от експеримента, промените трябва да се изпращат в отделен частен Zulip-канал, достъпът до който е предоставен само на участниците в проекта.
Източник: opennet.ru
