pub struct ModelRepository<'a> { /* private fields */ }Implementations§
Source§impl<'a> ModelRepository<'a>
impl<'a> ModelRepository<'a>
pub fn new(catalog: &'a Catalog) -> Self
Sourcepub fn insert(&self, new: NewModel) -> OrbokResult<ModelRecord>
pub fn insert(&self, new: NewModel) -> OrbokResult<ModelRecord>
Register a new model. Returns the generated ModelId.
Sourcepub fn get(&self, id: &ModelId) -> OrbokResult<Option<ModelRecord>>
pub fn get(&self, id: &ModelId) -> OrbokResult<Option<ModelRecord>>
Fetch one model by ID.
Sourcepub fn list_by_role(&self, role: ModelRole) -> OrbokResult<Vec<ModelRecord>>
pub fn list_by_role(&self, role: ModelRole) -> OrbokResult<Vec<ModelRecord>>
All models of a given role.
Sourcepub fn list_all(&self) -> OrbokResult<Vec<ModelRecord>>
pub fn list_all(&self) -> OrbokResult<Vec<ModelRecord>>
All models (all roles).
Sourcepub fn set_status(&self, id: &ModelId, status: ModelStatus) -> OrbokResult<()>
pub fn set_status(&self, id: &ModelId, status: ModelStatus) -> OrbokResult<()>
Update model status (available / missing / invalid / disabled).
Sourcepub fn validate(
&self,
id: &ModelId,
expected_dim: Option<u32>,
) -> OrbokResult<ModelStatus>
pub fn validate( &self, id: &ModelId, expected_dim: Option<u32>, ) -> OrbokResult<ModelStatus>
Validate a model: check the file exists and matches expected dimension.
Updates status and last_validated_at in the catalog.
Sourcepub fn locate(
&self,
path: &str,
role: ModelRole,
name: &str,
version: &str,
dimension: Option<u32>,
) -> OrbokResult<ModelRecord>
pub fn locate( &self, path: &str, role: ModelRole, name: &str, version: &str, dimension: Option<u32>, ) -> OrbokResult<ModelRecord>
Locate and register an existing model file on disk (RFC-012 §8 “locate existing model”). This is explicit — no silent downloads.
Sourcepub fn mark_embedding_dependents_stale(
&self,
model_id: &ModelId,
) -> OrbokResult<u64>
pub fn mark_embedding_dependents_stale( &self, model_id: &ModelId, ) -> OrbokResult<u64>
When an embedding model changes, mark all embeddings from the old model as stale (RFC-012 §14).
Auto Trait Implementations§
impl<'a> Freeze for ModelRepository<'a>
impl<'a> RefUnwindSafe for ModelRepository<'a>
impl<'a> Send for ModelRepository<'a>
impl<'a> Sync for ModelRepository<'a>
impl<'a> Unpin for ModelRepository<'a>
impl<'a> UnsafeUnpin for ModelRepository<'a>
impl<'a> UnwindSafe for ModelRepository<'a>
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