[package]
edition = "2024"
rust-version = "1.87"
name = "rlx-coreml"
version = "0.2.8"
authors = [
"Eugene Hauptmann",
"Nataliya Kosmyna",
]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Apple CoreML / Neural Engine (ANE) backend for RLX — lowers the IR to an ML Program (MIL) and runs it through CoreML.framework"
homepage = "https://github.com/MIT-RLX/rlx"
documentation = "https://docs.rs/rlx"
readme = "README.md"
keywords = [
"ml",
"tensor",
"compiler",
"neural-network",
"autodiff",
]
categories = [
"science",
"algorithms",
"compilers",
]
license = "GPL-3.0-only"
repository = "https://github.com/MIT-RLX/rlx"
resolver = "2"
[package.metadata.docs.rs]
default-target = "aarch64-apple-darwin"
targets = [
"aarch64-apple-darwin",
"x86_64-apple-darwin",
]
rustdoc-args = [
"--cfg",
"docsrs",
]
[lib]
name = "rlx_coreml"
path = "src/lib.rs"
[[test]]
name = "coreml_attention"
path = "tests/coreml_attention.rs"
[[test]]
name = "coreml_ops"
path = "tests/coreml_ops.rs"
[[test]]
name = "coreml_ops2"
path = "tests/coreml_ops2.rs"
[[test]]
name = "coreml_quant"
path = "tests/coreml_quant.rs"
[[test]]
name = "coreml_session"
path = "tests/coreml_session.rs"
[[test]]
name = "coreml_smoke"
path = "tests/coreml_smoke.rs"
[[test]]
name = "coreml_ssm"
path = "tests/coreml_ssm.rs"
[[test]]
name = "mil_lower"
path = "tests/mil_lower.rs"
[dependencies.bytemuck]
version = "1"
features = ["derive"]
[dependencies.half]
version = "2"
[dependencies.prost]
version = "0.13"
[dependencies.rlx-gguf]
version = "0.2.8"
[dependencies.rlx-ir]
version = "0.2.8"
[dependencies.rlx-opt]
version = "0.2.8"
[dev-dependencies]
[build-dependencies.cc]
version = "1"
[build-dependencies.prost-build]
version = "0.13"
[build-dependencies.protoc-bin-vendored]
version = "3"
[lints.clippy]
collapsible_if = "allow"
doc_lazy_continuation = "allow"
doc_overindented_list_items = "allow"
large_enum_variant = "allow"
manual_range_contains = "allow"
missing_safety_doc = "allow"
needless_range_loop = "allow"
should_implement_trait = "allow"
single_range_in_vec_init = "allow"
too_many_arguments = "allow"
type_complexity = "allow"
unnecessary_wraps = "allow"
upper_case_acronyms = "allow"
useless_conversion = "allow"
[lints.clippy.all]
level = "warn"
priority = -1
[lints.rust.unused]
level = "warn"
priority = 0