All models

o1

OpenAIChatReasoning
Get your API key
o1

A deep reasoning model for mathematical code and complex problems

o1 is a conversational reasoning model in OpenAI's o series, suitable for tasks that require breaking down conditions, comparing solutions, and checking logic. Its primary value lies in mathematical analysis, complex code debugging, and scientific problem exploration, rather than turning every question into a long answer. On this platform, you can choose message-based calls or managed sessions according to application needs, delivering written answers, code suggestions, and analysis results.

OpenAIModel brand
ConversationModel type
ReasoningTask capability

Specifications and interface features

Clarify capacity, input/output, and invocation methods before selecting a model.

Core positioning
Conversational reasoning for complex mathematics, programming, and science tasks
Text input and output
Input questions, conditions, or code; output written analysis and code suggestions
Responses invocation
POST /openai/responses, using model: "o1" and input
Message-based invocation
POST /openai/chat/completions, using model: "o1" and messages
Managed sessions
/aichat/conversations and /aichat2/conversations; text question, returning answer, id
Continuous discussion
Managed sessions can continue context through stateful and id

The reasoning positioning is a public capability of the o1 series, while message organization and session persistence are features of this platform's invocation endpoints.

Core Capabilities

Learn what o1 can bring to your work.

Turn complex conditions into a solution path

o1 is suited to problems that cannot be answered simply through direct retrieval or applying templates. After providing the goal, known conditions, and constraints, you can ask it to provide a solution path, key assumptions, and verification methods. For mathematical derivations and logical analysis, the focus should be on whether the conclusion satisfies the conditions, not merely on whether the answer is detailed.

Analyze complex code around root causes

For code tasks, you can provide relevant functions, exception information, expected behavior, and failing examples at the same time, allowing o1 to analyze deviations between the implementation and requirements. It is better suited to debugging discussions that require understanding multiple conditions, and can deliver repair suggestions and testing ideas; after generating code, it still needs to be run and validated in a real environment.

Support iterative refinement of problem definitions

Complex problems often require additional boundary conditions. When using managed sessions, you can save a session and continue the discussion with the same id, adding newly discovered constraints to the existing analysis; when using a message-based entry point, the application organizes the relevant history. This way of working is suitable for gradually converging on a solution rather than accepting only the first answer.

Use Cases

Start with specific tasks to find where the model can be effective.

Mathematical derivation and solution checking

Enter the problem, symbol definitions, and existing derivation, and ask o1 to check for missing conditions, consider special cases, and provide an explainable solution that can be reviewed. Deliverables can include a derivation draft, error identification, or alternative methods, making it suitable for discussing complex problems in research and learning; generated text should not be treated directly as a verified proof.

Diagnosing difficult software defects

Provide minimal reproducible code, error logs, and expected results, and let o1 compare possible causes, explain where changes should be made, and suggest tests that cover boundary conditions. It is suitable for defects caused jointly by multiple branches or constraints; narrowing down to the key code first makes it easier to determine whether the suggestions are effective than submitting a large number of unrelated files at once.

Reasoning through scientific questions and technical solutions

Organize the research question, known relationships, data summary, and hypotheses into text, and ask o1 to distinguish facts from speculation and reason through the conditions required for a solution to hold. It can be used to create formula drafts, analysis outlines, and lists of questions to verify, and is especially suitable for stages that require clarifying the logic before moving on to experimental or computational validation.

How to Choose This Model

Choose based on task complexity, input materials, and expected results.

Choose o1 for reasoning tasks; weigh trade-offs for general interaction as needed

When a problem involves multi-step derivation, complex debugging, or mutually constraining conditions, you can choose o1. If the main task is everyday Q&A, copy rewriting, or image-text interaction, you should also consider general models such as GPT-4o. The basis for selection is the capability required by the task, not the assumption that a default reasoning model is more suitable for all work.

Do not treat names in the same series as the same version

o1, o1-preview, o1-mini, and o1-pro are different names and cannot be understood interchangeably. The public positioning of o1-mini leans toward more streamlined coding reasoning; the o1 on this page is suitable for comprehensive discussion of mathematics, code, and scientific problems. When migrating an existing application, use your own representative tasks to compare results rather than reusing evaluations or parameter assumptions from other versions.

Getting Started

From a small-scale task to full integration.

01

Prepare tasks and materials

Clarify the goal, required inputs, and output requirements, and use real business examples as a starting point.

02

Try it in the API testing area

Open the trial page, confirm the parameters supported by this entry point, then submit a small-scale task to review the results.

03

Integrate according to the API documentation

Keep the full model ID, use the request format specified in the documentation, and confirm billing rules on the Pricing page.

Usage Boundaries

Before formal use, understand output quality and capability scope.

  • Reasoning ability does not guarantee correctness. Math tasks may omit domains or special cases, and code suggestions may also depend on environment conditions that do not exist. Ask responses to state assumptions clearly, list checkpoints, and verify key conclusions through calculation, testing, or professional review.
  • o1's text responses are not automatically executed results. Generated programs, experimental steps, or workflow suggestions do not mean that code has run, data has been processed, or external operations have been completed. Tasks that need execution should be handed over to the runtime environment configured by the application, with execution records retained.
  • Do not treat all optional fields in the service interface as capabilities of o1. Choose appropriate features for images, audio, files, and search according to the task; for pure text reasoning, it is recommended to provide the necessary content, symbol definitions, and constraints directly, rather than only attaching links without problem context.

Frequently Asked Questions

Answers to common questions about using o1.

Are o1 and o1-preview the same model?

They are not interchangeable names. This page uses model: "o1", while o1-preview is the name of an early preview version in the series. The feature limitations, usage limits, and evaluation results from the preview period should not be used directly to judge o1; actual model selection should be based on your own math, code, or analysis tasks.

What kinds of problems are most worth giving to o1?

Problems requiring multi-step analysis, interacting conditions, or solution checking are better suited, such as mathematical derivations, complex code debugging, and scientific hypothesis discussions. When submitting, clearly state the goal, known conditions, and acceptance criteria, and ask it to explain key assumptions; this is usually more useful than simply asking it to “think deeply.”

Which API should I choose to call o1?

Applications that already manage messages history can use /openai/chat/completions; applications using the Responses data structure can use /openai/responses. If you want to simplify ongoing discussions, you can choose the managed session endpoint, ask questions with question, and continue the conversation through the session id.

Can o1 automatically run the code it writes?

Code text cannot be treated as execution results. o1 can be used to generate and debug suggestions, but actual execution requires the application to provide an execution environment. It is recommended to first check dependencies, inputs, and permissions, then run tests, provide exceptions and test results to the model, and continue locating issues and validating changes.

How can I make o1's math answers easier to verify?

Clearly specify variable ranges, units, boundary conditions, and existing derivations; ask it to distinguish assumptions from conclusions and provide key equations, counterexample checks, or numerical verification methods. Review whether each key step is valid, and do not assume a proof is correct merely because the answer is long or confident in tone.

Model information · Updated: 2026-10-01. See the API and pricing sections for call parameters and billing rules.

Put o1 to work on your next task

Start with a clear goal and judge whether it fits your work based on real results.