За прошедший год искусственный интеллект заметно улучшил свои способности генерировать письменную речь. Сканируя массивные данные, программа на базе машинного обучения может создавать практически всё, начиная от коротких рассказов до текстов песен. Теперь эти же методы применяются и в кодировании с помощью нового инструмента под названием Deep TabNine.
Deep TabNine – это программа для автозаполнения кода, созданная студентом факультета информатики Университета Ватерлоо Джейкобом Джексоном (Jacob Jackson). Программисты могут установить её как дополнение для своего редактора. Она не является чем-то уникальным, подобного рода программное обеспечение существовало и ранее, но машинное обучение значительно улучшило его возможности. Впервые программа вышла в ноябре прошлого года, а в этом месяце автор выпустил обновлённую версию, которая использует алгоритм генерации текста с глубоким обучением под названием GPT-2, разработанный исследовательской лабораторией OpenAI для улучшения своих возможностей. Обновление настолько впечатлило программистов, что они назвали Deep TabNine «сногсшибательным» инструментом.
Джексон утверждает, что его программа предлагает лучшие подсказки, поскольку работает на прогнозирующей основе, тогда как большинству других автозаполнителей кода приходится анализировать то, что пользователь уже написал. Deep TabNine для своих прогнозов опирается на способность машинного обучения находить статистические закономерности в данных.
Аналогично тому, как ИИ-алгоритмы обучаются на книгах, статьях и прочих источниках информации, Deep TabNine обучался на двух миллионах файлов из репозитория GitHub. Программа находит шаблоны в этих данных и использует их, чтобы предположить, что может следовать в строке кода, будь то переменная или функция. По словам автора, использование глубокого обучения даёт несколько преимуществ, самым главным является поддержка новых языков программирования. Deep TabNine понимает около 22 различных языков программирования (Python, JavaScript, Java, C++, C, PHP, Go, C#, Ruby, Objective-C, Rust, Swift, TypeScript, Haskell, OCaml, Scala, Kotlin, Perl, SQL, HTML, CSS и Bash), в то время как большинство альтернатив работают только с одним.
Deep TabNine – не идеальный инструмент автозаполнения и писать за вас весь код, разумеется, не будет. Программное обеспечение допускает ошибки в своих прогнозах и не всегда является полезным для некоторых типов кодирования. Лучше всего инструмент работает при автозаполнении относительно шаблонного кода, типа программирования, которое выполняется тысячи раз с небольшими вариациями. Программа менее приспособлена писать код, когда пользователь решает новую задачу.
Джейкоб Джексон сравнивает использование Deep TabNine с переходом от сенсорной клавиатуры в смартфонах к обычной физической клавиатуре. Программа ускоряет ввод информации и делает кодеров более продуктивными. На текущий момент лицензия на TabNine стоит $49 для частного использования и $99 для корпоративных пользователей.
Источник: The Verge
Источник: ITC.ua