Decoding OpenAI’s o1 Model: Insights from Initial Thorough Investigation and Reverse Engineering

Kan Yuenyong
7 min readSep 16, 2024

--

The release of OpenAI’s o1 model, also known as Strawberry, has spurred intense discussions within the AI community. Heralded as a major advancement in AI reasoning and decision-making, o1 is positioned as a next-generation language model with enhanced capabilities for reasoning, reflection, and multi-step task execution. The immediate response from the community was one of intrigue and curiosity, particularly regarding the model’s internal architecture and mechanisms. The push for understanding o1’s abilities has gone beyond mere usage — it has led to efforts to reverse-engineer its processes and uncover the techniques underpinning its advanced reasoning abilities.

This endeavor to reverse-engineer o1 stems from a broader interest in open-source AI development, where the goal is to replicate or build on the capabilities of proprietary models like o1. The open-source movement in AI is gaining momentum, as developers and researchers seek to democratize access to powerful language models and create alternatives that don’t require the same scale of resources as those developed by large companies like OpenAI. In the case of o1, researchers are particularly interested in understanding how its reasoning capabilities can be implemented in more accessible models. Questions have been raised about whether open-source models can integrate similar techniques, such as reinforcement learning with human feedback (RLHF), or whether they can be trained to perform comparable reasoning tasks with fewer computational resources.

At the heart of these discussions is the unique blend of internal reasoning that defines o1’s capabilities. Unlike previous models, which were more rigid in how they approached tasks, o1 has been designed to handle tasks more fluidly, inferring relationships between sub-tasks, adjusting plans dynamically, and learning from feedback to improve its performance over time. This shift towards a more agentic AI paradigm, where the model can act independently and adapt to changing contexts, is a significant development in AI. The community’s reverse-engineering efforts are not merely about replicating o1’s capabilities — they are about understanding how these autonomous processes are structured and whether they can be generalized across different AI systems.

Internal vs. External Frameworks for AI Reasoning

A significant part of this discussion surrounding OpenAI’s o1 model involves its internal reasoning capabilities and how these differ from external frameworks that have traditionally been used to manage complex AI tasks. Internal reasoning systems, like those employed by o1, offer a distinct advantage in their ability to automatically handle task planning, sub-task decomposition, and final execution within a single, cohesive process. This contrasts sharply with external frameworks, where reasoning, planning, and task execution are modular and require more explicit control and coordination.

The internal approach, as exemplified by o1, is built around the model’s ability to infer relationships between different tasks and adjust dynamically. For example, when faced with a multi-step task such as decoding an encrypted message, o1 can autonomously determine how to break down the task into manageable parts, relate each sub-task to the larger goal, and adjust its approach based on feedback. This is achieved through techniques like RLHF, which helps the model fine-tune its reasoning process by learning from past mistakes and improving its accuracy over time.

In contrast, external frameworks operate with a more modular structure, where tasks are explicitly broken down by a central planning unit and executed in a sequence that is pre-defined by the system’s architecture. Each sub-task may be handled by an independent AI process, and while this allows for great flexibility and customization, it lacks the seamless inference capabilities of internal systems. External frameworks rely on a planning unit to organize, manage, and relate sub-tasks to the overall goal. This can be seen in systems that use modular AI components to handle complex workflows, where each module focuses on a specific part of the task and the results are combined at the end.

One of the key differences between these two approaches lies in the ability to “reason” organically. Internal models like o1 can relate sub-tasks in a way that feels fluid and dynamic, continuously learning and adjusting through RLHF. On the other hand, external systems need explicit feedback loops and manually programmed relationships between tasks. This is where the limitations of modular frameworks become apparent — they excel at handling technical complexity but lack the natural, autonomous reasoning process that defines internal models.

The debate over whether internal reasoning or modular external frameworks are more effective ultimately comes down to the specific application. For tasks that require deep, recursive sub-tasking, external systems offer a clear advantage, as they allow for unlimited recursion and can handle sub-tasks independently without running into token limitations. However, for more holistic tasks that benefit from seamless task management and continuous improvement, internal systems like o1 offer a more efficient and intelligent solution.

Constraints and Flexibility in Task Management

The difference between internal models like OpenAI’s o1 and external frameworks is most apparent in how they handle the constraints of task management and sub-task decomposition. One of the major challenges for internal models lies in the limitation imposed by operational tokens — a finite number of tokens that a model can process in a single pass. This is a natural boundary for any language model, including o1, which must complete its reasoning and task execution within a set token limit. For tasks that require deep reasoning or many steps, this can become a significant constraint, forcing the model to simplify or truncate its outputs.

OpenAI’s o1-preview demonstrates its thinking process in decrypting an encrypted message, as showcased in OpenAI’s technical paper. The process, detailed in the shared prompt here, reflects the model’s internal reasoning and task execution.

Internal systems must therefore balance their token limits with their ability to carry out complex, multi-step processes. They typically approach this by optimizing how each sub-task is handled, often making trade-offs between the depth of reasoning and the complexity of the output. Quiet-STaR, for example, uses a method called tokenwise parallel sampling to process reasoning paths efficiently. This allows internal models to maintain a high level of reasoning within their token limits but still necessitates careful management of token usage. If a task’s complexity exceeds the token window, the model might lose coherence or truncate important information. This becomes particularly challenging in tasks that require recursive sub-tasking, as each layer of recursion adds more demand on the model’s token capacity.

In contrast, external frameworks like agenticOps operate with a higher degree of flexibility. By breaking tasks down into smaller, modular components, external systems can avoid token limitations altogether. Once a task is divided into sub-tasks, each sub-task can be processed independently in a new AI call, meaning the token limits of any individual sub-task are less of a concern. This allows external frameworks to handle indefinite recursion — a feature that is critical for complex, highly layered tasks where each sub-task may require its own reasoning process.

External frameworks also excel in task scalability, as each sub-task can be executed independently and later combined to form a complete solution. This is especially useful when the problem requires extensive recursive breakdowns, such as multi-layered planning tasks or when multiple independent AI processes need to collaborate on different aspects of a solution.

The o1-preview model still exhibits occasional ‘errors’ and ‘hallucinations’ when handling simple prompts, such as comparing values like 9.11 and 9.8. Initially, it provided the incorrect answer of 9.11, but upon being asked to recheck, it corrected the response to 9.8. Similarly, our ‘persona’ AI, Knave I, was able to arrive at the correct answer on the second attempt. This provides evidence that, despite o1’s sophisticated planning unit, it is still prone to hallucinations. Given the ‘expensive’ nature of using o1 — whether due to token costs or limits like a 30/60 session quota per week — careful planning and elaboration are necessary before employing this model.

However, while external systems offer technical flexibility, they lack the seamless reasoning found in internal models like o1. Internal systems are inherently designed to relate sub-tasks to each other within a single coherent process, ensuring that the results of one sub-task directly inform the next. In this way, internal models can offer a more holistic approach to problem-solving, even if they are limited by token constraints. By contrast, external systems may struggle to maintain this organic connection between tasks, especially when they rely on separate AI processes to manage each sub-task independently.

Thus, while external frameworks provide unlimited recursion and greater control over sub-task management, internal models like o1 offer a more integrated approach that ensures each sub-task contributes directly to the overall reasoning process. The trade-off between token constraints and task flexibility ultimately determines which approach is more suitable for a given task. For highly recursive tasks, external systems shine. But for tasks that require integrated reasoning and dynamic task management, internal models hold the advantage.

See an article “Reverse Engineering o1 Architecture (With a little help from our friend Claude)” on Reddit

References:

  • Quiet-STaR enables language models to enhance their reasoning abilities by generating multiple internal rationales before outputting text. This parallel processing of thoughts helps models solve complex tasks like mathematical reasoning or commonsense logic. It differs from traditional reasoning models by handling more dynamic and unstructured tasks. [source: link]
  • OpenAI’s o1 model emphasizes implicit chain of thought (CoT) reasoning, where the model adjusts its thought process through dynamic reasoning tokens and post-training reinforcement learning. This gives the model the ability to simulate System 2 thinking, solving complex tasks like coding and advanced math. RLHF further helps o1 refine its self-correcting mechanisms. [source: link #1, link #2]
  • Internal frameworks like o1 can handle task decomposition and execution in a seamless, integrated manner, leveraging their dynamic reasoning capabilities. External frameworks, such as modular systems like agenticOps, allow for infinite recursion of tasks but rely heavily on explicit planning units to manage complex workflows. Th​e, lacks the organic reasoning seen in o1 and Quiet-STaR. [source: ibid]

end./

--

--

Kan Yuenyong
Kan Yuenyong

Written by Kan Yuenyong

A geopolitical strategist who lives where a fine narrow line amongst a collision of civilizations exists.