reflex-cache 0.1.2

Episodic memory and high-speed semantic cache for LLM responses
[package]
name = "reflex-cache"
version = "0.1.2"
edition = "2024"
description = "Episodic memory and high-speed semantic cache for LLM responses"
license = "AGPL-3.0"
repository = "https://github.com/ccheney/reflex"
documentation = "https://docs.rs/reflex-cache"
keywords = ["llm", "cache", "semantic", "embedding", "ai"]
categories = ["caching", "database"]
rust-version = "1.92"

[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]

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

[[bin]]
name = "reflex"
path = "src/main.rs"

[features]
default = []
cpu = []
metal = ["candle-core/metal", "candle-transformers/metal"]
cuda = ["candle-core/cuda", "candle-transformers/cuda"]
mock = []

[dependencies]
tokio = { version = "1.48", features = ["full"] }
mimalloc = { version = "0.1", default-features = false }

axum = "0.8"
hyper = { version = "1.0", features = ["full"] }
tower = "0.5"
tower-http = { version = "0.6", features = ["trace", "cors"] }

blake3 = "1.6"

candle-core = "0.9"
candle-nn = "0.9"
candle-transformers = "0.9"
tokenizers = "0.22"

qdrant-client = "1.13"

rkyv = { version = "0.8", features = ["bytecheck"] }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"

memmap2 = "0.9"

tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
thiserror = "2.0"
anyhow = "1.0"
half = { version = "2.4", features = ["bytemuck"] }
async-trait = "0.1.89"
tempfile = "3.15"
reqwest = { version = "0.12", features = ["json"] }
bytemuck = "1.19"
tauq = "0.1.0"
bitvec = "1.0.1"
moka = { version = "0.12.11", features = ["sync"] }
parking_lot = "0.12"
async-openai = { version = "0.31", features = ["chat-completion-types"] }
genai = "0.4.4"
uuid = { version = "1.19.0", features = ["v4", "fast-rng"] }
chrono = "0.4.42"
futures-util = "0.3.31"
tokio-stream = "0.1.17"

[dev-dependencies]
reflex = { package = "reflex-cache", path = ".", features = ["mock"] }
criterion = "0.8"
serial_test = "3.2"
tempfile = "3.15"
tokio-test = "0.4"
tower = { version = "0.5", features = ["util"] }
hyper = { version = "1.0", features = ["full"] }
http-body-util = "0.1"
futures = "0.3"