ObservableMentionFilter

class ObservableMentionFilter(delegate: MentionFilter, meterRegistry: <Error class: unknown class>) : MentionFilter

Decorator that adds observability to any MentionFilter.

Tracks filtered vs. valid mentions by entity type using Micrometer metrics. This allows monitoring of mention quality in production environments.

Example usage:

val baseFilter = SchemaValidatedMentionFilter(dataDictionary)
val observableFilter = ObservableMentionFilter(baseFilter, meterRegistry)

Exposed metrics:

  • dice.mentions.validated{entity.type=Company,valid=true} - Valid company mentions

  • dice.mentions.validated{entity.type=Company,valid=false} - Filtered company mentions

  • etc. for each entity type

Constructors

Link copied to clipboard
constructor(delegate: MentionFilter, meterRegistry: <Error class: unknown class>)

Functions

Link copied to clipboard
open override fun isValid(mention: SuggestedMention, propositionText: String): Boolean

Validates whether an entity mention should be included in entity resolution.

Link copied to clipboard
open override fun rejectionReason(mention: SuggestedMention): String?

Optional: Provides reason for rejection (useful for debugging/logging).