Package-level declarations

Types

Link copied to clipboard

Always adds new entities and ignores existing or vetoed entities.

Link copied to clipboard
class LlmSourceAnalyzer(ai: <Error class: unknown class>, llmOptions: <Error class: unknown class> = LlmOptions()) : SourceAnalyzer

Source analyzer that uses an LLM to suggest entities and relationships.

Link copied to clipboard
class MultiPassKnowledgeGraphBuilder(sourceAnalyzer: SourceAnalyzer, entityResolver: EntityResolver, relationshipResolver: RelationshipResolver = AcceptSuggestionRelationshipResolver, entityMergePolicy: EntityMergePolicy = UseNewEntityMergePolicy, relationshipMergePolicy: RelationshipMergePolicy = AcceptRecommendedRelationshipMergePolicy, diceEventListener: DiceEventListener = DiceEventListener.DEV_NULL) : KnowledgeGraphBuilder

Strategy-based builder for knowledge graphs. Responsible for analyzing source chunks and building a knowledge graph delta and then calling the knowledge graph updater to apply the delta.

Link copied to clipboard
class ParallelSourceAnalyzer(analyzers: List<SourceAnalyzer>, executor: ExecutorService = Executors.newFixedThreadPool(analyzers.size), config: ParallelSourceAnalyzer.Config = Config()) : SourceAnalyzer

Runs multiple source analyzers in parallel on the same chunk and merges results. Entities suggested by multiple analyzers are weighted higher (agreement scoring).

Link copied to clipboard
data class SourceAnalyzerProperties(val llms: List<<Error class: unknown class>> = listOf(LlmOptions()), val minAgreement: Int = 1)

Configuration for source analyzers. Supports multiple LLMs for parallel analysis with agreement voting.

Link copied to clipboard

Always adds new entities and ignores existing or vetoed entities. This is probably not want you want in production!