Base de conocimiento con un asistente de IA que funciona en tu propio servidor con un LLM local.
Las personas de tu empresa preguntan en lenguaje natural y reciben respuestas basadas en tus propios documentos, con las fuentes a la vista. El modelo de IA funciona en tu servidor, así que no dependes de ningún proveedor de IA. Ningún proveedor puede subirte el precio, y ninguna pregunta ni respuesta sale de tu red.
$ git clone https://github.com/deformator852/archfold && cd archfold$ cd backend && uv run install && cd ..$ deploy/deploy.sh build && deploy/deploy.sh up$ deploy/deploy.sh admin you@company.com
- Respuestas que puedes comprobarCada respuesta cita sus fuentes y avisa cuando ningún documento tiene la respuesta.
- Acceso según tus reglasCada persona solo recibe respuestas de los documentos que puede leer, y cada lectura queda registrada.
- Un servidor corrienteDocker Compose en una máquina Linux, desde 16 GB de RAM y sin GPU.
- Código abiertoApache 2.0, con todo el código en GitHub y sin servidor de licencias.
Haz una pregunta y recibe una respuesta que puedes comprobar.
Archfold es un asistente privado para los documentos de tu empresa. Subes contratos, políticas y manuales, y la gente le pregunta en un chat, como le preguntaría a un compañero.
Cada respuesta muestra de dónde sale
Cada respuesta enumera los documentos que ha usado. Abre uno para ver el pasaje exacto, con las palabras coincidentes marcadas.
Cuando ningún documento responde a la pregunta, Archfold lo dice en lugar de inventarse algo. Cada respuesta está marcada como escrita por IA.


- Búsqueda
- Híbrida: búsqueda vectorial por significado y coincidencia exacta de palabras clave, para encontrar nombres, códigos y números tal cual
- Modelo
- Funciona en Ollama en tu servidor,
llama3.1:8bpor defecto - Respuestas
- Transmitidas por WebSockets y marcadas como
ai_generateden la API
Lee los archivos que ya tienes
PDF, Word, OpenDocument, Excel, CSV, JSON, XML, Markdown y texto plano. Sube hasta 50 archivos a la vez, de 32 MB cada uno, y sigue el procesamiento en directo.
Las tablas, los títulos y las filas de las hojas de cálculo conservan su estructura, así que una respuesta puede citar una celda o una cláusula.


- Procesamiento
- Un worker de Celery con RabbitMQ extrae el texto, lo corta por los límites de sección, genera los embeddings y lo indexa
- Índice
- Qdrant, con un modelo abierto de embeddings de Hugging Face
- Fragmentos
CHUNK_SIZE=800,CHUNK_OVERLAP=150, modificables sin perder documentos
La administración diaria se hace en el navegador
Los administradores añaden personas, asignan roles, revisan el historial de chats y las valoraciones de las respuestas, y comprueban que todo funciona, todo desde la interfaz web.
Ajustes como el modelo de IA o los idiomas se cambian con un solo comando: uv run configure.


Se inicia sesión con la cuenta de trabajo
El inicio de sesión único funciona con Microsoft Entra ID, ADFS, Keycloak, Okta y otros. Los roles siguen a los grupos de tu directorio, y desactivar a un usuario termina sus sesiones al instante.
Los administradores conservan una contraseña, para poder entrar aunque el proveedor no funcione.
OIDC_ISSUER=https://login.example.comOIDC_CLIENT_ID=archfoldOIDC_GROUPS_CLAIM=groupsOIDC_ROLE_MAP=Archfold Admins=admin;Legal=legalEn el idioma de tu equipo
La interfaz y el asistente funcionan en inglés, español y francés. Usa un solo idioma o deja que cada persona elija el suyo en la cabecera. Todos pueden cambiar además entre el modo claro y el oscuro.
APP_LANGUAGE=enAPP_LANGUAGES=en,es,frElige un modelo que responda bien en todos los idiomas que actives.
Todo funciona en un solo servidor que tú controlas.
Archfold es un stack de Docker Compose en un único servidor Linux. Crece en vertical: un servidor más potente, con una GPU mayor y un modelo más grande, atiende a más personas.
Tus preguntas se quedan dentro de tu empresa
Un asistente en la nube envía tus preguntas, y los documentos en los que se basan, a los servidores de otro, bajo las condiciones y la política de retención de ese proveedor. Según el proveedor y el plan, también pueden usarse para entrenar modelos.
En Archfold no interviene ningún proveedor. El modelo de IA funciona en tu servidor y, una vez instalado, el sistema no tiene ruta a Internet.
| Asistente en la nube | Archfold | |
|---|---|---|
| El modelo de IA | En los servidores del proveedor | En tu servidor |
| Su precio | Lo fija el proveedor, y puede cambiar | Sin cuota por usuario ni por pregunta: tu coste es el servidor |
| Tus preguntas y documentos | Se envían al proveedor, bajo sus condiciones | Se quedan en tu red |
| Entrenamiento con tus datos | Depende del proveedor y del plan | Ningún proveedor recibe tus datos |
| Internet | Necesario para cada respuesta | Necesario solo para instalar |
El servidor no tiene salida
Después de la instalación, ninguna parte de Archfold puede llegar a Internet. La gente llega a un solo servicio, el servidor web, por HTTPS.
Las únicas excepciones son las que conectas tú: HashiCorp Vault, tu proveedor de SSO y tu almacenamiento S3, cada uno mediante un túnel a esa única dirección. Los archivos de documentos llegan a S3 ya cifrados.
Tu servidor. Redes internas de Docker, sin ruta a Internet.
Cada persona solo recibe respuestas de lo que puede leer
Cada documento tiene uno de cuatro niveles de acceso: estándar, restringido, confidencial o secreto. El asistente responde solo a partir de los documentos que la persona que pregunta puede leer.
El registro de auditoría guarda quién leyó qué, incluidos los documentos que leyó el asistente para escribir una respuesta.


- Niveles
- Se aplican en la lista de documentos, en la búsqueda y en cada respuesta
- Roles
- Se construyen con permisos, sin posibilidad de conceder más de lo que se tiene
- Auditoría
- Inicios de sesión, cambios, lecturas de documentos y lecturas de chats de otros usuarios
Tus datos se cifran con tu clave
Los documentos, los chats y las copias de seguridad se guardan cifrados y no se pueden leer sin tu clave. Guarda una copia de la clave en un lugar seguro fuera del servidor.
Archfold no cifra algunas cosas, y aquí están enumeradas. Para ellas, guarda los datos del servidor en un disco cifrado.
Se cifra
- Archivos de documentos
- Texto de documentos
- Texto de los fragmentos de búsqueda
- Chats
- Registro de errores
- Copias de seguridad
Archfold no lo cifra
- Nombres de documentos
- Correos de usuarios
- Registro de auditoría
- Vectores de búsqueda
Guárdalos en un disco cifrado, con LUKS.
- Algoritmo
- AES-256-GCM
- Clave
- En
backend/.envo en HashiCorp Vault. Archfold se niega a arrancar con una clave que no coincide con los datos. - Rotación
deploy/deploy.sh rotate-keyvuelve a cifrarlo todo
Tus desarrolladores pueden ampliarlo sin hacer un fork
Tus funciones propias viven en dos carpetas que las actualizaciones nunca tocan, así que sigues recibiendo actualizaciones.
Eso incluye endpoints de API, permisos, tablas y migraciones de base de datos, tareas en segundo plano, páginas, enlaces de la barra lateral, traducciones y temas.
from fastapi import APIRouter, Depends
from api.deps import require_permission
PERMISSIONS = (("crm.report", "CRM report", "View the CRM report"),)
router = APIRouter(prefix="/crm", tags=["crm"])
@router.get("/report")
async def report(_user=Depends(require_permission("crm.report"))) -> dict:
return {"ok": True}Se instala en un servidor Linux, con un solo script.
Puede hacerlo cualquiera que se maneje con un servidor Linux y Docker, sin Kubernetes ni equipo de DevOps. Una configuración guiada elige los modelos y genera todas las contraseñas y claves.
Qué necesitas
- Servidor
- Linux de 64 bits, una CPU x86-64 con AVX2 y un SSD. Consulta los tamaños en Hardware.
- Software
- Docker con Docker Compose v2,
gityuv. Las GPU NVIDIA necesitan NVIDIA Container Toolkit. - Nombre de host
- Por ejemplo,
archfold.company.local - Internet
- Solo durante la instalación, para descargar los modelos de IA
Descarga el código y ejecuta la configuración guiada
$ git clone https://github.com/deformator852/archfold && cd archfold$ cd backend && uv run install && cd ..# Keep the encryption key it shows in a safe place outside the serverConfigura la dirección y el certificado
SITE_ADDRESS=archfold.company.localTLS=internalCompila y arranca
$ deploy/deploy.sh build$ deploy/deploy.sh upCrea el primer administrador
$ deploy/deploy.sh admin you@company.com# then open https://archfold.company.local
Mantenerlo en marcha
Las actualizaciones, las copias de seguridad y las restauraciones usan el mismo script. Las migraciones de base de datos se ejecutan al arrancar, y tus extensiones se quedan como están.
# Update$ git pull$ deploy/deploy.sh build && deploy/deploy.sh up # Encrypted backup, and restore after checking every part of it$ deploy/deploy.sh backup /path/to/backups$ deploy/deploy.sh restore /path/to/backups # Change settings$ cd backend && uv run configureArranca en un servidor de 16 GB sin GPU.
Un modelo de 8B responde en un servidor corriente. Añade una GPU más adelante para obtener respuestas varias veces más rápidas, o una mayor para atender a más personas. Sin GPU, una respuesta tarda decenas de segundos.
Pequeño
Hasta 50 usuarios
- Modelo de IA
- llama3.1:8b (por defecto) o qwen3:8b
- Mínimo
- 4 núcleos de CPU, 16 GB de RAM, SSD de 80 GB, sin GPU
- Recomendado
- 8 núcleos de CPU, 32 GB de RAM, SSD de 200 GB, GPU con 12 GB de VRAM
- Respuestas a la vez
- De 1 a 2 en CPU, 4 con GPU
Mediano
De 50 a 500 usuarios
- Modelo de IA
- gemma3:12b
- Mínimo
- 8 núcleos de CPU, 32 GB de RAM, SSD de 150 GB, GPU con 16 GB de VRAM
- Recomendado
- 16 núcleos de CPU, 64 GB de RAM, SSD NVMe de 500 GB, GPU con 24 GB de VRAM
- Respuestas a la vez
- 2 como mínimo, 4 recomendadas
Grande
500 usuarios o más
- Modelo de IA
- gemma3:27b o qwen3:32b, llama3.3:70b para las mejores respuestas
- Mínimo
- 16 núcleos de CPU, 64 GB de RAM, SSD NVMe de 500 GB, GPU con 48 GB de VRAM
- Recomendado
- 32 núcleos de CPU, 128 GB de RAM, SSD NVMe de 1 TB, 80 GB de VRAM o más
- Respuestas a la vez
- 4 o más
Son estimaciones para el contexto predeterminado de 16 384 tokens. Prevé espacio en disco para las imágenes de Docker (unos 20 GB), los modelos de IA (5 GB para un modelo de 8B, unos 43 GB para uno de 70B) y aproximadamente el doble del tamaño de tus documentos. Guarda las copias de seguridad en otra máquina.
Desarrollado en abierto
Los informes de errores y los pull requests son bienvenidos. Abre una incidencia antes de un cambio grande, para no construir algo que no se pueda fusionar.
Creado y mantenido por Nikita Kostenko, desarrollador independiente: LinkedIn, GitHub, nikitakostenko.com.
- README
- Funciones, ajustes y todos los comandos
- Guía de despliegue
- Instalación, SSO, S3, copias de seguridad, cifrado de disco, Vault y resolución de problemas
- Guía de personalización
- Extensiones en
custom/: endpoints, páginas, temas y migraciones - Registro de cambios
- Qué cambia cada versión
- Cómo contribuir
- Las comprobaciones que hay que ejecutar y lo que debe incluir un cambio
- Política de seguridad
- Cómo informar de una vulnerabilidad
