MoeLoraRoute

Enum MoeLoraRoute 

Source
pub enum MoeLoraRoute {
    Fold,
    Skip,
    Refuse,
}
Expand description

Feature-1 MoE-LoRA fold decision for a single forward pass.

The MoE router/expert delta is a SINGLE globally-installed adapter (phase 1): this gate makes the prefill fold per-request without a device kernel, exactly mirroring the attention BGMV seq_slot < 0 skip but at request granularity. A base request pays nothing; a packed/mixed batch refuses loudly rather than fold one adapter onto every row (the device-side per-row fold that would let a mixed batch skip base rows individually is the documented follow-up — docs/design/lora-solid.md Incr 1/3).

Variants§

§

Fold

Single-request pass whose request owns the installed active MoE adapter: FOLD. Genuine single-seq decode now folds the router + expert gate/up/down deltas at this altitude (mirroring prefill); the remaining back-compat paths (multi-seq / verify) still bail via reject_decode_lora before the fold, so their Fold value is inert there. Also the default.

§

Skip

Single-request pass that is base (adapter_slot < 0, no adapter) or routes to a different, non-installed adapter: SKIP the fold entirely. Base tokens pay nothing (request-granularity mirror of the attention BGMV seq_slot < 0 early-return).

§

Refuse

Multi-request / packed / codispatch batch whose per-row adapter identity cannot be honored without the device-side per-row fold (follow-up): the fold REFUSES loudly rather than mis-apply one adapter to every row.

Trait Implementations§

Source§

impl Clone for MoeLoraRoute

Source§

fn clone(&self) -> MoeLoraRoute

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for MoeLoraRoute

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for MoeLoraRoute

Source§

fn default() -> MoeLoraRoute

Returns the “default value” for a type. Read more
Source§

impl PartialEq for MoeLoraRoute

Source§

fn eq(&self, other: &MoeLoraRoute) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for MoeLoraRoute

Source§

impl Eq for MoeLoraRoute

Source§

impl StructuralPartialEq for MoeLoraRoute

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more