pub struct ModelRegistrar {
model_repo: Arc<dyn ModelRepository>,
gguf_parser: Arc<dyn GgufParserPort>,
model_files_repo: Option<Arc<dyn ModelFilesRepositoryPort>>,
}Expand description
Implementation of the model registrar port.
This service composes over ModelRepository for persistence and
GgufParserPort for metadata extraction.
Fields§
§model_repo: Arc<dyn ModelRepository>Repository for persisting models.
gguf_parser: Arc<dyn GgufParserPort>Parser for extracting GGUF metadata.
model_files_repo: Option<Arc<dyn ModelFilesRepositoryPort>>Repository for persisting model file metadata.
Implementations§
Source§impl ModelRegistrar
impl ModelRegistrar
Sourcepub fn new(
model_repo: Arc<dyn ModelRepository>,
gguf_parser: Arc<dyn GgufParserPort>,
model_files_repo: Option<Arc<dyn ModelFilesRepositoryPort>>,
) -> Self
pub fn new( model_repo: Arc<dyn ModelRepository>, gguf_parser: Arc<dyn GgufParserPort>, model_files_repo: Option<Arc<dyn ModelFilesRepositoryPort>>, ) -> Self
Create a new model registrar.
§Arguments
model_repo- Repository for persisting modelsgguf_parser- Parser for extracting GGUF metadatamodel_files_repo- Optional repository for persisting model file metadata
Trait Implementations§
Source§impl ModelRegistrarPort for ModelRegistrar
impl ModelRegistrarPort for ModelRegistrar
Source§fn register_model<'life0, 'life1, 'async_trait>(
&'life0 self,
download: &'life1 CompletedDownload,
) -> Pin<Box<dyn Future<Output = Result<Model, RepositoryError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn register_model<'life0, 'life1, 'async_trait>(
&'life0 self,
download: &'life1 CompletedDownload,
) -> Pin<Box<dyn Future<Output = Result<Model, RepositoryError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Register a downloaded model in the database. Read more
Auto Trait Implementations§
impl Freeze for ModelRegistrar
impl !RefUnwindSafe for ModelRegistrar
impl Send for ModelRegistrar
impl Sync for ModelRegistrar
impl Unpin for ModelRegistrar
impl UnsafeUnpin for ModelRegistrar
impl !UnwindSafe for ModelRegistrar
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more