[package]
edition = "2021"
rust-version = "1.70"
name = "apr-cli"
version = "0.2.16"
authors = ["Noah Gift <noah@paiml.com>"]
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "CLI tool for APR model inspection, debugging, and operations"
documentation = "https://docs.rs/apr-cli"
readme = "README.md"
keywords = [
"machine-learning",
"model-inspection",
"cli",
"debugging",
]
categories = [
"command-line-utilities",
"science",
]
license = "MIT"
repository = "https://github.com/paiml/aprender"
[features]
cuda = [
"inference",
"realizar/cuda",
]
default = [
"hf-hub",
"safetensors-compare",
"inference",
"cuda",
"visualization",
"zram",
]
hf-hub = ["aprender/hf-hub-integration"]
inference = [
"realizar",
"trueno",
"tokio",
"axum",
"futures-util",
]
safetensors-compare = ["aprender/safetensors-compare"]
visualization = [
"renacer",
"trueno-viz",
]
zram = ["trueno-zram-core"]
[lib]
name = "apr_cli"
path = "src/lib.rs"
[[bin]]
name = "apr"
path = "src/main.rs"
[[example]]
name = "federation_tui_demo"
path = "examples/federation_tui_demo.rs"
required-features = ["inference"]
[[example]]
name = "gpu_chat_inference"
path = "examples/gpu_chat_inference.rs"
required-features = [
"inference",
"cuda",
]
[[example]]
name = "probar_tui_testing"
path = "examples/probar_tui_testing.rs"
required-features = ["inference"]
[[example]]
name = "ptx_parity_validation"
path = "examples/ptx_parity_validation.rs"
required-features = ["inference"]
[[example]]
name = "serve_with_tracing"
path = "examples/serve_with_tracing.rs"
required-features = ["inference"]
[[example]]
name = "tool_calling_demo"
path = "examples/tool_calling_demo.rs"
[[test]]
name = "cli_integration"
path = "tests/cli_integration.rs"
[[test]]
name = "falsification_measurement_freshness"
path = "tests/falsification_measurement_freshness.rs"
[[test]]
name = "pixel_regression"
path = "tests/pixel_regression.rs"
[dependencies.aprender]
version = "0.25.0"
features = ["format-compression"]
default-features = true
[dependencies.axum]
version = "0.7"
optional = true
[dependencies.blake3]
version = "1"
[dependencies.chrono]
version = "0.4"
features = [
"std",
"clock",
]
default-features = false
[dependencies.clap]
version = "4.5"
features = [
"derive",
"env",
"wrap_help",
]
[dependencies.colored]
version = "2.1"
[dependencies.crossterm]
version = "0.28"
[dependencies.dirs]
version = "5.0"
[dependencies.entrenar-lora]
version = "0.2.0"
[dependencies.futures-util]
version = "0.3"
optional = true
[dependencies.glob]
version = "0.3"
[dependencies.half]
version = "2.4.1"
[dependencies.humansize]
version = "2.1"
[dependencies.pacha]
version = "0.2.4"
features = ["remote"]
default-features = false
[dependencies.ratatui]
version = "0.29"
default-features = true
[dependencies.realizar]
version = "0.6.13"
features = [
"server",
"aprender-serve",
"gpu",
"cuda",
]
optional = true
default-features = false
[dependencies.renacer]
version = "0.9.7"
optional = true
default-features = false
[dependencies.rmp-serde]
version = "1.3"
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
[dependencies.tabled]
version = "0.16"
[dependencies.thiserror]
version = "2.0"
[dependencies.tokio]
version = "1"
features = [
"rt-multi-thread",
"macros",
"signal",
]
optional = true
[dependencies.trueno]
version = "0.14.4"
optional = true
[dependencies.trueno-explain]
version = "0.2.2"
[dependencies.trueno-viz]
version = "0.1.19"
features = ["svg"]
optional = true
default-features = false
[dependencies.trueno-zram-core]
version = "0.2"
optional = true
[dependencies.ureq]
version = "2.10"
[dev-dependencies.assert_cmd]
version = "2.0"
[dev-dependencies.axum-test]
version = "16"
[dev-dependencies.jugar-probar]
version = "0.4"
features = ["tui"]
[dev-dependencies.predicates]
version = "3.1"
[dev-dependencies.proptest]
version = "1.6"
[dev-dependencies.regex]
version = "1.10"
[dev-dependencies.tempfile]
version = "3.14"
[dev-dependencies.tokio]
version = "1"
features = [
"rt-multi-thread",
"macros",
"time",
]
[dev-dependencies.tower]
version = "0.5"
[lints.clippy]
cast_lossless = "allow"
cast_possible_truncation = "allow"
cast_possible_wrap = "allow"
cast_precision_loss = "allow"
cast_sign_loss = "allow"
doc_markdown = "allow"
enum_glob_use = "allow"
fn_params_excessive_bools = "allow"
format_in_format_args = "allow"
items_after_statements = "allow"
match_same_arms = "allow"
missing_errors_doc = "allow"
missing_panics_doc = "allow"
module_name_repetitions = "allow"
must_use_candidate = "allow"
needless_raw_string_hashes = "allow"
no_effect_underscore_binding = "allow"
similar_names = "allow"
single_match_else = "allow"
struct_excessive_bools = "allow"
too_many_arguments = "allow"
too_many_lines = "allow"
uninlined_format_args = "allow"
unnecessary_wraps = "allow"
unreadable_literal = "allow"
used_underscore_binding = "allow"
wildcard_imports = "allow"
[lints.clippy.all]
level = "warn"
priority = -1
[lints.clippy.pedantic]
level = "warn"
priority = -1
[lints.rust]
unsafe_code = "deny"