[package] name = "lancedb" version = "0.14.0" edition.workspace = true description = "LanceDB: A serverless, low-latency vector database for AI applications" license.workspace = true repository.workspace = true keywords.workspace = true categories.workspace = true rust-version = "1.75" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] arrow = { workspace = true } arrow-array = { workspace = true } arrow-data = { workspace = true } arrow-schema = { workspace = true } arrow-ord = { workspace = true } arrow-cast = { workspace = true } arrow-ipc.workspace = true chrono = { workspace = true } datafusion-common.workspace = true datafusion-physical-plan.workspace = true object_store = { workspace = true } snafu = { workspace = true } half = { workspace = true } lazy_static.workspace = true lance = { workspace = true } lance-datafusion.workspace = true lance-io = { workspace = true } lance-index = { workspace = true } lance-table = { workspace = true } lance-linalg = { workspace = true } lance-testing = { workspace = true } lance-encoding = { workspace = true } moka = { workspace = true} pin-project = { workspace = true } tokio = { version = "1.23", features = ["rt-multi-thread"] } log.workspace = true async-trait = "0" bytes = "1" futures.workspace = true num-traits.workspace = true url.workspace = true regex.workspace = true serde = { version = "^1" } serde_json = { version = "1" } async-openai = { version = "0.20.0", optional = true } serde_with = { version = "3.8.1" } aws-sdk-bedrockruntime = { version = "1.27.0", optional = true } # For remote feature reqwest = { version = "0.12.0", default-features = false, features = [ "charset", "gzip", "http2", "json", "macos-system-configuration", "stream", ], optional = true } rand = { version = "0.8.3", features = ["small_rng"], optional = true } http = { version = "1", optional = true } # Matching what is in reqwest uuid = { version = "1.7.0", features = ["v4"], optional = true } polars-arrow = { version = ">=0.37,<0.40.0", optional = true } polars = { version = ">=0.37,<0.40.0", optional = true } hf-hub = { version = "0.3.2", optional = true } candle-core = { version = "0.6.0", optional = true } candle-transformers = { version = "0.6.0", optional = true } candle-nn = { version = "0.6.0", optional = true } tokenizers = { version = "0.19.1", optional = true } [dev-dependencies] tempfile = "3.5.0" rand = { version = "0.8.3", features = ["small_rng"] } random_word = { version = "0.4.3", features = ["en"] } uuid = { version = "1.7.0", features = ["v4"] } walkdir = "2" aws-sdk-dynamodb = { version = "1.38.0" } aws-sdk-s3 = { version = "1.38.0" } aws-sdk-kms = { version = "1.37" } aws-config = { version = "1.0" } aws-smithy-runtime = { version = "1.3" } http-body = "1" # Matching reqwest [features] default = ["default-tls"] remote = ["dep:reqwest", "dep:http", "dep:rand", "dep:uuid"] fp16kernels = ["lance-linalg/fp16kernels"] s3-test = [] bedrock = ["dep:aws-sdk-bedrockruntime"] openai = ["dep:async-openai", "dep:reqwest"] polars = ["dep:polars-arrow", "dep:polars"] sentence-transformers = [ "dep:hf-hub", "dep:candle-core", "dep:candle-transformers", "dep:candle-nn", "dep:tokenizers" ] # TLS default-tls = ["reqwest?/default-tls"] native-tls = ["reqwest?/native-tls"] rustls-tls = ["reqwest?/rustls-tls"] [[example]] name = "openai" required-features = ["openai"] [[example]] name = "sentence_transformers" required-features = ["sentence-transformers"] [[example]] name = "bedrock" required-features = ["bedrock"]