Inferensys

Prompt

Source Trustworthiness Batch Scoring Prompt for Pipelines

A practical prompt playbook for using Source Trustworthiness Batch Scoring Prompt for Pipelines in production AI workflows.
Developer doing prompt engineering on laptop, prompt variations visible on screen, casual coding session.
PROMPT PLAYBOOK

When to Use This Prompt

Determine if batch source scoring fits your evidence ingestion pipeline architecture.

This playbook is for engineering teams running evidence ingestion pipelines that process large document collections. The prompt scores multiple sources in a single pass, producing structured output optimized for database insertion. Use it when you need to assign credibility scores, authority tiers, and confidence calibrations to hundreds or thousands of sources before they enter your RAG retrieval index. This prompt assumes you have already extracted source metadata (URL, domain, author, publication date, publisher) and need batch-level consistency checks across the entire set.

The ideal user is a pipeline engineer or trust-and-safety developer who controls the ingestion path and needs deterministic, comparable scores across sources. You should have a metadata store or document database ready to receive structured JSON output. The prompt works best when sources share a common domain context—scoring a mix of academic papers, news articles, and government reports in one batch is fine, but the scoring criteria must apply uniformly. If your sources span radically different authority models (e.g., legal precedents vs. social media posts), split them into separate batches with domain-specific constraints.

Do not use this prompt for real-time single-source scoring during query time. The batch design trades latency for throughput and cross-source consistency checks. For latency-sensitive paths where a user submits a query and you need to score one retrieved source immediately, use the Multi-Factor Source Credibility Scoring Prompt Template instead. Also avoid this prompt when source metadata is incomplete—if you lack publication dates, author information, or publisher domains for most sources, the batch consistency checks will produce low-confidence scores across the board, wasting compute and storage.

Before running this prompt at scale, validate your metadata extraction pipeline. Missing or malformed fields will degrade scoring quality. Start with a small batch of 20-50 sources, review the output distribution, and calibrate thresholds before processing thousands of records. The structured output includes confidence intervals and flag fields specifically designed for downstream filtering, so wire those into your database schema and retrieval weighting logic from the start.

PRACTICAL GUARDRAILS

Use Case Fit

Where this prompt works and where it does not. Use these cards to decide if batch source scoring fits your pipeline architecture and operational constraints.

01

Good Fit: High-Volume Ingestion Pipelines

Use when: processing thousands of documents per run where per-document API calls would exceed rate limits or budget. Why it works: single-pass batch scoring amortizes model overhead across multiple sources, producing structured output ready for database insertion. Guardrail: cap batch size at 20-30 sources to maintain scoring consistency and avoid context-window truncation.

02

Bad Fit: Real-Time Single-Source Queries

Avoid when: a user submits one URL and expects an immediate trustworthiness score in a chat interface. Why it fails: batch prompts add latency from multi-source processing and produce array outputs that require post-processing for single-item extraction. Guardrail: use the Multi-Factor Source Credibility Scoring Prompt Template for interactive single-source evaluation instead.

03

Required Inputs: Structured Source Metadata

Risk: the prompt cannot assess trustworthiness from URLs alone. What you need: publisher name, author credentials, publication date, domain, funding disclosures, and retraction status per source. Guardrail: validate that each source record in the batch contains all required fields before invoking the prompt. Reject or flag incomplete records upstream.

04

Operational Risk: Batch-Level Consistency Drift

Risk: scores for the same source may shift between batches due to model non-determinism or context-window position effects. Guardrail: implement a consistency check that compares scores for previously evaluated sources when they reappear in new batches. Flag deviations exceeding a configurable threshold for human review or recalibration.

05

Operational Risk: Confidence Calibration Decay

Risk: the model may produce overconfident scores for sources with sparse metadata, especially when batch context lacks contradictory signals. Guardrail: require the prompt to output a confidence field alongside each score. In post-processing, apply a penalty multiplier to confidence when metadata completeness falls below a minimum threshold. Log low-confidence scores for sampling and human audit.

06

Pipeline Integration: Database Insertion Readiness

Use when: scores must be written directly to a trustworthiness column in your evidence store. Why it works: the prompt outputs structured JSON arrays with consistent field names, making INSERT or UPSERT operations straightforward. Guardrail: validate the output schema before database writes. Reject batches where any required field is missing or where score values fall outside expected ranges. Route schema failures to a dead-letter queue for inspection.

PROMPT PLAYBOOK

Copy-Ready Prompt Template

A batch-scoring prompt that evaluates multiple sources in one pass and returns structured trustworthiness scores ready for database insertion.

This prompt template is designed for evidence ingestion pipelines that process large document collections. It scores multiple sources in a single model call, producing structured JSON output optimized for direct insertion into your trustworthiness database. The prompt enforces batch-level consistency checks and confidence calibration, ensuring that scores across sources remain comparable rather than drifting with each independent evaluation.

text
SYSTEM:
You are a source trustworthiness batch scorer for an evidence ingestion pipeline. Your job is to evaluate multiple sources in a single pass and return structured scores suitable for database insertion. Apply consistent standards across all sources in the batch. Do not let the order of sources influence your scoring.

SCORING DIMENSIONS:
For each source, evaluate these dimensions on a 0.0 to 1.0 scale:
- authority: Institutional or author expertise signals (credentials, affiliation, citation patterns)
- accuracy: Factual precision and absence of verifiable errors
- objectivity: Freedom from commercial, political, or ideological bias
- recency: Currency relative to [TEMPORAL_BASELINE_DATE]
- completeness: Coverage depth and absence of material omissions

CONFIDENCE CALIBRATION:
- Assign a confidence_score (0.0 to 1.0) reflecting how much evidence you had to evaluate the source
- If metadata is sparse, reduce confidence rather than guessing
- Flag sources with confidence below [CONFIDENCE_THRESHOLD] for human review

INPUT FORMAT:
You will receive a JSON array of source objects. Each object contains:
- source_id: Unique identifier
- url: Source URL (may be empty)
- domain: Publisher domain
- title: Document or article title
- author: Author name(s) (may be empty)
- publication_date: ISO date string (may be empty)
- publisher: Organization name (may be empty)
- content_snippet: First 500 words of the source text
- metadata: Arbitrary key-value pairs from the retrieval system

[INPUT_BATCH]

OUTPUT FORMAT:
Return a JSON object with this exact structure:
{
  "batch_id": "[BATCH_ID]",
  "scored_at": "ISO timestamp",
  "sources": [
    {
      "source_id": "string",
      "authority": 0.0,
      "accuracy": 0.0,
      "objectivity": 0.0,
      "recency": 0.0,
      "completeness": 0.0,
      "composite_score": 0.0,
      "confidence_score": 0.0,
      "flags": ["string"],
      "explanation": "Brief justification citing specific signals"
    }
  ],
  "batch_consistency_notes": ["string"]
}

RULES:
1. Compute composite_score as the weighted average: authority*0.30 + accuracy*0.30 + objectivity*0.15 + recency*0.15 + completeness*0.10
2. Round all scores to 2 decimal places
3. Use flags array for: "low_confidence", "missing_date", "anonymous_author", "commercial_bias_detected", "political_bias_detected", "retracted_or_corrected", "ai_generated_suspected", "single_source_claim", "predatory_publisher_suspected"
4. In batch_consistency_notes, document any calibration adjustments you made to keep scores comparable across sources
5. If a source lacks sufficient information to score a dimension, use null for that dimension and reduce confidence_score accordingly
6. Do not invent information. If author is unknown, do not guess
7. Return ONLY valid JSON. No markdown fences, no commentary

Adaptation guidance: Replace [TEMPORAL_BASELINE_DATE] with your pipeline's reference date for recency scoring. Set [CONFIDENCE_THRESHOLD] to your organization's risk tolerance—0.4 is a common starting point. The [INPUT_BATCH] placeholder should be replaced by your pipeline's JSON array of source objects. The dimension weights in the composite score formula can be adjusted per domain; for legal workflows, increase authority weight; for news, increase recency weight. The flags enum should be extended to match your specific trust-and-safety taxonomy.

Validation before production: Before deploying this prompt, run it against a golden dataset of 20–30 sources with known trustworthiness labels. Verify that composite scores correlate with your ground-truth labels. Check that batch_consistency_notes appear when score distributions drift. If the model overweights a single dimension, adjust the weights or add explicit calibration instructions. For high-stakes pipelines, route sources flagged with low_confidence or retracted_or_corrected to a human review queue before they enter your evidence store.

IMPLEMENTATION TABLE

Prompt Variables

Required inputs for the Source Trustworthiness Batch Scoring Prompt. Validate each placeholder before sending to the model to prevent scoring errors, schema violations, and silent failures in production ingestion pipelines.

PlaceholderPurposeExampleValidation Notes

[SOURCE_BATCH]

Array of source objects to score in a single pass. Each object must include url, title, publisher, author, publication_date, and content_snippet fields.

[{"url": "https://example.com/article", "title": "Study on AI Safety", "publisher": "Nature", "author": "Jane Doe", "publication_date": "2024-03-15", "content_snippet": "Our findings suggest..."}]

Must be a valid JSON array. Minimum 1 object, maximum 20 objects per batch. Reject if any required field is missing or null. Validate publication_date against ISO 8601 format.

[SCORING_DIMENSIONS]

Ordered list of credibility dimensions to evaluate per source. Controls which scores appear in the output.

["authority", "recency", "publisher_reputation", "commercial_bias", "methodology_rigor"]

Must be a non-empty array of strings. Each value must match an allowed dimension: authority, recency, publisher_reputation, commercial_bias, methodology_rigor, citation_quality, conflict_of_interest. Reject unknown dimensions before model call.

[DOMAIN_CONTEXT]

Optional domain label that adjusts scoring weights and authority expectations. Use null for general-purpose scoring.

"medical_research"

If provided, must match an allowed domain: medical_research, legal, financial, scientific, technical_documentation, news, academic, or null. Invalid domain labels cause the prompt to fall back to general scoring without warning.

[TEMPORAL_REQUIREMENT]

Optional recency constraint. Defines the maximum acceptable age for sources in this batch. Use null when recency is not a factor.

"2023-01-01"

If provided, must be a valid ISO 8601 date string. Sources with publication_date older than this threshold should receive a recency score of 0. Null means no temporal filtering is applied.

[OUTPUT_SCHEMA]

JSON Schema definition the model must conform to for each scored source. Enforced by post-processing validator.

{"type": "object", "properties": {"source_id": {"type": "string"}, "scores": {"type": "object"}, "evidence": {"type": "array"}, "confidence": {"type": "number"}}, "required": ["source_id", "scores", "evidence", "confidence"]}

Must be a valid JSON Schema object. The model output is validated against this schema after generation. Include required fields, type constraints, and enum limits. Reject malformed schemas before the prompt is assembled.

[CONFIDENCE_THRESHOLD]

Minimum confidence score a source assessment must meet to be considered reliable. Sources below this threshold are flagged for human review.

0.7

Must be a float between 0.0 and 1.0. Sources with composite confidence below this value should include a review_required: true flag in output. Thresholds below 0.5 produce noisy results; thresholds above 0.9 may cause excessive flagging.

[BATCH_CONSISTENCY_CHECK]

Boolean flag enabling cross-source consistency validation within the batch. Detects scoring anomalies where similar sources receive divergent scores.

Must be true or false. When true, the prompt includes instructions to compare scores across the batch and flag outliers. Adds approximately 15-20% token overhead. Set to false for latency-sensitive pipelines where per-source scoring is sufficient.

[HUMAN_REVIEW_ESCALATION_RULES]

Conditions that trigger human review of a scored source. Defines which failure modes require manual inspection before the score is accepted.

["confidence_below_threshold", "conflicting_signals", "retracted_source", "unknown_publisher"]

Must be an array of strings from the allowed escalation reasons: confidence_below_threshold, conflicting_signals, retracted_source, unknown_publisher, commercial_bias_detected, predatory_publisher, state_controlled_media, missing_publication_date. Empty array means no human review is triggered.

PROMPT PLAYBOOK

Implementation Harness Notes

How to wire the batch scoring prompt into a production evidence ingestion pipeline with structured validation, retry logic, and database insertion.

The batch scoring prompt is designed to run inside a pipeline stage that processes multiple source records at once, not as a single-source interactive call. The typical integration point is after document retrieval and metadata extraction but before evidence ranking. A pipeline worker receives a batch of source objects, each containing a source_id, url, title, publisher, publication_date, author_metadata, and any available content_snippet. The worker assembles the prompt by injecting these records into the [SOURCE_BATCH] placeholder as a JSON array, sets [BATCH_SIZE] to the number of records (typically 5–20 to balance throughput with scoring quality), and includes the [OUTPUT_SCHEMA] that defines the expected JSON structure with fields like trust_score, authority_tier, recency_flag, bias_indicators, and confidence_calibration.

Validation must happen in two layers. First, parse the model response and confirm every source_id from the input batch appears in the output with a valid trust_score between 0 and 1. Missing records or out-of-range scores should trigger a structured retry: resend only the failed records with an error context message like 'Previous response missing scores for source_ids: [X, Y]. Return complete batch.' Second, run a consistency check across the batch. If the model assigns authority_tier: 'high' to a source with an unrecognized domain and no institutional affiliation signals, flag that record for human review rather than inserting it directly. For high-risk domains such as healthcare or legal evidence pipelines, require human approval on any record where confidence_calibration falls below 0.7 or where bias_indicators include 'undisclosed_funding' or 'retraction_possible'. Log every batch run with the model version, timestamp, batch size, validation pass/fail counts, and any records escalated for review.

Model choice matters for this workload. Use a model with strong structured output support and low variance across repeated runs—GPT-4o, Claude 3.5 Sonnet, or equivalent. Avoid smaller models that may drift on the scoring rubric across batches. Set temperature to 0 or near-zero to maximize consistency. If your pipeline processes thousands of sources daily, implement a caching layer: sources with unchanged metadata and a recent trust score (within 30 days) can skip rescoring unless a force_refresh flag is set. For cost control, batch as many records as fit within the model's context window without truncation, but never exceed 30 records per batch—larger batches degrade per-source attention and increase the risk of skipped records. Wire the validated output into your evidence database with columns for each score field, plus scored_at, model_version, and review_status. This schema lets downstream ranking queries filter by authority_tier and trust_score thresholds without rerunning the prompt.

IMPLEMENTATION TABLE

Expected Output Contract

Structured output schema for batch source scoring. Each record in the batch must conform to this contract before database insertion. Validation rules are designed for automated pipeline checks.

Field or ElementType or FormatRequiredValidation Rule

batch_id

string (UUID)

Must match the [BATCH_ID] input parameter exactly; reject on mismatch

sources

array of objects

Array length must equal input [SOURCES] array length; missing entries trigger retry

sources[].source_id

string

Must match corresponding input source_id; no fabricated or reordered IDs allowed

sources[].trust_score

number (0.0-1.0)

Must be within [0.0, 1.0] inclusive; null not allowed; values outside range trigger repair retry

sources[].confidence

number (0.0-1.0)

Must be within [0.0, 1.0] inclusive; low confidence (< [CONFIDENCE_THRESHOLD]) flags record for human review

sources[].authority_tier

string enum

Must be one of: 'high', 'medium', 'low', 'unverifiable'; unexpected values trigger schema validation failure

sources[].recency_status

string enum

Must be one of: 'current', 'acceptable', 'outdated', 'unknown'; 'unknown' allowed only when publication_date is null in input

sources[].flags

array of strings

If present, each flag must match allowed set: 'commercial_bias', 'retracted', 'ai_generated_likely', 'disinformation_pattern', 'state_media', 'predatory_publisher', 'conflict_of_interest'; unknown flags trigger log warning but not rejection

sources[].explanation

string (max 500 chars)

Must cite at least one specific signal from input metadata; empty or generic explanations trigger quality flag for human sampling

batch_consistency_note

string or null

If present, must describe cross-source calibration applied; null allowed when no calibration was performed

PRACTICAL GUARDRAILS

Common Failure Modes

Batch source scoring pipelines fail in predictable ways. Here are the most common failure modes and how to guard against them before they corrupt your evidence ranking.

01

Score Homogenization Across Heterogeneous Sources

What to watch: The model assigns similar trustworthiness scores to all sources in a batch, collapsing variance and making downstream ranking useless. This happens most often when the prompt lacks explicit differentiation criteria or when the batch contains sources of genuinely mixed quality but the model defaults to a safe middle range. Guardrail: Include anchor examples in the prompt that demonstrate score spread (e.g., a clearly authoritative source scored at 0.9 and a clearly unreliable source scored at 0.2). Add a post-processing check that flags batches where score standard deviation falls below a configured threshold, triggering human review or model re-prompting with stricter differentiation instructions.

02

Recency Bias Overriding Authority Signals

What to watch: The model overweights publication date and underweights institutional authority, causing recent but low-quality sources to outrank older authoritative sources. This is especially dangerous in scientific, legal, and regulatory domains where foundational sources remain valid for years. Guardrail: Separate recency scoring from authority scoring in the prompt schema. Apply domain-specific recency windows (e.g., legal precedents may be valid indefinitely while news sources decay within days). Implement a weighted composite score that lets pipeline operators tune the recency-vs-authority tradeoff per use case rather than baking it into a single opaque score.

03

Batch Position Effects and Ordering Artifacts

What to watch: The model's scoring drifts based on source position within the batch. Early sources may receive harsher or more generous scores as the model calibrates, or late sources may suffer from attention decay in long contexts. This produces inconsistent scores that depend on batch ordering rather than source merit. Guardrail: Shuffle source order across multiple scoring passes and compare score stability. Flag sources where scores vary by more than a configured delta across orderings. For high-stakes pipelines, score sources individually or in smaller batches to eliminate position effects entirely, then aggregate results.

04

Confidence Miscalibration on Ambiguous Sources

What to watch: The model expresses high confidence on sources with insufficient signals for reliable assessment—such as obscure blogs, foreign-language content, or niche publications with no clear reputation trail. The confidence score does not reflect actual uncertainty. Guardrail: Require the model to output an explicit evidence sufficiency flag alongside each score. When available signals fall below a threshold (e.g., no publisher metadata, no author credentials, no citation history), force a low-confidence output regardless of the raw score. Implement a separate uncertainty classifier that checks whether the model had enough information to make a reliable determination.

05

Cross-Source Contamination Within the Batch

What to watch: The model's assessment of one source leaks into its assessment of adjacent sources in the same batch. A highly authoritative source may inflate scores for neighboring sources, or a clearly unreliable source may depress scores across the batch through contrast effects. Guardrail: Include explicit instructions that each source must be evaluated independently using only its own metadata. Add a consistency check that compares batch scores against individually scored samples for the same sources. If batch scores diverge significantly from individual scores, reduce batch size or switch to single-source evaluation for high-stakes assessments.

06

Silent Schema Drift in Structured Output

What to watch: The model gradually drifts from the expected output schema over long batches—dropping optional fields, changing enum values, or restructuring nested objects. This breaks downstream database insertion and causes partial data loss that may go unnoticed until queries fail. Guardrail: Validate every batch output against the expected schema before insertion. Reject and re-prompt for any record that fails validation, with a repair prompt that includes the specific schema violation. Implement a schema compliance monitor that tracks drift rates over time and alerts when field completeness drops below a threshold. Version your output schema explicitly in the prompt and in your validation layer.

IMPLEMENTATION TABLE

Evaluation Rubric

Run these checks on a golden dataset of 50-100 sources with known trustworthiness labels. Each row defines a pass/fail criterion for the batch scoring output before it enters the evidence pipeline.

CriterionPass StandardFailure SignalTest Method

Schema compliance

Every record in the batch output matches the [OUTPUT_SCHEMA] exactly; no missing required fields, no extra fields, no type mismatches.

JSON parse error, field null where required: true, or unexpected key in any record.

Validate entire batch against the JSON Schema using a programmatic validator. Reject batch on first schema violation.

Score range calibration

All trustworthiness_score values fall within the defined [SCORE_RANGE] (e.g., 0.0-1.0) and the batch mean is within ±0.15 of the golden dataset's known mean.

Score outside [SCORE_RANGE], or batch mean deviates more than 0.15 from golden mean, indicating systematic overconfidence or underconfidence.

Compute min, max, and mean of trustworthiness_score across the batch. Compare batch mean to golden dataset mean.

Label agreement with golden dataset

At least 85% of records have a trustworthiness_tier label (e.g., HIGH, MEDIUM, LOW) that matches the golden dataset label.

Agreement rate below 85%, or systematic misclassification of a specific tier (e.g., all LOW sources labeled MEDIUM).

Compute exact match rate between predicted trustworthiness_tier and golden label. Produce confusion matrix to detect tier-specific bias.

Evidence citation presence

Every record where trustworthiness_tier is not UNKNOWN includes at least one non-empty entry in the evidence_signals array.

Record has a definitive tier label but evidence_signals is empty, null, or contains only placeholder strings.

Iterate batch records. Flag any record where trustworthiness_tier != 'UNKNOWN' and len(evidence_signals) == 0.

Recency signal detection

For sources with a publication_date within the last 90 days, the recency_factor field is populated and greater than 0.

recency_factor is null or 0 for a source with a recent publication_date, indicating the model ignored temporal metadata.

Filter batch to records where publication_date is within 90 days. Assert recency_factor is not null and > 0 for all.

Hallucinated source attribution

No evidence_signals entry references a publisher, author, or domain not present in the provided [SOURCE_METADATA].

An evidence signal string contains a named entity (publisher, author, domain) not found in the input metadata for that record.

Extract named entities from evidence_signals strings. Cross-reference with [SOURCE_METADATA] fields. Flag any entity not present in the input.

Batch consistency check

Sources with identical [SOURCE_METADATA] (same domain, same author, same publication) receive scores within 0.1 of each other.

Two records with identical metadata have trustworthiness_score differing by more than 0.1, indicating non-deterministic or unstable scoring.

Group batch by hash of [SOURCE_METADATA] fields. For groups with >1 record, assert max score - min score ≤ 0.1.

Refusal on missing metadata

Records where [SOURCE_METADATA] is missing both publisher and domain have trustworthiness_tier set to UNKNOWN and confidence below 0.5.

A record with no publisher and no domain receives a definitive tier label (HIGH, MEDIUM, LOW) or confidence above 0.5.

Filter batch to records where publisher is null and domain is null. Assert trustworthiness_tier == 'UNKNOWN' and confidence < 0.5.

ADAPTATION OPTIONS

Adapt This Prompt

How to adapt

Start with the base batch scoring prompt but reduce the output schema to only the essential fields: source_id, trust_score, and confidence. Skip batch-level consistency checks and calibration. Use a smaller batch size (5-10 sources) to iterate faster on prompt wording.

code
For each source in [SOURCES], return:
{
  "source_id": "[ID]",
  "trust_score": 0-100,
  "confidence": "low|medium|high"
}

Watch for

  • Missing schema checks will let malformed JSON through
  • Overly broad instructions produce inconsistent scoring across batches
  • No calibration means scores drift between runs
  • Small batch sizes hide distribution-level problems
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.