Trait ragtime::EmbedModel

source ·
pub trait EmbedModel: Sized {
    type Ctx;
    type Args;
    type SearchPrompt: FormattedPrompt;
    type EmbedPrompt: FormattedPrompt;

    // Required methods
    fn new(ctx: Self::Ctx, args: Self::Args) -> Result<Self>;
    fn add(
        &mut self,
        summary: <Self::EmbedPrompt as FormattedPrompt>::FinalPrompt,
        text: &[(ChunkId, <Self::EmbedPrompt as FormattedPrompt>::FinalPrompt)],
    ) -> Result<()>;
    fn remove(&mut self, chunks: &[ChunkId]) -> Result<()>;
    fn search(
        &mut self,
        q: <Self::SearchPrompt as FormattedPrompt>::FinalPrompt,
        n: usize,
    ) -> Result<Matches>;
}

Required Associated Types§

Required Methods§

source

fn new(ctx: Self::Ctx, args: Self::Args) -> Result<Self>

source

fn add( &mut self, summary: <Self::EmbedPrompt as FormattedPrompt>::FinalPrompt, text: &[(ChunkId, <Self::EmbedPrompt as FormattedPrompt>::FinalPrompt)], ) -> Result<()>

source

fn remove(&mut self, chunks: &[ChunkId]) -> Result<()>

source

fn search( &mut self, q: <Self::SearchPrompt as FormattedPrompt>::FinalPrompt, n: usize, ) -> Result<Matches>

Object Safety§

This trait is not object safe.

Implementors§