Разработчики: | TabNine |
Дата премьеры системы: | июль 2019 г |
Отрасли: | Информационные технологии |
Технологии: | Средства разработки приложений |
2019: Выход инструмента
В июле 2019 года стало известно о выпуске инструмента, использующего искусственный интеллект для быстрого написания кода Deep TabNine. Он поддерживает 22 языка программирования, включая Python, JavaScript, Java, C++, C, PHP, Go, C#, Ruby, Objective-C, Rust и Apple Swift. Сама программа написана на Rust.
Судя по информации с сайта проекта, он разработан компанией TabNine Inc. За ней стоит студент факультета информатики Университета Ватерлоо Джейкоб Джексон (Jacob Jackson).
Deep TabNine представляет собой плагин для редакторов кода, который анализирует строки, составленные программистом, а затем генерирует варианты для завершения каждой «фразы». Затем человек выбирает из списка наиболее подходящие способы продолжить код.
Для повышения эффективности автоматического заполнения фрагментов кода программа была обучена на основе 2 млн файлов, размещенных на портале GitHub. Алгоритм базируется на нейронной сети GPT-2, развитием которой занимается некоммерческая исследовательская компания OpenAI. GPT-2 предназначена для обработки естественного языка.«Гознак» развивает систему «Электронный бюджет» с помощью импортозамещенных решений экосистемы EvaTeam
Нейросеть была адаптирована к пониманию кода и научилась генерировать связанные тексты, а также дополнять их недостающими словами и комбинациями.
По словам Джексна, искусственный интеллект изучает используемый синтаксис во время написания кода и предсказывает, когда программист вызывает метод объекта или списка. Он даже может генерировать названия объектов, используя документацию, написанную на естественном языке.
К 25 июля 2019 года Deep TabNine находится на стадии бета-тестирования в облаке. Любой желающий может протестировать инструмент, отправив заявку.
Джексон говорит, что команда работает над урезанной моделью машинного обучения, которая может работать на компьютере отдельных разработчиков. Кроме того, ожидается создание корпоративных версий, в которых модель будет обучена в соответствии с требованиям конкретной компании.[1]
Подрядчики-лидеры по количеству проектов
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
Данные не найдены
Распределение вендоров по количеству проектов внедрений (систем, проектов) с учётом партнёров
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
Данные не найдены
Распределение систем по количеству проектов, не включая партнерские решения
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)
![](/skins/ta/img/0.gif)