Versions in this module Expand all Collapse all v0 v0.1.2 Nov 1, 2025 Changes in this version type Config + Temperature *float32 v0.1.1 Oct 10, 2025 Changes in this version + const DefaultDSUFilePath + const DefaultMinSimilarity + type Classifier struct + func NewClassifier(cfg Config) (*Classifier, error) + func (c *Classifier) Classify(ctx context.Context, text string) (*Result, error) + func (c *Classifier) Close() error + func (c *Classifier) GetMetrics() Metrics + func (c *Classifier) SaveDSU() error + type Config struct + BaseUrl string + DSUPersistence DisjointSetPersistence + EmbeddingClient EmbeddingClient + LLMClient LLMClient + MinSimilarityContent float32 + MinSimilarityLabel float32 + Model string + VectorClientContent VectorClient + VectorClientLabel VectorClient + type DisjointSetPersistence interface + Load func() (*disjoint_set.DSU, error) + Save func(dsu *disjoint_set.DSU) error + type EmbeddingClient interface + GenerateEmbedding func(ctx context.Context, text string) ([]float32, error) + type FileDSUPersistence struct + func NewFileDSUPersistence(filepath string) *FileDSUPersistence + func (f *FileDSUPersistence) Load() (*disjoint_set.DSU, error) + func (f *FileDSUPersistence) Save(dsu *disjoint_set.DSU) error + type LLMClient interface + Classify func(ctx context.Context, text string) (string, error) + type Metrics struct + CacheHitRate float32 + ConvergedLabels int + UniqueLabels int + type Result struct + BackgroundLatency time.Duration + CacheHit bool + Confidence float32 + Label string + UserFacingLatency time.Duration + type VectorClient interface + Search func(ctx context.Context, vector []float32, topK int) ([]types.VectorMatch, error) + Upsert func(ctx context.Context, id string, vector []float32, metadata map[string]any) error v0.1.0 Oct 10, 2025