Insight Extractor Reference¶
API reference for the cross-metric insight extraction module.
InsightExtractor
Bridges IssueExtractor output with EvidencePipeline for cross-metric pattern discovery and learning distillation.
InsightPattern
A discovered cluster enriched with cross-metric metadata — which metrics are involved, test case coverage, and confidence.
InsightResult
Complete result containing patterns, learnings, and the full pipeline result for advanced access.
InsightExtractor¶
axion.reporting.insight_extractor.InsightExtractor ¶
InsightExtractor(model_name: Optional[str] = None, llm=None, llm_provider: Optional[str] = None, method: ClusteringMethod = LLM, recurrence_threshold: int = 2, max_items: int = 50, min_category_size: int = 2, pipeline: Optional[EvidencePipeline] = None, **pipeline_kwargs)
Bridges IssueExtractor output with EvidencePipeline for cross-metric pattern discovery.
analyze
async
¶
analyze(extraction_result: IssueExtractionResult) -> InsightResult
Analyze extracted issues for cross-metric patterns.
Parameters:
-
extraction_result(IssueExtractionResult) –Output from IssueExtractor.extract_from_evaluation()
Returns:
-
InsightResult–InsightResult with discovered patterns and learnings.
analyze_sync ¶
analyze_sync(extraction_result: IssueExtractionResult) -> InsightResult
Synchronous wrapper for analyze().
Data Classes¶
InsightPattern¶
axion.reporting.insight_extractor.InsightPattern
dataclass
¶
InsightPattern(category: str, description: str, count: int, issue_ids: List[str], metrics_involved: List[str], is_cross_metric: bool, distinct_test_cases: int, examples: List[str], confidence: Optional[float] = None)
A cross-metric pattern discovered from evaluation issues.
InsightResult¶
axion.reporting.insight_extractor.InsightResult
dataclass
¶
InsightResult(patterns: List[InsightPattern], learnings: List[LearningArtifact], total_issues_analyzed: int, clustering_method: ClusteringMethod, pipeline_result: PipelineResult)
Complete result from insight extraction.
Adapter Function¶
_issue_to_evidence¶
axion.reporting.insight_extractor._issue_to_evidence ¶
_issue_to_evidence(issue: ExtractedIssue) -> Optional[EvidenceItem]
Convert ExtractedIssue -> EvidenceItem. Returns None if no meaningful text.