This prompt is designed for procurement and security teams who need to assess vendor risk from RFP responses, security questionnaires, and due diligence documents. It uses few-shot examples to teach the model how to identify risk indicators, extract supporting evidence, and assign a risk tier. Use this when you need consistent, evidence-backed risk assessments that follow your organization's risk taxonomy. The primary job-to-be-done is accelerating triage: turning a stack of vendor documents into a structured risk signal that a human reviewer can verify, challenge, or approve without reading every page from scratch.
Prompt
Vendor Risk Assessment Prompt Template

When to Use This Prompt
Learn when to deploy the vendor risk assessment prompt, who it serves, and where its boundaries lie.
The ideal user is a security analyst, vendor risk manager, or procurement specialist who already understands their organization's risk appetite and control framework. The prompt assumes you have defined risk tiers (e.g., Low, Medium, High, Critical) and can supply a few labeled examples that demonstrate the boundary between each tier. It works best on structured or semi-structured inputs—completed questionnaires, RFP sections, SOC 2 reports, or security whitepapers—rather than raw contracts or scanned handwritten notes. The model extracts discrete risk indicators (e.g., 'no evidence of encryption at rest,' 'sub-processor list not disclosed') and maps them to your tier definitions, producing a traceable assessment where every risk signal is anchored to a source quote.
Do not use this prompt as a replacement for human security review. It is a triage and evidence-extraction accelerator that surfaces signals for human decision-makers. It is not appropriate for generating final approval decisions, for vendors where the risk assessment carries regulatory liability without human sign-off, or for domains where the model has no access to your internal control requirements. If your risk taxonomy changes frequently, you will need to update the few-shot examples to prevent drift between the model's learned boundaries and your current definitions. Pair this prompt with a human-in-the-loop review step, log every assessment with its evidence chain, and run periodic eval checks to confirm that risk tier assignments remain consistent as vendor document formats evolve.
Use Case Fit
Where the Vendor Risk Assessment Prompt Template delivers value and where it introduces unacceptable operational risk.
Good Fit: Structured RFP Responses
Use when: You have a completed vendor security questionnaire or RFP with defined sections. The prompt excels at extracting risk signals from structured documents where evidence can be cited by section. Guardrail: Always map the prompt's output schema to your internal risk taxonomy before processing live submissions.
Bad Fit: Unstructured Sales Decks
Avoid when: The only available source material is a slide deck, a recorded demo, or a verbal pitch. The prompt requires written claims it can cite; it will hallucinate evidence when forced to assess risk from marketing narratives. Guardrail: Gate execution behind a document-type check. Route unstructured materials to a human analyst.
Required Inputs: Evidence Anchoring
Risk: Running the prompt without attaching the actual vendor response document causes the model to generate plausible-sounding but fabricated risk assessments. Guardrail: Enforce a hard validation rule in your application layer—the [VENDOR_DOCUMENT] placeholder must contain extracted text from a real submission, not a summary or a user's recollection.
Operational Risk: Example Drift
Risk: The few-shot examples that define risk indicators will drift as your organization's risk appetite changes or as new regulations emerge. Stale examples cause inconsistent risk tier assignments. Guardrail: Version your prompt template alongside your risk policy documents. Schedule a quarterly review to refresh examples against recent high-severity findings.
Operational Risk: Over-Reliance on Automation
Risk: Teams may treat the model's risk tier output as a final determination, skipping human review for low-risk or high-volume vendors. The model can miss novel risk patterns not represented in its examples. Guardrail: Require human sign-off for any vendor above a defined spend or data-access threshold, regardless of the model's assigned tier. Log the model's output alongside the human decision for audit.
Bad Fit: Real-Time Risk Scoring
Risk: Using this template in a synchronous API call during a live vendor negotiation creates latency and reliability risks. The prompt is designed for batch or asynchronous assessment of complete documents. Guardrail: Deploy this prompt in an asynchronous workflow. If real-time signals are needed, use a lightweight classification prompt instead and reserve this full assessment for the formal review stage.
Copy-Ready Prompt Template
A copy-ready prompt for assessing vendor risk from RFP responses using example-based risk indicators, evidence extraction, and risk tier assignment.
This prompt template is designed to be pasted directly into your orchestration layer. It instructs the model to act as a vendor risk analyst, using provided examples to classify a vendor's RFP response into a risk tier and extract supporting evidence. The template uses square-bracket placeholders for all dynamic inputs, which you must replace with real data before sending the request to the model. The structure separates the system role, the few-shot examples that teach the classification pattern, and the final input to be assessed.
codeSYSTEM: You are a Vendor Risk Analyst. Your task is to assess a vendor's response to a Request for Proposal (RFP) and classify the overall risk tier based on the provided examples. You must extract specific evidence from the response to justify your classification. Do not use outside knowledge. If the evidence is insufficient, classify the risk as 'INSUFFICIENT_DATA'. [OUTPUT_SCHEMA] Respond in valid JSON with the following fields: - "risk_tier": string (enum: "LOW", "MEDIUM", "HIGH", "CRITICAL", "INSUFFICIENT_DATA") - "risk_summary": string (a one-sentence summary of the primary risk driver) - "evidence": array of strings (direct quotes or specific paraphrases from the vendor response that support the risk tier) - "missing_information": array of strings (list of key data points not found in the response that would be needed for a more confident assessment) [EXAMPLES] --- Input: "Our company has been SOC 2 Type II certified for the past 5 years with no audit exceptions. We host all data in AWS US-East-1 and perform annual penetration tests by a CREST-certified third party. Our incident response plan is tested quarterly." Output: { "risk_tier": "LOW", "risk_summary": "Strong, long-standing security posture with independent validation and proactive testing.", "evidence": [ "SOC 2 Type II certified for the past 5 years with no audit exceptions", "host all data in AWS US-East-1", "annual penetration tests by a CREST-certified third party", "incident response plan is tested quarterly" ], "missing_information": [] } --- Input: "We take security seriously. Our team follows best practices for data protection. We have a firewall and use encryption. We've never had a major breach." Output: { "risk_tier": "HIGH", "risk_summary": "Vague, unverifiable claims with no evidence of formal security controls or independent audits.", "evidence": [ "We take security seriously", "Our team follows best practices for data protection", "We have a firewall and use encryption", "We've never had a major breach" ], "missing_information": [ "Specific compliance certifications (e.g., SOC 2, ISO 27001)", "Results of independent security assessments or penetration tests", "Details on encryption standards and key management", "Documented incident response and disaster recovery plans" ] } --- Input: "We are a startup in stealth mode. Our product is pre-beta. We don't have formal security certifications yet but plan to pursue SOC 2 next year. We use Google Drive for internal documents." Output: { "risk_tier": "CRITICAL", "risk_summary": "Pre-product startup with no security program, no certifications, and use of consumer-grade tools for business data.", "evidence": [ "startup in stealth mode", "product is pre-beta", "don't have formal security certifications yet", "use Google Drive for internal documents" ], "missing_information": [ "Any existing security controls or architecture", "Data handling and retention policies", "Background checks or security training for staff" ] } [INPUT] [RFP_RESPONSE_TEXT]
To adapt this template, first replace [RFP_RESPONSE_TEXT] with the actual text from the vendor. You can modify the [EXAMPLES] block to include risk scenarios that are more specific to your industry or procurement policies. For instance, you might add an example showing a MEDIUM risk tier for a vendor with strong technical controls but a poor financial history. The [OUTPUT_SCHEMA] can be extended to include fields like financial_risk_score or compliance_gaps if your downstream system requires them. Always test any changes to the examples against a golden dataset of known vendor responses to ensure the model's behavior remains consistent and accurate.
Prompt Variables
Inputs the prompt needs to work reliably. Each placeholder must be populated before the prompt is sent. Validation notes describe how to programmatically check the input before assembly.
| Placeholder | Purpose | Example | Validation Notes |
|---|---|---|---|
[VENDOR_NAME] | Identifies the vendor being assessed | Acme Cloud Services Inc. | Non-empty string; max 200 chars; reject if only whitespace or generic placeholder like 'Vendor X' |
[RFP_RESPONSE_TEXT] | Full text of the vendor's RFP response or security questionnaire | See attached SOC 2 report and responses to sections 4.1-4.8... | Non-empty string; min 100 chars to ensure substantive content; warn if < 500 chars for completeness |
[RISK_CATEGORIES] | List of risk categories to assess against | ['Data Residency', 'Access Control', 'Incident Response', 'Subprocessor Management', 'Business Continuity'] | Must be a valid JSON array of strings; min 1 category, max 15; reject if empty array or contains duplicates |
[RISK_INDICATOR_EXAMPLES] | Few-shot examples showing high, medium, and low risk signals per category | HIGH: 'We do not encrypt data at rest' | MEDIUM: 'Encryption keys are managed by the cloud provider' | LOW: 'AES-256 encryption with customer-managed keys' | Must contain at least one example per risk tier (HIGH, MEDIUM, LOW) for each category in [RISK_CATEGORIES]; validate tier coverage before prompt assembly |
[EVIDENCE_EXTRACTION_RULES] | Instructions for how to extract and cite supporting evidence from the RFP response | Quote the exact sentence or clause that supports each risk determination. Prefix each quote with the section number if available. | Non-empty string; should contain explicit citation format instructions; warn if no quote or section reference pattern detected |
[OUTPUT_SCHEMA] | Expected JSON structure for the risk assessment output | {"vendor": string, "overall_risk_tier": enum, "category_assessments": [{...}], "evidence": [{...}]} | Must be a valid JSON Schema or TypeScript interface definition; validate parseability before prompt assembly; reject if schema is empty |
[CONFIDENCE_THRESHOLD] | Minimum confidence score required before auto-accepting a risk tier assignment | 0.85 | Float between 0.0 and 1.0; default 0.85 if not specified; reject values below 0.5 as too permissive for risk workflows |
[ESCALATION_CONDITIONS] | Rules for when the assessment must be escalated to human review | Escalate if overall_risk_tier is HIGH or CRITICAL, or if any category confidence is below [CONFIDENCE_THRESHOLD], or if evidence contains contradictory statements | Non-empty string; must define at least one concrete escalation trigger; warn if no confidence-based or contradiction-based trigger is present |
Implementation Harness Notes
How to wire the Vendor Risk Assessment Prompt into a production application with validation, retries, and human review gates.
This prompt is not a standalone chat interaction; it is a classification and extraction module designed to sit inside a procurement or security review pipeline. The application layer should supply the RFP response text as [INPUT], the organization's risk taxonomy as [RISK_CATEGORIES], and the few-shot examples as [EXAMPLES]. The model returns a structured JSON object containing risk tier assignment, extracted evidence, and confidence scores. The surrounding harness must validate this output before it reaches a reviewer or a system of record.
Implement a strict JSON schema validator that checks for required fields (risk_tier, risk_indicators, evidence, confidence_score) and rejects malformed responses. On validation failure, retry once with the same prompt plus the validation error message appended as a repair instruction. If the retry also fails, log the raw output and escalate to a human review queue. For high-risk vendor assessments (e.g., those flagged as HIGH or CRITICAL), always route the final output to a human analyst for approval before updating the vendor record. Use a model with strong structured output support (GPT-4o with response_format or Claude 3.5 Sonnet with tool use) and set temperature to 0 to minimize variance in risk tier assignment.
Log every assessment with the prompt version hash, input RFP ID, model used, raw output, validation status, and final reviewer decision. This audit trail is essential for governance and for detecting example drift over time. Do not bypass human review for any vendor that handles sensitive data, critical infrastructure, or regulated services. The prompt is a triage accelerator, not a replacement for security judgment.
Expected Output Contract
Defines the exact shape, types, and validation rules for the Vendor Risk Assessment output. Use this contract to build a parser, validator, or retry loop before integrating the prompt into a production pipeline.
| Field or Element | Type or Format | Required | Validation Rule |
|---|---|---|---|
vendor_name | string | Non-empty string matching an entity extracted from [RFP_DOCUMENT] | |
risk_tier | enum: low | medium | high | critical | Must be one of the four allowed enum values; no free-text tiers allowed | |
risk_score | integer (0-100) | Integer in range 0-100; must be consistent with risk_tier mapping (e.g., critical >= 80) | |
evidence_summary | string | 1-3 sentence summary; must contain at least one direct quote or paraphrase from [RFP_DOCUMENT] | |
risk_indicators | array of objects | Each object must have 'indicator' (string), 'severity' (enum: low | medium | high | critical), and 'source_quote' (string) fields | |
missing_information_flags | array of strings | If present, each string must describe a specific data gap; null or empty array allowed if no gaps detected | |
recommended_actions | array of strings | If present, each string must be an actionable recommendation; null allowed if no actions generated | |
confidence_assessment | object | Must contain 'overall_confidence' (enum: low | medium | high) and 'confidence_rationale' (string) fields |
Common Failure Modes
What breaks first when using few-shot examples for vendor risk assessment and how to guard against it.
Example Drift and Stale Risk Signals
What to watch: The few-shot examples become stale as vendor risk patterns evolve, causing the model to miss new risk indicators or over-weight obsolete ones. Guardrail: Implement a periodic review cycle comparing example classifications against recent Tier 2 decisions. Log low-confidence outputs for human review to detect drift before accuracy degrades.
Insufficient Justification Completeness
What to watch: The model produces escalation justifications that cite risk categories but fail to include required evidence, such as specific RFP response excerpts or missing documentation flags. Guardrail: Add a post-generation validation step that checks for required fields (evidence quotes, risk tier rationale, missing information flags) and triggers a repair prompt if any are absent.
Overfitting to Few-Shot Risk Patterns
What to watch: The model rigidly applies risk patterns from the examples, escalating vendors that superficially match a negative example while ignoring mitigating context. Guardrail: Include counterexamples in the prompt that demonstrate when a risk indicator is present but adequately mitigated. Use eval checks that measure false-positive escalation rates against a golden test set.
Risk Tier Boundary Confusion
What to watch: The model inconsistently assigns risk tiers (low/medium/high/critical) for borderline cases, especially when examples show clear-cut cases but production inputs are ambiguous. Guardrail: Add explicit boundary examples that demonstrate the difference between adjacent tiers. Implement a confidence score requirement and route low-confidence classifications to a human review queue.
Evidence Extraction Hallucination
What to watch: The model fabricates or misquotes evidence from the RFP response to support its risk assessment, especially when the input is long or poorly structured. Guardrail: Require verbatim quotes with section references in the output schema. Add a grounding check that verifies each cited passage exists in the source document before the escalation is sent to Tier 2.
Silent Failure on Missing Information
What to watch: The model fails to flag when critical risk-assessment information is absent from the RFP response, proceeding with an assessment based on available but incomplete data. Guardrail: Include few-shot examples that explicitly demonstrate flagging missing information as a risk signal. Add a completeness check in the eval layer that verifies required assessment dimensions are addressed or explicitly marked as unavailable.
Evaluation Rubric
Use this rubric to test the Vendor Risk Assessment prompt's output quality before shipping. Each criterion targets a specific failure mode common in example-based risk classification.
| Criterion | Pass Standard | Failure Signal | Test Method |
|---|---|---|---|
Risk Tier Assignment | Output matches expected tier for 95% of golden-set RFPs | Tier mismatch on >5% of cases; consistent over-caution or under-caution | Run 20 labeled RFP excerpts through prompt; compare assigned tier to expected tier |
Evidence Extraction Completeness | Every risk signal cited includes a verbatim or near-verbatim quote from [RFP_EXCERPT] | Risk signal stated without supporting quote; quote does not appear in source | Parse output for evidence fields; grep source text for each quote string |
Risk Signal Coverage | Output identifies all risk signals present in the golden-set annotation for each case | Missed signal that appears in the labeled risk indicators; false negative | Diff extracted signals against golden-set signal list per case; count misses |
False Positive Rate | No more than 1 false positive risk signal per 5 RFP excerpts | Multiple risk signals flagged that are not present in source; hallucinated risks | Review extracted signals against source; flag any signal without source support |
Output Schema Compliance | Valid JSON matching [OUTPUT_SCHEMA] on first parse attempt | JSON parse error; missing required field; wrong type for tier or confidence | Validate output with schema validator; check field presence and types |
Confidence Score Calibration | Confidence score correlates with extraction difficulty; low confidence when evidence is ambiguous | High confidence on cases with conflicting or missing evidence; uniform confidence | Compare confidence scores to human-rated ambiguity levels across test set |
Refusal Handling | Prompt returns refusal output when [RFP_EXCERPT] is empty or contains no assessable content | Hallucinated assessment on empty input; tier assigned with fabricated evidence | Submit empty string and irrelevant text; verify refusal or abstention output |
Enabling Efficiency, Speed & Accuracy
Intelligent Analysis, Decision & Execution
We build AI systems for teams that need search across company data, workflow automation across tools, or AI features inside products and internal software.
Talk to Us
Search across company data
Give teams answers from docs, tickets, runbooks, and product data with sources and permissions.
Useful when people spend too long searching or get different answers from different systems.

Automate internal workflows
Use AI to route work, draft outputs, trigger actions, and keep approvals and logs in place.
Useful when repetitive work moves across multiple tools and teams.

Add AI to products and internal tools
Build assistants, guided actions, or decision support into the software your team or customers already use.
Useful when AI needs to be part of the product, not a separate tool.
Adapt This Prompt
How to adapt
Use the base prompt with a smaller example set (3-5 risk indicators) and lighter output validation. Replace the full risk tier schema with a simple HIGH/MEDIUM/LOW classification. Remove evidence extraction requirements and accept a single-line justification.
codeClassify this vendor RFP response into HIGH, MEDIUM, or LOW risk. Risk indicators: - [INDICATOR_1]: [EXAMPLE] - [INDICATOR_2]: [EXAMPLE] - [INDICATOR_3]: [EXAMPLE] RFP Response: [RFP_TEXT] Risk Tier: Justification:
Watch for
- Overly broad risk assignments without evidence
- Missing schema checks leading to inconsistent output formats
- Example set too small to cover edge cases like partial responses or ambiguous language

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.
Partnered with leading AI, data, and software stack.
How We Work
Custom AI workflows for your Business
One-fit-all AI don't work for modern businesses. At Inferensys, we aim to understand your business & custom requirements; which we use to define most efficient agentic workflows, the data, and the tools for your business.
01
Review the use case
We understand the task, the users, and where AI can actually help.
Read more02
Pick the right approach
We define what needs search, automation, or product integration.
Read more03
Build the first useful version
We implement the part that proves the value first.
Read more04
Improve from there
We add the checks and visibility needed to keep it useful.
Read moreThe first call is a practical review of your use case and the right next step.
Talk to Us