Heratio Framework API Reference

LearningService
in package

Learning Service.

Learns from user behavior to improve search quality. Manages search logging, click tracking, and suggestion building.

Table of Contents

Methods

__construct()  : mixed
cleanup()  : array<string|int, mixed>
Cleanup old data.
getAnalytics()  : array<string|int, mixed>
Get search analytics summary.
getCulture()  : string
Get current culture.
getQuerySuggestions()  : array<string|int, mixed>
Get autocomplete suggestions.
learnSynonyms()  : void
Learn synonyms from user behavior.
logClick()  : int
Log a click on a search result.
logSearch()  : int
Log a search query and its parsed result.
setCulture()  : self
Set the culture for queries.
updateDwellTime()  : void
Update dwell time for a click.
updateSuggestions()  : void
Update suggestions from successful searches.

Methods

__construct()

public __construct([string $culture = 'en' ]) : mixed
Parameters
$culture : string = 'en'

cleanup()

Cleanup old data.

public cleanup([int $keepDays = 90 ]) : array<string|int, mixed>
Parameters
$keepDays : int = 90

Days to keep

Return values
array<string|int, mixed>

Counts of deleted records

getAnalytics()

Get search analytics summary.

public getAnalytics([int|null $institutionId = null ][, int $days = 30 ]) : array<string|int, mixed>
Parameters
$institutionId : int|null = null

Institution ID

$days : int = 30

Number of days to analyze

Return values
array<string|int, mixed>

Analytics data

getCulture()

Get current culture.

public getCulture() : string
Return values
string

getQuerySuggestions()

Get autocomplete suggestions.

public getQuerySuggestions(string $prefix[, int|null $institutionId = null ][, int $limit = 10 ]) : array<string|int, mixed>
Parameters
$prefix : string

Search prefix

$institutionId : int|null = null

Institution ID

$limit : int = 10

Max suggestions

Return values
array<string|int, mixed>

Suggestions

learnSynonyms()

Learn synonyms from user behavior.

public learnSynonyms([int|null $institutionId = null ][, float $minConfidence = 0.6 ]) : void

Identifies terms that lead to clicks on the same items.

Parameters
$institutionId : int|null = null

Institution ID

$minConfidence : float = 0.6

Minimum confidence to store

logClick()

Log a click on a search result.

public logClick(int $searchLogId, int $itemId, int $position[, int|null $timeToClickMs = null ]) : int
Parameters
$searchLogId : int

ID from heritage_discovery_log

$itemId : int

ID of clicked item

$position : int

Position in results (1-indexed)

$timeToClickMs : int|null = null

Time from search to click

Return values
int

Click log ID

logSearch()

Log a search query and its parsed result.

public logSearch(string $query, array<string|int, mixed> $parsedQuery, int $resultCount, int $durationMs[, int|null $institutionId = null ]) : int
Parameters
$query : string

Original query

$parsedQuery : array<string|int, mixed>

Parsed query from QueryUnderstandingService

$resultCount : int

Number of results returned

$durationMs : int

Search duration in milliseconds

$institutionId : int|null = null

Institution ID

Return values
int

Log ID

setCulture()

Set the culture for queries.

public setCulture(string $culture) : self
Parameters
$culture : string
Return values
self

updateDwellTime()

Update dwell time for a click.

public updateDwellTime(int $clickId, int $dwellTimeSeconds) : void
Parameters
$clickId : int

Click log ID

$dwellTimeSeconds : int

Time spent on item page

updateSuggestions()

Update suggestions from successful searches.

public updateSuggestions([int|null $institutionId = null ][, int $minSearches = 3 ][, int $minResults = 1 ]) : void

Runs periodically to rebuild suggestion index.

Parameters
$institutionId : int|null = null

Institution ID

$minSearches : int = 3

Minimum searches to qualify

$minResults : int = 1

Minimum average results


        
On this page

Search results