Successfully tested with 1000+ active users across all three phases, gathering 800+ detailed user feedback leading to 3 major iterations and achieving a 99% user satisfaction rate.
Processed 10M+ tokens during comparison-mode testing, letting users benchmark 2 or more of 36 live models side by side on the same question and the same retrieved context, and make data-driven model choices from empirical, simultaneous SSE output.
Received multiple job calls and offers from leading AI companies specifically requesting expertise in building multi-model orchestration systems like this architecture.
Within months of launch, 3-4 founders reached out about building similar multi-model platforms after seeing the architecture in action - a strong signal of its real-world applicability and production-grade design.
Cut the cost of a new model to one catalog entry: the same declaration powers single-model chat, the arena, voice, the live model list and the admin registry check, which is how the platform grew to 36 live models on four provider lanes without a single new controller or route.
Kept answers grounded with a never-empty hybrid RAG (dense + BM25, RRF, CRAG retry) over ~707 hierarchical chunks that mirror the source file exactly, and with salary unreachable unless explicitly asked - every surface, warrior or real, answers from the same knowledge base.
Made every model feel identical to read: one paced writer (20 ms frames, 2-8 chars by backlog) evens out five provider protocols, while first-question response memory replays repeat questions with no model call at all.
Bounded spend and abuse before any model call: proxy-only access with a server-side key, origin and JWT checks, one global AI quota shared by every chat surface and a separate voice quota, both with live countdown envelopes instead of silent failures.
Shipped Claude/ChatGPT-style conversation and user memory that never blocks a reply - every memory step fails open - with list, delete and clear endpoints per visitor and admin deletion from the dashboard.
Turned the architecture into interview-ready documentation: an interactive 34-step working flow and three system diagrams, written from the code, on the product's own page.
Architected the AI platform behind princesinghdev.com and princesinghai.com as one engine with five surfaces: KurukshetrAI (Chat, Best V/S Best and Voice on the portfolio), the standalone products ARX, Versus and Voice, the full-screen chat deployments on ai.princesinghdev.com and ai.princesinghai.com, and Help Me Buddy, the on-page assistant of the lab's product and system pages - all served by one Node.js / Express API, one model catalog, one orchestrator and one knowledge base.
Built a declarative model catalog (MODEL_CATALOG) assembled at boot from four provider registries - 37 model specs, each carrying its client call, wire protocol, provider, prompt shape, RAG depth and memory key - so adding a model on an existing protocol is one spec entry with no new controller or route. The same catalog derives the arena's MODEL_HANDLER_MAP and the voice socket's VOICE_MODEL_MAP, and the live set is the intersection with a MongoDB ActiveAIModels registry (36 seeded models) cached in Redis.
Served 36 live models across four provider lanes on three clouds - Azure AI Foundry (GPT 6.x / 5.x including the Responses-API Pro and Codex models, Grok, DeepSeek V4, Llama 4, Mistral 3, Kimi K2.6) through one shared OpenAI-SDK client, Azure Anthropic (Claude Opus 5, 4.8, 4.7, 4.6, 4.5, Sonnet 4.6, Haiku 5.5) through one Foundry SDK client, Google Gemini (3.8 Flash, 3.6 Flash, 3.1 Pro, 3) and AWS Bedrock ConverseStream (Claude 4.x, Kimi K2.5, Qwen3-VL, Gemma 3, MiniMax M2, Nemotron Nano).
Designed two caller namespaces over one engine: the portfolio speaks only in KurukshetrAI warrior personas (Krishna, Arjun, Bhishma Pitamah...) via POST /cognitiveServices/warrior/:persona, while ARX, Versus and Voice use real model names via POST /cognitiveServices/stream with { model, provider }. resolveModel maps both to a real catalog id, every response answers in the caller's namespace, legacy persona ids keep resolving, and on the portfolio no real model id, vendor or cloud name ever reaches the browser - model lists, SSE model ids, history and provider errors included.
Wrote one orchestration flow for every single-model chat (createStreamingController): response memory for a session's first question -> conversation memory (rolling summary + last 4 turns) and long-term user memory (up to 5 recalled facts) in parallel -> hybrid RAG -> the provider-shaped prompt (chat messages, Responses-API instructions + input, one Gemini string or Bedrock Converse blocks) -> a paced stream -> cache commit, chat log and background memory updates. Every memory step fails open, so memory can never break a chat.
Built an advanced hybrid RAG pipeline over the resume knowledge base: entity and section routing from a graph of aliases (follow-ups such as "uska architecture" resolve from history), 40 dense ChromaDB candidates from text-embedding-3-large plus an in-process BM25 index, Reciprocal Rank Fusion, parent-over-child dedup with a priority boost, a CRAG retry that broadens to a global pass on weak evidence, and nearest entity cards as a floor - returning 5 to 8 chunks and never an empty result, with salary reachable only on an explicit salary question.
By category
Layer 1 / 8
LLMsFrontier models routed per request: OpenAI, Anthropic, Google, xAI, Meta and more.KurukshetrAI, ARX, Versus, Voice and Help Me Buddy share one model catalog, one orchestrator and one knowledge base. Click any step to see what runs there and where it lives in the code.