Self-hosted document AI: when your documents can't leave your network
Shared cloud, dedicated, private cloud or on-premises: how to choose a deployment for document AI, follow every hop a document takes, and question vendors.
Key takeaways
- The deployment model decides who can see your documents, not the vendor's marketing.
- Follow every hop a document takes: upload, parsing, storage, the model call, logs and backups.
- The model call is the hop most often missed. A self-hosted app can still send text to a public model API.
- Self-hosting moves operations work to your team. A dedicated, vendor-run server sits in between.
For a bank, a law firm or an insurer, the first question about any document AI tool is rarely about accuracy. It is whether the documents may be sent there at all. Client contracts, loan files, deal documents and claims files often come with confidentiality obligations that rule out a shared cloud service before anyone has seen a demo.
That does not have to rule out the tool. Most serious vendors offer more than one way to deploy. The work is in choosing the right one and confirming it does what it says.
Four ways to deploy document AI
| Deployment | Who runs it | Where documents sit | Fits when |
|---|---|---|---|
| Shared cloud | The vendor | Vendor infrastructure, shared with other customers | Public or low-sensitivity documents, pilots, individual users |
| Dedicated | The vendor | A single-tenant server for your company only | Sensitive documents, without the team to run infrastructure |
| Private cloud | Your team | Your own AWS or Azure account | Policy requires data to stay in your cloud tenancy |
| On-premises | Your team | Your own data centre | Regulation or client terms forbid any external hosting |
The further down the table, the more control you have and the more work you take on.
Follow the document, not the diagram
Architecture diagrams show boxes. A security review should follow one document through every hop it takes:
- Upload. Where is the file received, and over what connection?
- Parsing and OCR. Is text extracted in the same environment, or by a separate service?
- Storage. Is the file kept, for how long, and is it deleted on a schedule?
- The model call. Which model reads the text, and where does it run?
- Logs and monitoring. Do logs, traces or error reports contain document text?
- Backups. Does a deleted document survive in a backup, and for how long?
- Support access. Can vendor staff see documents or results when they troubleshoot?
The model call deserves the most attention. An application can run entirely in your network and still send every page to a public model API. "Self-hosted" describes the application. It does not, by itself, tell you where the model runs.
Questions to ask any vendor
- Where is document text sent for the model, and under what terms is it retained?
- Are documents ever used to train models, by the vendor or by its model provider?
- How long are files and results kept by default, and can you delete them on demand?
- Who at the vendor can access a deployment, and is that access logged?
- How are updates delivered to a private or on-premises installation, and how often?
- What happens to your data at the end of the contract?
Ask for the answers in writing, for the deployment you will actually use. The answers for the shared cloud service may not apply to a dedicated one, and the reverse.
What self-hosting costs you
Running the software yourself buys control, and it is paid for in operations work:
- Upgrades. New features and fixes reach you only when your team installs them.
- Capacity. Large review projects arrive in bursts, and your infrastructure has to absorb them.
- Monitoring and support. Your team is the first line when something stops working.
- The model. If the model must run inside your network too, someone has to host and size it.
This is why a dedicated deployment exists. A single-tenant server run by the vendor keeps your documents apart from other customers without making your team responsible for running it.
How CiteLLM deploys
- CiteLLM cloud. The shared service. Files and results are deleted 30 minutes after upload by default, and documents are never used to train AI models.
- Dedicated. A single-tenant CiteLLM server for your company, run by us, with no document storage.
- Your cloud. A private deployment in your own AWS, Azure or on-premises environment, run by your team.
CiteLLM Check, Ask and Extract are all available on a dedicated server or in your own cloud, and Extract also runs self-hosted with Docker. Before a security review, we walk through every hop above for the deployment you choose, including where the model runs. The security page has the details.
Frequently asked questions
Is a dedicated deployment the same as self-hosting?
No. A dedicated deployment is a single-tenant server run by the vendor for your company only. Self-hosting means your own team runs the software in your cloud account or data centre.
Does self-hosted document AI mean the model runs locally?
Not necessarily. The application can run in your network while sending text to an external model. Ask each vendor where the model runs for the deployment you will use.
Can we pilot in the cloud first?
Many teams pilot on public or sample documents in the shared cloud, then move to a dedicated or private deployment before real client documents are involved.