brainharmony 0.1.0

Brain-Harmony multimodal brain foundation model — inference in Rust with Burn ML
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
rust-version = "1.78"
name = "brainharmony"
version = "0.1.0"
authors = ["Eugene Hauptmann"]
build = false
exclude = [
    "data/*",
    "figures/*",
    "hf_model_card/*",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Brain-Harmony multimodal brain foundation model — inference in Rust with Burn ML"
homepage = "https://github.com/eugenehp/brainharmony-rs"
documentation = "https://docs.rs/brainharmony"
readme = "README.md"
keywords = [
    "fmri",
    "foundation-model",
    "neuroscience",
    "brain",
    "vision-transformer",
]
categories = [
    "science",
    "mathematics",
    "algorithms",
]
license = "MIT"
repository = "https://github.com/eugenehp/brainharmony-rs"

[features]
accelerate = ["blas-accelerate"]
blas-accelerate = ["burn-ndarray?/blas-accelerate"]
default = ["ndarray"]
hf-download = ["dep:hf-hub"]
ndarray = [
    "dep:burn-ndarray",
    "burn/ndarray",
]
openblas-system = ["burn-ndarray?/blas-openblas-system"]
wgpu = [
    "burn/wgpu",
    "dep:burn-cubecl",
    "dep:burn-backend",
    "dep:cubek",
    "dep:cubecl",
]
wgpu-f16 = [
    "burn/wgpu",
    "dep:burn-cubecl",
    "dep:burn-backend",
    "dep:cubek",
    "dep:cubecl",
]

[lib]
name = "brainharmony"
path = "src/lib.rs"

[[bin]]
name = "infer"
path = "src/bin/infer.rs"

[[example]]
name = "batch"
path = "examples/batch.rs"
required-features = ["ndarray"]

[[example]]
name = "bench"
path = "examples/bench.rs"
required-features = ["ndarray"]

[[example]]
name = "bench_2d_vs_3d"
path = "examples/bench_2d_vs_3d.rs"

[[example]]
name = "bench_cache"
path = "examples/bench_cache.rs"

[[example]]
name = "bench_chain"
path = "examples/bench_chain.rs"

[[example]]
name = "bench_dispatch"
path = "examples/bench_dispatch.rs"

[[example]]
name = "bench_flash"
path = "examples/bench_flash.rs"

[[example]]
name = "bench_fused"
path = "examples/bench_fused.rs"

[[example]]
name = "bench_fused_block"
path = "examples/bench_fused_block.rs"

[[example]]
name = "bench_gpu"
path = "examples/bench_gpu.rs"

[[example]]
name = "bench_module_vs_raw"
path = "examples/bench_module_vs_raw.rs"

[[example]]
name = "bench_notile"
path = "examples/bench_notile.rs"

[[example]]
name = "bench_ops"
path = "examples/bench_ops.rs"

[[example]]
name = "bench_overhead"
path = "examples/bench_overhead.rs"

[[example]]
name = "classify"
path = "examples/classify.rs"
required-features = ["ndarray"]

[[example]]
name = "csv_export"
path = "examples/csv_export.rs"
required-features = ["ndarray"]

[[example]]
name = "embed"
path = "examples/embed.rs"

[[example]]
name = "profile"
path = "examples/profile.rs"
required-features = ["ndarray"]

[[test]]
name = "classification"
path = "tests/classification.rs"

[[test]]
name = "config"
path = "tests/config.rs"

[[test]]
name = "csv_export"
path = "tests/csv_export.rs"

[[test]]
name = "data_loading"
path = "tests/data_loading.rs"

[[test]]
name = "masks"
path = "tests/masks.rs"

[[test]]
name = "model"
path = "tests/model.rs"

[dependencies.anyhow]
version = "1"

[dependencies.burn]
version = "0.20.1"
features = [
    "std",
    "simd",
]
default-features = false

[dependencies.burn-backend]
version = "0.20.1"
optional = true

[dependencies.burn-cubecl]
version = "0.20.1"
optional = true

[dependencies.burn-ndarray]
version = "0.20.1"
features = [
    "std",
    "simd",
    "multi-threads",
]
optional = true
default-features = false

[dependencies.clap]
version = "4"
features = [
    "derive",
    "env",
]

[dependencies.cubecl]
version = "0.9.0"
optional = true

[dependencies.cubek]
version = "0.1.1"
optional = true

[dependencies.fastrand]
version = "2"

[dependencies.half]
version = "2"
features = ["bytemuck"]

[dependencies.hf-hub]
version = "0.5"
features = ["ureq"]
optional = true
default-features = false

[dependencies.ndarray]
version = "0.16"

[dependencies.rayon]
version = "1"

[dependencies.safetensors]
version = "0.7"

[dependencies.serde]
version = "1"
features = ["derive"]

[dependencies.serde_json]
version = "1"

[dependencies.serde_yaml]
version = "0.9"

[dependencies.thiserror]
version = "2"

[dev-dependencies.tempfile]
version = "3"

[profile.release]
opt-level = 3
lto = "thin"
codegen-units = 1
strip = true