Inferensys

Prompt

Composite Score Aggregation Prompt Template

A practical prompt playbook for engineering leads combining multiple evaluation signals into a single release gate with weighted aggregation formulas, normalization rules, and veto conditions.
Developer doing prompt engineering on laptop, prompt variations visible on screen, casual coding session.
PROMPT PLAYBOOK

When to Use This Prompt

Define the job, reader, and constraints for the Composite Score Aggregation Prompt Template.

This prompt is for engineering leads and AI platform teams who need to combine multiple evaluation signals—such as correctness, safety, relevance, and schema conformance—into a single, defensible release gate. The job-to-be-done is not just arithmetic; it is to produce a weighted aggregation formula, normalization rules, and explicit veto conditions that the team can inspect, tune, and audit before shipping a prompt or model change. The ideal user is someone who already has per-axis eval scores (from rubric judges, hallucination detectors, or schema validators) and now needs to decide how those scores combine into a final pass/fail decision.

Use this prompt when you have at least three independent eval axes, when different axes carry different business risk (e.g., safety failures are worse than style issues), and when you need the aggregation logic to be transparent enough for a release governance review. The prompt expects structured inputs: axis names, raw scores, score ranges, and risk priorities. It produces a concrete aggregation spec with weights, normalization functions, and veto conditions. Do not use this prompt when you have only one or two eval signals—a simple AND/OR gate in application code is cheaper and more auditable. Do not use it when the eval axes are not yet calibrated or when individual axis scores are unreliable; aggregation cannot fix broken upstream measurement.

The prompt also includes sensitivity analysis instructions, which is critical for release governance. It asks the model to show how small weight changes alter pass/fail outcomes for borderline cases, helping the team understand which decisions are robust and which are fragile. This is not a prompt for generating a single magic number. It is a prompt for producing a decision framework that can be reviewed, challenged, and version-controlled alongside the eval harness itself. After using this prompt, the output should be converted into executable validation code, not left as a model-generated suggestion. Human review is required before the aggregation formula gates any production release.

PRACTICAL GUARDRAILS

Use Case Fit

Where the Composite Score Aggregation Prompt works, where it breaks, and what you must provide before using it.

01

Good Fit: Multi-Signal Release Gates

Use when: you have 3+ independent eval signals (e.g., correctness, safety, schema conformance) that must combine into a single pass/fail decision. Guardrail: ensure each input signal is already normalized to a consistent scale before aggregation.

02

Good Fit: Weighted Trade-Off Decisions

Use when: stakeholders disagree on metric importance and you need to model how different weight assignments change outcomes. Guardrail: run sensitivity analysis across plausible weight ranges and flag thresholds where decisions flip.

03

Bad Fit: Single Metric Evaluations

Avoid when: you only have one eval metric. Aggregation adds complexity without benefit. Guardrail: use a single-metric threshold prompt instead, and only introduce aggregation when multiple independent signals exist.

04

Bad Fit: Uncalibrated Input Signals

Avoid when: input scores come from uncalibrated judges with unknown reliability. Aggregating noisy signals amplifies error. Guardrail: calibrate each judge independently and measure inter-rater reliability before feeding scores into aggregation.

05

Required Inputs: Normalized Scores and Veto Rules

Must provide: per-metric scores on a consistent scale, explicit veto conditions (e.g., safety score below 0.5 always fails), and weight assignments with justification. Guardrail: document the normalization method and veto logic so downstream consumers understand edge cases.

06

Operational Risk: Hidden Weight Interactions

What to watch: small weight changes can silently shift pass/fail boundaries when metrics are correlated. Guardrail: include a sensitivity matrix showing how each weight change affects aggregate outcomes, and set review gates when weights are modified.

PROMPT PLAYBOOK

Copy-Ready Prompt Template

A reusable prompt template for aggregating multiple evaluation signals into a single, weighted composite score with normalization rules and veto conditions.

This template is the core engine for your composite score aggregation workflow. It accepts a set of individual evaluation scores, their associated metadata (weights, directions, thresholds), and a defined aggregation strategy. The model's job is not to re-evaluate the underlying content but to apply the specified mathematical and logical rules to produce a final, auditable composite score and a structured pass/fail recommendation. Use this when you have already run separate evals (e.g., correctness, relevance, safety) and need a consistent, programmable gate to combine them.

Below is the copy-ready prompt template. All placeholders are in square brackets and must be replaced by your application logic before sending the request to the model. The prompt is designed to be deterministic; it instructs the model to act as a calculator, not a judge. The [AGGREGATION_RULES] placeholder is where you inject your specific formula, such as a weighted sum, a harmonic mean, or a cascading veto logic. The [NORMALIZATION_RULES] section should specify how to scale disparate scores (e.g., 1-5 rubrics vs. 0-1 probabilities) to a common range before aggregation.

text
SYSTEM:
You are a precise score aggregation engine. Your only task is to combine multiple input scores into a single composite score based on the provided rules. Do not re-score, interpret, or critique the inputs. Apply the rules exactly and output the result in the specified JSON schema. If any veto condition is met, the composite score must be set to the veto value and the pass/fail status must be 'FAIL'.

USER:
Aggregate the following evaluation scores into a single composite score.

## INPUT SCORES
[INPUT_SCORES]

## AGGREGATION RULES
[AGGREGATION_RULES]

## NORMALIZATION RULES
[NORMALIZATION_RULES]

## VETO CONDITIONS
[VETO_CONDITIONS]

## OUTPUT SCHEMA
[OUTPUT_SCHEMA]

## CONSTRAINTS
- Apply normalization before aggregation.
- Check veto conditions after calculating the initial composite score.
- Round the final composite score to [DECIMAL_PRECISION] decimal places.
- Set the `pass` field to `true` only if the final composite score is >= [PASS_THRESHOLD] and no veto condition is active.

To adapt this template, start by defining your [INPUT_SCORES] as a structured list of objects, each with a name, value, and weight. The [AGGREGATION_RULES] should be a clear formula, such as weighted_sum = (score1 * weight1) + (score2 * weight2). The [VETO_CONDITIONS] are critical for safety and quality; a typical rule is IF safety_score < 0.5 THEN composite_score = 0 AND pass = false. The [OUTPUT_SCHEMA] should be a strict JSON schema that includes fields for the final composite score, a pass/fail boolean, a list of triggered vetoes, and the normalized inputs used in the calculation. This ensures the output is machine-readable and auditable. For high-stakes release gates, always log the full input and output payload from this prompt to create an audit trail that explains exactly why a build was promoted or blocked.

IMPLEMENTATION TABLE

Prompt Variables

Required inputs for the Composite Score Aggregation Prompt Template. Each placeholder must be populated before the prompt is assembled and sent. Missing or malformed inputs are the most common cause of aggregation failures in production eval harnesses.

PlaceholderPurposeExampleValidation Notes

[SCORE_PAYLOAD]

JSON array of per-eval scores, each with metric name, value, and optional confidence

[{"metric": "hallucination", "score": 0.92, "confidence": 0.88}, {"metric": "relevance", "score": 0.74, "confidence": 0.95}]

Must be valid JSON array. Each object requires 'metric' (string) and 'score' (float 0.0-1.0). 'confidence' is optional float 0.0-1.0. Reject if array is empty or any score is out of range.

[METRIC_WEIGHTS]

JSON object mapping each metric name to its weight in the composite formula

{"hallucination": 0.4, "relevance": 0.3, "instruction_following": 0.2, "toxicity": 0.1}

Must be valid JSON object. Keys must match all metric names in [SCORE_PAYLOAD]. Values must be positive floats summing to 1.0 (±0.001 tolerance). Reject if weights do not sum to 1.0 or if any metric is missing a weight.

[VETO_CONDITIONS]

JSON array of veto rules that override the composite score regardless of weight

[{"metric": "toxicity", "threshold": 0.3, "operator": "below"}, {"metric": "hallucination", "threshold": 0.5, "operator": "below"}]

Must be valid JSON array. Each rule requires 'metric' (string matching a key in [SCORE_PAYLOAD]), 'threshold' (float 0.0-1.0), and 'operator' (enum: 'below' or 'above'). Reject if operator is invalid or metric name does not exist in payload.

[NORMALIZATION_METHOD]

String specifying how scores are normalized before aggregation

min_max

Must be one of: 'min_max', 'z_score', 'none'. If 'none', raw scores are used directly. If 'z_score', require at least 3 scores per metric for meaningful normalization. Reject if method is unrecognized.

[PASS_THRESHOLD]

Float defining the minimum composite score required for overall pass

0.75

Must be float between 0.0 and 1.0 inclusive. Reject if non-numeric or out of range. If any veto condition triggers, pass_threshold is ignored and result is FAIL.

[SENSITIVITY_CONFIG]

JSON object controlling weight perturbation range for sensitivity analysis

{"enabled": true, "perturbation": 0.05, "iterations": 100}

Must be valid JSON object. 'enabled' must be boolean. If true, 'perturbation' must be float 0.01-0.20 and 'iterations' must be integer 10-1000. Reject if perturbation exceeds 0.20 or iterations exceed 1000 to prevent runaway cost.

[OUTPUT_FORMAT]

String specifying the desired output structure

full_report

Must be one of: 'gate_only', 'summary', 'full_report'. 'gate_only' returns pass/fail boolean. 'summary' adds composite score and veto status. 'full_report' includes per-metric breakdown, sensitivity analysis, and veto details. Reject if unrecognized.

PROMPT PLAYBOOK

Implementation Harness Notes

How to wire the composite score aggregation prompt into an automated release gate or CI/CD pipeline.

This prompt is designed to be the final decision layer in an automated evaluation pipeline, not a standalone tool. It consumes structured eval results from upstream judges—such as rubric scores, pairwise comparisons, and hallucination checks—and produces a deterministic aggregation formula, normalization rules, and veto conditions. The output is a machine-readable specification that your release gate logic can execute without further model inference. Treat this prompt as a policy compiler: it translates human-defined quality priorities into executable pass/fail logic.

To integrate this into an application, first ensure that all upstream eval metrics are collected in a consistent schema before calling this prompt. The input should be a JSON object containing metric names, raw scores, score ranges, and any per-metric pass/fail thresholds already defined. The prompt expects a [WEIGHT_PREFERENCES] block where you specify relative importance (e.g., "hallucination_rate" > "latency" > "format_compliance"). After receiving the model's output, validate the generated aggregation formula by running it against a golden dataset of known score combinations where the correct pass/fail outcome is pre-labeled. If the formula produces unexpected results on any golden case, flag it for human review before deployment. Log every aggregation decision with the formula version, input scores, and final verdict for auditability.

For production hardening, implement a sensitivity analysis harness around this prompt. After the model proposes weights, programmatically perturb each weight by ±5% and ±10% and re-evaluate the last 100 release candidates. If the pass/fail outcome flips for more than 2% of cases under minor weight changes, the aggregation is too brittle—reject it and request a revised formula with broader stability margins. Additionally, enforce veto condition validation: any veto rule generated by the prompt (e.g., "fail if hallucination_rate > 0.05") must be cross-checked against your organization's safety and compliance policies before activation. Veto conditions that bypass human-defined red-line thresholds should trigger an immediate escalation. Use a model with strong reasoning capabilities (such as Claude 3.5 Sonnet or GPT-4o) for the aggregation design step, but execute the resulting formula in deterministic application code—never in a model—to ensure consistent, reproducible gate decisions.

Avoid using this prompt for real-time per-request gating. The aggregation formula is designed for batch release gates (daily builds, PR merges, canary promotions), not for scoring individual user interactions. For per-request quality checks, use lightweight, pre-compiled rules derived from a previously approved aggregation run. Store each approved formula as a versioned artifact in your prompt registry alongside its sensitivity analysis report, golden dataset results, and the human approver's identity. When upstream eval metrics change—such as adding a new judge or modifying a rubric—re-run this prompt to generate an updated aggregation formula and repeat the full validation harness before promoting it.

IMPLEMENTATION TABLE

Expected Output Contract

Defines the exact JSON payload expected from the Composite Score Aggregation prompt. Use this contract to validate outputs programmatically before accepting the aggregation result.

Field or ElementType or FormatRequiredValidation Rule

aggregation_formula

string (LaTeX or plain math)

Must parse as a valid mathematical expression referencing only defined metric keys. Check for division by zero when weights sum to zero.

metric_weights

object (key: string, value: number)

Keys must match metric names in [METRIC_DEFINITIONS]. Values must be finite numbers. Sum of absolute values must be > 0. Null or missing keys trigger retry.

normalization_rules

array of objects

Each object must contain 'metric', 'method' (enum: min-max, z-score, sigmoid, none), and 'params'. If method is not 'none', params must be a valid object with required fields for that method.

veto_conditions

array of objects

If present, each object must contain 'metric', 'operator' (enum: <, >, <=, >=, ==, !=), and 'threshold' (number). A null array is allowed and means no veto conditions.

composite_score

number

Must be a finite number. If all metrics are normalized to [0,1], score must fall within [0,1]. Negative scores allowed only if normalization rules explicitly permit them.

pass_fail

boolean

Must be true if no veto condition is triggered AND composite_score >= [PASS_THRESHOLD]. Must be false otherwise. Invert and re-check if mismatch detected.

sensitivity_analysis

object

Must contain 'weight_variations' (array of objects with 'weight_delta' and 'resulting_score') and 'threshold_variations' (array of objects with 'threshold_delta' and 'resulting_pass_fail'). At least 3 variations per array.

veto_triggered

boolean or null

Must be true if any veto condition evaluated to true, false if none triggered. Must be null only if veto_conditions array is empty or null. Cross-validate against pass_fail.

PRACTICAL GUARDRAILS

Common Failure Modes

Composite score aggregation is a powerful release gate, but it can mask individual metric failures, amplify bias, and create a false sense of precision. These are the most common failure modes and how to guard against them.

01

Compensation Failure

What to watch: A catastrophic failure in one critical metric (e.g., safety or hallucination) is hidden by high scores in less important metrics (e.g., style or verbosity). The composite score passes, but the output is unsafe. Guardrail: Implement hard veto conditions for critical metrics. If the safety score falls below a defined threshold, the composite score automatically fails, regardless of the weighted average.

02

Weight Sensitivity Drift

What to watch: Small, seemingly insignificant changes to metric weights cause large swings in the pass/fail outcome for borderline cases. This makes the gate feel arbitrary and erodes trust in the release process. Guardrail: Run a sensitivity analysis as part of the aggregation prompt. The output must include a report showing how the pass/fail decision changes when each weight is perturbed by ±10%.

03

Metric Score Collinearity

What to watch: Two or more metrics are highly correlated (e.g., "factual accuracy" and "grounding score"). The composite score double-counts a single underlying failure mode, giving it disproportionate influence over the final gate. Guardrail: The prompt must instruct the model to check for collinearity in the input scores. If detected, the aggregation formula should apply a correction factor or flag the redundancy for a human reviewer.

04

Normalization Distortion

What to watch: Raw scores from different judges are on different scales (e.g., 1-5 vs. 0-100). A naive average distorts the composite score, giving more weight to metrics with larger numeric ranges. Guardrail: The prompt must enforce a strict normalization step before aggregation. All scores must be mapped to a common 0.0–1.0 scale using a defined method (e.g., min-max scaling) before weights are applied.

05

Confidence Neglect

What to watch: The aggregation treats all metric scores as equally certain. A low-confidence score from a flaky judge is given the same weight as a high-confidence score from a reliable one, injecting noise into the release gate. Guardrail: Require each metric input to include a confidence score. The aggregation formula must discount low-confidence metrics or propagate an aggregate uncertainty score alongside the final composite value.

06

Threshold Overfitting

What to watch: The pass/fail threshold is tuned to perfection on a static golden dataset but fails in production when the distribution of real-world inputs shifts. The gate becomes either too strict (blocking good releases) or too lenient (passing bad ones). Guardrail: The prompt must generate a threshold recommendation based on historical score distributions, not just a single number. It should include a margin of error and a warning about the expected false-positive and false-negative rates.

IMPLEMENTATION TABLE

Evaluation Rubric

Criteria for validating the Composite Score Aggregation Prompt Template before deployment. Use this rubric to gate the prompt's output quality, formula correctness, and sensitivity analysis reliability.

CriterionPass StandardFailure SignalTest Method

Weighted aggregation formula correctness

Output formula matches specified weights and normalization rules exactly; all weight coefficients sum to 1.0

Weights do not sum to 1.0; normalization step is missing or incorrectly applied; formula references undefined variables

Parse the output formula string, extract coefficients, verify sum equals 1.0 within 0.001 tolerance; cross-check against [WEIGHTS] input

Veto condition enforcement

All veto conditions from [VETO_RULES] are present and correctly gated; any veto trigger forces overall score to FAIL regardless of weighted total

Missing veto condition; veto triggered but score still shows PASS; veto logic inverted

Inject test inputs that trigger each veto condition; assert output score equals FAIL and veto reason is cited

Sensitivity analysis completeness

Output includes a sensitivity table showing pass/fail outcome for at least 3 weight perturbation scenarios per axis; direction of impact is correctly labeled

Sensitivity table missing; fewer than 3 perturbations per axis; perturbation direction contradicts weight change direction

Verify sensitivity table has rows for each eval axis; check that increasing an axis weight by 5% shifts outcome toward that axis's score direction

Normalization rule documentation

Normalization method is explicitly stated; min-max bounds or z-score parameters are documented; edge cases for out-of-range inputs are handled

Normalization method not specified; out-of-range input produces undefined result; different axes use inconsistent normalization without justification

Submit inputs at boundary values and beyond; assert output either clamps, rejects, or flags out-of-range values with a documented rule

Threshold pass/fail boundary clarity

Pass threshold is explicitly stated; score exactly at threshold is classified consistently; tie-breaking rule is documented

Threshold value missing; score at boundary produces inconsistent pass/fail across runs; no tie-breaking rule

Run 5 evaluations with score exactly at threshold; assert all 5 produce identical pass/fail classification

Input schema validation

Prompt rejects missing [SCORES], [WEIGHTS], or [THRESHOLD] inputs with a structured error rather than hallucinating defaults

Missing required input produces hallucinated aggregation; silent default applied without documentation

Submit request with each required field omitted individually; assert output contains validation error, not a fabricated score

Output schema conformance

Output is valid JSON matching [OUTPUT_SCHEMA]; all required fields present; no extra fields beyond schema definition

JSON parse failure; missing required field; extra field injected; field type mismatch

Validate output against JSON schema; assert strict mode passes with no additional properties allowed

Score traceability and justification

Final composite score is accompanied by a breakdown showing each axis contribution; veto status is explicitly reported

Final score provided without per-axis breakdown; veto status omitted; contribution math does not reconcile to final score

Sum per-axis weighted contributions; assert total matches final composite score within rounding tolerance; assert veto status field is present and boolean

ADAPTATION OPTIONS

Adapt This Prompt

How to adapt

Start with the base aggregation prompt but remove strict schema enforcement. Use natural language output describing the composite score, weight rationale, and pass/fail recommendation. Accept free-text metric inputs instead of structured arrays.

code
Given these evaluation results:
[METRIC_RESULTS]

And these weights:
[WEIGHT_CONFIG]

Produce a composite score summary with a clear pass/fail recommendation.

Watch for

  • Inconsistent aggregation logic across runs
  • Missing normalization when metrics use different scales
  • No veto-condition enforcement
  • Overconfident recommendations without uncertainty language
Prasad Kumkar

About the author

Prasad Kumkar

CEO & MD, Inference Systems

Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.

His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.