Documentation
¶
Index ¶
- Constants
- Variables
- func EstimateJaccard(sig1, sig2 []uint64) float64
- func GetTinyID() ([]byte, error)
- type Config
- type Hasher
- type SimilarityService
- func (s *SimilarityService) CalculateJaccardOptimized(sourceSet set.GenericDataSet[string], targetStr string) float64
- func (s *SimilarityService) GetNewID() (string, error)
- func (s *SimilarityService) Shingle(input string) set.GenericDataSet[string]
- func (s *SimilarityService) Upsert(ctx context.Context, group, input string) (string, error)
Constants ¶
View Source
const (
EnvPrefix = "LSH"
)
Variables ¶
View Source
var ( ErrSignatureTooShort = errors.New("signature too short") ErrShingleResultIsEmpty = errors.New("error shingle result is empty") )
Functions ¶
func EstimateJaccard ¶ added in v1.0.0
Types ¶
type Config ¶
type Config struct {
Bands int `env:"_BANDS" envDefault:"40"`
Rows int `env:"_ROWS" envDefault:"5"`
ShingleSize int `env:"_SHINGLE_SIZE" envDefault:"3"`
JaccardThreshold float64 `env:"_JAC_THRESHOLD" envDefault:"0.6"`
MaxBucketSize int `env:"_MAX_BUCKET_SIZE" envDefault:"200"`
MaxTotalCandidates int `env:"_MAX_TOTAL_CANDIDATES" envDefault:"100"`
Seed int64 `env:"_SEED" envDefault:"13374269"`
}
func GetLSHConfigFromEnv ¶
type Hasher ¶
type Hasher struct {
// contains filtered or unexported fields
}
func (*Hasher) ComputeSignature ¶
func (h *Hasher) ComputeSignature(tokens set.GenericDataSet[string], sig []uint64)
type SimilarityService ¶
type SimilarityService struct {
// contains filtered or unexported fields
}
func NewSimilarityService ¶
func NewSimilarityService(repo repositories.Storage, config *Config) *SimilarityService
func (*SimilarityService) CalculateJaccardOptimized ¶
func (s *SimilarityService) CalculateJaccardOptimized(sourceSet set.GenericDataSet[string], targetStr string) float64
func (*SimilarityService) GetNewID ¶
func (s *SimilarityService) GetNewID() (string, error)
func (*SimilarityService) Shingle ¶
func (s *SimilarityService) Shingle(input string) set.GenericDataSet[string]
Click to show internal directories.
Click to hide internal directories.