AI at work

Using AI on your company's documents without handing them to anyone

You can let an AI read your contracts, reports, policies and email without a single file leaving the company network — and without paying for a frontier model. Here is how, and what it actually takes.

This page is not about a possible future. It is about software you download, run on a server in your office, and ask questions of, getting answers that cite the page they came from. The rest is an explanation of why that works and what it costs.

What actually happens when you paste a document into a chatbot

The gesture is so convenient that nobody describes it as a company decision. It is one: the moment an employee pastes a draft contract into a public chat, that text has left the company.

From there it stops being a technical question and becomes a contractual and legal one. Who is the controller and who is the processor? Where is that text kept, for how long, and under which jurisdiction? If it contained a name, a health detail or a commercial position, the answers need to be written down somewhere before the file leaves, not after.

The practical problem is that in many organisations this conversation never happens at all. Not through bad faith, but because the tool is one browser tab away and the assessment is not. The perimeter of company data moves one paste at a time, and nobody ever decided to move it.

The problem is not artificial intelligence. It is that today the only convenient way to use it involves shipping your material to somebody else. That part is a habit, not a law of physics.

Reading your own documents does not need a frontier model

The largest models exist for the hardest tasks: reasoning about open problems, writing complex code, holding long chains of deduction together. Answering “what does the Rossi contract say about late-delivery penalties” is not one of them.

When the answer is already written inside a document you own, the model is not doing the hard part — retrieval is. The work is finding the right three paragraphs among twenty thousand pages. Once found, restating them in correct prose and citing them is well within reach of a model running on a single GPU, or, with more patience, on the CPU already in your server.

The technique is called RAG, Retrieval-Augmented Generation: retrieve first, generate second. It is why a local system can hold its own against a far more powerful cloud service on the case offices actually care about — searching your own material — while staying behind on everything else.

What that means for the budget

If the task does not need the most expensive model on the market, there is no reason to meter it forever. The cost moves from a per-token subscription to hardware, which you buy once and keep. At serious internal query volumes, that arithmetic changes sign fairly quickly.

What changes when the model runs in your building

  1. There is no transfer, so there is nothing to justify

    The most awkward GDPR question about non-EU services — on what legal basis does this data leave — simply does not arise when the data does not leave. That is not a compliance shortcut; it removes the question.

  2. The vendor never becomes a link in the chain

    No processor to appoint, no sub-processors to map, no unilateral change of terms that forces you to reassess everything downstream.

  3. Behaviour is stable because the model is a file

    A hosted service can change models underneath you, and answers change without you touching anything. A local model stays exactly what you installed until you replace it yourself.

  4. It works with the network unplugged

    After the first run the Community engine needs no connectivity at all. On isolated networks — technical departments, clinical environments, sites without decent bandwidth — that is the difference between using it and not.

  5. You can read the code

    The Community engine is published under AGPL-3.0. Anyone, including an external auditor, can read every line that touches your data instead of trusting a documentation page.

What it is concretely for, in the first month

The use cases that pay for themselves first are the boring ones: the questions somebody in the office already answers today, but only after opening four folders and asking a colleague.

  • Contracts and tender documents: find the clause covering a specific case without rereading the annex, with a reference to the document and the exact passage.
  • Internal policy and circulars: answer a procedural question by citing the policy currently in force rather than the one from three years ago.
  • Technical documentation and manuals: search thousands of pages, even when the question is in Italian and the manual is in English.
  • Scanned archives: PDFs from a scanner, with no selectable text, made searchable through OCR in Italian and English.
  • Tenders and bids: quickly check requirements, deadlines and criteria across documentation that arrives in hundred-page blocks.
  • Onboarding: give a new joiner somewhere to ask, instead of interrupting the most experienced colleague.

The rule for picking your first use case is simple: take the question your office asks most often that takes more than ten minutes of manual searching to answer. That one.

What it actually takes to get running

Less than people fear, but not nothing. The Community engine downloads as a single executable: no Docker to orchestrate, no containers to keep in step, no Java. It starts the vector database and the inference engine itself.

  • A Linux server (x86_64 or ARM64) or a 64-bit Windows machine.
  • An NVIDIA GPU if you want fast answers: it is detected and used automatically. Without one it still runs on CPU, more slowly.
  • Disk space for the first run, which fetches roughly 12 GB of models and components, each verified against a declared sha256 before it is used.
  • One mandatory configuration variable, the one that signs sessions. Everything else has a sensible default.
  • Somebody who can administer a server. Not a platform team: the same person who keeps the file server running today.

The first start needs patience because it downloads; every later one is immediate. From then on, unplug the network and it keeps working.

What you give up, stated plainly

A marketing page that lists only advantages is not helping you decide. Here is where a local system is genuinely behind a frontier service.

  • Open-ended reasoning: on problems needing long deduction and creativity a frontier model is still ahead, and you can tell.
  • World knowledge: the system answers about what you gave it. It is not an encyclopaedia and should not be.
  • The first run is not instant: twelve gigabytes are twelve gigabytes, and they need planning.
  • The hardware is your cost: an adequate GPU is an upfront investment you would not face with a metered service.
  • You need an administrator: updates, backups and restores are your organisation's responsibility, not a vendor's.

If your use case is “write me a marketing campaign from scratch”, a frontier model is the right tool and we will not pretend otherwise. If it is “tell me what my documents say, and do not let them leave this building”, the comparison flips.

How to start

  1. Download the Community edition and try it on real documents

    It is open-source under AGPL-3.0, free for commercial use, and there is no signup. Run it against a real corpus rather than a sample PDF: it is the only way to find out whether the answer quality is good enough for you.

  2. Measure it on your own hardware

    The engine can time itself on your documents and write a report with the cost of each stage. Sizing then comes from a measurement rather than a guess.

  3. Decide whether the open features are enough

    For a great many offices, Community is already the finished product. If you need structured extraction, hybrid search, advanced roles, audit and a support contract, that is the Pro edition.

Frequently asked questions

Can we use AI at work without sending data outside the company?
Yes. A self-hosted RAG system keeps the documents, the index and the language model on a server you control, so questions and answers never cross an external service. After a first run in which it fetches its own components, the I3K RAG Enterprise Community engine works with the machine disconnected from the internet.
Do we absolutely need a GPU?
No, but it changes the experience. With an NVIDIA GPU — detected and used automatically — answers arrive at conversational speed. Without one the system still runs on CPU: usable for modest archives and for evaluating the product, but noticeably slower to answer.
How is this different from pasting documents into ChatGPT?
The difference is where the document ends up. In a self-hosted system the file stays on your server, is indexed there, and never leaves the company network, so there is no transfer to a vendor to justify. In exchange you give up the general reasoning ability of the largest models, which matters far less than people expect when the task is searching your own material.
Is a local system GDPR compliant?
Compliance depends on how you process data, not on software alone: you still need a legal basis, a privacy notice, a record of processing activities and security measures. What changes is that keeping everything on your own infrastructure never opens the question of transferring data to a non-EU provider, which is usually the hardest part to close.
Does the system make answers up?
The risk exists for any language model, which is why every answer shows the passages it was drawn from. Checking is not an advanced option: it is the intended way to use it. When the information is not in the indexed documents, the correct answer is to say so.
Which document formats does it read?
PDF, DOCX, XLSX, HTML, TXT, Markdown and CSV. Scanned pages are detected automatically: when a page yields too little text it is rasterised and passed through OCR in Italian and English, so archives captured by a scanner become searchable too.
Which languages does it work in?
The embedding model, BAAI/bge-m3, covers over a hundred languages in one vector space. In practice a question asked in Italian finds the relevant passage inside a document written in English or German, with no separate per-language index.

Ready to run RAG on your own infrastructure?

Start with the open-source Community edition, or talk to us about Pro with structured extraction, SSO, audit log and SLA.

AI at work, without the cloud — I3K RAG Enterprise