Skip to main content

WriteInferenceEngine

Struct WriteInferenceEngine 

Source
pub struct WriteInferenceEngine { /* private fields */ }

Implementations§

Source§

impl WriteInferenceEngine

Source

pub fn new() -> Self

Source

pub fn with_config(config: WriteInferenceConfig) -> Self

Source

pub fn looks_like_value_update(&self, new: &str, old: &str) -> bool

Whether new and old look like a value update (same sentence frame, changed value tail) under this engine’s configured thresholds. A deduplication pass that merges near-duplicates uses this as a guard so a correction (“coffee is a cortado” then “coffee is a flat white”) is never collapsed into the fact it corrects; the two must stay distinct for supersession to resolve them.

Source

pub fn infer_on_write( &self, new_memory: &MemoryNode, existing_memories: &[MemoryNode], existing_edges: &[(MemoryId, MemoryId, EdgeType)], ) -> Vec<InferredAction>

Source

pub async fn infer_on_write_with_llm<J: LlmJudge>( &self, new_memory: &MemoryNode, existing_memories: &[MemoryNode], existing_edges: &[(MemoryId, MemoryId, EdgeType)], llm: &CognitiveLlmService<J>, ) -> Vec<InferredAction>

LLM enhanced write inference. Uses the CognitiveLlmService when available to make smarter invalidation and contradiction decisions. Falls back to cosine similarity heuristics for moderate similarity (Related edges) and correction handling.

Trait Implementations§

Source§

impl Default for WriteInferenceEngine

Source§

fn default() -> Self

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

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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

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.