SELVO
Technology
How SELVO is built and what it runs on. This page is for IT, infrastructure, and procurement teams that need to evaluate the platform before deployment.
Overview
SELVO is a self-hosted AI platform. The entire stack runs inside your private network on a single GPU host via Docker Compose. There is no cluster, no Kubernetes, and no cloud dependency at runtime.
The platform routes each request to the appropriate engine: content questions go through hybrid retrieval, analytical questions through a sandboxed code path, exact lookups straight to the data store. Generative tasks route directly to the LLM.
Hardware requirements are modest. The recommended configuration fits in a single small server rack and uses commodity components your IT team can procure from any supplier.
Architecture
Four containers run on a single GPU host. All inter-service communication stays inside the internal Docker network. No external calls are made during normal operation.
Browser-based UI for document upload, querying, and admin dashboard.
Query routing, classification, hybrid search, analytics engine, GDPR, governance.
Vector embeddings store. Reconstructible from upload ledger if corrupted.
Runs 140+ open models on your GPU. Llama 3.1, Qwen 2.5, Mistral, Mixtral, Gemma, Phi-3, and more. See the Models section below.
Models we support
SELVO is not tied to any single AI model. The inference layer is OpenAI-compatible, which means it runs any of the 140+ open models in the vLLM catalog. You pick the model that fits your hardware, your language, and your legal jurisdiction. You can switch later without re-uploading your documents.
Below are the model families we deploy most often with customers in the EU. Naming a specific model is a deployment decision, not a marketing one, so we work through it during pilot scoping.
Meta Llama 3.1
8B · 70B · 405B
Strongest English reasoning. Most common choice for EU air-gapped deployments.
Alibaba Qwen 2.5
7B · 32B · 72B
Strongest multilingual coverage including German, French, Spanish, Italian, and Slavic languages.
Mistral Large + Mixtral
8x7B · 8x22B · Large 2
EU-developed. Frequently chosen for jurisdictional or procurement reasons.
Google Gemma 2
9B · 27B
Lightweight. Runs comfortably on a single 24 GB GPU for small teams.
Microsoft Phi-3
3.8B · 14B
Smallest footprint that still produces enterprise-quality answers. Fits the minimum hardware spec.
140+ more via vLLM
Open catalog
Anything OpenAI-API compatible: DeepSeek, Yi, Command R, internal forks. Bring your own.
How models stay current
A new model release (Llama 4, Qwen 3, etc.) is not an upgrade we push to your server. You decide when and whether to switch. Switching is a configuration change, not a redeployment. Your indexed documents and audit history stay in place. Every release of SELVO ships with a compatibility note listing the models we have validated against that version.
What you do not need to do
You do not need to fine-tune a base model. SELVO uses retrieval, not retraining, to specialize the model on your data (see the next section). You do not need to send anything to Selvo Lab to keep the model running: weights are downloaded once at deployment and live on your server from then on. You do not need a model science team. The runtime handles routing, quantization, and context window management.
How SELVO learns your company
The model itself never sees the inside of your company. SELVO uses retrieval-augmented generation: when a user asks a question, the platform searches your documents, retrieves the relevant passages, and asks the model to answer using only those passages. The model is the language layer. Your documents are the knowledge layer. The two stay separate.
Why this matters for compliance
A document is never mixed into the model weights. Knowledge is added by uploading documents and removed by deleting them. If a regulator orders erasure under GDPR Article 17, you can prove erasure by showing the document is gone from the index. You do not need to retrain or re-certify a model.
Adding and updating knowledge
Upload a document and the platform processes it once: text extraction (including OCR for scans), chunking, embedding, and storage in the vector index. The next query that needs it finds it. Replacing a document means the next query uses the new version. Removing it is immediate and tamper-evident in the audit trail.
Indexing runs entirely on your hardware
All processing (extraction, OCR, embedding) runs on the same GPU host as the model. Nothing is sent externally at any stage of the pipeline. The index can be rebuilt from the document ledger at any time without re-uploading anything.
Query types
Every request is classified and routed to the right engine. The wrong approach gives wrong answers, so SELVO picks the routing automatically based on what the question actually needs.
Reading documents
"What does the contract say about liability?"
Hybrid vector and BM25 search with cross-encoder reranking, followed by LLM synthesis. Every answer cites the exact source page.
Doing math
"Average revenue by region for Q4"
LLM generates Pandas code against your data schema. Sandboxed execution returns deterministic results from your actual files.
Finding records
"Show all rows where status is Active"
Direct DataFrame filtering and targeted record search. No LLM hallucination on structured data.
Summarizing
"Give me an executive summary"
Multi-sheet LLM synthesis across entire documents. Produces structured overviews with key findings.
Counting and listing
"How many documents are uploaded?"
Collection-level metadata queries answered directly from the document ledger.
Working across languages
Queries in any language
LLM-based cross-language reranking when embeddings cannot handle the query language.
Drafting and writing
"Draft a report, summarize findings, rewrite a clause"
Open-ended generative tasks routed directly to the LLM. No retrieval overhead when the task is purely generative.
Hardware requirements
The entire stack runs on a single GPU host. No cluster required. Two reference configurations below: a minimum that runs the full stack at smaller scale, and a recommended configuration sized for production use in the 200 to 500 user range.