Fixes validation errors for: - saas-mvp-launcher/SKILL.md - llm-prompt-optimizer/SKILL.md - gemini-api-integration/SKILL.md Valid risk values are: none, safe, critical, offensive, unknown
183 lines
6.0 KiB
Markdown
183 lines
6.0 KiB
Markdown
---
|
|
name: llm-prompt-optimizer
|
|
description: "Use when improving prompts for any LLM. Applies proven prompt engineering techniques to boost output quality, reduce hallucinations, and cut token usage."
|
|
risk: safe
|
|
source: community
|
|
date_added: "2026-03-04"
|
|
---
|
|
|
|
# LLM Prompt Optimizer
|
|
|
|
## Overview
|
|
|
|
This skill transforms weak, vague, or inconsistent prompts into precision-engineered instructions that reliably produce high-quality outputs from any LLM (Claude, Gemini, GPT-4, Llama, etc.). It applies systematic prompt engineering frameworks — from zero-shot to few-shot, chain-of-thought, and structured output patterns.
|
|
|
|
## When to Use This Skill
|
|
|
|
- Use when a prompt returns inconsistent, vague, or hallucinated results
|
|
- Use when you need structured/JSON output from an LLM reliably
|
|
- Use when designing system prompts for AI agents or chatbots
|
|
- Use when you want to reduce token usage without sacrificing quality
|
|
- Use when implementing chain-of-thought reasoning for complex tasks
|
|
- Use when prompts work on one model but fail on another
|
|
|
|
## Step-by-Step Guide
|
|
|
|
### 1. Diagnose the Weak Prompt
|
|
|
|
Before optimizing, identify which problem pattern applies:
|
|
|
|
| Problem | Symptom | Fix |
|
|
|---------|---------|-----|
|
|
| Too vague | Generic, unhelpful answers | Add role + context + constraints |
|
|
| No structure | Unformatted, hard-to-parse output | Specify output format explicitly |
|
|
| Hallucination | Confident wrong answers | Add "say I don't know if unsure" |
|
|
| Inconsistent | Different answers each run | Add few-shot examples |
|
|
| Too long | Verbose, padded responses | Add length constraints |
|
|
|
|
### 2. Apply the RSCIT Framework
|
|
|
|
Every optimized prompt should have:
|
|
|
|
- **R** — **Role**: Who is the AI in this interaction?
|
|
- **S** — **Situation**: What context does it need?
|
|
- **C** — **Constraints**: What are the rules and limits?
|
|
- **I** — **Instructions**: What exactly should it do?
|
|
- **T** — **Template**: What should the output look like?
|
|
|
|
**Before (weak prompt):**
|
|
```
|
|
Explain machine learning.
|
|
```
|
|
|
|
**After (optimized prompt):**
|
|
```
|
|
You are a senior ML engineer explaining concepts to a junior developer.
|
|
|
|
Context: The developer has 1 year of Python experience but no ML background.
|
|
|
|
Task: Explain supervised machine learning in simple terms.
|
|
|
|
Constraints:
|
|
- Use an analogy from everyday life
|
|
- Maximum 200 words
|
|
- No mathematical formulas
|
|
- End with one actionable next step
|
|
|
|
Format: Plain prose, no bullet points.
|
|
```
|
|
|
|
### 3. Chain-of-Thought (CoT) Pattern
|
|
|
|
For reasoning tasks, instruct the model to think step-by-step:
|
|
|
|
```
|
|
Solve this problem step by step, showing your work at each stage.
|
|
Only provide the final answer after completing all reasoning steps.
|
|
|
|
Problem: [your problem here]
|
|
|
|
Thinking process:
|
|
Step 1: [identify what's given]
|
|
Step 2: [identify what's needed]
|
|
Step 3: [apply logic or formula]
|
|
Step 4: [verify the answer]
|
|
|
|
Final Answer:
|
|
```
|
|
|
|
### 4. Few-Shot Examples Pattern
|
|
|
|
Provide 2-3 examples to establish the pattern:
|
|
|
|
```
|
|
Classify the sentiment of customer reviews as POSITIVE, NEGATIVE, or NEUTRAL.
|
|
|
|
Examples:
|
|
Review: "This product exceeded my expectations!" -> POSITIVE
|
|
Review: "It arrived broken and support was useless." -> NEGATIVE
|
|
Review: "Product works as described, nothing special." -> NEUTRAL
|
|
|
|
Now classify:
|
|
Review: "[your review here]" ->
|
|
```
|
|
|
|
### 5. Structured JSON Output Pattern
|
|
|
|
```
|
|
Extract the following information from the text below and return it as valid JSON only.
|
|
Do not include any explanation or markdown — just the raw JSON object.
|
|
|
|
Schema:
|
|
{
|
|
"name": string,
|
|
"email": string | null,
|
|
"company": string | null,
|
|
"role": string | null
|
|
}
|
|
|
|
Text: [input text here]
|
|
```
|
|
|
|
### 6. Reduce Hallucination Pattern
|
|
|
|
```
|
|
Answer the following question based ONLY on the provided context.
|
|
If the answer is not contained in the context, respond with exactly: "I don't have enough information to answer this."
|
|
Do not make up or infer information not present in the context.
|
|
|
|
Context:
|
|
[your context here]
|
|
|
|
Question: [your question here]
|
|
```
|
|
|
|
### 7. Prompt Compression Techniques
|
|
|
|
Reduce token count without losing effectiveness:
|
|
|
|
```
|
|
# Verbose (expensive)
|
|
"Please carefully analyze the following code and provide a detailed explanation of
|
|
what it does, how it works, and any potential issues you might find."
|
|
|
|
# Compressed (efficient, same quality)
|
|
"Analyze this code: explain what it does, how it works, and flag any issues."
|
|
```
|
|
|
|
## Best Practices
|
|
|
|
- ✅ **Do:** Always specify the output format (JSON, markdown, plain text, bullet list)
|
|
- ✅ **Do:** Use delimiters (```, ---) to separate instructions from content
|
|
- ✅ **Do:** Test prompts with edge cases (empty input, unusual data)
|
|
- ✅ **Do:** Version your system prompts in source control
|
|
- ✅ **Do:** Add "think step by step" for math, logic, or multi-step tasks
|
|
- ❌ **Don't:** Use negative-only instructions ("don't be verbose") — add positive alternatives
|
|
- ❌ **Don't:** Assume the model knows your codebase context — always include it
|
|
- ❌ **Don't:** Use the same prompt across different models without testing — they behave differently
|
|
|
|
## Prompt Audit Checklist
|
|
|
|
Before using a prompt in production:
|
|
|
|
- [ ] Does it have a clear role/persona?
|
|
- [ ] Is the output format explicitly defined?
|
|
- [ ] Are edge cases handled (empty input, ambiguous data)?
|
|
- [ ] Is the length appropriate (not too long/short)?
|
|
- [ ] Has it been tested on 5+ varied inputs?
|
|
- [ ] Is hallucination risk addressed for factual tasks?
|
|
|
|
## Troubleshooting
|
|
|
|
**Problem:** Model ignores format instructions
|
|
**Solution:** Move format instructions to the END of the prompt, after examples. Use strong language: "You MUST return only valid JSON."
|
|
|
|
**Problem:** Inconsistent results between runs
|
|
**Solution:** Lower the temperature setting (0.0-0.3 for factual tasks). Add more few-shot examples.
|
|
|
|
**Problem:** Prompt works in playground but fails in production
|
|
**Solution:** Check if system prompt is being sent correctly. Verify token limits aren't being exceeded (use a token counter).
|
|
|
|
**Problem:** Output is too long
|
|
**Solution:** Add explicit word/sentence limits: "Respond in exactly 3 bullet points, each under 20 words."
|