Skip to main content

RuntimeQueryPort

Trait RuntimeQueryPort 

Source
pub trait RuntimeQueryPort {
    // Required methods
    fn execute_query(&self, query: &str) -> RedDBResult<RuntimeQueryResult>;
    fn explain_query(&self, query: &str) -> RedDBResult<RuntimeQueryExplain>;
    fn scan_collection(
        &self,
        collection: &str,
        cursor: Option<ScanCursor>,
        limit: usize,
    ) -> RedDBResult<ScanPage>;
    fn search_similar(
        &self,
        collection: &str,
        vector: &[f32],
        k: usize,
        min_score: f32,
    ) -> RedDBResult<Vec<SimilarResult>>;
    fn search_ivf(
        &self,
        collection: &str,
        vector: &[f32],
        k: usize,
        n_lists: usize,
        n_probes: Option<usize>,
    ) -> RedDBResult<RuntimeIvfSearchResult>;
    fn search_hybrid(
        &self,
        vector: Option<Vec<f32>>,
        query: Option<String>,
        k: Option<usize>,
        collections: Option<Vec<String>>,
        entity_types: Option<Vec<String>>,
        capabilities: Option<Vec<String>>,
        graph_pattern: Option<RuntimeGraphPattern>,
        filters: Vec<RuntimeFilter>,
        weights: Option<RuntimeQueryWeights>,
        min_score: Option<f32>,
        limit: Option<usize>,
    ) -> RedDBResult<DslQueryResult>;
    fn search_text(
        &self,
        query: String,
        collections: Option<Vec<String>>,
        entity_types: Option<Vec<String>>,
        capabilities: Option<Vec<String>>,
        fields: Option<Vec<String>>,
        limit: Option<usize>,
        fuzzy: bool,
    ) -> RedDBResult<DslQueryResult>;
    fn search_multimodal(
        &self,
        query: String,
        collections: Option<Vec<String>>,
        entity_types: Option<Vec<String>>,
        capabilities: Option<Vec<String>>,
        limit: Option<usize>,
    ) -> RedDBResult<DslQueryResult>;
    fn search_index(
        &self,
        index: String,
        value: String,
        exact: bool,
        collections: Option<Vec<String>>,
        entity_types: Option<Vec<String>>,
        capabilities: Option<Vec<String>>,
        limit: Option<usize>,
    ) -> RedDBResult<DslQueryResult>;
    fn search_context(
        &self,
        input: SearchContextInput,
    ) -> RedDBResult<ContextSearchResult>;
    fn resolve_semantic_api_key(
        &self,
        provider: &AiProvider,
    ) -> RedDBResult<String>;
}

Required Methods§

Source

fn execute_query(&self, query: &str) -> RedDBResult<RuntimeQueryResult>

Source

fn explain_query(&self, query: &str) -> RedDBResult<RuntimeQueryExplain>

Source

fn scan_collection( &self, collection: &str, cursor: Option<ScanCursor>, limit: usize, ) -> RedDBResult<ScanPage>

Source

fn search_similar( &self, collection: &str, vector: &[f32], k: usize, min_score: f32, ) -> RedDBResult<Vec<SimilarResult>>

Source

fn search_ivf( &self, collection: &str, vector: &[f32], k: usize, n_lists: usize, n_probes: Option<usize>, ) -> RedDBResult<RuntimeIvfSearchResult>

Source

fn search_hybrid( &self, vector: Option<Vec<f32>>, query: Option<String>, k: Option<usize>, collections: Option<Vec<String>>, entity_types: Option<Vec<String>>, capabilities: Option<Vec<String>>, graph_pattern: Option<RuntimeGraphPattern>, filters: Vec<RuntimeFilter>, weights: Option<RuntimeQueryWeights>, min_score: Option<f32>, limit: Option<usize>, ) -> RedDBResult<DslQueryResult>

Source

fn search_text( &self, query: String, collections: Option<Vec<String>>, entity_types: Option<Vec<String>>, capabilities: Option<Vec<String>>, fields: Option<Vec<String>>, limit: Option<usize>, fuzzy: bool, ) -> RedDBResult<DslQueryResult>

Source

fn search_multimodal( &self, query: String, collections: Option<Vec<String>>, entity_types: Option<Vec<String>>, capabilities: Option<Vec<String>>, limit: Option<usize>, ) -> RedDBResult<DslQueryResult>

Source

fn search_index( &self, index: String, value: String, exact: bool, collections: Option<Vec<String>>, entity_types: Option<Vec<String>>, capabilities: Option<Vec<String>>, limit: Option<usize>, ) -> RedDBResult<DslQueryResult>

Source

fn search_context( &self, input: SearchContextInput, ) -> RedDBResult<ContextSearchResult>

Source

fn resolve_semantic_api_key(&self, provider: &AiProvider) -> RedDBResult<String>

Implementors§