---
type: entity
subtype: tool
title: "OpenAI o1"
description: "OpenAI's reasoning model line that thinks before answering via inference-time compute, cited as the leading example of reasoning LLMs that reduce hallucinations and bad agent decisions."
resource: "https://openai.com/o1"
tags: [llm, model, reasoning-model, openai]
videos: [openais-o1-is-barely-usable-but-i-fixed-it, im-addicted-to-windsurf-send-help, deepseek-r1-just-revolutionized-ai-forever, how-to-dominate-with-ai-in-2025]
created: 2026-07-21
updated: 2026-07-21
---

# OpenAI o1

o1 is OpenAI's first [reasoning model](../../concepts/reasoning-models.md) line, an LLM that spends inference-time compute thinking to itself before it commits to an answer. Cole uses it as the canonical example of the whole category: reasoning models are "llms that are able to think to themselves before giving a final answer to the user and you get some insane results with this kind of setup there are a lot of reasoning llms already out there like 01" [0:00:00]. The deliberation is the product, and it is why o1 became his escalation model rather than his daily driver.

## The agent gap it exposed

o1's beta preview shipped without the plumbing agents depend on: "in the beta preview of 01 there going to be a lot of key features that are missing from the model including tool messages and function calling which are both absolutely necessary for AI agents" [0:00:48]. Rather than wait, Cole hand-built a [tool-calling](../../concepts/tool-use.md) layer in [LangChain](./langchain.md), deriving tool descriptions from each function's docstring, constraining o1 to a strict JSON response schema through an output parser ([structured outputs](../../concepts/structured-outputs.md) by hand), and feeding every tool result and exception back as a "thought" so the model could [self-correct](../../concepts/self-correction.md). He also had to add a duplicate-call guard, because reasoning quality does not eliminate mistakes: "even 01 likes to do even though it's a really powerful llm is sometimes it'll hallucinate and try to make the tool call a second time" [0:14:11]. The exercise doubles as a [provider-independence](../../concepts/provider-independence.md) lesson: the same layer works with any model that lacks native function calling.

## How Cole uses it

In practice o1 is the model he escalates to, not the one he lives in. When an AI coding assistant stalls, he switches: "sometimes when I hit a snag in Wind Surf and it really can't seem to figure something out I'll go over to 01" [0:14:38], pastes in the error, and takes o1's fix back into the IDE. In his 2025 stack rundown the same split holds, with fast cheap Claude models for everyday work and o1 reserved "for the more advanced reasoning stuff" [0:20:59]. That is [model selection](../../concepts/model-selection.md) in its most manual form, and the pattern it foreshadows is [reasoning model as a tool](../../concepts/reasoning-model-as-a-tool.md).

o1 also became the yardstick everyone else measured against. [DeepSeek R1](./deepseek-r1.md) was benchmarked squarely at it, "it performs as well sometimes better sometimes a little bit worse than 01 in every Benchmark" [0:03:06], at a fraction of the price, which is what collapsed the access gap around reasoning models.

## Realizes

- [Reasoning Models](../../concepts/reasoning-models.md) - Models that produce explicit reasoning before answering, and when that extra thinking helps versus hurts.
- [Model Selection](../../concepts/model-selection.md) - Choosing the right LLM per task by trading off quality, speed, and cost, often routing easy requests to cheap models and hard ones to expensive models.

## Contrasts with

- [DeepSeek R1](./deepseek-r1.md) - Open-source MIT-licensed reasoning LLM benchmarked directly against o1 at dozens of times lower cost.
- [OpenAI o3-mini](./o3-mini.md) - The next generation of OpenAI's advanced reasoning models, faster and cheaper than o1.

## Works with

- [LangChain](./langchain.md) - The framework Cole used to hand-code the missing function-calling layer around o1.
- [Windsurf](./windsurf.md) - AI coding IDE he escalates out of and back into when it gets stuck on a problem.
- [Streamlit](./streamlit.md) - The chat UI wrapped around the custom o1 agent, with optional display of its internal thoughts.
- [Asana](./asana.md) - Task-management platform used as the example toolset the o1 agent drives.

## Related

- [Tool Calling](../../concepts/tool-use.md) - Letting an LLM invoke external functions and APIs so it can take actions beyond its parametric knowledge.
- [Structured Outputs](../../concepts/structured-outputs.md) - Constraining LLM output to a validated schema so downstream code can rely on its shape.
- [Self-Correcting Agents](../../concepts/self-correction.md) - Feeding tool errors and results back to the model so it can reason about mistakes and retry.
- [Reasoning Model as a Tool](../../concepts/reasoning-model-as-a-tool.md) - A fast model drives the conversation and calls a slow reasoning model as just another tool.
- [Chain-of-Thought Prompting](../../concepts/chain-of-thought.md) - Prompting a model to reason step by step, the technique reasoning models internalize.
- [Provider Independence](../../concepts/provider-independence.md) - Architecting agents so the model can be swapped without a rewrite.

## Sources

- [OpenAI's o1 is Barely Usable, but I Fixed it...](../../sources/openais-o1-is-barely-usable-but-i-fixed-it.md) - "[0:00:48] in the beta preview of 01 there going to be a lot of key features that are missing from the model including tool messages and function calling which are both absolutely necessary for AI agents"
- [I'm Addicted to Windsurf, Send Help](../../sources/im-addicted-to-windsurf-send-help.md) - "[0:14:38] sometimes when I hit a snag in Wind Surf and it really can't seem to figure something out I'll go over to 01"
- [DeepSeek R1 Just Revolutionized AI Forever](../../sources/deepseek-r1-just-revolutionized-ai-forever.md) - "[0:03:06] it performs as well sometimes better sometimes a little bit worse than 01 in every Benchmark"
- [How to DOMINATE with AI in 2025](../../sources/how-to-dominate-with-ai-in-2025.md) - "[0:20:59] I use a lot of 01 as well for the more advanced reasoning stuff especially when wind Surf and bolt get stuck on little coding problems"
