Кодить станет проще: представлен умный инструмент для автозаполнения в редакторах кода

02.08.2019     

Программист Джейкоб Джексон, изучающий информатику в канадском Университете Ватерлоо, написал интеллектуальное средство автозавершения строк – Deep TabNine. Инструмент поможет разработчикам быстрее писать код за счет автозаполнения. Выбирая один из предложенных вариантов завершения строк, разработчик сможет писать код быстрее и избавляется от ошибок, которые тормозят процесс разработки.

Как работает TabNine

TabNine создан на базе технологий машинного обучения. Разработчики отметили: глубокое обучение действительно наделало немало шума в разных отраслях, но в основном это были эксперименты вроде синтеза речи или создания фотореалистичных портретов. В программировании TabNine – едва ли не первое практическое применение технологии.

 

TabNine помогает программисту писать код на Python

 

Инструмент использует модель GPT-2 для обработки естественного языка. Разработчики адаптировали модель, чтобы она могла понимать код. Широкие возможности, характерные для анализа естественного языка, решили не убирать. TabNine работает с комментариями и документацией – и здесь успешное автозаполнение экономит время на написание кода. 

Модель тренировали на 2 млн файлов с GitHub. Их брали из открытых репозиториев. В результате TabNine уловил закономерности и в большинстве случаев успешно дополнил написанное. 

Кому подойдет TabNine

Инструмент уже работает с популярными языками программирования - Python, C++, Java и Haskell и еще восемнадцатью. Он совместим с редакторами кода Microsoft Visual Studio Code и Sublime Text, а также с другими редакторами – Atom или Vim.

Пока TabNine существует лишь в бета-версии. Что протестировать ее, нужно зарегистрироваться на сайте проекта. 


Автор:
Ксения Шестакова Обозреватель


Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. CheBurator 3439 02.08.19 12:52 Сейчас в теме
занятная штука
mogilkovv; seperblunt2; +2 Ответить
2. CheBurator 3439 02.08.19 13:11 Сейчас в теме
однако, если обучение шло на большом массиве,то вероятность неоптимальных\кривых подсказок имхо велика. т.к. исходим из того, что большинство прогов пишут "неоптимально". итого, юзание такого инструмента либо приведет к расползанию и умножению нехорошего кода, либо увеличит время программирования из-за анализа и выбора предлагаемых вариантов.
CyberCerber; +1 Ответить
4. s22 19 02.08.19 16:33 Сейчас в теме
(2)
обучение


Тут используется алгоритм машинного переводчика. Значит по большому счет удостаточно, что бы оптимальных примеров было 90%.
Маловстречающиеся будут вытесненны.
6. m_aster 97 02.08.19 17:09 Сейчас в теме
(4)
В ролике видно, что система подбирает максимум пять строк с процентным отношением популярности программных конструкций, если они из рабочего кода, то сама конструкция правильная с точки зрения синтаксиса, поэтому ее можно смело вставлять в свой код. Исправить под себя никто не мешает. Хорошее подспорье.
Krio2; sansys; +2 Ответить
7. s22 19 02.08.19 18:13 Сейчас в теме
(6)
В ролике видно, что система подбирает максимум пять строк с процентным отношением популярности программных конструкций, если они из рабочего кода, то сама конструкция правильная с точки зрения синтаксиса, поэтому ее можно смело вставлять в свой код. Исправить под себя никто не мешает. Хорошее подспорье.

Если это GPT-2, то тут система пишет код точно так же как например рассказ или делает перевод. Тут не будет код всегда синтаксически корректным.
8. m_aster 97 02.08.19 22:57 Сейчас в теме
(7)
По ссылке https://habr.com/ru/post/440564/:
"Это нейронная сеть с рекордным на данный момент числом параметров (1.5 млрд, против обычно используемых в таких случаях 100-300 млн) оказалась способна генерировать целые страницы связного текста.
Генерировать настолько хорошо, что в OpenAI отказались выкладывать полную версию, опасаясь что эту нейросеть будут использовать для создания фейковых новостей, комментариев и отзывов, неотличимых от настоящих."
Т.е, очень похоже на то, как пишут люди. Пишите правильный код и все будет как надо.
13. protexprotex 128 03.08.19 11:59 Сейчас в теме
(2) Есть такое понятие в машинном обучение - мудрость толпы или Бэггинг - обучение. Т.е. если есть у Вас человек 1000 которые не очень то хорошо (и это обязательное условие для этой технологии) разбираются в каком - то вопросе, и Вы их спросите дать количественную оценку какого- то явления, а потом усредните ответы, то с удивлением обнаружите, что среднее значение ответов очень близко к правильному ответу. Например - покажите им всем корову и спросите сколько она весит (на "глаз" чтобы определили) - ответы будут отличаться, но в среднем ответ будет практически точным. Вот так вот работает эта технология. Здесь же все то же самое - у всех будут вариации, но в среднем можно выбрать общий тренд.
14. spacecraft 03.08.19 12:25 Сейчас в теме
(13) это просто еще одно подтверждение вычислений по теории вероятности.
Вот если 1000 человек будут называть корову совсем другим именем, то и машинное обучение будет давать не верный результат. Результат будет максимальное количество одинаковых значений.
18. protexprotex 128 03.08.19 14:36 Сейчас в теме
(14) Это да. Но если Вы им скажеет, как корову зовут, и скажете, что в имени коровы есть буква У, то большинство скажет, что это Мурка. Хотя будут и варианты Муська, Пуська и пр. Хотя, тут очень зависит от национальности и ходости этого имени. Так что, естественно на результат будет влиять даже национальность и темперамент людей. Но если применить принцип максимального правдоподобия, то все равно мат. ожидание результата и дисперсия будет ожидаемой - т.е. распределение будет по Гауссу. Ну только если толпа не совсем дураки :-) - хоть чуть - чуть понимают о чем речь идет.
3. m_aster 97 02.08.19 14:17 Сейчас в теме
Прикольная штука. Вспоминается начало 2000-х и Делфи 5-6 с ее кодинсайтом, удобная была вещь. Всегда ее вспоминаю, когда вижу это в 1С. Здесь примерно такая же штука, только для нескольких языков сразу с оптимальным набором похожих программных конструкций для того или иного языка. Удобно.
5. s22 19 02.08.19 16:33 Сейчас в теме
Для 1с ее можно обучить на ERP
9. Lapitskiy 985 03.08.19 06:45 Сейчас в теме
похоже на открытие Америки "через форточку". Месье не пользовался IDE типа IntellliJ IDEA и т.п.?
Очевидно, студент и это его дипломная работа. Бесмыссленная и беспощадная.
10. m_aster 97 03.08.19 08:16 Сейчас в теме
(9)
Будьте добрее, вы сами были когда-то студентом. А парень молодец. Почему все пишут, что большинство пишет криво и система подсовывает кривые подсказки? Может не стоит говорить за всех. Тогда уж и сама 1С не все пишет идеально и часто отходит от собственных стандартов. Но все же лучше брать пример с того кода, который есть в типовых решениях. Чтобы был какой-то эталон и можно было что-то понимать.
Lapitskiy; +1 Ответить
15. Lapitskiy 985 03.08.19 12:46 Сейчас в теме
(10) Я не против дипломных работ и студентов, честно. Но вот там пытаются народ в заблуждение ввести.
Типа великое открытие и т.п.
Понимаю и источник распространения - надо отчитаться за "освоенный бюджет".
11. PerlAmutor 124 03.08.19 09:09 Сейчас в теме
Следующий шаг - автоматическое исправление ошибок в конфигурации после статического анализа кода, анализа ЖР, анализа ТЖ. Автоматическое создание и заполнение цепочки документов., вывод печатных форм на принтер, корректировка документов перед закрытием месяца, расчетом себестоимости. Оптимизация процессов производства, оптимизация штата сотрудников, оптимизация руководящего состава...
16. Lapitskiy 985 03.08.19 12:49 Сейчас в теме
(11) тем временем в кремниевой долине "учителя искуственного интеллекта" в поте лица обучают алгоритмы... Кстати недавно бунтовали, что и мало платят за обучение ИИ и жаловались на переработки. Новые технологии породили новую профессию - "учитель ИИ".
17. CheBurator 3439 03.08.19 13:00 Сейчас в теме
(11) все перейдет в бюрократию. меньше работы не будет
12. aximo 1684 03.08.19 10:37 Сейчас в теме
машинное обучение - это величайшая афера из афер, имхо
19. PerlAmutor 124 03.08.19 20:21 Сейчас в теме
(12) Смотря как рассматривать эту технологию. Если как Панацею от всего, то может быть. Но определенный ряд задач она уже решает. Только представьте, что когда-нибудь будет где-то кластер серверов на котором существует искусственный интеллект, который обучался больше 200 лет, что не может себе позволить ни один человек, у которого уходит большой кусок жизни только чтобы освоить базовый школьный курс.
20. YanTsys 12 05.08.19 09:00 Сейчас в теме
Насчет правильности кода, если к системе прикрутить сопоставление того кода который программисты пишут изначально и того который потом идет в релиз то со временем можно будет подчеркивать неправильный код как в ворде подчеркиваются ошибки.
Тут интереснее другой вопрос:
Если ваш код будет на 90% состоять из автозаполнения как вы потом докажете авторские права?
21. DoctorRoza 05.08.19 11:23 Сейчас в теме
Откуда среда берет данные по популярности конструкций, со https://stackoverflow.com/ ?
22. mishin_ya 27.10.20 10:59 Сейчас в теме
плохой плагин, предлагает бред, снес)
Оставьте свое сообщение

См. также

Российский разработчик создал неофициальную версию Clubhouse для Android

Новость Android ИТ-новость Мессенджеры Мобильные приложения

Бывший разработчик из «ВКонтакте» Григорий Клюшников выпустил приложение для Android, предоставляющее доступ к большинству функций Clubhouse. Официально соцсеть доступна только пользователям iOS.

26.02.2021    1776    VKuser24342747    0       

Масштабное обновление Trello: пять новых видов досок и интеграция с Google Docs

Новость ИТ-новость Новости компаний

Компания Atlassian выпустила масштабное обновление сервиса управления проектами Trello. Разработчики изменили дизайн, добавили пять новых видов досок и реализовали для карточек возможность отображать информацию из сторонних сервисов.

25.02.2021    2847    user1015646    0       

Видеоигра на базе нейросетевого генератора текстов стала бизнес-консультантом

Новость Видеоигры Искусственный интеллект ИТ-новость

Энтузиаст использовал возможности текстового квеста, генерирующего разнообразные миры при помощи нейросети GPT-3, чтобы получать советы по ведению бизнеса. Часть идей ИИ оказалась пригодной для использования.

25.02.2021    1732    VKuser24342747    1       

В ближайшие годы возрастет потребность в персонале центров обработки данных

Новость Дата-центры ИТ-новость Цифровая экономика

Согласно отчету Uptime Institute, количество сотрудников, необходимых для обеспечения работы ЦОД, вырастет с 2 млн. в 2019 году до 2,3 млн. в 2025 году.

24.02.2021    1943    SKravchenko    0       

Google кардинально изменит дизайн Android 12

Новость Android Google ИТ-новость Мобильные приложения Новости компаний

Компания Google анонсировала глобальное обновление популярной операционной системы Android. Новая версия выйдет под номером 12. Говорят, что Android 12 назовут «Snow cone» – летний десерт из сладкого колотого льда.

24.02.2021    2194    mouse187    0       

Google представила новый сервис для поиска уязвимостей в открытом ПО

Новость Google Безопасность ИТ-новость

Компания Google запустила платформу с открытым исходным кодом OSV (Open Source Vulnerabilities). Она создана для поиска и закрытия уязвимостей в свободном ПО.

18.02.2021    1306    user1015646    0       

Отечественная компания представила сервер приложений Java EE

Новость ИТ-новость Новости компаний Языки программирования

Российская компания Bellsoft представила отечественный аналог сервера Oracle и IBM для JavaEE. Раньше продукт на базе открытого кода был доступен только для некоторых клиентов организации.

17.02.2021    2355    VKuser24342747    4       

Rustоманы из Долины: Google, Microsoft, Huawei, Mozilla и AWS основали фонд поддержки языка программирования

Новость Google ИТ-новость Новости компаний Языки программирования

Rust – перспективный язык, который широко применяется в разработке операционных систем и высоконагруженных веб-сервисов. Rust Foundation будет заниматься поддержкой и развитием языка.

16.02.2021    1596    user1015646    0       

В Microsoft Teams появилась платформа для общения и обучения

Новость Интернет ИТ-новость Мессенджеры Новости компаний

Microsoft добавила новые функции в корпоративный мессенджер Teams. В подключенной к нему платформе Viva можно пройти обучение, пообщаться с коллегами или улучшить организацию работы.

15.02.2021    3173    user1015646    0       

Google рассказала, как защищает Android от взломов

Новость Android Google Безопасность ИТ-новость

Google опубликовала информацию о том, как компания пытается улучшить безопасность Android, и какие шаги предпринимаются для борьбы с распространенными угрозами. Отчеты об уязвимостях играют в этом значительную роль.

12.02.2021    1888    SKravchenko    0       

Для регионов разработают приложение онлайн-записи на прием к врачам

Новость ИТ-новость Медицина Минкомсвязь Цифровая экономика

О возможностях приложения рассказали в Минздраве и Минцифре.

10.02.2021    1898    Senator_I    2       

Google разработает новую мобильную ОС

Новость MobileOS Google ИТ-новость Мобильные приложения

Корпорация Google создаст мобильную операционную систему для повышения безопасности использования устройств. Проект запущен под рабочим названием microdroid.

09.02.2021    2129    user1015646    0       

Google закрывает собственную игровую студию Stadia

Новость Google Видеоигры ИТ-новость Новости компаний

1 февраля Google официально закрыл собственную студию разработки игр для проекта Stadia, чтобы сосредоточить внимание на технологиях, лежащих в основе платформы.

09.02.2021    1478    SKravchenko    0       

Google представила технологию для замены cookies

Новость Google Интернет ИТ-новость

Методы сбора файлов cookies для повышения точности подбора рекламы не раз упрекали в нарушении личного пространства пользователей. Компания Google представила технологию, которая позволит отказаться от cookies и повысить уровень конфиденциальности.

09.02.2021    1249    user1015646    0       

Украинская команда FireWay одержала победу в хакатоне NASA Space Apps Challenge 2020

Новость ИТ-новость Стартапы

Украинская команда FireWay из Днепра стала победителем международного хакатона NASA Space Apps Challenge. Их изобретение было описано как «решение, которое демонстрирует наиболее инновационное использование технологии».

05.02.2021    1962    SKravchenko    2       

Китайцы разработали целых две альтернативы Flash

Новость Интернет ИТ-новость

Китайцам пришлось разработать собственную технологию ReFla взамен Flash для предотвращения сбоев в работе систем. Также они выпустили доработанную версию Flash Player с кодом 34.0.0.92.

04.02.2021    2088    mouse187    4       

Популярные дистрибутивы Linux могут лишиться поддержки Chromium

Новость Linux Google Интернет ИТ-новость

Из дистрибутивов Arch Linux, Fedora, Debian, Slackware и openSUSE может исчезнуть поддержка браузеров на движке Chromium. Причина – жесткие правила Google, из-за которых возникли проблемы с синхронизацией данных.

03.02.2021    2372    user1015646    3       

Microsoft участвует в разработке цифрового паспорта вакцинации от Covid-19

Новость ИТ-новость Медицина

Крупнейшие корпорации из сектора здравоохранения и ИТ-гиганты, такие как Microsoft, Salesforce и другие, объединились для создания цифровых идентификационных карт, которые подтверждают статус вакцинации против Covid-19.

02.02.2021    1746    capitan    3       

Что нового в Chrome 88: проверка надежности паролей и поддержка профилей

Новость Google Интернет ИТ-новость

Компания Google представила новый релиз браузера Chrome и обновила движок Chromium. Теперь ПО будет предупреждать о небезопасных паролях, а пользователь сможет создать привязанный к учетной записи профиль для персонализации работы в сети.

01.02.2021    2218    user1015646    0       

280 символов для науки: Twitter откроет доступ ученым к архиву твитов

Новость ИТ-новость Соцсети

Twitter предоставит академическим исследователям социальных сетей бесплатный доступ почти ко всем твитам. Исключение площадка сделает только для заблокированных аккаунтов.

29.01.2021    1477    VKuser24342747    1       

Отключение Flash на сутки лишило город железнодорожных служб

Новость Интернет ИТ-новость

Прекращение поддержки Flash парализовало работу железнодорожной сети китайского города-миллионника. Организация проигнорировала предупреждения Adobe о грядущем отключении технологии.

29.01.2021    1863    VKuser24342747    1       

Amazon представил форк Elasticsearch с открытым исходным кодом

Новость ИТ-новость Новости компаний Облачные технологии

Компания Amazon намерена развивать собственную версию решения для поиска, хранения и анализа данных Elasticsearch. Форк можно будет использовать в проектах с открытым исходным кодом.

28.01.2021    2275    user1015646    0       

Наниматели назвали самые востребованные языки программирования

Новость Аналитика ИТ-новость Языки программирования

Компания по обучению программистов CodinGame составила рейтинг самых востребованных языков программирования среди нанимателей. Для этого организация опросила 15 тыс. разработчиков и менеджеров по персоналу.

27.01.2021    2494    SKravchenko    1       

Вышел новый мировой стандарт Wi-Fi 6E. В России он не доступен

Новость ИТ-новость Телекоммуникации

В мире стартовало лицензирование и распространение устройств для работы с новым стандартом беспроводных сетей Wi-Fi 6E. В России стандарт не будет поддерживаться, поскольку частота в 6 ГГц уже занята.

26.01.2021    2070    user-programmist    2       

CES 2021: главные анонсы первой технологической выставки года

Новость Инновации ИТ-новость Микроэлектроника

CES (Consumer Electronics Show) в Лас-Вегасе традиционно открывает год на мировом рынке технологий. Из-за ограничений, связанных с пандемией, выставку провели онлайн, но это не помешало производителям представить интересные новинки.

25.01.2021    2571    user1015646    2