Skip to main content

Class: HybridUtilityAI

Defined in: packages/agentos/src/cognition/nlp/ai_utilities/HybridUtilityAI.ts:76

Routes each utility method to the most appropriate backend:

  • LLM: summarization, classification, keyword extraction, JSON repair
  • Statistical: tokenization, stemming, n-grams, readability, similarity
  • Either with preference: sentiment, language detection

A summary, classification, keyword list, similarity or sentiment whose method names a method only one class has goes to that class when the hybrid holds it. The statistical class takes first_n_sentences and extractive_sentence_rank summaries, naive_bayes and keyword_matching classification, tf_idf and frequency_based keywords, cosine_tfidf, jaccard and levenshtein similarity and lexicon_based sentiment; the LLM-backed class takes abstractive_llm and key_points_llm summaries, llm_zeroshot classification, llm keywords, llm_semantic similarity and llm sentiment. If the preferred backend is not held, the other one takes the call.

Implements​

Constructors​

Constructor​

new HybridUtilityAI(config): HybridUtilityAI

Defined in: packages/agentos/src/cognition/nlp/ai_utilities/HybridUtilityAI.ts:81

Parameters​

config​

HybridUtilityAIConfig

Returns​

HybridUtilityAI

Properties​

utilityId​

readonly utilityId: string

Defined in: packages/agentos/src/cognition/nlp/ai_utilities/HybridUtilityAI.ts:77

Implementation of​

IUtilityAI.utilityId

Methods​

analyzeSentiment()​

analyzeSentiment(text, options?): Promise<SentimentResult>

Defined in: packages/agentos/src/cognition/nlp/ai_utilities/HybridUtilityAI.ts:166

Parameters​

text​

string

options?​

SentimentAnalysisOptions

Returns​

Promise<SentimentResult>

Implementation of​

IUtilityAI.analyzeSentiment


calculateReadability()​

calculateReadability(text, options): Promise<ReadabilityResult>

Defined in: packages/agentos/src/cognition/nlp/ai_utilities/HybridUtilityAI.ts:156

Parameters​

text​

string

options​

ReadabilityOptions

Returns​

Promise<ReadabilityResult>

Implementation of​

IUtilityAI.calculateReadability


calculateSimilarity()​

calculateSimilarity(text1, text2, options?): Promise<number>

Defined in: packages/agentos/src/cognition/nlp/ai_utilities/HybridUtilityAI.ts:160

Parameters​

text1​

string

text2​

string

options?​

SimilarityOptions

Returns​

Promise<number>

Implementation of​

IUtilityAI.calculateSimilarity


checkHealth()​

checkHealth(): Promise<{ dependencies?: object[]; details?: any; isHealthy: boolean; }>

Defined in: packages/agentos/src/cognition/nlp/ai_utilities/HybridUtilityAI.ts:176

Returns​

Promise<{ dependencies?: object[]; details?: any; isHealthy: boolean; }>

Implementation of​

IUtilityAI.checkHealth


classifyText()​

classifyText(textToClassify, options): Promise<ClassificationResult>

Defined in: packages/agentos/src/cognition/nlp/ai_utilities/HybridUtilityAI.ts:118

Parameters​

textToClassify​

string

options​

ClassificationOptions

Returns​

Promise<ClassificationResult>

Implementation of​

IUtilityAI.classifyText


detectLanguage()​

detectLanguage(text, options?): Promise<LanguageDetectionResult[]>

Defined in: packages/agentos/src/cognition/nlp/ai_utilities/HybridUtilityAI.ts:170

Parameters​

text​

string

options?​

LanguageDetectionOptions

Returns​

Promise<LanguageDetectionResult[]>

Implementation of​

IUtilityAI.detectLanguage


extractKeywords()​

extractKeywords(textToAnalyze, options?): Promise<string[]>

Defined in: packages/agentos/src/cognition/nlp/ai_utilities/HybridUtilityAI.ts:122

Parameters​

textToAnalyze​

string

options?​

KeywordExtractionOptions

Returns​

Promise<string[]>

Implementation of​

IUtilityAI.extractKeywords


generateNGrams()​

generateNGrams(tokens, options): Promise<Record<number, string[][]>>

Defined in: packages/agentos/src/cognition/nlp/ai_utilities/HybridUtilityAI.ts:152

Parameters​

tokens​

string[]

options​

NGramOptions

Returns​

Promise<Record<number, string[][]>>

Implementation of​

IUtilityAI.generateNGrams


initialize()​

initialize(config): Promise<void>

Defined in: packages/agentos/src/cognition/nlp/ai_utilities/HybridUtilityAI.ts:90

Parameters​

config​

UtilityAIConfigBase & Record<string, any>

Returns​

Promise<void>

Implementation of​

IUtilityAI.initialize


normalizeText()​

normalizeText(text, options?): Promise<string>

Defined in: packages/agentos/src/cognition/nlp/ai_utilities/HybridUtilityAI.ts:148

Parameters​

text​

string

options?​

TextNormalizationOptions

Returns​

Promise<string>

Implementation of​

IUtilityAI.normalizeText


parseJsonSafe()​

parseJsonSafe<T>(jsonString, options?): Promise<T | null>

Defined in: packages/agentos/src/cognition/nlp/ai_utilities/HybridUtilityAI.ts:126

Parses a string that is expected to be JSON: as it is, else from inside the Markdown code fence it is or holds, which a model asked for JSON alone often answers in. An LLM-backed class sends a text that still does not parse for repair when attemptFixWithLLM is set.

Type Parameters​

T​

T = any

The expected type of the parsed JSON object.

Parameters​

jsonString​

string

The string to parse.

options?​

ParseJsonOptions<T>

Options for parsing and fixing.

Returns​

Promise<T | null>

The parsed object, or null if parsing and fixing fail.

Implementation of​

IUtilityAI.parseJsonSafe


shutdown()​

shutdown(): Promise<void>

Defined in: packages/agentos/src/cognition/nlp/ai_utilities/HybridUtilityAI.ts:200

Returns​

Promise<void>

Implementation of​

IUtilityAI.shutdown


stemTokens()​

stemTokens(tokens, options?): Promise<string[]>

Defined in: packages/agentos/src/cognition/nlp/ai_utilities/HybridUtilityAI.ts:144

Parameters​

tokens​

string[]

options?​

StemmingOptions

Returns​

Promise<string[]>

Implementation of​

IUtilityAI.stemTokens


summarize()​

summarize(textToSummarize, options?): Promise<string>

Defined in: packages/agentos/src/cognition/nlp/ai_utilities/HybridUtilityAI.ts:114

Parameters​

textToSummarize​

string

options?​

SummarizationOptions

Returns​

Promise<string>

Implementation of​

IUtilityAI.summarize


tokenize()​

tokenize(text, options?): Promise<string[]>

Defined in: packages/agentos/src/cognition/nlp/ai_utilities/HybridUtilityAI.ts:140

Parameters​

text​

string

options?​

TokenizationOptions

Returns​

Promise<string[]>

Implementation of​

IUtilityAI.tokenize