MCPcopy Index your code

hub / github.com/ChaokunHong/MetaScreener / types & classes

Types & classes214 in github.com/ChaokunHong/MetaScreener

↓ 60 callersClassSignalingQuestion
A single signaling question in a RoB domain. Attributes: id: Question identifier (e.g., "1.1"). text: Full question text.
src/metascreener/module3_quality/tools/base.py:11
↓ 55 callersClassMockLLMAdapter
Mock LLM adapter that returns predefined responses. Used exclusively for offline testing. Never call this in production. Args: model
src/metascreener/llm/adapters/mock.py:10
↓ 55 callersClassReviewCriteria
Structured review criteria supporting multiple frameworks. Generalises ``PICOCriteria`` to support PICO, PEO, SPIDER, and custom frameworks.
src/metascreener/core/models.py:390
↓ 50 callersClassCriteriaElement
A single criteria element (e.g., Population, Intervention). Represents one dimension of the review criteria with include/exclude terms, ambig
src/metascreener/core/models.py:316
↓ 37 callersClassRecord
A single literature record to be screened. Attributes: record_id: Unique identifier (auto-generated UUID if not provided). title:
src/metascreener/core/models.py:22
↓ 30 callersClassPICOAssessment
Assessment of a single PICO element from one LLM call. Attributes: match: Whether the record matches this element (None = unable to asses
src/metascreener/core/models.py:103
↓ 21 callersClassCriteriaWizard
Orchestrate the 5-step criteria generation pipeline. Steps: preprocess -> detect framework -> generate -> validate -> refine. Args:
src/metascreener/criteria/wizard.py:44
↓ 20 callersClassScreeningDecision
Final screening decision for one record (output of Layer 4). Attributes: record_id: Reference to the screened Record. stage: Scre
src/metascreener/core/models.py:180
↓ 18 callersClassEvaluationRunner
Orchestrate the full evaluation workflow. Computes screening metrics, AUROC, calibration metrics, and bootstrap CIs. Delegates to Phase 3 ca
src/metascreener/evaluation/calibrator.py:39
↓ 18 callersClassModelOutput
Output from a single LLM model for one record. Attributes: model_id: Identifier of the model (e.g., "qwen3", "deepseek-v3"). deci
src/metascreener/core/models.py:115
↓ 18 callersClassSessionManager
Save, load, and resume wizard sessions. Persists ``WizardSession`` objects as JSON files on disk, keyed by their ``session_id``. Supports lo
src/metascreener/criteria/session.py:22
↓ 17 callersClassDomainSchema
Schema for one RoB assessment domain. Attributes: domain: The RoB domain enum value. name: Human-readable domain name. si
src/metascreener/module3_quality/tools/base.py:26
↓ 17 callersClassRoB2Schema
Cochrane Risk of Bias 2 (RoB 2) tool schema for RCTs. Defines 5 domains with 22 signaling questions following the official Cochrane RoB 2 ins
src/metascreener/module3_quality/tools/rob2.py:273
↓ 17 callersClassWizardSession
State for an interactive criteria wizard session. Tracks the current step, draft criteria, and Q&A history so that the wizard can be resumed
src/metascreener/core/models.py:491
↓ 16 callersClassTAScreener
Title/Abstract screening orchestrator — full HCN pipeline. Runs the complete 4-layer HCN pipeline for each record and produces a ScreeningDec
src/metascreener/module1_screening/ta_screener.py:32
↓ 15 callersClassFieldDefinition
Definition of a single extraction form field. Attributes: type: The data type of the field. description: Human-readable descripti
src/metascreener/module2_extraction/form_schema.py:30
↓ 15 callersClassRoBAssessor
Orchestrator for multi-LLM risk of bias assessment. Pipeline: 1. Auto-select tool by StudyType (or manual override) 2. Chunk text (reuse
src/metascreener/module3_quality/assessor.py:24
↓ 14 callersClassDecisionRouter
Routes model outputs to a final decision and confidence tier. Uses configurable thresholds for tier assignment. Implements recall bias at Tie
src/metascreener/module1_screening/layer4/router.py:22
↓ 14 callersClassPICOCriteria
Structured inclusion/exclusion criteria based on PICO framework. Attributes: criteria_id: Unique identifier for this criteria set.
src/metascreener/core/models.py:58
↓ 13 callersClassCCAggregator
Calibrated Confidence Aggregator for ensemble LLM outputs. Computes a weighted, calibrated ensemble score and a decision agreement-based ense
src/metascreener/module1_screening/layer3/aggregator.py:27
↓ 13 callersClassExtractionEngine
Orchestrator for multi-LLM parallel data extraction. Implements the chunk-then-merge strategy: 1. Split text into chunks 2. For each chun
src/metascreener/module2_extraction/extractor.py:27
↓ 12 callersClassROBINSISchema
ROBINS-I tool schema for non-randomized studies of interventions. Defines 7 domains with 24 signaling questions following the official ROBINS
src/metascreener/module3_quality/tools/robins_i.py:318
↓ 10 callersClassQUADAS2Schema
QUADAS-2 tool schema for diagnostic accuracy studies. Defines 4 domains with 11 signaling questions following the official QUADAS-2 instrumen
src/metascreener/module3_quality/tools/quadas2.py:171
↓ 8 callersClassAUROCResult
AUROC computation result with ROC curve data points. Attributes: auroc: Area Under the ROC Curve. fpr: False positive rates at ea
src/metascreener/evaluation/models.py:41
↓ 8 callersClassPublicationTypeRule
Exclude records with non-primary publication types. Triggers on either the ``study_type`` field or title keyword matching. Unknown study type
src/metascreener/module1_screening/layer2/rules/publication_type.py:31
↓ 8 callersClassRuleEngine
Orchestrates all Layer 2 rules and produces a RuleCheckResult. Runs hard and soft rules in sequence, collects violations, and computes the to
src/metascreener/module1_screening/layer2/rule_engine.py:18
↓ 8 callersClassRuleViolation
A single rule violation detected by the semantic rule engine. Attributes: rule_name: Unique name of the violated rule. rule_type:
src/metascreener/core/models.py:143
↓ 8 callersClassTemplateLibrary
Load and search built-in criteria templates. Templates are stored as YAML files in the builtin_templates directory.
src/metascreener/criteria/templates.py:17
↓ 7 callersClassCalibrationBin
A single bin in the calibration reliability diagram. Attributes: bin_lower: Lower bound of the bin. bin_upper: Upper bound of the
src/metascreener/evaluation/models.py:55
↓ 7 callersClassPlattCalibrator
Platt scaling calibrator using logistic regression. Maps raw scores to calibrated probabilities via a sigmoid. Returns identity (input unchan
src/metascreener/module1_screening/layer3/calibration.py:17
↓ 7 callersClassPopulationPartialMatchRule
Penalize records where majority of models report population mismatch. Checks multiple element keys ("population", "sample") to support PICO,
src/metascreener/module1_screening/layer2/rules/population.py:19
↓ 7 callersClassQualityScore
Quality assessment of generated criteria on five dimensions. All scores are integers in [0, 100]. The ``suggestions`` list contains actionabl
src/metascreener/core/models.py:344
↓ 7 callersClassRoBDomainResult
Risk of Bias judgement for a single domain (Module 3). Attributes: domain: The RoB domain being assessed. judgement: Consensus Ro
src/metascreener/core/models.py:273
↓ 6 callersClassAmbiguousInterventionRule
Penalize records where models disagree on intervention match. Checks multiple element keys ("intervention", "comparison", "exposure", "phenom
src/metascreener/module1_screening/layer2/rules/intervention.py:27
↓ 6 callersClassCalibrationMetrics
Calibration quality metrics with per-bin data. Attributes: ece: Expected Calibration Error. mce: Maximum Calibration Error.
src/metascreener/evaluation/models.py:73
↓ 6 callersClassDecision
Screening decision for a single paper.
src/metascreener/core/enums.py:7
↓ 6 callersClassLanguageRule
Exclude records whose language is outside the allowed list. If ``criteria.language_restriction`` is set and the record's language is known an
src/metascreener/module1_screening/layer2/rules/language.py:8
↓ 6 callersClassStudyDesignRule
Exclude records whose study design is in the exclusion list. Matches ``record.study_type`` against ``criteria.study_design_exclude`` using ca
src/metascreener/module1_screening/layer2/rules/study_design.py:9
↓ 6 callersClassThresholdOptimizer
Optimize decision router thresholds via grid search. Searches over τ_high × τ_mid × τ_low to maximize automation rate (fraction of records no
src/metascreener/module1_screening/layer4/threshold_optimizer.py:36
↓ 6 callersClassThresholds
Threshold configuration for the DecisionRouter. Attributes: tau_high: Confidence threshold for Tier 1 (unanimous). tau_mid: Confi
src/metascreener/module1_screening/layer4/threshold_optimizer.py:22
↓ 6 callersClassWeightOptimizer
Learn and manage per-model weights for CCA aggregation. Weights are learned via SLSQP minimization of binary cross-entropy between weighted m
src/metascreener/module1_screening/layer3/weight_optimizer.py:18
↓ 5 callersClassCriteriaGenerator
Generate review criteria via LLM inference with optional multi-model consensus. When initialised with a single backend the generator operates in
src/metascreener/criteria/generator.py:34
↓ 5 callersClassFrameworkDetector
Detect the most appropriate SR framework using an LLM. Args: backend: LLM backend for inference.
src/metascreener/criteria/framework_detector.py:40
↓ 5 callersClassInferenceEngine
Layer 1 orchestrator: builds prompt + runs all backends in parallel. Uses ``PromptRouter`` to select the framework-specific prompt template,
src/metascreener/module1_screening/layer1/inference.py:16
↓ 5 callersClassIsotonicCalibrator
Isotonic regression calibrator. Maps raw scores to calibrated probabilities using isotonic regression, which produces a monotonically non-dec
src/metascreener/module1_screening/layer3/calibration.py:103
↓ 5 callersClassPromptRouter
Routes criteria framework to the appropriate prompt template. Maps ``CriteriaFramework`` enum values to their corresponding ``ScreeningPrompt
src/metascreener/module1_screening/layer1/prompts/__init__.py:16
↓ 5 callersClassScreeningMetrics
Screening performance metrics. Attributes: sensitivity: True positive rate (recall). specificity: True negative rate. pre
src/metascreener/evaluation/models.py:15
↓ 5 callersClassUnsupportedFormatError
Unsupported file format.
src/metascreener/core/exceptions.py:47
↓ 5 callersClassValidationWarning
A warning generated during extraction validation. Attributes: field_name: The field that triggered the warning. message: Human-re
src/metascreener/module2_extraction/validator.py:16
↓ 4 callersClassBootstrapResult
Bootstrap confidence interval result. Attributes: point: Point estimate of the metric. ci_lower: Lower bound of the 95% CI.
src/metascreener/evaluation/models.py:89
↓ 4 callersClassCriteriaError
Invalid or incomplete PICO criteria.
src/metascreener/core/exceptions.py:62
↓ 4 callersClassExtractionForm
User-defined extraction form loaded from YAML. Attributes: form_name: Human-readable name of the form. form_version: Version stri
src/metascreener/module2_extraction/form_schema.py:50
↓ 4 callersClassFormWizard
AI-assisted extraction form generator. Uses a single LLM backend to generate a draft extraction form from a research topic description.
src/metascreener/module2_extraction/form_wizard.py:65
↓ 4 callersClassFrameworkDetectionResult
Result of framework auto-detection. Attributes: framework: The detected or overridden framework. confidence: Confidence score (0.
src/metascreener/criteria/framework_detector.py:22
↓ 4 callersClassGenericPrompt
Screening prompt for CUSTOM or unsupported frameworks. Renders all elements in ``criteria.elements`` using their ``name`` field as the label,
src/metascreener/module1_screening/layer1/prompts/ta_generic_v1.py:9
↓ 4 callersClassOutcomePartialMatchRule
Penalize records where majority of models report outcome mismatch. Checks multiple element keys ("outcome", "evaluation") to support PICO, PE
src/metascreener/module1_screening/layer2/rules/outcome.py:19
↓ 4 callersClassParallelRunner
Runs multiple LLM backends in parallel and collects their outputs. Args: backends: Sequence of LLMBackend instances to run in parallel.
src/metascreener/llm/parallel_runner.py:22
↓ 4 callersClassRoBResult
Complete Risk of Bias assessment for one paper (Module 3). Attributes: record_id: Reference to the assessed Record. tool: Name of
src/metascreener/core/models.py:293
↓ 4 callersClassRuleCheckResult
Result of the semantic rule engine for one record (Layer 2 output). Attributes: hard_violations: List of hard rule violations (each trigg
src/metascreener/core/models.py:159
↓ 4 callersClassValidationIssue
A single validation issue found during rule-based checks. Attributes: severity: Issue severity ('error', 'warning', 'info'). elem
src/metascreener/criteria/validator.py:30
↓ 3 callersClassCriteriaFramework
Systematic review criteria framework type.
src/metascreener/core/enums.py:107
↓ 3 callersClassCriteriaTemplate
Pre-built criteria template for common review types. Templates provide a starting point for criteria generation and can be customised by the
src/metascreener/core/models.py:516
↓ 3 callersClassEvaluationReport
Complete evaluation report with all metrics and CIs. Attributes: metrics: Screening performance metrics. auroc: AUROC with ROC cu
src/metascreener/evaluation/models.py:103
↓ 3 callersClassFieldValidation
Numeric validation constraints for an extraction field. Attributes: min: Minimum allowed value (inclusive). max: Maximum allowed
src/metascreener/module2_extraction/form_schema.py:18
↓ 3 callersClassGenerationAudit
Audit trail for AI-assisted criteria generation. Records how criteria were generated, which models participated, and the raw per-model output
src/metascreener/core/models.py:367
↓ 3 callersClassOpenRouterAdapter
LLM adapter using the OpenRouter API. Args: model_id: Internal model identifier (e.g., 'qwen3'). openrouter_model_name: OpenRoute
src/metascreener/llm/adapters/openrouter.py:25
↓ 3 callersClassPEOPrompt
Screening prompt for PEO (Population, Exposure, Outcome).
src/metascreener/module1_screening/layer1/prompts/ta_peo_v1.py:9
↓ 3 callersClassPICOPrompt
Screening prompt for PICO (Population, Intervention, Comparison, Outcome).
src/metascreener/module1_screening/layer1/prompts/ta_pico_v1.py:9
↓ 3 callersClassTier
Hierarchical decision routing tier (Layer 4). Lower value = higher priority.
src/metascreener/core/enums.py:15
↓ 2 callersClassLLMError
Base for all LLM-related failures.
src/metascreener/core/exceptions.py:13
↓ 2 callersClassLLMParseError
Failed to parse LLM JSON response.
src/metascreener/core/exceptions.py:29
↓ 2 callersClassLLMRateLimitError
LLM API rate limit exceeded.
src/metascreener/core/exceptions.py:25
↓ 2 callersClassLLMTimeoutError
LLM API call timed out.
src/metascreener/core/exceptions.py:21
↓ 2 callersClassMetaScreenerConfig
Root configuration for MetaScreener. Attributes: models: Registry of available LLM models. thresholds: Decision router threshold
src/metascreener/config.py:67
↓ 2 callersClassPCCPrompt
Screening prompt for PCC (Population, Concept, Context).
src/metascreener/module1_screening/layer1/prompts/ta_pcc_v1.py:9
↓ 2 callersClassPDFParseError
Failed to extract text from PDF.
src/metascreener/core/exceptions.py:57
↓ 2 callersClassRoBJudgement
Risk of Bias judgement for a single domain.
src/metascreener/core/enums.py:76
↓ 2 callersClassSPIDERPrompt
Screening prompt for SPIDER framework. SPIDER: Sample, Phenomenon of Interest, Design, Evaluation, Research type.
src/metascreener/module1_screening/layer1/prompts/ta_spider_v1.py:9
↓ 2 callersClassScreeningStage
Screening stage identifier.
src/metascreener/core/enums.py:100
↓ 1 callersClassAuditEntry
Complete TRIPOD-LLM audit trail entry for one screening decision. Captures all information needed to fully reproduce a screening decision, in
src/metascreener/core/models.py:208
↓ 1 callersClassCalibrationError
Calibration failed due to insufficient data.
src/metascreener/core/exceptions.py:66
↓ 1 callersClassConcreteBackend
Minimal concrete implementation for testing.
tests/unit/test_llm_base.py:11
↓ 1 callersClassExtractionResult
Data extraction result for one paper (Module 2). Attributes: record_id: Reference to the source Record. form_version: Version of
src/metascreener/core/models.py:249
↓ 1 callersClassInferenceConfig
LLM inference configuration. Attributes: temperature: Sampling temperature (0.0 for deterministic). timeout_s: Timeout per LLM ca
src/metascreener/config.py:53
↓ 1 callersClassMetaScreenerError
Base exception for all MetaScreener errors.
src/metascreener/core/exceptions.py:8
↓ 1 callersClassModelEntry
A single LLM model configuration entry. Attributes: name: Full model name (e.g., "Qwen/Qwen3-235B-A22B-Instruct"). version: Versi
src/metascreener/config.py:14
↓ 1 callersClassRoBToolSchema
Abstract base class for Risk of Bias tool schemas. Each concrete subclass defines the domains, signaling questions, and overall judgement log
src/metascreener/module3_quality/tools/base.py:42
↓ 1 callersClassScreeningPrompt
Abstract base class for screening prompt templates. Subclasses implement ``build_criteria_section`` to render framework-specific criteria (PI
src/metascreener/module1_screening/layer1/prompts/base.py:15
↓ 1 callersClassThresholdConfig
Decision router threshold configuration. Attributes: tau_high: Confidence threshold for Tier 1 (unanimous). tau_mid: Confidence t
src/metascreener/config.py:36
↓ 1 callersClass_BadMockAdapter
Mock adapter that returns invalid JSON to trigger parse errors.
tests/unit/test_extractor.py:21
ClassConfidenceLevel
Qualitative confidence level.
src/metascreener/core/enums.py:27
ClassConsensusMerger
Merge criteria from multiple LLM outputs using exact-string consensus. Current implementation uses exact string matching for merging. Semanti
src/metascreener/criteria/consensus.py:16
ClassCriteriaInputMode
How criteria input is provided.
src/metascreener/core/enums.py:127
ClassCriteriaSchema
Read/write ReviewCriteria as YAML with legacy format migration.
src/metascreener/criteria/schema.py:20
ClassCriteriaValidator
Validate review criteria via rule-based checks and LLM quality assessment. Provides two validation layers: - ``validate_rules`` (Layer 1): Fa
src/metascreener/criteria/validator.py:44
ClassExtractionFieldType
Data type for extraction form fields.
src/metascreener/core/enums.py:88
ClassIOError
Base for file I/O failures.
src/metascreener/core/exceptions.py:43
ClassInputPreprocessor
Static utility class for preprocessing raw text input. Handles PDF noise removal, text truncation with word-boundary awareness, and simple Un
src/metascreener/criteria/preprocessor.py:28
ClassLLMBackend
Abstract base class for all LLM adapters. Subclasses must implement `_call_api()` and `model_version`. All calls use temperature=0.0 for repr
src/metascreener/llm/base.py:164
ClassRoBDomain
Risk of Bias assessment domains (shared prefix convention).
src/metascreener/core/enums.py:50
next →1–100 of 214, ranked by callers