pub enum DerivationType {
Original,
FineTune {
parent_hash: [u8; 32],
epochs: u32,
},
Distillation {
teacher_hash: [u8; 32],
temperature: f32,
},
Merge {
parent_hashes: Vec<[u8; 32]>,
method: String,
},
Quantize {
parent_hash: [u8; 32],
quant_type: QuantizationType,
},
Prune {
parent_hash: [u8; 32],
sparsity: f32,
},
}Expand description
Model derivation types tracked by Pacha (spec §9.3.2)
Tracks model lineage via a DAG (Directed Acyclic Graph):
- Original training runs
- Fine-tuning relationships
- Knowledge distillation
- Model merging
- Quantization
- Pruning
Variants§
Original
Original training run
FineTune
Fine-tuning from parent model
Distillation
Knowledge distillation from teacher
Merge
Model merging (e.g., TIES, DARE)
Quantize
Quantization (precision reduction)
Prune
Pruning (weight removal)
Implementations§
Trait Implementations§
Source§impl Clone for DerivationType
impl Clone for DerivationType
Source§fn clone(&self) -> DerivationType
fn clone(&self) -> DerivationType
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for DerivationType
impl Debug for DerivationType
Source§impl PartialEq for DerivationType
impl PartialEq for DerivationType
impl StructuralPartialEq for DerivationType
Auto Trait Implementations§
impl Freeze for DerivationType
impl RefUnwindSafe for DerivationType
impl Send for DerivationType
impl Sync for DerivationType
impl Unpin for DerivationType
impl UnwindSafe for DerivationType
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more