predict

abstract suspend fun predict(contextData: List<InteractionData> = emptyList(), instructions: List<KarlInstruction> = emptyList()): Prediction?(source)

Generates predictions and suggestions based on current learned patterns and context.

This method leverages the learned model to provide intelligent suggestions, recommendations, or predictions based on the user's historical behavior patterns and current context. It represents the primary value delivery mechanism of the KARL system, translating learned patterns into actionable insights that enhance user experience.

Prediction generation process:

  1. Context analysis: Process recent interactions and environmental factors

  2. Pattern matching: Identify relevant learned patterns from historical data

  3. Inference execution: Run model inference to generate raw predictions

  4. Post-processing: Apply filters, ranking, and formatting to raw outputs

  5. Quality validation: Ensure predictions meet confidence and relevance thresholds

Context integration strategies:

Temporal context:

  • Time of day, day of week, seasonal patterns

  • Interaction frequency and timing distributions

  • Session duration and break patterns

  • Historical activity cycles and trends

Sequential context:

  • Recent interaction sequences and chains

  • Common workflow patterns and transitions

  • Error patterns and recovery sequences

  • Learning progression and skill development

Environmental context:

  • Application state and available features

  • Device capabilities and resource constraints

  • Network connectivity and performance factors

  • User preferences and accessibility settings

Instruction processing and customization: User-defined instructions provide fine-grained control over prediction behavior:

Filtering instructions:

  • Exclude specific types of suggestions or recommendations

  • Apply content filters or appropriateness constraints

  • Respect privacy settings and data usage preferences

  • Honor accessibility and usability requirements

Ranking instructions:

  • Prioritize certain types of predictions over others

  • Apply user-specific weighting to prediction factors

  • Customize confidence thresholds for different contexts

  • Implement domain-specific scoring and evaluation criteria

Formatting instructions:

  • Control presentation style and verbosity of suggestions

  • Specify preferred communication patterns and terminology

  • Apply localization and cultural adaptation rules

  • Customize timing and frequency of suggestion delivery

Prediction quality and reliability:

Confidence estimation:

  • Quantify uncertainty in predictions using statistical measures

  • Provide confidence intervals and reliability indicators

  • Identify when insufficient data exists for reliable predictions

  • Distinguish between interpolation and extrapolation scenarios

Alternative generation:

  • Provide multiple prediction options ranked by likelihood

  • Generate diverse suggestions to avoid filter bubbles

  • Include explanations and reasoning for complex predictions

  • Offer fallback suggestions when primary predictions are uncertain

Validation and verification:

  • Check predictions against known constraints and rules

  • Validate output format and semantic correctness

  • Ensure predictions are actionable and relevant

  • Monitor prediction accuracy over time for continuous improvement

Performance optimization:

  • Cache frequently requested predictions and common patterns

  • Use approximate inference for real-time response requirements

  • Implement prediction pre-computation for anticipated requests

  • Balance accuracy against response time based on usage context

Error handling and graceful degradation:

  • Return null when no meaningful prediction can be generated

  • Provide meaningful error information without exposing internal details

  • Implement fallback to simpler prediction methods when complex models fail

  • Log prediction failures for debugging and model improvement

Return

A Prediction object containing the suggestion, confidence level, type classification, metadata, and alternative options. Returns null if no meaningful prediction can be generated with sufficient confidence.

Parameters

contextData

Optional list of recent interaction events that provide context for prediction generation. These interactions inform the model about the current user session, recent activities, and environmental factors that may influence prediction relevance and accuracy.

instructions

Optional list of user-defined instructions that customize prediction behavior. These instructions can filter, rank, or modify predictions based on user preferences, privacy settings, and domain-specific requirements.

See also

for detailed prediction format documentation

for instruction types and usage patterns

for context data format requirements

Throws

IllegalStateException

if engine is not properly initialized

ModelException

if prediction generation encounters irrecoverable errors

ResourceException

if insufficient resources for inference operation