Tabby: собственный самодостаточный ассистент программирования ИИ, интегрируемый в VSCode

Общее введение

Tabby - это помощник программирования ИИ с открытым исходным кодом, разработанный командой TabbyML, который пользователи могут развернуть самостоятельно локально или на сервере. Он предлагает похожие GitHub Copilot Tabby поддерживает множество языков программирования и может быть интегрирован в такие инструменты разработки, как VSCode и Vim. По официальным данным, по состоянию на апрель 2025 года в последней версии v0.24.0 появилась поддержка LDAP-аутентификации и уведомлений о фоновых задачах, а функционал продолжает оптимизироваться. Он подходит для разработчиков и команд, заботящихся о конфиденциальности.

Tabby:可集成到 VSCode 的本地自托管AI编程助手

 

Список функций

  • Завершение кодаПредложите одну или несколько строк кода в режиме реального времени при вводе кода для повышения эффективности.
  • Интеллектуальный чат-помощник: Отвечайте на вопросы по программированию или генерируйте фрагменты кода с помощью диалога.
  • Самостоятельное развертывание: Работает локально или в облаке, защищает конфиденциальность данных, поддерживает кастомизацию.
  • Поддержка нескольких моделей: Можно использовать модели с открытым исходным кодом, такие как StarCoder-1B, Qwen2-1.5B и т.д.
  • контекстно-зависимый: Понимание контекста кода и предоставление точных рекомендаций.
  • Интеграция с IDE: Поддержка VSCode, Vim, IntelliJ и других основных редакторов.
  • браузер кодов: Просмотр кода проекта с поддержкой поиска и навигации.
  • Статистика использования: Просмотр данных об использовании завершения кода и чата.
  • Аутентификация LDAP: Корпоративные пользователи могут управлять разрешениями через LDAP (новое в версии 0.24.0).

 

Использование помощи

Процесс установки

Tabby должен быть создан пользователем, вот подробные шаги, основанные на Docker.

  1. Подготовка среды
    • Убедитесь, что установлен Docker (версия 20.10 или выше).
    • Если вы используете графический процессор, вам необходимо установить драйвер NVIDIA и набор инструментов CUDA Toolkit (рекомендуется 11.8 или 12.x).
    • Зарезервируйте не менее 10 ГБ места для хранения моделей и данных.
  2. Вытягивание зеркал
    Выполните следующую команду в терминале, чтобы получить последнюю версию Tabby:
docker pull tabbyml/tabby
  1. Запустите сервер
    Для запуска используйте следующую команду, по умолчанию прослушивая порт 8080:
docker run -it --gpus all -p 8080:8080 -v $HOME/.tabby:/data tabbyml/tabby serve --model TabbyML/StarCoder-1B --device cuda --chat-model Qwen2-1.5B-Instruct
  • --gpus all: Включить ускорение GPU (GPU не может быть удален).
  • -p 8080:8080: Локально отображает порт контейнера.
  • -v $HOME/.tabby:/data:: Данные хранятся локально .tabby Папка.
  • --model: Указывает модель завершения кода, по умолчанию StarCoder-1B.
  • --chat-model: Укажите модель чата, по умолчанию Qwen2-1.5B-Instruct.
  • --device cuda: используйте GPU, если GPU нет, измените на cpu.
  1. Проверочные работы
    После запуска зайдите в http://localhost:8080. Если отображается страница приветствия или в журнале появляется сообщение "Listening at 0.0.0.0:8080", значит, работа выполнена успешно.
  2. Установка расширений IDE
  • VSCode: Найдите "Tabby" в маркетплейсе расширений, установите его и задайте адрес сервера как http://localhost:8080.
  • Vim: Установка через менеджер плагинов TabbyML/vim-tabbyБег npx tabby-agent --stdio Соединения.
  • IntelliJ: Найдите "Tabby" в JetBrains Marketplace, чтобы установить и настроить адрес.

Основные функции

Завершение кода

  • процедура: Введите код в IDE, и Tabby откроет окно с предложениями. Нажмите Tab Принятие.Esc Отказ.
  • Основные функции: Поддерживается контекстно-ориентированный подход. Например, ввод def sort_list, может подсказать:
def sort_list(lst):
return sorted(lst)
  • Параметры настройки: В config.toml модификация max_input_length(по умолчанию 1024) и max_output_tokens(по умолчанию 512).

Интеллектуальный чат-помощник

  • Способы открытия: В VSCode щелкните значок Tabby на боковой панели, чтобы открыть панель чата.
  • Использование: Вводные вопросы типа "Напишите функцию дедупликации массива на JavaScript". который вернет Tabby:
function uniqueArray(arr) {
return [...new Set(arr)];
}

Это также можно сделать с помощью @ Обратитесь к документу, чтобы добавить контекст.

  • Выполнить команду: Введите похожие dir команда для просмотра результатов моделирования (версия 0.23.0 Enhanced).

браузер кодов

  • путь доступа: Нажмите "Браузер кодов" в веб-интерфейсе.
  • рабочий процесс: Введите ключевые слова (например. class), код поиска. Поддержка фильтрации по типу файла, щелчок по результатам для перехода к определенному месту.
  • Особенности обновления: v0.23.0 Оптимизирована работа браузера с поддержкой большего количества вариантов навигации.

дополнительное примечание

  • первоначальный запуск: Загрузка модели может занять 5-10 минут, в зависимости от сети.
  • оптимизация производительности: Использование --parallelism 4 Увеличение мощности одновременной обработки данных (требуется высокопроизводительное оборудование).
  • Поддержка общества: Доступно через Slack (links.tabbyml.com/join-slack) Обратитесь за помощью.

 

сценарий применения

  1. личное развитие
    Разработчик фронтэнда развертывает Tabby локально, используя его в качестве дополнения к React Коды компонентов помогут сэкономить время на дублировании записей.
  2. Совместная работа предприятий
    Компания развернула Tabby на внутреннем сервере, и благодаря аутентификации LDAP члены команды смогли быстро устранять ошибки с помощью функции чата.
  3. Образование и обучение
    Студенты изучают C++ с помощью Tabby, задавая в чате вопрос "Что такое указатель?" и получая примеры кода и объяснения.

 

QA

  1. Какие модели поддерживает Tabby?
    StarCoder-1B (завершение кода) и Qwen2-1.5B-Instruct (чат) поддерживаются по умолчанию, и пользователи могут заменить их другими моделями с открытым исходным кодом.
  2. В чем преимущества самостоятельного хостинга?
    Данные не загружаются в облако, полностью локализуются для сценариев, чувствительных к конфиденциальности, и могут быть свободно настроены для конфигурации.
  3. Каковы минимальные требования к оборудованию?
    Центральный процессор работает на 8 ГБ оперативной памяти, а графический процессор - на 16 ГБ оперативной и 4 ГБ видеопамяти.
© заявление об авторских правах

Похожие статьи

Нет комментариев

Вы должны войти в систему, чтобы участвовать в комментариях!
Войти сейчас
нет
Нет комментариев...