A new class of research is emerging where giving models tools for structured thinking, like a scratchpad, greatly improves their reasoning capabilities.For example, by giving a model reasoning tools, we can greatly improve its reasoning capabilities by providing a dedicated space for working through the problem. This is a simple, yet effective approach to add reasoning to non-reasoning models.First published by Anthropic in this blog post, this technique has been practiced by many AI Engineers (including our own team) long before it was published.
The first version of the Reasoning Tools, previously known as Thikning tools, was published by Anthropic in this blog post.
claude_reasoning_tools.py
Copy
Ask AI
from agno.agent import Agentfrom agno.models.anthropic import Claudefrom agno.tools.reasoning import ReasoningToolsfrom agno.tools.duckduckgo import DuckDuckGoTools# Setup our Agent with the reasoning toolsreasoning_agent = Agent( model=Claude(id="claude-3-7-sonnet-latest"), tools=[ ReasoningTools(add_instructions=True), DuckDuckGoTools(), ], instructions="Use tables where possible", markdown=True,)# Run the Agentreasoning_agent.print_response( "What are the fastest cars in the market? Only the report, no other text.", stream=True, show_full_reasoning=True, stream_intermediate_steps=True,)
The Knowledge Tools take the Reasoning Tools one step further by allowing the Agent to search a knowledge base and analyze the results of their actions.KnowledgeTools = think + search + analyze