Skip to content

A zkML framework for ensuring the integrity of computational graphs using Circle STARK proofs

Notifications You must be signed in to change notification settings

gizatechxyz/LuminAIR

Repository files navigation

LuminAIR


LuminAIR is a Machine Learning framework that leverages Circle STARK Proofs to ensure the integrity of computational graphs.

It allows provers to cryptographically demonstrate that a computational graph has been executed correctly, while verifiers can validate these proofs with significantly fewer resources than re-executing the graph.

This makes it ideal for applications where trustlessness and integrity are paramount, such as healthcare, finance, decentralized protocols and verifiable agents.

⚠️ Disclaimer: LuminAIR is currently under active development 🏗️.

🚀 Quick Start

To see LuminAIR in action, run the provided example:

$ cd examples/simple
$ cargo run
use luminair_graph::{graph::LuminairGraph, StwoCompiler};
use luminal::prelude::*;

fn main() -> Result<(), Box<dyn std::error::Error>> {
    let mut cx = Graph::new();

    // Define tensors
    let a = cx.tensor((2, 2)).set(vec![1.0, 2.0, 3.0, 4.0]);
    let b = cx.tensor((2, 2)).set(vec![10.0, 20.0, 30.0, 40.0]);
    let w = cx.tensor((2, 2)).set(vec![-1.0, -1.0, -1.0, -1.0]);

    // Build computation graph
    let c = a * b;
    let mut d = (c + w).retrieve();

    // Compile the computation graph
    cx.compile(<(GenericCompiler, StwoCompiler)>::default(), &mut d);

    // Execute and generate a trace of the computation graph
    let trace = cx.gen_trace()?;

    // Generate proof and verify
    let proof = cx.prove(trace)?;
    cx.verify(proof)?;

    Ok(())
}

📖 Documentation

You can check our official documentation here.

🔮 Roadmap

You can check our roadmap to unlock ML integrity here.

🫶 Contribute

Contribute to LuminAIR and be rewarded via OnlyDust.

Check the contribution guideline here

📊 Benchmarks

Check performance benchmarks for LuminAIR operators here.

💖 Contributors

raphaelDkhn
raphaelDkhn

💻
malatrax
malatrax

📖
Mario Karagiorgas
Mario Karagiorgas

💻
Tbelleng
Tbelleng

💻
sukrucildirr
sukrucildirr

📖
Kazeem Hakeem
Kazeem Hakeem

💻
guha-rahul
guha-rahul

💻

Acknowledgements

A special thanks to the developers and maintainers of the foundational projects that make LuminAIR possible:

  • Luminal: For providing a robust and flexible deep-learning library that serves as the backbone of LuminAIR.
  • Stwo: For offering a powerful prover and constraint library.
  • Brainfuck-Stwo: Inspiration for creating AIR with the Stwo library.

License

LuminAIR is open-source software released under the MIT License.

About

A zkML framework for ensuring the integrity of computational graphs using Circle STARK proofs

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages