If your dapp needs a particular ML model to be run to identify face from a video, count the number of reps of pushups from a video etc. Create a trained model and upload to a public repository.
Any server can join a network of ML nodes.
When a ML task request comes in - e.g. Does this video have a real person in it? - the node will download the model from github, and execute the model on the input provided
POST /ml-verify
DATA
{
"model": "https://github.com/my-repo/my-model/branch/main/model.tar",
"input": "ipfs://12..34",
"payment_sig" : "123...456"
}
A commit reveal game is played.
ML model commits to an output - e.g. “Yes this video has a person”.
Once most of the nodes have committed, a reveal happens.
Majority wins.
All the nodes in the majority will get a share of fees.
Maybe there’s a partial slashing for the nodes that was wrong - basis a stake to participate in the network.