Skip to main content

Crate lumosai_vector_milvus

Crate lumosai_vector_milvus 

Source
Expand description

§LumosAI Milvus Integration

This crate provides Milvus integration for LumosAI vector storage, offering high-performance vector database capabilities with cloud-native features.

§Features

  • High Performance: Distributed vector database optimized for large-scale applications
  • Cloud Native: Kubernetes-ready with horizontal scaling
  • Rich Indexing: Multiple index types (IVF, HNSW, ANNOY, etc.)
  • Metadata Filtering: Complex filtering with boolean expressions
  • Multi-tenancy: Collection-based isolation and resource management
  • ACID Transactions: Consistency guarantees for critical operations
  • Real-time: Support for real-time data ingestion and querying

§Quick Start

use lumosai_vector_milvus::{MilvusStorage, MilvusConfig};
use lumosai_vector_core::traits::VectorStorage;

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    // Create Milvus storage
    let config = MilvusConfig::new("http://localhost:19530")
        .with_database("default")
        .with_auth("username", "password");
    let storage = MilvusStorage::new(config).await?;
     
    // Create a collection
    let index_config = IndexConfig::new("documents", 384)
        .with_metric(SimilarityMetric::Cosine);
    storage.create_index(index_config).await?;
     
    // Insert documents
    let docs = vec![
        Document::new("doc1", "Hello world")
            .with_embedding(vec![0.1; 384])
            .with_metadata("category", "greeting"),
    ];
    storage.upsert_documents("documents", docs).await?;
     
    Ok(())
}

Re-exports§

pub use storage::MilvusStorage;
pub use config::MilvusConfig;
pub use config::MilvusConfigBuilder;
pub use error::MilvusError;
pub use error::MilvusResult;
pub use client::MilvusClient;
pub use types::MilvusEntity;
pub use types::AuthRequest;
pub use types::AuthResponse;
pub use types::CollectionInfo;
pub use types::CollectionSchema;

Modules§

client
Milvus client implementation
config
Milvus configuration module
error
Error types for Milvus integration
storage
Milvus storage implementation
types
Type definitions for Milvus integration
utils
Utility functions for Milvus operations

Structs§

Document
Document representation with embedding support
MilvusConnection
Milvus client for managing connections and databases
PerformanceMetrics
性能指标

Enums§

MetadataValue
Metadata value that can hold various types
SimilarityMetric
Similarity metrics for vector comparison

Traits§

VectorStorage
Core trait for vector storage backends

Functions§

create_milvus_storage
Create a new Milvus storage instance
create_milvus_storage_with_config
Create a new Milvus storage instance with configuration