[package]
name = "lc-vector-stores"
version = "0.20.1"
edition = "2021"
license = "MIT OR Apache-2.0"
description = "Vector store implementations for langchainrust — InMemory, File, Qdrant, MongoDB, Redis, SQLite, ChromaDB, Pinecone, PGVector"
repository = "https://github.com/atliliw/langchainrust"
rust-version = "1.85"
[dependencies]
lc-shared = { path = "../lc-shared", version = "0.20.1" }
lc-core = { path = "../lc-core", version = "0.20.1" }
lc-embeddings = { path = "../lc-embeddings", version = "0.20.1" }
async-trait = "0.1"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
tokio = { version = "1.0", features = ["full"] }
uuid = { version = "1.10", features = ["v4", "v7", "serde"] }
futures-util = "0.3"
log = "0.4"
bincode = "1.3"
regex = "1"
reqwest = { version = "0.12", features = ["json"] }
thiserror = "2.0"
qdrant-client = { version = "1.7", optional = true }
mongodb = { version = "2.8", optional = true }
redis = { version = "0.25", optional = true, features = ["tokio-comp"] }
rusqlite = { version = "0.31", optional = true, features = ["bundled"] }
sqlx = { version = "0.8", default-features = false, features = ["runtime-tokio", "postgres", "json"], optional = true }
pgvector = { version = "0.4", features = ["sqlx"], optional = true }
[dev-dependencies]
tempfile = "3.0"
tokio-test = "0.4"
[features]
default = []
qdrant-integration = ["qdrant-client"]
mongodb-persistence = ["mongodb"]
redis-storage = ["redis"]
sqlite-storage = ["rusqlite"]
pgvector-storage = ["dep:sqlx", "dep:pgvector"]
[package.metadata.docs.rs]
features = ["qdrant-integration", "mongodb-persistence", "redis-storage", "sqlite-storage"]
rustdoc-args = ["--cfg", "docsrs"]