oarust 0.8.6

GPU-first semantic computing engine written in Rust
#[path = "nn/activation.gen.rs"]
mod activation;
#[path = "nn/attention.gen.rs"]
mod attention;
#[path = "nn/batch_norm.gen.rs"]
mod batch_norm;
#[path = "nn/byte.gen.rs"]
mod byte;
#[path = "nn/conv.gen.rs"]
mod conv;
#[path = "nn/dropout.gen.rs"]
mod dropout;
#[path = "nn/embedding.gen.rs"]
mod embedding;
#[path = "nn/empyrealm.gen.rs"]
mod empyrealm;
#[path = "nn/ffn.gen.rs"]
mod ffn;
#[path = "nn/flow.gen.rs"]
mod flow;
#[path = "nn/gru.gen.rs"]
mod gru;
#[path = "nn/layer_norm.gen.rs"]
mod layer_norm;
#[path = "nn/linear.gen.rs"]
mod linear;
#[path = "nn/mamba3.gen.rs"]
mod mamba3;
#[path = "nn/moe.gen.rs"]
mod moe;
#[path = "nn/pool.gen.rs"]
mod pool;
#[path = "nn/rms_norm.gen.rs"]
mod rms_norm;
#[path = "nn/rnn.gen.rs"]
mod rnn;
#[path = "nn/rope.gen.rs"]
mod rope;
#[path = "nn/sequential.gen.rs"]
mod sequential;
#[path = "nn/softmax.gen.rs"]
mod softmax;
#[path = "nn/swiglu.gen.rs"]
mod swiglu;
#[path = "nn/transformer.gen.rs"]
mod transformer;
#[path = "nn/upsample.gen.rs"]
mod upsample;
#[path = "nn/utility.gen.rs"]
mod utility;
#[path = "nn/vq.gen.rs"]
mod vq;

pub use activation::{Gelu, Relu, Silu};
pub use attention::{AttentionBackend, AttentionMode, MultiHeadAttention};
pub use batch_norm::BatchNorm2d;
pub use byte::{ByteEmbedding, ByteHead};
pub use conv::{Conv1d, Conv2d, ConvTranspose1d, ConvTranspose2d};
pub use dropout::Dropout;
pub use embedding::Embedding;
pub use empyrealm::Empyrealm;
pub use ffn::Ffn;
pub use flow::{
	FlowDenoiser, FlowDenoiserConfig, FlowTimeEmbedding, FlowTransformer, FlowTransformerConfig,
};
pub use gru::{Gru, GruCell};
pub use layer_norm::LayerNorm;
pub use linear::Linear;
pub use mamba3::{Mamba3, Mamba3Config, Mamba3State};
pub use moe::{Moe, MoeRouteStats};
pub use pool::{AdaptiveAvgPool2d, AvgPool2d, MaxPool2d};
pub use rms_norm::RmsNorm;
pub use rnn::{Rnn, RnnCell};
pub use rope::Rope;
pub use sequential::Sequential;
pub use softmax::{LogSoftmax, Softmax};
pub use swiglu::Swiglu;
pub use transformer::{Transformer, TransformerBlock};
pub use upsample::{Upsample, UpsampleMode};
pub use utility::{Flatten, Identity};
pub use vq::{
	ResidualVectorQuantizer, ResidualVqResult, VectorQuantizer, VectorQuantizerConfig, VqResult,
};