Budget: 18000 UAH Deadline: 21 days
Hello,
Straight to the stack, since you asked for recommendations rather than instruction-following.
Self-hosted: vLLM to serve the model (Ollama for a lighter footprint), Qdrant as the vector store, LlamaIndex for ingestion and retrieval. Qdrant matters for your isolation requirement: tenant scoping becomes a payload filter inside the query itself, so one client's documents cannot surface in another client's answer even if the application layer has a bug. Ingestion: PyMuPDF for text PDFs with a Tesseract OCR fallback for scans, python-docx and openpyxl for DOCX and XLSX, content-hash deduplication, doc_id plus revision for versioning. FastAPI behind JWT, every answer returning source document, page and chunk so a citation can actually be checked. Docker Compose plus a deployment guide.
About us, honestly. Production Python, FastAPI, Docker and Linux server work delivered on clients' own servers: five completed projects here, average rating 10 out of 10, no negative reviews. We run our own LLM-agent automation in production daily, so agent orchestration and the failure modes of these systems are daily work, not theory. We also have a public record of seven merged pull requests into third-party open-source projects, mostly a Go security tool with 173 stars, each reviewed and accepted by the maintainers. What I will not do is claim a shipped production RAG platform for a client. We build with these frameworks, but I am not going to invent case studies to win a bid.
So de-risk it instead of taking my word. Milestone 1: local LLM running on your server, ingestion for PDF with OCR, DOCX, TXT, XLSX, a Qdrant index with deduplication and versioning, and a FastAPI endpoint answering questions over your real documents with citations. Three weeks, 18000 UAH fixed. You end up with something you can test against your own knowledge base before committing further. Milestone 2 (transcript processing, summaries, action items) and Milestone 3 (permissions, isolation hardening, web interface) I quote after Milestone 1, when real volumes are known. Fixed price per milestone preferred; hourly possible for open-ended research.
One question that genuinely changes the architecture: what is the server - GPU and VRAM, or CPU-only? That decides whether you realistically get a 7-8B class model or something larger, and it is the biggest single factor in answer quality. Also useful: roughly how many client tenants, and how many documents at launch.
Петро Панков, BotCraft Group