Чтобы ученые могли пользоваться наработками других команд, важно публиковать все результаты и делать их прозрачными и понятными. Для этого научные статьи и вспомогательные материалы для них (например, данные для обучения моделей, код для реализации алгоритмов, проведения экспериментов, эталонные наборы данных) загружают в репозитории — специальные хранилища кода, открытые для других пользователей. Каждый такой репозиторий должен быть удобен для запуска и использования: хорошо структурирован, написан на английском языке, иметь описание. Но часто это не так: код и данные хранятся хаотично и разобраться в них может только автор. Из-за этого сложно переиспользовать опубликованные результаты, воспроизвести описанный в статье алгоритм — а это, в свою очередь, снижает ценность научной публикации, ее цитируемость.

Для решения этой проблемы можно использовать ИИ-ассистентов для написания кода (например, GitHub Copilot), отдельные инструменты для документирования кода. Однако комплексного решения, которое полностью автоматизирует цикл работы с репозиторием на всех этапах, до сих пор не существовало.

Чтобы сделать научные данные более читаемыми и воспроизводимыми, ученые ИТМО разработали Open Source Advisor (OSA) — инструмент на основе больших языковых моделей, который улучшает репозитории с открытым научным кодом. Он позволяет создавать открытые репозитории на основе имеющегося кода и научной статьи по реализации предложенного метода, генерирует описание и для репозитория в целом, и для отдельных классов и методов, «пишет» отчеты о необходимых доработках, упорядочивает содержание. Инструмент будет полезен ученым (например, биологам и химикам), которые не обладают опытом коммерческой разработки и навыками оформления кода.

Авторы использовали мультиагентную систему на основе больших языковых моделей, каждая из которых решает свою задачу: генерация документации, тестирование и анализ кода. В зависимости от наличия доступа пользователь сам может выбрать, какие модели он хочет использовать: GPT-4, LLaMA, GigaChat и другие.

«Сейчас инструмент находится на стадии бета-тестирования (в частности, мы обсуждаем тестирование OSA на AI-first платформе GitVerse), а полноценную версию инструмента планируем выпустить к осени. В будущем мы хотим развернуть этот инструмент на серверах ИТМО, чтобы пользоваться им было еще проще. Сейчас мы работаем над автоматической генерацией тестов, чтобы пользователь мог убедиться, что код корректно запускается, а также реализуем автоматическое создание графов знаний о лучших практиках открытой разработки, применение которых обеспечивает повышение качества модели», — рассказал руководитель проекта и группы научно-технического развития исследовательского центра «Сильный искусственный интеллект в промышленности» ИТМО Николай Никитин.

Николай Никитин. Фото: Дмитрий Григорьев / ITMO NEWS

Николай Никитин. Фото: Дмитрий Григорьев / ITMO NEWS

Ученые уже протестировали программу на нескольких репозиториях команд ИТМО, а также на проектах зарубежных коллег из Бразилии — на них в том числе проверили функцию автоматического перевода названий файлов и папок с португальского языка на английский, чтобы создаваемый открытый код был доступен международному научному сообществу. В будущем исследователи планируют «научить» программу решать более сложные задачи разработки научных проектов и еще больше снизить степень требования к начальной готовности кода.