synaptic_elasticsearch/lib.rs
1//! Elasticsearch vector store integration for Synaptic.
2//!
3//! This crate provides [`ElasticsearchVectorStore`], an implementation of the
4//! [`VectorStore`](synaptic_core::VectorStore) trait backed by
5//! [Elasticsearch](https://www.elastic.co/elasticsearch/) using its REST API
6//! with `dense_vector` fields and kNN search.
7//!
8//! # Example
9//!
10//! ```rust,no_run
11//! use synaptic_elasticsearch::{ElasticsearchVectorStore, ElasticsearchConfig};
12//!
13//! # async fn example() -> Result<(), Box<dyn std::error::Error>> {
14//! let config = ElasticsearchConfig::new("my_documents", 1536);
15//! let store = ElasticsearchVectorStore::new(config);
16//! store.ensure_index().await?;
17//! # Ok(())
18//! # }
19//! ```
20
21mod vector_store;
22
23pub use vector_store::{ElasticsearchConfig, ElasticsearchVectorStore};
24
25// Re-export core traits for convenience.
26pub use synaptic_core::{Document, Embeddings, VectorStore};