Spaces:
Running
Running
| # Prompt Engineering & Citation Validation | |
| This document outlines prompt engineering guidelines and citation validation rules. | |
| ## Judge Prompts | |
| - System prompt in `src/prompts/judge.py` | |
| - Format evidence with truncation (1500 chars per item) | |
| - Handle empty evidence case separately | |
| - Always request structured JSON output | |
| - Use `format_user_prompt()` and `format_empty_evidence_prompt()` helpers | |
| ## Hypothesis Prompts | |
| - Use diverse evidence selection (MMR algorithm) | |
| - Sentence-aware truncation (`truncate_at_sentence()`) | |
| - Format: Drug β Target β Pathway β Effect | |
| - System prompt emphasizes mechanistic reasoning | |
| - Use `format_hypothesis_prompt()` with embeddings for diversity | |
| ## Report Prompts | |
| - Include full citation details for validation | |
| - Use diverse evidence selection (n=20) | |
| - **CRITICAL**: Emphasize citation validation rules | |
| - Format hypotheses with support/contradiction counts | |
| - System prompt includes explicit JSON structure requirements | |
| ## Citation Validation | |
| - **ALWAYS** validate references before returning reports | |
| - Use `validate_references()` from `src/utils/citation_validator.py` | |
| - Remove hallucinated citations (URLs not in evidence) | |
| - Log warnings for removed citations | |
| - Never trust LLM-generated citations without validation | |
| ## Citation Validation Rules | |
| 1. Every reference URL must EXACTLY match a provided evidence URL | |
| 2. Do NOT invent, fabricate, or hallucinate any references | |
| 3. Do NOT modify paper titles, authors, dates, or URLs | |
| 4. If unsure about a citation, OMIT it rather than guess | |
| 5. Copy URLs exactly as provided - do not create similar-looking URLs | |
| ## Evidence Selection | |
| - Use `select_diverse_evidence()` for MMR-based selection | |
| - Balance relevance vs diversity (lambda=0.7 default) | |
| - Sentence-aware truncation preserves meaning | |
| - Limit evidence per prompt to avoid context overflow | |
| ## See Also | |
| - [Code Quality](code-quality.md) - Code quality guidelines | |
| - [Error Handling](error-handling.md) - Error handling guidelines | |