[package]
name = "orbok-embed"
description = "orbok embedding backend factory: mock, candle, and ONNX backends (RFC-021)"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
license.workspace = true
authors.workspace = true
repository.workspace = true

[features]
# Enable the tract ONNX runtime backend (pure Rust, no C FFI).
# Required for real embedding inference; adds ~150 MB of compile time.
tract = ["dep:tract-onnx", "dep:tract-core"]
# Enable HuggingFace candle backend (Rust-native, CUDA optional).
candle = ["dep:candle-core", "dep:candle-nn"]

[dependencies]
orbok-core = { workspace = true }
orbok-models = { workspace = true }
sha2 = { workspace = true }
tracing = { workspace = true }

# Optional heavy inference deps — only compiled with the named feature.
tract-onnx = { version = "0.23", optional = true }
tract-core = { version = "0.23", optional = true }
candle-core = { version = "0.10", optional = true }
candle-nn = { version = "0.10", optional = true }

[dev-dependencies]
tempfile = { workspace = true }
