pub struct KeyBertAdapter { /* private fields */ }Expand description
KeyBERT-backed Extractor adapter.
Construct with KeyBertAdapter::new; hand to
crate::pipeline::Ingester::with_extractor in place of the
default crate::extract::RuleExtractor.
Implementations§
Source§impl KeyBertAdapter
impl KeyBertAdapter
Sourcepub fn new(embedder: Arc<dyn Embedder>, label: impl Into<String>) -> Self
pub fn new(embedder: Arc<dyn Embedder>, label: impl Into<String>) -> Self
Build an adapter around the supplied embedder with KeyBERT defaults
(top_k = 10, ngram_range = (1, 3), mmr_diversity = 0.5,
pmi_threshold = 1.0).
label is the ntype string stamped on every entity this adapter emits.
The caller owns the vocabulary — pass whatever label fits your graph
(e.g. "Keyword", "Tag", "Concept", or any domain-specific type).
Sourcepub fn with_label(self, label: impl Into<String>) -> Self
pub fn with_label(self, label: impl Into<String>) -> Self
Override the entity label. Returns self for chaining.
Sourcepub const fn with_top_k(self, k: usize) -> Self
pub const fn with_top_k(self, k: usize) -> Self
Override top_k. Returns self for chaining.
Sourcepub const fn with_pmi_threshold(self, t: f32) -> Self
pub const fn with_pmi_threshold(self, t: f32) -> Self
Override the PMI threshold used when mining co-occurrence
edges. Returns self for chaining.
Trait Implementations§
Source§impl Debug for KeyBertAdapter
impl Debug for KeyBertAdapter
Source§impl Extractor for KeyBertAdapter
impl Extractor for KeyBertAdapter
Source§fn prepare(&self, sections: &[Section]) -> Result<(), Error>
fn prepare(&self, sections: &[Section]) -> Result<(), Error>
Optional pre-extraction hook. Called once per file by
crate::pipeline::Ingester::ingest BEFORE any
extract_entities / extract_relations call, with the full
list of sections the file produced. The default implementation
is a no-op, so existing extractors keep their behaviour. Read moreSource§fn extract_entities(&self, section: &Section) -> Vec<EntitySpan>
fn extract_entities(&self, section: &Section) -> Vec<EntitySpan>
Extract entity mentions from a single section.
Source§fn extract_relations(
&self,
entities: &[EntitySpan],
section: &Section,
) -> Vec<RelationSpan>
fn extract_relations( &self, entities: &[EntitySpan], section: &Section, ) -> Vec<RelationSpan>
Extract candidate relations between already-extracted entities.
Auto Trait Implementations§
impl !Freeze for KeyBertAdapter
impl !RefUnwindSafe for KeyBertAdapter
impl Send for KeyBertAdapter
impl Sync for KeyBertAdapter
impl Unpin for KeyBertAdapter
impl UnsafeUnpin for KeyBertAdapter
impl !UnwindSafe for KeyBertAdapter
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> 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