Mirascope Frog Logo
Mirascope
DocsBlogPricingCloud
⌘K
Type to search
⌘Kto search
Escto close
mirascope
v1.25.7
1.3k
Join our
Docs v1 (legacy)API ReferenceGuidesDocs
Overview
Getting Started
QuickstartStructured OutputsDynamic Configuration & ChainingTools & Agents
Agents
Web Search AgentAgent Executor: Blog WritingDocumentation AgentLocal Chat with CodebaseLocalized AgentQwant Search Agent with SourcesGenerate SQL with LLM
More Advanced
Code Generation and ExecutionDocument SegmentationExtracting from PDFExtraction using VisionGenerate Captions for an ImageGenerate Synthetic DataLLM Validation With RetriesNamed Entity Recognitiono1 Style ThinkingPII ScrubbingQuery PlanRemoving Semantic DuplicatesSearch with SourcesTranscribing SpeechSupport Ticket RoutingText ClassificationText SummarizationText TranslationKnowledge Graph
Prompt Engineering
Self-AskPlan and SolveContrastive Chain of ThoughtTabular Chain of ThoughtChain of ThoughtThread of ThoughtRereadingEmotion PromptingRephrase and RespondCommon Phrases (Prompt Mining)Role Prompting
Evaluations
Evaluating Documentation AgentEvaluating Web Search Agent with LLMEvaluating Generating SQL with LLM
Langgraph Vs Mirascope
LangGraph Quickstart using Mirascope
# Rereading <Note title="Note"> <p>Our experiences indicate that re-reading is not as effective for newer, more powerful models such as Anthropic's 3.5 Sonnet or OpenAI's GPT-4o, although it remains effective in older models.</p> </Note> [Rereading](https://arxiv.org/pdf/2309.06275) is a prompt engineering technique that simply asks the LLM to reread a question and repeats it. When working with older, less capable LLM models, rereading has shown improvements for all types of reasoning tasks (arithmetic, symbolic, commonsense). <Info title="Mirascope Concepts Used" collapsible={true} defaultOpen={false}> <ul> <li><a href="/docs/v1/learn/prompts/">Prompts</a></li> <li><a href="/docs/v1/learn/calls/">Calls</a></li> </ul> </Info> ```python from mirascope.core import openai, prompt_template @openai.call(model="gpt-4o-mini") @prompt_template("{query} {reread}") def call(query: str, reread_prompt: bool = False) -> openai.OpenAIDynamicConfig: return { "computed_fields": { "reread": f"Read the question again: {query}" if reread_prompt else "", } } prompt = """A coin is heads up. aluino flips the coin. arthor flips the coin. Is the coin still heads up? Flip means reverse.""" print(call(query=prompt, reread_prompt=True)) ``` To analyze the situation: 1. The coin starts heads up. 2. Aluino flips the coin, which reverses it to tails up. 3. Arthor then flips the coin again, which reverses it back to heads up. So, after both flips, the coin is heads up again. The final answer is yes, the coin is still heads up. This example demonstrates how to implement the Rereading technique using Mirascope. The `reread` computed field is added to the prompt when `reread_prompt` is set to `True`, instructing the LLM to read the question again. ## Benefits of Rereading 1. **Improved Comprehension**: Rereading can help the LLM better understand complex or nuanced questions. 2. **Enhanced Accuracy**: For older models, rereading has shown to improve accuracy across various reasoning tasks. 3. **Reinforcement**: Repeating the question can reinforce key details that might be overlooked in a single pass. 4. **Reduced Errors**: Rereading can help minimize errors that might occur due to misreading or misinterpreting the initial question. <Info title="Effective Rereading"> <ul> <li><strong>Use with Older Models</strong>: Rereading is most effective with older, less capable LLM models.</li> <li><strong>Apply to Complex Questions</strong>: Consider using rereading for questions that involve multiple steps or complex reasoning.</li> <li><strong>Combine with Other Techniques</strong>: Rereading can be used in conjunction with other prompt engineering techniques for potentially better results.</li> <li><strong>Monitor Performance</strong>: Keep track of how rereading affects your model's performance, as its effectiveness may vary depending on the specific task and model used.</li> <li><strong>Consider Model Capabilities</strong>: For newer, more advanced models, rereading might not provide significant benefits and could potentially be redundant.</li> </ul> </Info> By leveraging the Rereading technique, particularly with older LLM models, you may be able to improve the model's understanding and accuracy across various types of reasoning tasks. However, always consider the capabilities of your specific model when deciding whether to apply this technique.

Provider

On this page

Provider

On this page

© 2026 Mirascope. All rights reserved.

Mirascope® is a registered trademark of Mirascope, Inc. in the U.S.

Privacy PolicyTerms of Use