Documentation
¶
Overview ¶
Package pattern provides pattern detection and recognition functionality.
Index ¶
- type DetectionResult
- type Detector
- func (d *Detector) AnalyzeObservation(ctx context.Context, obs *models.Observation) (*DetectionResult, error)
- func (d *Detector) AnalyzeRecentObservations(ctx context.Context) error
- func (d *Detector) CandidateCount() int
- func (d *Detector) GetPatternInsight(ctx context.Context, patternID int64) (string, error)
- func (d *Detector) SetSyncFunc(fn PatternSyncFunc)
- func (d *Detector) Start()
- func (d *Detector) Stop()
- type DetectorConfig
- type PatternSyncFunc
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type DetectionResult ¶
DetectionResult contains the result of pattern detection.
type Detector ¶
type Detector struct {
// contains filtered or unexported fields
}
Detector detects and tracks recurring patterns across observations.
func NewDetector ¶
func NewDetector(patternStore *gorm.PatternStore, observationStore *gorm.ObservationStore, config DetectorConfig) *Detector
NewDetector creates a new pattern detector.
func (*Detector) AnalyzeObservation ¶
func (d *Detector) AnalyzeObservation(ctx context.Context, obs *models.Observation) (*DetectionResult, error)
AnalyzeObservation processes a new observation for pattern detection. This is called synchronously when a new observation is stored.
func (*Detector) AnalyzeRecentObservations ¶
AnalyzeRecentObservations analyzes recent observations for pattern detection. This is used for background batch analysis.
func (*Detector) CandidateCount ¶
CandidateCount returns the current number of pattern candidates.
func (*Detector) GetPatternInsight ¶
GetPatternInsight returns a formatted insight string for a pattern. GetPatternInsight returns a formatted insight string for a pattern.
func (*Detector) SetSyncFunc ¶
func (d *Detector) SetSyncFunc(fn PatternSyncFunc)
SetSyncFunc sets the callback for syncing patterns to vector store.
type DetectorConfig ¶
type DetectorConfig struct {
// MinMatchScore is the minimum similarity score to consider a match (0.0-1.0).
MinMatchScore float64
// MinFrequencyForPattern is the minimum occurrences before creating a pattern.
MinFrequencyForPattern int
// AnalysisInterval is how often to run background pattern analysis.
AnalysisInterval time.Duration
// MaxPatternsToTrack is the maximum number of active patterns.
MaxPatternsToTrack int
// MaxCandidates is the maximum number of candidates to track (LRU eviction).
MaxCandidates int
}
DetectorConfig contains configuration for the pattern detector.
func DefaultConfig ¶
func DefaultConfig() DetectorConfig
DefaultConfig returns the default detector configuration.
type PatternSyncFunc ¶
PatternSyncFunc is a callback for syncing patterns to vector store.