asimov 0.1.0

Asimov is a library for building high performance LLM-powered applications.
Documentation
[package]
name = "asimov"
version = "0.1.0"
edition = "2021"
description = "Asimov is a library for building high performance LLM-powered applications."
license = "MIT"

[lib]
crate-type = ["lib", "cdylib"]

[dependencies]
thiserror = "1.0.50"
typed-builder = "0.18.0"
derive_more = "0.99.17"
anyhow = "1.0.75"
strum = "0.26.1"
strum_macros = "0.26.1"

# Async features
futures = "0.3.17"
async-trait = "0.1.74"
async-stream = "0.3.5"

# All serde
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
json-stream = "0.1.1"

# Prompt templating
tiktoken-rs = "0.5.7"


# Input IDs
twox-hash = "1.6.3"
uuid = { version = "1.7.0", features = ["serde", "v4"] }

# Communicate with OpenAI
async-openai = { version = "0.19.0", optional = true }

# Tesseract-related
hora = { version = "0.1.1", git = "https://github.com/rangsikitpho/hora" }
getrandom = { version = "0.2", features = ["js"] }

# Qdrant
qdrant-client = { version = "1.8.0", optional = true }
derive_builder = "0.20.0"
tracing = "0.1.40"
reqwest = { version = "0.11", optional = true }
tera = "1.19.1"
asimov_derive = "0.1.0"
parking_lot = "0.12.1"




[dev-dependencies]
dotenvy = "0.15.7"
tokio = { version = "1", features = ["rt", "macros"] }
rand = "0.8.4"

[features]
openai = ["dep:async-openai"]
qdrant = ["dep:qdrant-client"]
full = ["openai", "qdrant"]