Intermedio 25 minIDE

Tabby: instalar un autocompletado de código en local autoalojada

Cline y Aider ofrecen chat y modo agente, pero no ofrecen el autocompletado en línea con «texto en gris» que aparece mientras escribes, el rasgo distintivo de GitHub Copilot. Tabby cubre precisamente esa carencia: es un servidor de autocompletado de código autoalojado, de código abierto (Apache 2.0), que se ejecuta en Docker en tu GPU y ofrece sugerencias Fill-In-the-Middle directamente en el editor. Esta guía explica cómo instalarlo paso a paso, configurar un modelo StarCoder o Qwen-Coder, generar el token, conectar VS Code y JetBrains y usar una sola GPU para dar servicio a todo un equipo, sin que tu código salga nunca de tu infraestructura.

Por Mohamed Meguedmi·Actualización 2026-08-27·Probado en Windows 11

#¿Por qué Tabby en lugar de Cline?

Tabby y Cline no son competidores: son complementarios. Cline (y Aider) destaca en el chat conversacional y el modo agente multiarchivo, pero ninguno de los dos ofrece autocompletado línea por línea mientras escribes. Tabby solo hace eso, y lo hace muy bien. El combo ganador en 2026: Cline para conversar y refactorizar, Tabby para la sugerencia en gris que aparece mientras escribes.

Texto en gris en línea
La sugerencia se muestra directamente después del cursor, en gris. Presiona Tab para aceptar y Escape para ignorar. Exactamente la experiencia de usuario de Copilot.
100 % autoalojado
El servidor corre en tu equipo (Docker). Ningún fragmento de código se envía a un tercero — ideal para NDA y código en sectores regulados.
Multi-utilisateurs
A diferencia de una extensión puramente local, Tabby es un servidor: una sola GPU puede dar servicio a todo un equipo a través de la red.
Telemetría desactivable
Tabby envía estadísticas anónimas por defecto; una variable de entorno desactiva por completo ese envío. El código fuente que escribes nunca se transmite.
i
Tabby ≠ Cline
Si buscas un chat o un agente que modifique varios archivos, Tabby no es lo que necesitas: consulta mejor las guías de Cline. Tabby SOLO ofrece autocompletado dentro del código. Los dos coexisten perfectamente en el mismo editor, conectados a la misma GPU.

#Prerrequisitos

El kit Copiloto Local

Esta guía te lleva al modelo. El kit te lleva al copiloto que programa en tu editor.

  • Espacio en línea de por vida
  • PDF + archivos
  • Actualizaciones de por vida
Docker
Tabby se despliega en contenedor. Docker Desktop en Windows/macOS, Docker Engine en Linux.
GPU NVIDIA (recomendado)
Con NVIDIA Container Toolkit para acceder a CUDA. Tabby también funciona en CPU, pero la latencia del autocompletado en línea resulta incómoda.
~6 GB de VRAM
Suficiente para un modelo de completado de 1B–3B cuantizado. Más VRAM = un modelo más grande o más desarrolladores en paralelo.
Un editor
VS Code o un IDE JetBrains (IntelliJ, PyCharm, WebStorm, etc.). La extensión Tabby existe para los dos.
→
En Mac con Apple Silicon
El acceso directo a la GPU desde Docker no existe en macOS. En un Mac M1/M2/M3, ejecuta mejor el binario nativo de Tabby (Metal) descargado de las versiones publicadas en GitHub, no la imagen Docker CUDA. La configuración del editor sigue siendo la misma.

#¿Qué modelo de autocompletado?

El autocompletado en línea tiene una limitación que el chat no tiene: la latencia. La sugerencia debe aparecer en unos pocos cientos de milisegundos; de lo contrario, escribirás más rápido de lo que tarda en aparecer. Por eso se prefieren modelos Fill-In-the-Middle (FIM) compactos, en su variante -base, y no los grandes modelos instruct del chat.

Modelo de autocompletado recomendado según la VRAM
VRAMModelo de completaciónNota
4–6 GBStarCoder2 3BÁgil, multilingüe, una buena opción predeterminada para Tabby.
6–8 GBQwen2.5-Coder 1.5B / 3B (base)FIM excelente, muy rápido, FR/Python/TS.
8–12 GBQwen2.5-Coder 7B (base)LA referencia FIM de 2026 (4,7 GB): sugerencias claras, latencia todavía baja.
12 GB+StarCoder2 7B / Qwen-Coder 7BPara que varios desarrolladores compartan un mismo servidor.
!
Variante -base, nunca -instruct
Para la autocompletación FIM, siempre usa la variante -base del modelo, no la versión instruct/chat. Una variante instruct tiende a «charlar» (añadir comentarios, explicaciones) en lugar de completar correctamente el código. Reserva los modelos instruct para Cline.

#1. Iniciar Tabby en Docker

Se inicia el servidor Tabby con acceso a la GPU, un volumen persistente para los datos y un modelo de autocompletado elegido. El puerto 8080 expone la interfaz web y la API.

Iniciar Tabby (GPU NVIDIA)
docker run -d \
  --name tabby \
  --gpus all \
  -p 8080:8080 \
  -v $HOME/.tabby:/data \
  registry.tabbyml.com/tabbyml/tabby \
  serve --model StarCoder2-3B --device cuda
  1. 01
    Verificar el arranque
    En la primera ejecución, Tabby descarga el modelo (tarda unos minutos). Sigue los logs con docker logs -f tabby hasta que aparezca el mensaje que indica que el servidor escucha en el puerto 8080.
  2. 02
    Abrir la interfaz web
    Visita http://localhost:8080. La primera vez que accedas, se te pedirá que crees una cuenta de administrador (correo electrónico + contraseña). Todo es local: estas credenciales permanecen en tu volumen ~/.tabby.
  3. 03
    Probar el autocompletado
    La pestaña « Playground » de la interfaz permite comprobar que el modelo responde antes de conectar un editor.
→
Desactivar la telemetría
Agrega -e TABBY_DISABLE_USAGE_COLLECTION=1 al comando docker run para desactivar cualquier envío de estadísticas anónimas. El contenido de tu código nunca se transmite de todos modos, pero esto también desactiva las métricas de uso.

#2. Crear el token de acceso

Los editores se autentican ante el servidor Tabby mediante un token. Esto permite, cuando se trabaja en equipo, saber quién se conecta y revocar un acceso sin romperlo todo.

  1. 01
    Ir a los ajustes
    En la interfaz web (http://localhost:8080), abre la sección cuentas/seguridad. Allí se muestra el token del usuario actual.
  2. 02
    Copiar el token
    Recupera la cadena de caracteres (a menudo prefijada con auth_). Es esta la que las extensiones de VS Code y JetBrains pedirán.
  3. 03
    Regenerar si es necesario
    En caso de fugas o salida de un colaborador, regenera el token desde la interfaz: el anterior se invalida inmediatamente.
Lo que el editor necesita
Endpoint : http://localhost:8080
Token    : auth_xxxxxxxxxxxxxxxxxxxxxxxx

#3. Conectar VS Code

  1. 01
    Instalar la extensión
    Extensions (Ctrl+Shift+X) → buscar «Tabby» (editor TabbyML) → Install.
  2. 02
    Especificar el endpoint
    La primera vez que se inicia, la extensión pide la URL del servidor. Introduce http://localhost:8080 (o la IP del servidor compartido en la red).
  3. 03
    Pegar el token
    Introduce el token de acceso copiado en la etapa anterior. El icono Tabby en la barra de estado debe pasar a verde (conectado).
  4. 04
    Coder
    Escribe código: la sugerencia en gris aparece después del cursor. Presiona Tab para aceptarla, continúa escribiendo para ignorarla.
→
Configurar la activación
En los ajustes de la extensión, puedes alternar entre activación automática (la sugerencia aparece sola) y manual (a petición mediante un atajo). El modo manual ahorra recursos de GPU si varios desarrolladores comparten el servidor.

#4. Conectar JetBrains

La misma configuración funciona en toda la gama de JetBrains: IntelliJ IDEA, PyCharm, WebStorm, GoLand, Rider, etc. La extensión Tabby es un plugin único compatible con la plataforma.

  1. 01
    Instalar el plugin
    Settings → Plugins → Marketplace → buscar «Tabby» → Install, luego reiniciar el IDE.
  2. 02
    Configurar la conexión
    Settings → Tools → Tabby: introduce el endpoint (http://localhost:8080) y el token de acceso.
  3. 03
    Verificar
    El indicador Tabby en la barra de estado confirma la conexión. Las sugerencias en línea aparecen como en VS Code.

#5. Configurar Tabby para que apunte a tu Ollama

Si ya estás ejecutando Ollama para Cline o Aider, no es necesario cargar un segundo motor de inferencia: Tabby puede utilizar un backend de Ollama a través de su protocolo compatible con OpenAI. Así, compartes un único servidor de modelos para el autocompletado y el chat.

Modelo FIM en Ollama
# Tirez un modèle de complétion FIM dans Ollama
ollama pull qwen2.5-coder:1.5b-base
# ou
ollama pull starcoder2:3b

En cuanto a Tabby, se declara el backend HTTP en lugar de un modelo local. La configuración se realiza en el archivo config.toml del volumen de datos (~/.tabby/config.toml), donde se apunta el motor de completado hacia la API Ollama.

~/.tabby/config.toml
[model.completion.http]
kind = "ollama/completion"
model_name = "qwen2.5-coder:1.5b-base"
api_endpoint = "http://localhost:11434"
prompt_template = "<|fim_prefix|>{prefix}<|fim_suffix|>{suffix}<|fim_middle|>"
!
La plantilla FIM depende del modelo
Cada familia de modelos tiene sus propias etiquetas Fill-In-the-Middle (las de StarCoder, Qwen y DeepSeek son distintas). Un prompt_template incorrecto produce sugerencias absurdas. Comprueba las etiquetas FIM de tu modelo en su ficha antes de dejar fijada la configuración.
i
Localhost desde la perspectiva del contenedor
Desde el contenedor Tabby, http://localhost:11434 no apunta al Ollama del anfitrión. Utiliza http://host.docker.internal:11434 (Docker Desktop) o la IP del anfitrión en la red Docker, de lo contrario Tabby nunca se conectará a Ollama.

#6. Compartir la tarjeta gráfica entre varios desarrolladores

Esta es la ventaja decisiva de Tabby sobre una extensión puramente local: un solo servidor, una sola GPU, varios desarrolladores. Instalas Tabby en una máquina equipada con una GPU (un equipo dedicado, un servidor del equipo de desarrollo) y cada desarrollador configura su editor para conectarse a esa dirección de red.

Exponer en red
El puerto 8080 debe ser accesible desde los ordenadores de los desarrolladores. Internamente, la IP local del servidor es suficiente (http://192.168.x.x:8080).
Un token por dev
Crea una cuenta/token por desarrollador en la interfaz. Mantienes la trazabilidad y puedes revocar cada acceso de forma individual.
Dimensionar el GPU
Un modelo compacto de autocompletado (1.5B–3B) atiende a varios desarrolladores en paralelo sin saturarse. Como el autocompletado es breve, las peticiones rara vez se solapan.
Reverse proxy + HTTPS
Para acceder desde fuera de la LAN, coloca Tabby detrás de un proxy inverso (Caddy, Nginx) con TLS. Nunca expongas el puerto 8080 directamente a Internet sin protección.
→
El servidor ideal para el equipo
Una sola tarjeta de gama media (12–16 GB) basta para ofrecer autocompletado a un pequeño equipo. En comparación con una suscripción a Copilot por usuario, la inversión en una GPU compartida se amortiza rápidamente, y todo el código permanece en tu infraestructura.

#Ajustes de rendimiento y solución de problemas

Latencia demasiado alta
Baja un nivel de modelo (3B → 1.5B), verifica que --device cuda esté activo (no un fallback a CPU) y limita la longitud máxima de las sugerencias.
Sin sugerencias
Revisa el icono de estado de la extensión (token y endpoint correctos) y comprueba que el contenedor esté funcionando (docker ps). El Playground web permite determinar si el problema está en el servidor o en el editor.
Sugerencias fuera de tema
Casi siempre se debe a un prompt_template FIM incorrecto o a una variante instruct en lugar de -base. Vuelve a usar un modelo base y la plantilla FIM correcta.
Indexación del repositorio (RAG)
Tabby puede indexar tu código para ofrecer sugerencias más contextuales. Actívalo en la interfaz si la GPU tiene margen; desactívalo si la latencia empeora.
Memoria GPU saturada
Si varios modelos coexisten (Tabby + Cline a través de Ollama), cuantiza la caché KV y supervisa la VRAM con nvidia-smi.
Diagnósticos rápidos
# Le conteneur tourne-t-il ?
docker ps | grep tabby
# Logs en direct
docker logs -f tabby
# Le GPU est-il bien vu ?
docker exec tabby nvidia-smi

#Preguntas frecuentes

FAQ
¿Tabby reemplaza a Cline o Copilot?+
Tabby reemplaza ÚNICAMENTE el autocompletado en línea «texto gris» de Copilot: es precisamente lo que Cline no hace. Para el chat y el modo agente con varios archivos, conserva Cline. Ambos coexisten en el mismo editor, conectados a la misma GPU: Tabby completa mientras escribes, Cline conversa y refactoriza.
¿Se necesita un GPU para Tabby?+
Muy recomendable. Tabby funciona en CPU, pero el autocompletado en línea exige una latencia de unos pocos cientos de milisegundos: sin GPU, la sugerencia llega después de que ya hayas escrito la línea. Basta con una tarjeta NVIDIA con ~6 GB de VRAM y NVIDIA Container Toolkit para un modelo compacto de autocompletado.
¿Mi código se envía a algún lugar?+
No. Tabby es auto-hospedado: el servidor corre en tu máquina o en tu servidor de equipo, y el contenido del código nunca se envía a un tercero. Tabby envía por defecto estadísticas de uso anónimas (nunca el código); la variable TABBY_DISABLE_USAGE_COLLECTION=1 las desactiva completamente.
¿Puedo reutilizar mi Ollama existente?+
Sí. Tabby sabe consumir un backend Ollama a través de su protocolo compatible. Declaras el motor de completación HTTP en config.toml apuntando hacia la API Ollama, con el prompt_template FIM adecuado. De esta forma, compartes un único servidor de modelos para la completación (Tabby) y el chat (Cline).
¿Cuántos desarrolladores puede atender un solo servidor Tabby?+
Varios, con una sola GPU. Como el autocompletado es breve e intermitente, un modelo de 1.5B–3B en una tarjeta de 12–16 GB puede atender a un equipo pequeño sin saturarse. Crea un token por desarrollador para garantizar la trazabilidad y expón el puerto 8080 en la LAN (o detrás de un proxy inverso con TLS para el acceso remoto).

#Conclusión

Ahora tienes un servidor de autocompletado de código 100 % autoalojado: Tabby en Docker en tu GPU, un modelo StarCoder o Qwen-Coder en Fill-In-the-Middle, un token de acceso y las sugerencias en gris al estilo de Copilot tanto en VS Code como en JetBrains, con la posibilidad adicional de dar servicio a todo un equipo desde una sola GPU. Combinado con Cline para el chat y el agente, el conjunto está completo y tu código nunca sale de tu infraestructura. Si quieres evitar horas de ajustes (plantillas FIM, configuraciones de Ollama, modelos por rol), la guía de pago «Copiloto de código local» ofrece un paquete Ollama + Cline + Aider listo para usar, que puedes complementar con Tabby para el autocompletado en línea.

¿Esta guía te ha ayudado?

¿Un comentario, un error, una precisión? Avísanos, eso mejora la guía para todos.