Translations must meet a clear style guide, and a second pass with feedback measurably improves them. Which pattern fits?
Why A is the answer
Evaluator-optimizer
Evaluator-optimizer has one call produce and another judge against criteria in a loop. It earns its cost when criteria are clear and feedback really does improve the result.
In detail
- One call produces, and another judges against clear criteria.
- The loop earns its cost when feedback truly improves the result, as it does here.
- Set a maximum number of rounds, so the loop always ends.
Use case
An illustrative scenario, not a real incident.
A translation team has a strict style guide. One call translates, another scores it against the guide and gives feedback, and the loop stops when the score passes.
See it in different ways
flowchart LR
A["Generator"] --> B{"Evaluator: does it pass?"}
B -->|"No, with feedback"| A
B -->|Yes| C["Final output"]mindmap
root((Patterns))
Prompt chaining
Fixed steps
Routing
Classify first
Parallelization
Sectioning
Voting
Orchestrator workers
Subtasks found at run time
Evaluator optimizer
Feedback loopstateDiagram-v2 state "Draft" as s0 state "Evaluate" as s1 state "Done" as s2 [*] --> s0 s0 --> s1: produce s1 --> s0: feedback s1 --> s2: meets the criteria s2 --> [*]
Key point: Use evaluator-optimizer when criteria are clear and feedback helps.
Why the other options are wrong
- B. Parallelization by voting
- Voting compares separate answers, with no feedback between rounds.
- C. Sectioning
- Sectioning splits work into parts and does not refine it.
- D. Routing
- Routing chooses a path and adds no quality loop.

