pub enum HybridMode {
HeuristicOnly,
MLOnly,
Hybrid,
Both,
}Expand description
Hybrid detection mode
§Specification
Hybrid mode combines fast heuristic detection with accurate ML detection:
-
Heuristic Pre-filter: Fast pattern-based detection (0.01ms)
- If obviously safe → return safe (60-70% of inputs)
- If obviously malicious → return malicious (5-10% of inputs)
- If ambiguous → proceed to ML (20-30% of inputs)
-
ML Detection: Accurate but slower (50-150ms)
- Only called for ambiguous cases
- Results are cached
- Falls back to heuristic on error (if enabled)
§Performance Impact
- Pure heuristic: ~15,500 req/sec
- Pure ML: ~150 req/sec
- Hybrid: ~2,000 req/sec (10x faster than pure ML)
Variants§
HeuristicOnly
Only use heuristic detection (no ML)
MLOnly
Only use ML detection (no heuristic pre-filter)
Hybrid
Use heuristic pre-filter, then ML for ambiguous cases
Both
Use both and combine results (max risk score)
Trait Implementations§
Source§impl Clone for HybridMode
impl Clone for HybridMode
Source§fn clone(&self) -> HybridMode
fn clone(&self) -> HybridMode
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 HybridMode
impl Debug for HybridMode
Source§impl Default for HybridMode
impl Default for HybridMode
Source§impl<'de> Deserialize<'de> for HybridMode
impl<'de> Deserialize<'de> for HybridMode
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for HybridMode
impl PartialEq for HybridMode
Source§impl Serialize for HybridMode
impl Serialize for HybridMode
impl Copy for HybridMode
impl Eq for HybridMode
impl StructuralPartialEq for HybridMode
Auto Trait Implementations§
impl Freeze for HybridMode
impl RefUnwindSafe for HybridMode
impl Send for HybridMode
impl Sync for HybridMode
impl Unpin for HybridMode
impl UnwindSafe for HybridMode
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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