Skip to main content
Model Nodes are managed clusters that run participant models and make them callable over the network — without exposing the underlying model code. They solve three problems:
  • Remote access — models for a Crunch are callable via gRPC from anywhere
  • Intellectual property protection — models are only reachable through an API; no direct code access is provided
  • Access control — the protocol defines who can call which model, and under what rules

How it works

Here is what happens when a Cruncher submits a model:
1

Model submission

A Cruncher submits their model code to a Crunch run by a Coordinator.
2

On-chain authorization

The Crunch Protocol writes an authorization on-chain, granting the right to run and call that model remotely.
3

Deployment

The Model Orchestrator reads the blockchain, detects the new authorization, and reacts by:
  • Building an execution environment (e.g., a Docker container) that makes the model callable
  • Deploying the container on a cloud platform
  • Sharing connection details with the Coordinator
4

Inference

The Coordinator uses the Model Runner Client (a Python library) to connect to the deployed model and:
  • Fan out requests to many models concurrently
  • Feed data into models
  • Collect predictions

Components

Model Nodes rely on three open-source components maintained by CrunchDAO:
ComponentRoleLinks
Model RunnergRPC server that runs alongside each model, making it callable over the networkDocs · GitHub
Model Runner ClientCoordinator-side Python library for calling models concurrentlyDocs · GitHub
Model OrchestratorManages the lifecycle of model containers — starting, stopping, and health monitoringDocs · GitHub

Deep dives