Этот репозиторий представляет собой заполнитель, используемый для оценки уровня интереса пользователей Xcode к расширению TabNine.
Это клиент Xcode TabNine, расширенное автозаполнение на основе искусственного интеллекта для всех языков программирования. TabNine Индексирует весь ваш проект, читая ваш .gitignore
или другие файлы, и определяет, какие файлы индексировать.
TabNine является частью Codota.
Deep TabNine обучен примерно на 2 миллионах файлов с GitHub. Во время обучения цель TabNine — предсказать следующий токен на основе токенов, которые были раньше. Для достижения этой цели TabNine изучает сложное поведение, такое как вывод типа в динамически типизированных языках.
Deep TabNine может использовать тонкие подсказки, к которым трудно получить доступ традиционным инструментам. Например,
предполагается, что тип возвращаемого значения app.get_user()
— объект с методами установки, а тип возвращаемого значения app.get_users()
— список.
Deep TabNine основан на GPT-2, который использует сетевую архитектуру Transformer. Эта архитектура была впервые разработана для решения проблем обработки естественного языка. Хотя моделирование кода и моделирование естественного языка могут показаться несвязанными задачами, код моделирования требует понимания английского языка в некоторых неожиданных аспектах.
TabNine требует потребления ресурсов памяти при локальном запуске на вашем компьютере. Это может привести к некоторой задержке, которая не является оптимальной для всех ПК. Учитывая это, TabNine разработала облачное решение под названием TabNine Deep Cloud.
Мы понимаем, что пользователи, заботящиеся о своей конфиденциальности, предпочитают хранить свой код на своем компьютере. Будьте уверены, что мы предпринимаем следующие шаги для решения этой проблемы: Для отдельных разработчиков мы работаем над моделью уменьшенного размера, которая может работать на ноутбуке с разумной задержкой. Обновление: мы выпустили TabNine Local. Для корпоративных пользователей мы скоро добавим возможность лицензировать модель и запускать ее на собственном оборудовании. Мы также можем подготовить для вас собственную модель, которая будет учитывать уникальные шаблоны и стиль вашей кодовой базы. Если это может иметь отношение к вам или вашей команде, мы хотели бы услышать больше о вашем варианте использования по адресу [email protected]. При включении TabNine Deep Cloud небольшие части вашего кода отправляются на наши серверы для обеспечения выполнения с ускорением на графическом процессоре. За исключением целей выполнения вашего запроса, ваши данные не используются, не сохраняются и не регистрируются каким-либо образом.
Вы можете бесплатно включить TabNine Deep Cloud, зарегистрировав TabNine Professional.
Вы можете прочитать больше о глубоком завершении
TabNine работает для всех языков программирования. TabNine не требует какой-либо настройки для работы. TabNine не требует какого-либо внешнего программного обеспечения (хотя может интегрироваться с ним). Поскольку TabNine не анализирует ваш код, он никогда не перестанет работать из-за несовпадающей скобки.
По умолчанию TabNine отправляет веб-запросы только с целью загрузки обновлений и проверки регистрационных ключей. В этом случае ваш код никуда не отправляется, даже на серверы TabNine. Вы можете выбрать TabNine Deep Cloud, который позволяет вам использовать серверы TabNine для выполнения задач с ускорением на графическом процессоре на основе модели глубокого обучения. Если отправка кода в облачную службу невозможна, мы также предлагаем вариант с автономным размещением. Свяжитесь с нами по адресу [email protected].
Примечание о лицензировании: этот репозиторий включает в себя исходный код, а также упакованные двоичные файлы TabNine. Лицензия MIT распространяется только на исходный код, а не на двоичные файлы. На двоичные файлы распространяется Лицензионное соглашение с конечным пользователем TabNine.