[package]
name = "rllm-model"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
license.workspace = true
description = "Model registry, HF config parsing, Llama model implementation, and weight loading for rLLM"

[dependencies]
rllm-core.workspace = true
rllm-kernels.workspace = true
rllm-tokenizer.workspace = true
rllm-tensor.workspace = true
rllm-quant.workspace = true
anyhow.workspace = true
thiserror.workspace = true
serde.workspace = true
serde_json.workspace = true
hf-hub.workspace = true
safetensors.workspace = true
tracing.workspace = true
tokio = { workspace = true, optional = true }
half = "2"

[dev-dependencies]
tempfile = "3"

[features]
default = ["candle-backend"]
candle-backend = [
    "candle-core",
    "candle-nn",
    "candle-transformers",
    "rllm-quant/candle-backend",
    "tokio",
]
cuda = [
    "candle-backend",
    "rllm-kernels/cuda",
    "candle-core/cuda",
    "candle-nn/cuda",
    "candle-transformers/cuda",
    "rllm-quant/cuda",
]

[dependencies.candle-core]
workspace = true
optional = true

[dependencies.candle-nn]
workspace = true
optional = true

[dependencies.candle-transformers]
workspace = true
optional = true
