Replace brittle if/else chains and expensive LLM calls with lightweight neural networks (5K-50K params) that run in milliseconds at the edge.
Everything you need to build, train, and deploy intelligent decision points.
Dense layers with relu, softmax, sigmoid, and tanh activations. No WASM, no native code, no external ML runtimes.
Train models directly in the browser with TensorFlow.js. Upload CSV data, watch loss curves, and export weights in one click.
Models deploy to Cloudflare Workers with three-tier storage: D1 for metadata, R2 for weights, KV for caching.
Text inputs converted to embeddings via Workers AI (bge-base-en-v1.5). Truncatable dimensions: 128 to 768.
React Flow-powered neural network editor. See your architecture as a graph. Add/remove layers visually.
JWT + API key authentication. PBKDF2 password hashing. Rate limiting. Per-user model isolation.
From idea to deployed endpoint in three steps.
Pick a template or build a custom architecture in the visual editor. Define labels, layers, and activation functions.
Upload training data as CSV or add examples manually. TensorFlow.js trains the model in your browser. No GPU needed.
One click deploys to the Cloudflare edge. Get a REST endpoint that handles text-to-classification in milliseconds.
Send text, get classifications. Every model gets its own endpoint. Support for text mode (auto-embed) and pre-computed embedding mode.
/v1/switch/:model_id
Returns ranked labels with confidence scores. Use top_k to limit results.
# Classify a support ticket curl -X POST \ https://nds-api.rckflr.workers.dev/v1/switch/my_router \ -H "Content-Type: application/json" \ -H "Authorization: Bearer API_KEY" \ -d '{ "input": "I need a refund for my order", "mode": "text", "top_k": 3 }' # Response { "model": "my_router", "results": [ { "label": "billing", "score": 0.87 }, { "label": "support", "score": 0.09 }, { "label": "sales", "score": 0.03 } ], "latency_ms": 3.2 }
NDS shines where LLMs are overkill and regex isn't enough.
Route user messages to the right AI agent or tool. Replace complex prompt-based routing with a trained classifier that decides in 3ms.
5 labels ~10K paramsValidate inputs before expensive operations. Is this prompt safe? Does this text contain PII? Is this a real support question?
2 labels ~5K paramsGiven a user query, rank which tools are most relevant. Feed the top picks to your agent, skip the rest. Faster than an LLM rerank pass.
8+ labels ~25K paramsPurpose-built for the Cloudflare edge.
TypeScript API handles auth, validation, inference, and model management. Pure JS forward pass, no native deps.
Model metadata, user accounts, API keys, inference logs. SQL migrations for schema evolution.
Persistent model weights. JSON serialized. Survives KV eviction. Source of truth for trained parameters.
Model cache for fast reads. Embedding cache with TTL. Rate limiting counters. Written last, read first.
bge-base-en-v1.5 for text embeddings. Matryoshka support: truncate 768-dim vectors to 128-512 for your model.
React + Vite + Tailwind. React Flow visual editor. TensorFlow.js for in-browser training. Zero-config deploys.
Train your first model in under 5 minutes. No credit card required.