01
My answers do not contain a sources array
Source citations only work on non-streaming answers. Turn stream off for requests where you need the sources; with streaming, context is still injected but the sources do not fit in the SSE chunks.
Guide 04 EU compute
Link your knowledge base to the Router and give your models context from your own documents.
01 Guide
With Retrieval Augmented Generation (RAG) you ground answers in your own documents instead of only the model's training knowledge. HostYourAI provides the open models and the EU GPU infrastructure; you decide what knowledge goes in. Documents, prompts and answers stay inside Europe end to end.
Upload documents (PDF, TXT, CSV, MD or DOCX) or crawl a URL or sitemap. Your content is split into chunks of about 1000 characters with 100 characters of overlap, on sentence boundaries. Each chunk gets an embedding (384-dimensional). Small files (< 50MB) are fully pre-embedded for fast retrieval; large files use a hybrid mode with FULLTEXT plus on-demand embedding.
There are three ways to attach a knowledge base to your chat requests:
POST /api/kb/{kbId}/link/{instanceId}. Every chat request to that instance then gets context automatically, including via an external hyai- key.knowledge_base_id on the agent; the public chat uses it automatically.knowledge_base_id in the body of your chat completion.curl https://hostyourai.com/api/v1/chat/completions \
-H "Authorization: Bearer hyai-..." \
-H "Content-Type: application/json" \
-d '{
"model": "llama-3.3-70b",
"messages": [{"role":"user","content":"What is our return policy?"}],
"knowledge_base_id": 42
}'The Router retrieves the most relevant chunks with cosine similarity (minimum threshold 0.3), injects the top 5 into the prompt, and generates an answer grounded in your documents.
Non-streaming answers include an extra sources array with document name, score, chunk index and an excerpt, so you can trace every answer back to its source. On streaming, context is still injected, but sources cannot be returned in the SSE chunks.
Retrieval failures are graceful: if retrieval fails, the chat continues without context instead of erroring. And because everything runs on EU GPUs, your entire RAG pipeline, from documents to answer, stays inside Europe.
These values determine how your documents are processed and retrieved. They are fixed, so quality stays predictable across all your knowledge bases.
| Setting | Value |
|---|---|
| Chunk size | About 1000 characters, split on sentence boundaries |
| Overlap | 100 characters between consecutive chunks |
| Embeddings | 384-dimensional vectors per chunk |
| Similarity | Cosine similarity, minimum threshold 0.3 |
| Context per request | Top 5 most relevant chunks |
| Processing mode | Fully pre-embedded under 50MB, hybrid above that |
08 Guide
01
Source citations only work on non-streaming answers. Turn stream off for requests where you need the sources; with streaming, context is still injected but the sources do not fit in the SSE chunks.
02
First check that the knowledge base is actually linked: to the instance, to the agent, or via knowledge_base_id in the request body. Then check that your documents have finished processing; right after an upload, processing is still running in the queue.
03
Your API key must start with hyai- and be copied in full, and the base URL must be exactly https://hostyourai.com/api/v1. A key from another provider does not work.
04
The chosen model is probably not warm yet. The Model Garden shows whether a model is warm or still warming up; after that, follow-up requests respond quickly.
PDF, TXT, CSV, MD and DOCX. You can also crawl a URL or a complete sitemap; the pages go through the same processing pipeline.
Yes. Link the knowledge base to your dedicated GPU instance and every chat request automatically gets context, including via an external API key.
You pay for the inference itself: pay-as-you-go per token through the Router, or per hour on your own instance. See the pricing page.
Open models such as Llama, Qwen and Mistral do well on question answering over documents. Compare the options in the Model Garden and test in the Playground.
Yes. Storage, embeddings and inference run in European datacenters; documents, prompts and answers never leave the EU.
From model hosting to a customer-facing API, it is built for developers and businesses who want their AI running on infrastructure they actually control, inside the EU.
EU-hosted
100%
Your data and your models stay on European GPUs. GDPR-friendly by design.
Verified models, ready to serve
700+
Llama, Qwen, DeepSeek, Mistral, FLUX and plenty more. Pick one and it is warm in minutes, with no DevOps on your end.
OpenAI & Anthropic compatible
2 SDK
Point your existing client at the Router and keep your tools. No rewrite, no lock-in.
No infra to manage. Pick a model, get an OpenAI-compatible URL, ship.
01
Choose from the Model Garden or paste any HuggingFace ID. Set the VRAM and pick an EU GPU.
02
We deploy vLLM, run readiness probes, and hand you a warm OpenAI- and Anthropic-compatible URL plus an API key.
03
Point your client at the Router. It auto-routes to a warm instance and logs every request.
If a US cloud is off the table, HostYourAI gives you the same developer experience on European infrastructure.
01
Public sector & government
Citizen data that legally has to stay in the EU, with full auditability.
02
Regulated enterprise
Finance, healthcare and legal teams under GDPR, DORA and the AI Act.
03
EU SaaS & scale-ups
Ship AI features your customers trust, without a US sub-processor.
04
Agencies & integrators
Deliver private AI for clients on infrastructure you can stand behind.
HostYourAI keeps your models, prompts and data on European GPUs. It is built for teams that care about compliance, reliability and real control.
Full data sovereignty
EU
GPUs and data stay inside Europe, and so do your prompts.
Models you can audit
Open
Run open-weight models and see exactly what runs.
No monthly fee
€0
Prepaid credit per token or per minute, so you pay only for what you run.
Your keys, your models
Yours
Your keys, your models and your data. Move whenever you want.
Text and image models on dedicated EU GPUs. Every model tested on our own hardware.
Start with one layer and add the others when the work asks for it. They share one key, one balance and one Activity view.
Explore more about EU-hosted AI on HostYourAI.
Deploy your own LLM with vLLM
Learn how to deploy an open LLM on a European GPU with vLLM. From a HuggingFace ID to a warm, OpenAI-compatible endpoint.
Read moreMigrate OpenAI to the EU Router
A step-by-step guide to migrate your OpenAI integration to the EU Router. Change the base URL and API key and run open models on European GPUs.
Read moreStart with one key today. Add dedicated GPUs when your workload needs them.







