pub struct EntityNode {
pub uuid: Uuid,
pub name: String,
pub labels: Vec<EntityLabel>,
pub created_at: DateTime<Utc>,
pub last_seen_at: DateTime<Utc>,
pub mention_count: usize,
pub summary: String,
pub attributes: HashMap<String, String>,
pub name_embedding: Option<Vec<f32>>,
pub salience: f32,
pub is_proper_noun: bool,
}Expand description
Entity node in the knowledge graph
Fields§
§uuid: UuidUnique identifier
name: StringEntity name (e.g., “John”, “Paris”, “Rust programming”)
labels: Vec<EntityLabel>Entity labels/types (e.g., [“Person”], [“Location”, “City”])
created_at: DateTime<Utc>When this entity was first created in the graph
last_seen_at: DateTime<Utc>When this entity was last observed
mention_count: usizeHow many times this entity has been mentioned
summary: StringSummary of this entity’s context (built from surrounding edges)
attributes: HashMap<String, String>Additional attributes based on entity type
name_embedding: Option<Vec<f32>>Semantic embedding of the entity name (for similarity search)
salience: f32Salience score (0.0 - 1.0): How important is this entity? Higher salience = larger gravitational well in the memory universe Factors: proper noun status, mention frequency, recency, user-defined importance
is_proper_noun: boolWhether this is a proper noun (names, places, products) Proper nouns have higher base salience than common nouns
Trait Implementations§
Source§impl Clone for EntityNode
impl Clone for EntityNode
Source§fn clone(&self) -> EntityNode
fn clone(&self) -> EntityNode
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for EntityNode
impl Debug for EntityNode
Source§impl<'de> Deserialize<'de> for EntityNode
impl<'de> Deserialize<'de> for EntityNode
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>,
Auto Trait Implementations§
impl Freeze for EntityNode
impl RefUnwindSafe for EntityNode
impl Send for EntityNode
impl Sync for EntityNode
impl Unpin for EntityNode
impl UnsafeUnpin for EntityNode
impl UnwindSafe for EntityNode
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>, which can then be
downcast into Box<dyn ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait> (where Trait: Downcast) to Rc<Any>, which can then be further
downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
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>
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>
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