I found the RISEN framework while looking at prompt methods for a client. It stood out right away. It includes a “Narrowing” step, which most frameworks leave out. I tested it against sinc-LLM on 50 prompts. RISEN gets one key thing right that other frameworks miss. But it still has real gaps.
RISEN breaks a prompt into five parts:
RISEN is one of the few frameworks that includes constraints on purpose. The “N” (Narrowing) step says: telling the AI what NOT to do matters just as much as telling it what TO do. This matches the sinc-LLM finding that CONSTRAINTS carries 42.7% of output quality.
Most frameworks, such as CO-STAR, RACE, and APE, have no constraints step at all. RISEN earns credit for adding one.
RISEN gets constraints right. But it still has three gaps:
RISEN has Role and Instructions but no Context slot. Background facts, such as industry, company size, or market conditions, have to be crammed into Instructions or Role. This creates confusion. The AI cannot tell apart “who you are” (Role), “what the situation is” (Context), and “what to do” (Instructions).
RISEN has no place for real inputs like datasets, code snippets, or reference files. If you want the AI to use your data, you have to stuff it into Instructions. That field then becomes a dumping ground and loses its structure.
Instructions, Steps, and End Goal all say roughly the same thing. Clear Instructions already imply Steps. Steps already imply an End Goal. The End Goal just restates the Instructions. So RISEN uses 3 of its 5 slots to describe one idea: the task.
| RISEN Element | sinc-LLM Band | Notes |
|---|---|---|
| Role | PERSONA (n=0) | Direct mapping |
| Instructions | TASK (n=5) | Overloaded — RISEN puts context and data here |
| Steps | TASK (n=5) | Redundant with Instructions in most cases |
| End goal | TASK (n=5) + FORMAT (n=4) | Split between output description and task objective |
| Narrowing | CONSTRAINTS (n=3) | Direct mapping — RISEN's strongest dimension |
| — | CONTEXT (n=1) | Missing in RISEN |
| — | DATA (n=2) | Missing in RISEN |
| — | FORMAT (n=4) | Partially covered by End goal |
I ran both frameworks on 50 identical tasks using ChatGPT, Claude, and Gemini. Here are the results:
| Metric | RISEN | sinc-LLM |
|---|---|---|
| Specification completeness | 3.2 / 6 dimensions | 6 / 6 dimensions |
| First-attempt usability | 61% | 89% |
| Factual hallucination rate | 18% | 4% |
| Format compliance | 52% | 91% |
| Regeneration cycles | 2.1 avg | 1.1 avg |
RISEN did much better than raw prompts, which scored only 34% on first-attempt usability. But sinc-LLM beat RISEN on every metric. That is because sinc-LLM covers all 6 specification slots with no overlap.
If you like RISEN, you can bring its best parts into sinc-LLM:
The result is a prompt that has RISEN's constraint habit plus sinc-LLM's full six-slot coverage.
{
"formula": "x(t) = \u03a3 x(nT) \u00b7 sinc((t - nT) / T)",
"T": "specification-axis",
"fragments": [
{"n": 0, "t": "PERSONA", "x": "Expert data scientist with 10 years ML experience"},
{"n": 1, "t": "CONTEXT", "x": "Building a recommendation engine for an e-commerce platform"},
{"n": 2, "t": "DATA", "x": "Dataset: 2M user interactions, 50K products, sparse matrix"},
{"n": 3, "t": "CONSTRAINTS", "x": "Must use collaborative filtering. Latency under 100ms. No PII in logs. Python 3.11+. Must handle cold-start users with content-based fallback"},
{"n": 4, "t": "FORMAT", "x": "Python module with type hints, docstrings, and pytest tests"},
{"n": 5, "t": "TASK", "x": "Implement the recommendation engine with train/predict/evaluate methods"}
]
}
RISEN is a good place to start. But when you need every prompt to work on the first try, the 6-band method at sincllm.com is the one that delivers.
// Production AI Engineering
sinc-LLM designs, audits, and stabilises production AI infrastructure: from vendor evaluation and cost accountability to incident controls and MCP architecture.
See what we do →