Cross-primitive Recipes
These recipes span multiple K3 primitives — Storage + Pipelines + Vector + Tables — in a single workflow. They’re the platform-level story: how one bucket becomes a knowledge base that’s queryable as bytes, embeddings, AND structured rows simultaneously.
For recipes scoped to a single primitive (Storage’s browser upload, Vector’s hybrid+rerank, Tables’ time-travel, etc.) see the per-primitive recipe folders.
What’s here
| Recipe | Primitives involved | When you need it |
|---|---|---|
| RAG Knowledge Base | Storage · Pipelines · Vector | Drop PDFs in a bucket → search them semantically. The canonical “Hello, K3” full-stack scenario. |
| Mixed-Media Library | Storage · Pipelines · Vector | Upload images / video / audio → search by visual similarity or by file. Showcases multimodal end-to-end. |
| Reviews Dashboard | Storage · Pipelines · Tables + Vector (parallel) | One upload kicks two pipelines: sentiment analysis to a warehouse table + semantic embeddings to a vector collection. Same bucket, both pillars indexed. |
| Document Intake | Storage · Pipelines · Tables + Vector (parallel) | Similar fan-out shape: document_triage → Tables for routing logic, text_embedding_index → Vector for semantic recall. Every uploaded document feeds both decision-making and retrieval. |
The pattern these recipes show
A K3 bucket isn’t just storage — it’s a knowledge instance. Each recipe demonstrates a different shape of multi-primitive composition:
Storage bucket ──upload──► one or more ingest rules
│
▼
┌─────────────┴─────────────┐
│ │
▼ ▼
Vector collection Warehouse table
(semantic retrieval) (structured rows, SQL)
│ │
▼ ▼
Search RPC Execute / Query RPCsThe fan-out happens because a bucket can have multiple ingest rules, and each rule targets one pipeline which writes to one destination. Want a Tables-bound copy of every uploaded doc AND a Vector-bound copy? Wire two pipelines on the same source, each with its own auto-generated rule.
Conventions used in these recipes
- CLI-first where the CLI supports the action; API for everything else (rerank, multi-collection, multimodal, etc.).
- Endpoint examples use staging
https://k3.dev.dodil.io. Production:https://k3.dodil.io. - Bucket placeholder is
kb-platform; vector engine + tables engine are both auto-on (vector engine onvector store create -m auto; tables engine auto-enabled at bucket-create time). - Consistent example collections / tables across recipes:
docs— vector, pipeline-mode,text_embedding_indexassets— vector, pipeline-mode,visual_embedding_indexreviews_analyzed— table, pipeline-mode,review_analysisintake_triage— table, pipeline-mode,document_triage
Other useful pages
- Per-primitive recipes — drill down into one primitive at a time:
- Overview — the K3 platform map
- Conventions — auth, headers, error envelope