pub enum GraphRetrievalStrategy {
Synapse,
Bfs,
AStar,
WaterCircles,
BeamSearch,
Hybrid,
}Expand description
Graph retrieval strategy for [memory.graph].
Selects the algorithm used to traverse the knowledge graph during recall.
The default (synapse) preserves existing SYNAPSE spreading-activation behavior.
Variants§
Synapse
SYNAPSE spreading activation (default, existing behavior).
Bfs
Hop-limited BFS traversal (pre-SYNAPSE behavior).
AStar
A* shortest-path traversal via petgraph.
WaterCircles
Concentric BFS expanding outward from seed nodes.
BeamSearch
Beam search: keep top-K candidates per hop.
Hybrid
Dynamic: LLM classifier selects strategy per query.
Trait Implementations§
Source§impl Clone for GraphRetrievalStrategy
impl Clone for GraphRetrievalStrategy
Source§fn clone(&self) -> GraphRetrievalStrategy
fn clone(&self) -> GraphRetrievalStrategy
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 GraphRetrievalStrategy
impl Debug for GraphRetrievalStrategy
Source§impl Default for GraphRetrievalStrategy
impl Default for GraphRetrievalStrategy
Source§fn default() -> GraphRetrievalStrategy
fn default() -> GraphRetrievalStrategy
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for GraphRetrievalStrategy
impl<'de> Deserialize<'de> for GraphRetrievalStrategy
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 GraphRetrievalStrategy
impl PartialEq for GraphRetrievalStrategy
Source§impl Serialize for GraphRetrievalStrategy
impl Serialize for GraphRetrievalStrategy
impl Copy for GraphRetrievalStrategy
impl Eq for GraphRetrievalStrategy
impl StructuralPartialEq for GraphRetrievalStrategy
Auto Trait Implementations§
impl Freeze for GraphRetrievalStrategy
impl RefUnwindSafe for GraphRetrievalStrategy
impl Send for GraphRetrievalStrategy
impl Sync for GraphRetrievalStrategy
impl Unpin for GraphRetrievalStrategy
impl UnsafeUnpin for GraphRetrievalStrategy
impl UnwindSafe for GraphRetrievalStrategy
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§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<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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request