langchain-rust 4.5.0

LangChain for Rust, the easiest way to write LLM-based programs in Rust
Documentation
[build-dependencies.cc]
optional = true
version = "1"

[dependencies.async-openai]
version = "0.24.0"

[dependencies.async-recursion]
version = "1.1.0"

[dependencies.async-stream]
version = "0.3.5"

[dependencies.async-trait]
version = "0.1.80"

[dependencies.aws-config]
features = ["behavior-version-latest"]
optional = true
version = "1.2"

[dependencies.csv]
version = "1.3.0"

[dependencies.fastembed]
optional = true
version = "4"

[dependencies.flume]
optional = true
version = "0.11.0"

[dependencies.futures]
version = "0.3"

[dependencies.futures-util]
version = "0.3.30"

[dependencies.gix]
default-features = false
features = ["parallel", "revision", "serde"]
optional = true
version = "0.66.0"

[dependencies.glob]
version = "0.3.1"

[dependencies.html-escape]
version = "0.2.13"

[dependencies.log]
version = "0.4.21"

[dependencies.lopdf]
features = ["nom_parser"]
optional = true
version = "0.34.0"

[dependencies.mistralai-client]
optional = true
version = "0.14.0"

[dependencies.mockito]
version = "1.4.0"

[dependencies.ollama-rs]
features = ["stream", "chat-history"]
optional = true
version = "0.2.0"

[dependencies.opensearch]
features = ["aws-auth"]
optional = true
version = "2"

[dependencies.pdf-extract]
optional = true
version = "0.7.8"

[dependencies.pgvector]
features = ["postgres", "sqlx"]
optional = true
version = "0.4.0"

[dependencies.qdrant-client]
optional = true
version = "1.10.1"

[dependencies.readability]
version = "0.3.0"

[dependencies.regex]
version = "1.10.4"

[dependencies.reqwest]
features = ["json", "stream"]
version = "0.12"

[dependencies.reqwest-eventsource]
version = "0.6.0"

[dependencies.scraper]
version = "0.20"

[dependencies.secrecy]
version = "0.8.0"

[dependencies.serde]
features = ["derive"]
version = "1.0"

[dependencies.serde_json]
version = "1.0"

[dependencies.sqlx]
default-features = false
features = ["postgres", "sqlite", "runtime-tokio-native-tls", "json", "uuid"]
optional = true
version = "0.8.0"

[dependencies.strum_macros]
version = "0.26.2"

[dependencies.surrealdb]
default-features = false
optional = true
version = "2.0.2"

[dependencies.text-splitter]
features = ["tiktoken-rs", "markdown"]
version = "0.16"

[dependencies.thiserror]
version = "1.0.59"

[dependencies.tiktoken-rs]
version = "0.5.8"

[dependencies.tokio]
features = ["full"]
version = "1"

[dependencies.tokio-stream]
version = "0.1.15"

[dependencies.tree-sitter]
optional = true
version = "0.23"

[dependencies.tree-sitter-c]
optional = true
version = "0.23"

[dependencies.tree-sitter-cpp]
optional = true
version = "0.23"

[dependencies.tree-sitter-go]
optional = true
version = "0.23"

[dependencies.tree-sitter-javascript]
optional = true
version = "0.23"

[dependencies.tree-sitter-python]
optional = true
version = "0.23"

[dependencies.tree-sitter-rust]
optional = true
version = "0.23"

[dependencies.tree-sitter-typescript]
optional = true
version = "0.23"

[dependencies.url]
version = "2.5.0"

[dependencies.urlencoding]
version = "2.1.3"

[dependencies.uuid]
features = ["v4"]
optional = true
version = "1.8.0"

[dev-dependencies.base64]
version = "0.22.1"

[dev-dependencies.testcontainers]
version = "0.23"

[dev-dependencies.tokio-test]
version = "0.4.4"

[[example]]
name = "agent"
path = "examples/agent.rs"

[[example]]
name = "conversational_chain"
path = "examples/conversational_chain.rs"

[[example]]
name = "conversational_retriever_chain_with_vector_store"
path = "examples/conversational_retriever_chain_with_vector_store.rs"

[[example]]
name = "conversational_retriever_simple_chain"
path = "examples/conversational_retriever_simple_chain.rs"

[[example]]
name = "dynamic_semantic_routes"
path = "examples/dynamic_semantic_routes.rs"

[[example]]
name = "embedding_azure_open_ai"
path = "examples/embedding_azure_open_ai.rs"

[[example]]
name = "embedding_fastembed"
path = "examples/embedding_fastembed.rs"

[[example]]
name = "embedding_mistralai"
path = "examples/embedding_mistralai.rs"

[[example]]
name = "embedding_ollama"
path = "examples/embedding_ollama.rs"

[[example]]
name = "embedding_openai"
path = "examples/embedding_openai.rs"

[[example]]
name = "git_commits"
path = "examples/git_commits.rs"

[[example]]
name = "llm_anthropic_claude"
path = "examples/llm_anthropic_claude.rs"

[[example]]
name = "llm_azure_open_ai"
path = "examples/llm_azure_open_ai.rs"

[[example]]
name = "llm_chain"
path = "examples/llm_chain.rs"

[[example]]
name = "llm_ollama"
path = "examples/llm_ollama.rs"

[[example]]
name = "llm_openai"
path = "examples/llm_openai.rs"

[[example]]
name = "open_ai_tools_agent"
path = "examples/open_ai_tools_agent.rs"

[[example]]
name = "qa_chain"
path = "examples/qa_chain.rs"

[[example]]
name = "rcommiter"
path = "examples/rcommiter.rs"

[[example]]
name = "semantic_routes"
path = "examples/semantic_routes.rs"

[[example]]
name = "sequential_chain"
path = "examples/sequential_chain.rs"

[[example]]
name = "simple_chain"
path = "examples/simple_chain.rs"

[[example]]
name = "speech2text_openai"
path = "examples/speech2text_openai.rs"

[[example]]
name = "sql_chain"
path = "examples/sql_chain.rs"

[[example]]
name = "streaming_from_chain"
path = "examples/streaming_from_chain.rs"

[[example]]
name = "vector_store_opensearch"
path = "examples/vector_store_opensearch.rs"

[[example]]
name = "vector_store_postgres"
path = "examples/vector_store_postgres.rs"

[[example]]
name = "vector_store_qdrant"
path = "examples/vector_store_qdrant.rs"

[[example]]
name = "vector_store_sqlite"
path = "examples/vector_store_sqlite.rs"

[[example]]
name = "vision_llm_chain"
path = "examples/vision_llm_chain.rs"

[[example]]
name = "wolfram_tool"
path = "examples/wolfram_tool.rs"

[features]
default = []
fastembed = ["dep:fastembed"]
git = ["gix", "flume"]
lopdf = ["dep:lopdf"]
mistralai = ["mistralai-client"]
ollama = ["ollama-rs"]
opensearch = ["dep:opensearch", "aws-config"]
pdf-extract = ["dep:lopdf", "dep:pdf-extract"]
postgres = ["pgvector", "sqlx", "uuid"]
qdrant = ["qdrant-client", "uuid"]
sqlite = ["sqlx"]
surrealdb = ["dep:surrealdb"]
tree-sitter = ["cc", "dep:tree-sitter", "dep:tree-sitter-rust", "dep:tree-sitter-cpp", "dep:tree-sitter-javascript", "dep:tree-sitter-c", "dep:tree-sitter-go", "dep:tree-sitter-python", "dep:tree-sitter-typescript"]

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

[package]
autobenches = false
autobins = false
autoexamples = false
autotests = false
build = false
description = "LangChain for Rust, the easiest way to write LLM-based programs in Rust"
documentation = "https://langchain-rust.sellie.tech/get-started/quickstart"
edition = "2021"
keywords = ["chain", "chatgpt", "llm", "langchain"]
license = "MIT"
name = "langchain-rust"
publish = true
readme = "README.md"
repository = "https://github.com/Abraxas-365/langchain-rust"
version = "4.5.0"