Buckets:
| <meta charset="utf-8" /><meta name="hf:doc:metadata" content="{"title":"Thought: Internal Reasoning and the ReAct Approach","local":"thought-internal-reasoning-and-the-react-approach","sections":[{"title":"🧠 Examples of Common Thought Types","local":"-examples-of-common-thought-types","sections":[],"depth":2},{"title":"🔗 Chain-of-Thought (CoT)","local":"-chain-of-thought-cot","sections":[{"title":"✅ Example (CoT)","local":"-example-cot","sections":[],"depth":3}],"depth":2},{"title":"⚙️ ReAct: Reasoning + Acting","local":"-react-reasoning--acting","sections":[{"title":"🔄 Example (ReAct)","local":"-example-react","sections":[],"depth":3}],"depth":2},{"title":"🔁 Comparison: ReAct vs. CoT","local":"-comparison-react-vs-cot","sections":[],"depth":2}],"depth":1}"> | |
| <link href="/docs/agents-course/pr_673/en/_app/immutable/assets/0.e3b0c442.css" rel="modulepreload"> | |
| <link rel="modulepreload" href="/docs/agents-course/pr_673/en/_app/immutable/entry/start.c74419d2.js"> | |
| <link rel="modulepreload" href="/docs/agents-course/pr_673/en/_app/immutable/chunks/scheduler.505acc25.js"> | |
| <link rel="modulepreload" href="/docs/agents-course/pr_673/en/_app/immutable/chunks/singletons.198b4280.js"> | |
| <link rel="modulepreload" href="/docs/agents-course/pr_673/en/_app/immutable/chunks/index.001f95d5.js"> | |
| <link rel="modulepreload" href="/docs/agents-course/pr_673/en/_app/immutable/chunks/paths.3b59fb4e.js"> | |
| <link rel="modulepreload" href="/docs/agents-course/pr_673/en/_app/immutable/entry/app.fd3fcfcd.js"> | |
| <link rel="modulepreload" href="/docs/agents-course/pr_673/en/_app/immutable/chunks/preload-helper.d08a2311.js"> | |
| <link rel="modulepreload" href="/docs/agents-course/pr_673/en/_app/immutable/chunks/index.fbb49fb4.js"> | |
| <link rel="modulepreload" href="/docs/agents-course/pr_673/en/_app/immutable/nodes/0.e841730b.js"> | |
| <link rel="modulepreload" href="/docs/agents-course/pr_673/en/_app/immutable/chunks/each.e59479a4.js"> | |
| <link rel="modulepreload" href="/docs/agents-course/pr_673/en/_app/immutable/nodes/31.621267b5.js"> | |
| <link rel="modulepreload" href="/docs/agents-course/pr_673/en/_app/immutable/chunks/CopyLLMTxtMenu.6b8eceea.js"> | |
| <link rel="modulepreload" href="/docs/agents-course/pr_673/en/_app/immutable/chunks/MermaidChart.svelte_svelte_type_style_lang.e65e4bc7.js"> | |
| <link rel="modulepreload" href="/docs/agents-course/pr_673/en/_app/immutable/chunks/CodeBlock.308723de.js"> | |
| <link rel="modulepreload" href="/docs/agents-course/pr_673/en/_app/immutable/chunks/Heading.511e0027.js"><!-- HEAD_svelte-u9bgzb_START --><meta name="hf:doc:metadata" content="{"title":"Thought: Internal Reasoning and the ReAct Approach","local":"thought-internal-reasoning-and-the-react-approach","sections":[{"title":"🧠 Examples of Common Thought Types","local":"-examples-of-common-thought-types","sections":[],"depth":2},{"title":"🔗 Chain-of-Thought (CoT)","local":"-chain-of-thought-cot","sections":[{"title":"✅ Example (CoT)","local":"-example-cot","sections":[],"depth":3}],"depth":2},{"title":"⚙️ ReAct: Reasoning + Acting","local":"-react-reasoning--acting","sections":[{"title":"🔄 Example (ReAct)","local":"-example-react","sections":[],"depth":3}],"depth":2},{"title":"🔁 Comparison: ReAct vs. CoT","local":"-comparison-react-vs-cot","sections":[],"depth":2}],"depth":1}"><!-- HEAD_svelte-u9bgzb_END --> <p></p> <div class="items-center shrink-0 min-w-[100px] max-sm:min-w-[50px] justify-end ml-auto flex" style="float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"><div class="inline-flex rounded-md max-sm:rounded-sm"><button class="inline-flex items-center gap-1 h-7 max-sm:h-7 px-2 max-sm:px-1.5 text-sm font-medium text-gray-800 border border-r-0 rounded-l-md max-sm:rounded-l-sm border-gray-200 bg-white hover:shadow-inner dark:border-gray-850 dark:bg-gray-950 dark:text-gray-200 dark:hover:bg-gray-800" aria-live="polite"><span class="inline-flex items-center justify-center rounded-md p-0.5 max-sm:p-0 hover:text-gray-800 dark:hover:text-gray-200"><svg class="sm:size-3.5 size-3" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg></span> <span>Copy page</span></button> <button class="inline-flex items-center justify-center w-6 max-sm:w-5 h-7 max-sm:h-7 disabled:pointer-events-none text-sm text-gray-500 hover:text-gray-700 dark:hover:text-white rounded-r-md max-sm:rounded-r-sm border border-l transition border-gray-200 bg-white hover:shadow-inner dark:border-gray-850 dark:bg-gray-950 dark:text-gray-200 dark:hover:bg-gray-800" aria-haspopup="menu" aria-expanded="false" aria-label="Open copy menu"><svg class="transition-transform text-gray-400 overflow-visible sm:size-3.5 size-3 rotate-0" width="1em" height="1em" viewBox="0 0 12 7" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1L6 6L11 1" stroke="currentColor"></path></svg></button></div> </div> <h1 class="relative group"><a id="thought-internal-reasoning-and-the-react-approach" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#thought-internal-reasoning-and-the-react-approach"><span><svg class="" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg></span></a> <span>Thought: Internal Reasoning and the ReAct Approach</span></h1> <blockquote class="tip" data-svelte-h="svelte-1yk3li1"><p>In this section, we dive into the inner workings of an AI agent—its ability to reason and plan. We’ll explore how the agent leverages its internal dialogue to analyze information, break down complex problems into manageable steps, and decide what action to take next.</p> <p>Additionally, we introduce the ReAct approach, a prompting technique that encourages the model to think “step by step” before acting.</p></blockquote> <p data-svelte-h="svelte-1l9soxr">Thoughts represent the <strong>Agent’s internal reasoning and planning processes</strong> to solve the task.</p> <p data-svelte-h="svelte-vzldbv">This utilises the agent’s Large Language Model (LLM) capacity <strong>to analyze information when presented in its prompt</strong> — essentially, its inner monologue as it works through a problem.</p> <p data-svelte-h="svelte-1ou8xyz">The Agent’s thoughts help it assess current observations and decide what the next action(s) should be. Through this process, the agent can <strong>break down complex problems into smaller, more manageable steps</strong>, reflect on past experiences, and continuously adjust its plans based on new information.</p> <h2 class="relative group"><a id="-examples-of-common-thought-types" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#-examples-of-common-thought-types"><span><svg class="" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg></span></a> <span>🧠 Examples of Common Thought Types</span></h2> <table data-svelte-h="svelte-1efoj4x"><thead><tr><th>Type of Thought</th> <th>Example</th></tr></thead> <tbody><tr><td>Planning</td> <td>“I need to break this task into three steps: 1) gather data, 2) analyze trends, 3) generate report”</td></tr> <tr><td>Analysis</td> <td>“Based on the error message, the issue appears to be with the database connection parameters”</td></tr> <tr><td>Decision Making</td> <td>“Given the user’s budget constraints, I should recommend the mid-tier option”</td></tr> <tr><td>Problem Solving</td> <td>“To optimize this code, I should first profile it to identify bottlenecks”</td></tr> <tr><td>Memory Integration</td> <td>“The user mentioned their preference for Python earlier, so I’ll provide examples in Python”</td></tr> <tr><td>Self-Reflection</td> <td>“My last approach didn’t work well, I should try a different strategy”</td></tr> <tr><td>Goal Setting</td> <td>“To complete this task, I need to first establish the acceptance criteria”</td></tr> <tr><td>Prioritization</td> <td>“The security vulnerability should be addressed before adding new features”</td></tr></tbody></table> <blockquote data-svelte-h="svelte-1rnm5b1"><p><strong>Note:</strong> In the case of LLMs fine-tuned for function-calling, the thought process is optional. More details will be covered in the Actions section.</p></blockquote> <h2 class="relative group"><a id="-chain-of-thought-cot" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#-chain-of-thought-cot"><span><svg class="" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg></span></a> <span>🔗 Chain-of-Thought (CoT)</span></h2> <p data-svelte-h="svelte-1geczeh"><strong>Chain-of-Thought (CoT)</strong> is a prompting technique that guides a model to <strong>think through a problem step-by-step before producing a final answer.</strong></p> <p data-svelte-h="svelte-1nti0rh">It typically starts with:</p> <blockquote data-svelte-h="svelte-1lykmzb"><p><em>“Let’s think step by step.”</em></p></blockquote> <p data-svelte-h="svelte-159738">This approach helps the model <strong>reason internally</strong>, especially for logical or mathematical tasks, <strong>without interacting with external tools</strong>.</p> <h3 class="relative group"><a id="-example-cot" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#-example-cot"><span><svg class="" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg></span></a> <span>✅ Example (CoT)</span></h3> <div class="code-block relative "><div class="absolute top-2.5 right-4"><button class="inline-flex items-center relative text-sm focus:text-green-500 cursor-pointer focus:outline-none transition duration-200 ease-in-out opacity-0 mx-0.5 text-gray-600 " title="code excerpt" type="button"><svg class="" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg> <div class="absolute pointer-events-none transition-opacity bg-black text-white py-1 px-2 leading-tight rounded font-normal shadow left-1/2 top-full transform -translate-x-1/2 translate-y-2 opacity-0"><div class="absolute bottom-full left-1/2 transform -translate-x-1/2 w-0 h-0 border-black border-4 border-t-0" style="border-left-color: transparent; border-right-color: transparent; "></div> Copied</div></button></div> <pre class=""><!-- HTML_TAG_START --><span class="hljs-attribute">Question</span>: What is <span class="hljs-number">15</span>% of <span class="hljs-number">200</span>? | |
| <span class="hljs-attribute">Thought</span>: Let's think step by step. <span class="hljs-number">10</span>% of <span class="hljs-number">200</span> is <span class="hljs-number">20</span>, and <span class="hljs-number">5</span>% of <span class="hljs-number">200</span> is <span class="hljs-number">10</span>, so <span class="hljs-number">15</span>% is <span class="hljs-number">30</span>. | |
| <span class="hljs-attribute">Answer</span>: <span class="hljs-number">30</span><!-- HTML_TAG_END --></pre></div> <h2 class="relative group"><a id="-react-reasoning--acting" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#-react-reasoning--acting"><span><svg class="" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg></span></a> <span>⚙️ ReAct: Reasoning + Acting</span></h2> <p data-svelte-h="svelte-1u1gx49">A key method is the <strong>ReAct approach</strong>, which combines “Reasoning” (Think) with “Acting” (Act).</p> <p data-svelte-h="svelte-6ob8vu">ReAct is a prompting technique that encourages the model to think step-by-step and interleave actions (like using tools) between reasoning steps.</p> <p data-svelte-h="svelte-7dmqg2">This enables the agent to solve complex multi-step tasks by alternating between:</p> <ul data-svelte-h="svelte-179bl4n"><li>Thought: internal reasoning</li> <li>Action: tool usage</li> <li>Observation: receiving tool output</li></ul> <h3 class="relative group"><a id="-example-react" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#-example-react"><span><svg class="" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg></span></a> <span>🔄 Example (ReAct)</span></h3> <div class="code-block relative "><div class="absolute top-2.5 right-4"><button class="inline-flex items-center relative text-sm focus:text-green-500 cursor-pointer focus:outline-none transition duration-200 ease-in-out opacity-0 mx-0.5 text-gray-600 " title="code excerpt" type="button"><svg class="" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg> <div class="absolute pointer-events-none transition-opacity bg-black text-white py-1 px-2 leading-tight rounded font-normal shadow left-1/2 top-full transform -translate-x-1/2 translate-y-2 opacity-0"><div class="absolute bottom-full left-1/2 transform -translate-x-1/2 w-0 h-0 border-black border-4 border-t-0" style="border-left-color: transparent; border-right-color: transparent; "></div> Copied</div></button></div> <pre class=""><!-- HTML_TAG_START --><span class="hljs-symbol">Thought:</span> I need <span class="hljs-keyword">to</span> find the latest weather <span class="hljs-keyword">in</span> Paris. | |
| <span class="hljs-symbol">Action:</span> Search[<span class="hljs-string">"weather in Paris"</span>] | |
| <span class="hljs-symbol">Observation:</span> It<span class="hljs-comment">'s 18°C and cloudy.</span> | |
| <span class="hljs-symbol">Thought:</span> Now that I know the weather... | |
| <span class="hljs-symbol">Action:</span> Finish[<span class="hljs-string">"It's 18°C and cloudy in Paris."</span>]<!-- HTML_TAG_END --></pre></div> <figure data-svelte-h="svelte-1cb6cjl"><img src="https://huggingface.co/datasets/agents-course/course-images/resolve/main/en/unit1/ReAct.png" alt="ReAct"> <figcaption>(d) is an example of the ReAct approach, where we prompt "Let's think step by step", and the model acts between thoughts.</figcaption></figure> <h2 class="relative group"><a id="-comparison-react-vs-cot" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#-comparison-react-vs-cot"><span><svg class="" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg></span></a> <span>🔁 Comparison: ReAct vs. CoT</span></h2> <table data-svelte-h="svelte-kq7oh"><thead><tr><th>Feature</th> <th>Chain-of-Thought (CoT)</th> <th>ReAct</th></tr></thead> <tbody><tr><td>Step-by-step logic</td> <td>✅ Yes</td> <td>✅ Yes</td></tr> <tr><td>External tools</td> <td>❌ No</td> <td>✅ Yes (Actions + Observations)</td></tr> <tr><td>Best suited for</td> <td>Logic, math, internal tasks</td> <td>Info-seeking, dynamic multi-step tasks</td></tr></tbody></table> <blockquote class="tip" data-svelte-h="svelte-1koq9n1"><p>Recent models like <strong>Deepseek R1</strong> or <strong>OpenAI’s o1</strong> were fine-tuned to <em>think before answering</em>. They use structured tokens like <code><think></code> and <code></think></code> to explicitly separate the reasoning phase from the final answer.</p> <p>Unlike ReAct or CoT — which are prompting strategies — this is a <strong>training-level technique</strong>, where the model learns to think via examples.</p></blockquote> <a class="!text-gray-400 !no-underline text-sm flex items-center not-prose mt-4" href="https://github.com/huggingface/agents-course/blob/main/units/en/unit1/thoughts.mdx" target="_blank"><svg class="mr-1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M31,16l-7,7l-1.41-1.41L28.17,16l-5.58-5.59L24,9l7,7z"></path><path d="M1,16l7-7l1.41,1.41L3.83,16l5.58,5.59L8,23l-7-7z"></path><path d="M12.419,25.484L17.639,6.552l1.932,0.518L14.351,26.002z"></path></svg> <span data-svelte-h="svelte-zjs2n5"><span class="underline">Update</span> on GitHub</span></a> <p></p> | |
| <script> | |
| { | |
| __sveltekit_1wofr4t = { | |
| assets: "/docs/agents-course/pr_673/en", | |
| base: "/docs/agents-course/pr_673/en", | |
| env: {} | |
| }; | |
| const element = document.currentScript.parentElement; | |
| const data = [null,null]; | |
| Promise.all([ | |
| import("/docs/agents-course/pr_673/en/_app/immutable/entry/start.c74419d2.js"), | |
| import("/docs/agents-course/pr_673/en/_app/immutable/entry/app.fd3fcfcd.js") | |
| ]).then(([kit, app]) => { | |
| kit.start(app, element, { | |
| node_ids: [0, 31], | |
| data, | |
| form: null, | |
| error: null | |
| }); | |
| }); | |
| } | |
| </script> | |
Xet Storage Details
- Size:
- 23.8 kB
- Xet hash:
- 3293fc2cd9074666a422f06f3a05fbe7f7e4e0e0314c51dd15ebf2b815112500
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.