Tabby : un assistant de programmation IA auto-hébergé qui s'intègre à VSCode

Derniers outils d'IAPosté il y a 3 mois Sharenet.ai
751 0
吐司AI

Introduction générale

Tabby est un assistant de programmation IA open source, développé par l'équipe TabbyML, que les utilisateurs peuvent déployer eux-mêmes localement ou sur un serveur. Il offre des fonctionnalités similaires à celles de Copilote GitHub Tabby prend en charge plusieurs langages de programmation et peut être intégré dans des outils de développement tels que VSCode et Vim. Les données officielles montrent qu'en avril 2025, la dernière version v0.24.0 prend en charge l'authentification LDAP et les notifications de tâches en arrière-plan, et que les fonctionnalités continuent d'être optimisées. Elle convient aux développeurs ou aux équipes soucieux de la protection de la vie privée.

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

 

Liste des fonctions

  • Achèvement du codeLe logiciel de gestion de l'information : suggère une ou plusieurs lignes de code en temps réel lors de la saisie du code afin d'améliorer l'efficacité.
  • Assistant de conversation intelligentLe dialogue : répondre à des questions de programmation ou générer des extraits de code par le biais du dialogue.
  • Déploiement autonomeLe système d'information sur la vie privée : il fonctionne localement ou dans le nuage, protège la confidentialité des données et prend en charge la personnalisation.
  • Prise en charge de plusieurs modèlesLes modèles open source tels que StarCoder-1B, Qwen2-1.5B, etc. peuvent être utilisés.
  • sensible au contexteComprendre le contexte du code et fournir des conseils précis.
  • Intégration de l'IDESupport de VSCode, Vim, IntelliJ et d'autres éditeurs majeurs.
  • navigateur de codeLe code d'un projet : Parcourir le code d'un projet avec des fonctions de recherche et de navigation.
  • Statistiques d'utilisationLes données d'utilisation de la complétion de code et du chat sont affichées.
  • Authentification LDAPLes utilisateurs de l'entreprise peuvent gérer les autorisations via LDAP (nouveauté de la v0.24.0).

 

Utiliser l'aide

Processus d'installation

Tabby doit être construit par l'utilisateur, voici les étapes détaillées basées sur Docker.

  1. Préparation de l'environnement
    • Assurez-vous que Docker est installé (version 20.10 ou supérieure).
    • Si vous utilisez un GPU, vous devez installer le pilote NVIDIA et CUDA Toolkit (11.8 ou 12.x recommandé).
    • Réservez au moins 10 Go d'espace de stockage pour les modèles et les données.
  2. Tirer les miroirs
    Exécutez la commande suivante dans le terminal pour obtenir la dernière version de Tabby :
docker pull tabbyml/tabby
  1. Démarrer le serveur
    Utilisez la commande suivante pour démarrer, en écoutant sur le port 8080 par défaut :
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 allActiver l'accélération du GPU (aucun GPU ne peut être supprimé).
  • -p 8080:8080: permet d'afficher localement le port du conteneur.
  • -v $HOME/.tabby:/dataLes données sont stockées localement .tabby Dossier.
  • --model: Spécifie le modèle de complétion de code, par défaut StarCoder-1B.
  • --chat-modelSpécifier le modèle de chat, par défaut Qwen2-1.5B-Instruct.
  • --device cuda: utiliser le GPU, s'il n'y a pas de GPU, passer à cpu.
  1. Vérifications
    Après le démarrage, accédez au http://localhost:8080. Si la page de bienvenue s'affiche ou si le journal indique "Listening at 0.0.0.0:8080", l'opération est réussie.
  2. Installation des extensions de l'IDE
  • VSCodePour cela, il faut rechercher "Tabby" dans le marché des extensions, l'installer et définir l'adresse du serveur comme suit http://localhost:8080.
  • VimInstallation via le gestionnaire de plug-ins : Installation via le gestionnaire de plug-ins : Installation via le gestionnaire de plug-ins TabbyML/vim-tabbyLa course à pied npx tabby-agent --stdio Connexions.
  • IntelliJPour installer et configurer l'adresse, recherchez "Tabby" sur la place de marché JetBrains.

Principales fonctions

Achèvement du code

  • procédurePour cela, il suffit d'entrer le code dans l'IDE et Tabby affichera une boîte à idées. Appuyer sur Tab Acceptation.Esc Rejet.
  • Fonctions vedettesLes données de l'utilisateur peuvent être utilisées à des fins d'analyse et d'évaluation : Prise en charge de la prise en compte du contexte. Par exemple, l'entrée def sort_listpeut suggérer :
def sort_list(lst):
return sorted(lst)
  • Paramètres de réglage: En config.toml modification max_input_length(par défaut 1024) et max_output_tokens(par défaut 512).

Assistant de conversation intelligent

  • Façons d'ouvrirDans le VSCode, cliquez sur l'icône Tabby dans la barre latérale pour ouvrir le panneau de discussion.
  • UtilisationLes questions de saisie telles que "Écrire une fonction de dédoublement de tableau en JavaScript", que Tabby renverra :
function uniqueArray(arr) {
return [...new Set(arr)];
}

Il est également possible de le faire par le biais de la @ Se référer au document pour ajouter le contexte.

  • Exécuter la commande: Entrer similaire dir pour visualiser les résultats de la simulation (v0.23.0 amélioré).

navigateur de code

  • chemin d'accèsCliquez sur "Code Browser" dans l'interface web.
  • flux de travail: Saisir des mots-clés (par ex. class), code de recherche. Possibilité de filtrer par type de fichier, de cliquer sur les résultats pour accéder à un emplacement spécifique.
  • Caractéristiques de la mise à jourv0.23.0 Optimisation de l'expérience de navigation avec la prise en charge d'un plus grand nombre d'options de navigation.

note complémentaire

  • lancement initialLe téléchargement du modèle peut prendre de 5 à 10 minutes, en fonction du réseau.
  • l'optimisation des performances: Utilisation --parallelism 4 Augmentation de la puissance de traitement simultanée (nécessite du matériel haut de gamme).
  • Soutien communautaire: Disponible via Slack (links.tabbyml.com/join-slack) Demandez de l'aide.

 

scénario d'application

  1. développement personnel
    Un développeur frontal déploie Tabby localement, en l'utilisant pour compléter l'application Réagir Codes des composants pour gagner du temps sur les entrées en double.
  2. Collaboration au sein de l'entreprise
    L'entreprise a déployé Tabby sur un serveur interne et, grâce à l'authentification LDAP, les membres de l'équipe ont pu résoudre rapidement les bogues par le biais de la fonction de discussion.
  3. Éducation et formation
    Les étudiants utilisent Tabby pour apprendre le C++, en demandant "Qu'est-ce qu'un pointeur ?" dans le chat et en obtenant des exemples de code et des explications.

 

QA

  1. Quels sont les modèles pris en charge par Tabby ?
    StarCoder-1B (complétion de code) et Qwen2-1.5B-Instruct (chat) sont pris en charge par défaut, et les utilisateurs peuvent remplacer d'autres modèles open source.
  2. Quels sont les avantages de l'auto-hébergement ?
    Les données ne sont pas téléchargées dans le nuage, sont entièrement localisées pour les scénarios sensibles en matière de protection de la vie privée et peuvent être librement adaptées à la configuration.
  3. Quelle est la configuration matérielle minimale requise ?
    Le processeur fonctionne avec 8 Go de RAM et le GPU avec 16 Go de RAM et 4 Go de mémoire vidéo.
© déclaration de droits d'auteur
AiPPT

Articles connexes

Pas de commentaires

aucun
Pas de commentaires...