Portfolio project · fully working

Company knowledge,
just one question away.

Robin is an internal AI assistant I built from scratch. Employees ask in ordinary language and get answers straight out of company documents, with a link to the source. It does not invent.

RAG · roles and permissions · source citations · multilingual

Robin - an internal assistant
How much holiday do I have left and how is it calculated?
You are entitled to 20 days a year and have taken 12 - leaving you 8 days. The calculation and the terms are in the staff handbook.
Staff_handbook_2026.pdf · p. 14
And do I need approval to work from home?

Every company has documents nobody reads.
An employee spends 20 minutes searching. Robin solves that in a few seconds.

Staff handbooks · policies · contracts · pay scales

What Robin can do

Smart, safe, in plain language.

You ask naturally

You ask the way you would ask a colleague. Robin understands and answers to the point.

Cites its source

Every answer comes with the file and the page. It does not invent.

Respects roles

Everyone sees only what they should. Sensitive data stays protected.

Reads your formats

PDF, Word, Excel and PowerPoint. You upload, and it is live.

It says "I do not know"

When the document does not exist, it points you to the right person.

Data in Europe

Runs on European servers. GDPR compliant, no data leaks.

Tested in real operation

Tested on hundreds of questions.

Robin went through a trial run with real users over real company documents. Hundreds of questions, accurate answers with a link to the source - it works entirely reliably.

159documents in the demo
17trial users
~4 sto the first answer
8departments / sections
Under the hood

What Robin is built from, and why.

No third-party box. I picked and built every part for a specific reason.

Backend Python + FastAPI

The whole API and the logic. Asynchronous, so it handles several questions at once - and streams answers as they come, not only when finished.

Search Vector database

Documents are split into passages and stored as vectors. The relevant parts are then found in milliseconds, even across thousands of pages.

Language handling Multilingual embeddings

An embedding model chosen for its handling of Czech. Robin understands both "how much holiday do I have" and the formal language of a policy document.

Accuracy Two-stage retrieval

First a fast, rough search, then a precise re-ranking with a cross-encoder. The answer comes from the right passages, not merely from similar words.

Answers Claude

The language model that assembles an answer out of the passages found. It sticks to the context, cites the source - and when the answer is not in the documents, it says so.

Security & operations JWT, roles and Docker

Every user sees only their own department's documents, and tokens can be revoked instantly. The whole thing is containerised - deployed with a single command.

Working together

Want an app like this
for your own company?

Robin is a demonstration of what I can build - RAG over documents, roles, source citations, in any language. I can take the same approach to your problem.

jonassvetlik@gmail.com · I reply fast