[package]
edition = "2021"
name = "ares-llm"
version = "0.10.1"
authors = ["Dirmacs <build@dirmacs.com>"]
build = false
publish = true
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "LLM provider clients and abstractions for ARES"
readme = false
license = "MIT"
repository = "https://github.com/dirmacs/ares"
[features]
anthropic = ["dep:claude-sdk"]
azure = ["openai"]
bedrock = []
default = []
inventory = [
"dep:inventory",
"cordis/inventory",
]
llamacpp = ["dep:llama-cpp-2"]
llamacpp-cuda = [
"llamacpp",
"llama-cpp-2/cuda",
]
llamacpp-metal = [
"llamacpp",
"llama-cpp-2/metal",
]
llamacpp-vulkan = [
"llamacpp",
"llama-cpp-2/vulkan",
]
ollama = ["dep:ollama-rs"]
openai = ["dep:async-openai"]
postgres = [
"dep:sqlx",
"ares-store/postgres",
]
[lib]
name = "ares_llm"
path = "src/lib.rs"
[dependencies.arc-swap]
version = "1.7"
[dependencies.ares-store]
version = "0.10.1"
optional = true
[dependencies.ares-tools]
version = "0.10.1"
[dependencies.ares-types]
version = "0.10.1"
[dependencies.async-openai]
version = "0.33.1"
features = ["chat-completion"]
optional = true
[dependencies.async-stream]
version = "0.3.6"
[dependencies.async-trait]
version = "0.1"
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.claude-sdk]
version = "1.0.0"
optional = true
[dependencies.cordis]
version = "0.10.1"
default-features = false
package = "ares-cordis"
[dependencies.futures]
version = "0.3.31"
[dependencies.inventory]
version = "0.3"
optional = true
[dependencies.llama-cpp-2]
version = "0.1.130"
optional = true
[dependencies.ollama-rs]
version = "0.3.3"
features = ["stream"]
optional = true
[dependencies.parking_lot]
version = "0.12.5"
[dependencies.reqwest]
version = "0.12"
features = [
"json",
"rustls-tls",
]
default-features = false
[dependencies.schemars]
version = "1.1.0"
features = ["derive"]
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
[dependencies.sqlx]
version = "0.8.6"
features = [
"runtime-tokio",
"postgres",
"tls-rustls",
"uuid",
"chrono",
"json",
"migrate",
"rust_decimal",
]
optional = true
[dependencies.thiserror]
version = "2.0"
[dependencies.tokio]
version = "1.48"
features = [
"rt-multi-thread",
"macros",
"net",
"sync",
"time",
"io-util",
"signal",
"fs",
"process",
]
[dependencies.tracing]
version = "0.1"
[dependencies.uuid]
version = "1.19"
features = [
"v4",
"serde",
]
[dev-dependencies.wiremock]
version = "0.6.5"