TabbyML
TabbyML offre une expérience de codage AI enrichissante et personnalisable.
C’est “le concurrent open source du CoPilot de GitHub”. Et ça tourne en local !
La suite détaille l’installation avec Docker (Compose) mais TabbyML peut aussi etre installé sur Apple, Linux ou Windows.
Installation
Avec Docker
Pour tester rapidement, utiliser la commande docker:
-
CPU seulement:
docker run \ --entrypoint /opt/tabby/bin/tabby-cpu \ -it \ -p 8080:8080 \ -e LD_LIBRARY_PATH=/usr/local/cuda/lib64:/usr/local/cuda/compat:$LD_LIBRARY_PATH \ -v $HOME/.tabby:/data registry.tabbyml.com/tabbyml/tabby \ serve --device cpu --model StarCoder-1B --chat-model Qwen2-1.5B-Instruct
- Pareil, mais pour profiter du SSD (disque
/
dans mon cas).- Nécessite d’aller dans
Settings / Ressources / File Sharing
(Docker Desktop) et ajouter/.tabby
dans la liste desVirtual file shares
. - Mais c’est bien plus rapide !
docker run \ --entrypoint /opt/tabby/bin/tabby-cpu \ -it \ -p 8080:8080 \ -e LD_LIBRARY_PATH=/usr/local/cuda/lib64:/usr/local/cuda/compat:$LD_LIBRARY_PATH \ -v /.tabby:/data registry.tabbyml.com/tabbyml/tabby \ serve --device cpu --model StarCoder-1B --chat-model Qwen2-1.5B-Instruct
- Nécessite d’aller dans
-
En montant le dossier des repos git pour pouvoir les ajouter dans Tabby comme fournisseur de contexte Git local.
docker run \ --entrypoint /opt/tabby/bin/tabby-cpu \ -it \ -p 8080:8080 \ -e LD_LIBRARY_PATH=/usr/local/cuda/lib64:/usr/local/cuda/compat:$LD_LIBRARY_PATH \ -v /.tabby:/data \ -v $HOME/Documents/04-Creations/Dev/Repos:/repos \ registry.tabbyml.com/tabbyml/tabby \ serve --device cpu --model StarCoder-1B --chat-model Qwen2-1.5B-Instruct
- Avec GPU, voir la doc: Installation avec Docker
Avec Docker Compose:
-
Créer un fichier
docker-compose.yaml
:- CPU seulement:
version: '3.5' services: tabby: restart: unless-stopped image: registry.tabbyml.com/tabbyml/tabby entrypoint: /opt/tabby/bin/tabby-cpu command: serve --device cpu --model StarCoder-1B --chat-model Qwen2-1.5B-Instruct volumes: - "/.tabby:/data" - "$HOME/Documents/04-Creations/Dev/Repos:/repos" ports: - 8080:8080 environment: - LD_LIBRARY_PATH=/usr/local/cuda/lib64:/usr/local/cuda/compat:$LD_LIBRARY_PATH
- Avec GPU, voir la doc: Installation avec Docker Compose
-
Lancer TabbyML:
docker compose up -d
Configuration
- Aller sur http://localhost:8080/
- Créer un compte
- Optionnel: Ajouter un fournisseur de contexte Git local avec comme URL
file:///repos/MonRepoGit
- Installer l’extension pour VSCode, intellij or VIM, puis configurer l’IDE.
Aller plus loin
- Avec une bonne machine, il est possible de passer sur des modèles plus performants
- Essayer avec un GPU, car avec mon “AMD Ryzen 5 Pro 3400G” c’est lent, mais lent !
- Créer un fichier de configuration pour l’extension IDE.
- Spécifiquement pour le Code Completion
- La configuration du modèle
- Mise à jour:
- Faire une sauvegarde
- Télécharger la dernière image:
docker pull tabbyml/tabby
- Redémarrer le container
- Faire une sauvegarde
- Configurer le SMTP pour l’envoi de mail aux utilisateurs