Most "RAG tutorials" hand you a notebook: load a PDF, embed it, query a vector store, print an answer. None of that is a product. A real retrieval-augmented-generation SaaS needs auth, multi-tenant index isolation, a provider that fails over when one LLM is down, and a backend you can actually deploy. Archiet generates the whole thing — the RAG pipeline and the application around it — from a written description.
You download a ZIP. You run docker-compose up. You have a RAG product, not a script.
What a real RAG app needs that a notebook skips
| Concern | A RAG notebook | Archiet's generated RAG app |
|---|---|---|
| Embeddings | One hardcoded model | OpenAI / Cohere / local sentence-transformers adapters |
| Vector store | One library call | pgvector (default), Pinecone, Weaviate, Qdrant, or Chroma |
| Per-tenant isolation | None — one global index | Every query scoped by workspace_id (pgvector WHERE, Pinecone namespace, Weaviate tenant) |
| LLM reliability | Single provider, hard fail | A provider cascade — model names from LLM_MODEL_* env, fall through on outage |
| Streaming | print() | WebSocket fanout with bounded back-pressure queues |
| The rest of the product | Missing | Real auth, billing, migrations, admin, Docker, CI |
The per-tenant retrieval pattern
The generated retrieval layer scopes every search to the calling tenant, so one customer can never read another customer's corpus:
async def search(workspace_id: int, vec: list[float], *, top_k: int = 5):
# pgvector: WHERE workspace_id = ... | Pinecone: namespace=workspace_id
# The workspace_id is threaded through every adapter — isolation is
# structural, not a runtime check you can forget.
...
That isolation is the difference between a demo and something you can sell to two customers at once.
How to generate a RAG app with Archiet
- Describe the product. "Let users upload documents and ask questions" is enough — mention RAG, embeddings, or semantic search and the retrieval pipeline activates.
- Pick a Python stack. The RAG pipeline emits for Flask, FastAPI, and Django backends (paired with a Next.js frontend).
- Generate. Archiet emits the full codebase — typically 200–800 files — including the orchestrator, embedding + vector adapters, the LLM cascade, the WebSocket fanout, and a pgvector migration.
- Pick your providers. Set
LLM_MODEL_*, an embedding provider, and a vector store via environment variables — no code change to switch from pgvector to Pinecone. - Download and ship. Plain source code, deployable anywhere.
What you get in the ZIP
orchestrator.py— the chunk → embed → retrieve → LLM → stream pipeline- Embedding adapters (OpenAI / Cohere / local) with a dimension contract
- Vector adapters for all 5 stores, each enforcing per-tenant scoping
- An LLM provider cascade reading model names from env (never hardcoded)
- A pgvector migration (extension + IVFFlat index) you can run on day one
- The full surrounding app: auth, billing, multi-tenancy, admin, Docker, CI
Why this beats wiring it yourself
Standing up production RAG by hand is two to three weeks of plumbing before you write a line of product logic: the provider abstraction, the tenant isolation, the migration, the streaming back-pressure. Archiet emits that plumbing already wired and runs a Synthetic Boot Test on the result before you download it, so you start at the product, not the pipeline.
When Archiet is the right RAG app builder for you
- ✅ You're building a document-chat, knowledge-base, or semantic-search product you intend to sell
- ✅ You need multi-tenant isolation from the first customer, not bolted on later
- ✅ You want to own the source and swap LLM or vector providers without a rewrite
- ❌ You only need a one-off script to query your own PDFs (a notebook is fine)
- ❌ You want a fully hosted black-box RAG API (use a managed endpoint)
Build your RAG app free
The free plan generates one full project per month with watermarked output; Pro removes the watermark and unlocks unlimited generations and the full provider catalog.
Start a free build — describe your RAG product and generate the source. No credit card.