Kashif Naveed
Kashif Naveed
AI Engineering

Enterprise AI systems, delivered like a consultancy ships code.

Seven production-shaped reference architectures — RAG, agents, GraphRAG, recommendations, multi-agent AIOps.

Zero cloud spend Repo
Reference Architectures AWS · LocalStack Azure · Azurite Qdrant Kubernetes · kind + Helm

Production-shaped AI platforms you can stand up, exercise and tear down on a laptop.

Not a folder of demos — a small AI engineering firm's public showcase. Every architecture runs end-to-end on local cloud emulators (AWS on LocalStack, Azure on Azurite), a real vector database (Qdrant) and a local Kubernetes cluster — real cloud services, zero spend. The house style is deliberate: decisions over frameworks. Each platform is framed as a case study — problem → constraints → architecture → trade-offs → results — with an Architecture Decision Record trail, tests and one-command deploy.

7
Reference solutions
4
Runtimes: AWS · Azure · Qdrant · K8s
3
Vector backends, one interface
42
Tests, all against emulators

The reference solutions

Each links to its own case study, architecture with diagrams, and ADR decision records.

# Platform Runtime What it demonstrates
At a glance

One shape, three clouds, three vector backends

The AWS platforms share one serverless, AWS-native shape and one small shared library (shared/blueiberis). The Azure and Qdrant platforms prove the engineering is cloud- and storage-agnostic, not AWS-only.

flowchart LR
  subgraph Client
    C[curl / SDK]
  end
  C --> APIGW[API Gateway REST]
  APIGW --> L[Lambda]
  L --> SFN[Step Functions]
  L --> OS[(OpenSearch
hybrid search)] L --> DDB[(DynamoDB
vectors · state · graph)] L --> S3[(S3
documents)] SFN --> L L --> SQS[(SQS · EventBridge)] L --> SM[(Secrets Manager)] L --> CW[(CloudWatch
metrics · logs)]

One retrieval interface, three backends

The shared VectorStore abstraction is implemented over OpenSearch (hybrid BM25 + kNN), DynamoDB (brute-force cosine) and Qdrant (dedicated vector DB) — selectable with BLUEIBERIS_VECTOR_BACKEND, no caller changes. Vector search appears in four guises: hybrid (P1), graph-seeded (P3), a Qdrant server (P5/P6) and an embedded in-memory DB (P7).

Services exercised

AWS (LocalStack) API GatewayLambdaStep Functions OpenSearchDynamoDBS3 SQSSNSEventBridge Secrets ManagerCloudWatchIAM
Azure (Azurite) BlobQueueTable
Vector DB · Orchestration Qdrant (HNSW)Kubernetes (kind)Helm
The interesting part

Engineering decisions

Each is argued in full in the platform's docs/adr/. Decisions, not frameworks, are the product.

The LLM is a deterministic offline mock

Both embeddings and (extractive, grounded) completions are pure Python — no network, no cost, reproducible in CI. Platforms depend only on an LLMProvider interface (shared/blueiberis/llm), so swapping in a hosted model (Anthropic Claude, or Bedrock) is a one-class change with no caller edits. The architecture, retrieval, orchestration and evaluation are real; only the model's creative text is simulated.

Serverless, not containers

The target LocalStack tier includes OpenSearch, Step Functions and Secrets Manager but not ECS/RDS/Bedrock — so the AWS design is API Gateway → Lambda → Step Functions, a cleaner, more portable demo. The same code runs against real AWS by dropping AWS_ENDPOINT_URL, and against real Azure by setting AZURE_STORAGE_CONNECTION_STRING.

Run it

Quickstart

Prereqs: Docker, Python 3.10+, and a LocalStack Pro token.

Serverless stack (AWS + Azure + Qdrant)
# add LOCALSTACK_AUTH_TOKEN
cp .env.example .env && $EDITOR .env

make setup    # venv + shared library
make up       # LocalStack + Azurite + Qdrant
make deploy   # provision + deploy all platforms
make demo     # end-to-end walkthroughs
make test     # full test suite (42 tests)
make destroy  # tear everything down
Kubernetes showcase (P6)
# needs kind + helm (brew install kind helm)
make k8s-deploy   # kind up + build + helm install
make k8s-demo     # AgentWorkflow → approve → remediate
make k8s-down ARGS=--cluster

# per-platform: make deploy-1 demo-1 … deploy-7 demo-7

Repository layout

shared/blueiberis/ — config · aws · azure · llm · vector stores
platforms/ — the 7 reference solutions
scripts/teardown.py — remove every blueiberis-* resource
docker-compose.yml — LocalStack + Azurite + Qdrant
Makefile — setup · up · deploy · demo · test · k8s-*
README.md — the full write-up