Tabby : un assistant de programmation IA auto-hébergé qui s'intègre à VSCode
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.

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.
- 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.
- Tirer les miroirs
Exécutez la commande suivante dans le terminal pour obtenir la dernière version de Tabby :
docker pull tabbyml/tabby
- 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 all
Activer 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:/data
Les 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-model
Spé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
.
- Vérifications
Après le démarrage, accédez auhttp://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. - 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-tabby
La course à piednpx 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_list
peut suggérer :
def sort_list(lst):
return sorted(lst)
- Paramètres de réglage: En
config.toml
modificationmax_input_length
(par défaut 1024) etmax_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
- 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. - 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. - É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
- 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. - 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. - 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
L'article est protégé par le droit d'auteur et ne doit pas être reproduit sans autorisation.
Articles connexes
Pas de commentaires...