[package] name = "rtx-transformers" version = "1.0.0" edition.workspace = true rust-version = "1.92" authors.workspace = true license.workspace = true repository.workspace = true description = "Complete transformer training infrastructure with revolutionary quantum/neuromorphic/edge integration" [dependencies] # Core RTX dependencies - enabled for autograd integration rtx-tensor = { workspace = true } rtx-autograd = { workspace = true } # Essential dependencies anyhow = { workspace = true } thiserror = { workspace = true } tracing = { workspace = true } tracing-subscriber = { workspace = true } serde = { workspace = true } serde_json = { workspace = true } tokio = { workspace = true } # Math and collections nalgebra = { workspace = true } indexmap = { workspace = true } dashmap = { workspace = true } rand = { workspace = true } num-complex = { workspace = true } base64 = { workspace = true } reqwest = { workspace = true } # Async runtime futures = { workspace = true } # Time handling chrono = { workspace = true } # GPU acceleration - CUDA cudarc = { workspace = true, optional = true } # Additional dependencies parking_lot = { workspace = true } rtx-runtime = { workspace = true } rtx-flash-attention = { workspace = true } rtx-vision = { path = "../../models/rtx-vision", version = "1.0.0", optional = true } # Text processing regex = "1.10" unicode-normalization = "0.1" approx = "0.5" # Async trait support async-trait = "0.1" # Curriculum learning dependencies ordered-float = "4.2" # Modular networks dependencies uuid = { version = "1.0", features = ["v4"] } semver = "1.0" # JPEG/PNG decoding for WebDataset shards (jepa_data), optional image = { workspace = true, optional = true } # Gzip decompression for .tar.gz WebDataset shards (jepa_data) flate2 = "1.0" [target.'cfg(target_os = "macos")'.dependencies] # Metal GPU acceleration for Apple Silicon objc2 = { version = "0.6", optional = true, features = ["std"] } objc2-metal = { version = "0.3", optional = true } objc2-foundation = { version = "0.3", optional = true } block2 = { version = "0.6", optional = true } [dev-dependencies] tokio-test = { workspace = true } proptest = { workspace = true } criterion = { workspace = true } tempfile = { workspace = true } approx = "0.5" [features] # No default GPU - select cuda or metal explicitly based on your platform default = [] cuda = ["cudarc", "rtx-flash-attention/cuda", "rtx-tensor/cuda", "rtx-runtime/cuda"] metal = ["rtx-flash-attention/metal", "rtx-tensor/metal", "rtx-runtime/metal", "dep:objc2", "dep:objc2-metal", "dep:objc2-foundation", "dep:block2"] cpu = ["rtx-tensor/cpu"] # Real NCCL GPU-direct AllReduce for JEPA gradient sync (jepa_distributed.rs). # Requires a CUDA GPU and libnccl.so discoverable at runtime (cudarc uses # dynamic-loading/dlopen for NCCL by default, so this feature builds fine # without libnccl present; it only fails at the point a `GradSyncBackend::Nccl` # handle is actually used at runtime). nccl = ["cuda", "cudarc/nccl"] disabled_tests = [] vision-bridge = ["rtx-vision"] # Real JPEG/PNG pixel decoding for WebDataset records; without it, # webdataset_record_to_image falls back to placeholder pixels. image-decode = ["dep:image"] # Binary targets commented out - missing source files # [[bin]] # name = "test_autograd_compilation" # path = "test_autograd_compilation.rs" # [[bin]] # name = "test_structured_sparsity_standalone" # path = "src/layers/structured_sparsity_standalone_test.rs" # [[bin]] # name = "test_ademamix_standalone" # path = "test_ademamix_standalone.rs" # [[bin]] # name = "hybrid_ssm_test_standalone" # path = "hybrid_ssm_test_standalone.rs" # [[bin]] # name = "alibi_standalone_test" # path = "alibi_standalone_test.rs" # Examples disabled by default - require disabled_tests feature [[example]] name = "adabound_demo" required-features = ["disabled_tests"] [[example]] name = "barlow_twins_demo" required-features = ["disabled_tests"] [[example]] name = "beit_demo" required-features = ["disabled_tests"] [[example]] name = "cpc_demo" required-features = ["disabled_tests"] [[example]] name = "curriculum_learning_demo" required-features = ["disabled_tests"] [[example]] name = "expert_dropout_demo" required-features = ["disabled_tests"] [[example]] name = "fomaml_demo" required-features = ["disabled_tests"] [[example]] name = "head_drop_standalone_demo" required-features = ["disabled_tests"] [[example]] name = "lbfgs_demo" required-features = ["disabled_tests"] [[example]] name = "mamba_cuda_demo" required-features = ["disabled_tests"] [[example]] name = "mamba_demo" required-features = ["disabled_tests"] [[example]] name = "mean_teacher_demo" required-features = ["disabled_tests"] [[example]] name = "mega_demo" required-features = ["disabled_tests"] [[example]] name = "moco_v3_example" required-features = ["disabled_tests"] [[example]] name = "normalization_demo" required-features = ["disabled_tests"] [[example]] name = "pipeline_parallelism_demo" required-features = ["disabled_tests"] [[example]] name = "pseudo_labeling_demo" required-features = ["disabled_tests"] [[example]] name = "rag_complete_demo" required-features = ["disabled_tests"] [[example]] name = "retnet_linear_attention_demo" required-features = ["disabled_tests"] [[example]] name = "simple_head_drop_demo" required-features = ["disabled_tests"] [[example]] name = "specaugment_demo" required-features = ["disabled_tests"] [[example]] name = "ssl_demo" required-features = ["disabled_tests"] [[example]] name = "ssm_state_cache_demo" required-features = ["disabled_tests"] [[example]] name = "vat_demo" required-features = ["disabled_tests"] [[example]] name = "vicreg_demo" required-features = ["disabled_tests"] [[example]] name = "vicreg_ssl_integration" required-features = ["disabled_tests"] # Metal MoE Benchmarks [[bench]] name = "metal_moe_bench" harness = false # Metal Mamba Benchmarks [[bench]] name = "metal_mamba_bench" harness = false [lints] workspace = true