Skip to content

Commit 081d29c

Browse files
committed
update
1 parent c7a3b2b commit 081d29c

File tree

1 file changed

+16
-9
lines changed

1 file changed

+16
-9
lines changed

articles/ai-services/openai/how-to/reasoning.md

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -50,16 +50,16 @@ Request access: [limited access model application](https://aka.ms/OAI/o1access)
5050
| **[Reasoning effort](#reasoning-effort)** ||| - | - |
5151
| **[Vision Support](./gpt-with-vision.md)** | - || - | - |
5252
| Functions/Tools ||| - | - |
53-
| `max_completion_tokens`<sup>1</sup> |||||
54-
| System Messages<sup>2</sup> ||| - | - |
53+
| `max_completion_tokens`<sup>*</sup> |||||
54+
| System Messages<sup>**</sup> ||| - | - |
5555
| Streaming || - | - | - |
56-
| Markdown formatting<sup>3</sup><br><br>`Formatting re-enabled` || - | - | - |
56+
| [Markdown formatting](#markdown-output) || | - | - |
5757

58-
<sup>1</sup> Reasoning models will only work with the `max_completion_tokens` parameter. <br><br>
58+
<sup>*</sup> Reasoning models will only work with the `max_completion_tokens` parameter. <br><br>
59+
60+
<sup>**</sup>The latest o<sup>&#42;</sup> series model support system messages to make migration easier. When you use a system message with `o3-mini` and `o1` it will be treated as a developer message. You should not use both a developer message and a system message in the same API request.
5961

60-
<sup>2</sup>The latest o<sup>&#42;</sup> series model support system messages to make migration easier. When you use a system message with `o3-mini` and `o1` it will be treated as a developer message. You should not use both a developer message and a system message in the same API request.
6162

62-
<sup>3</sup> By default the `o3-mini` and `o1` models will not attempt to produce output in markdown. To override this behavior and encourage markdown inclusion in model responses add the string `Formatting re-enabled` to the beginning of your developer message. `Formatting re-enabled` is currently only supported with `o3-mini`.
6363

6464
### Not Supported
6565

@@ -68,9 +68,6 @@ The following are currently unsupported with reasoning models:
6868
- Parallel tool calling
6969
- `temperature`, `top_p`, `presence_penalty`, `frequency_penalty`, `logprobs`, `top_logprobs`, `logit_bias`, `max_tokens`
7070

71-
> [!IMPORTANT]
72-
> Currently adding `Formatting re-enabled` to the beginning of a developer messages to indicate that the response should contain markdown formatting is only supported with `o3-mini`. Once support is added for `o1-2024-12-17` we will update this article accordingly.
73-
7471
## Usage
7572

7673
These models [don't currently support the same set of parameters](#api--feature-support) as other models that use the chat completions API.
@@ -319,3 +316,13 @@ print(response.model_dump_json(indent=2))
319316

320317
---
321318

319+
## Markdown output
320+
321+
By default the `o3-mini` and `o1` models will not attempt to produce output that includes markdown formatting. A common use case where this behavior is undesirable is when you want the model to output code contained within a markdown code block. To override this behavior and encourage markdown inclusion in model responses add the string `Formatting re-enabled` to the beginning of your developer message.
322+
323+
Adding `Formatting re-enabled` to the beginning of your developer message does not guarantee that the model will include markdown formatting in its response, it only increases the likelihood. We have found from internal testing that `Formatting re-enabled` is less effective by itself with the `o1` model than with `o3-mini`.
324+
325+
To improve the performance of `Formatting re-enabled` we have found that further augmenting the beginning of the developer message will often result in the desired output. So instead of just adding `Formatting re-enabled` to the beginning of your developer message, instead we recommend experimenting with adding a more descriptive initial instruction like one of the examples below:
326+
327+
- `Formatting re-enabled - please enclose code blocks with appropriate markdown tags.`
328+
- `Formatting re-enabled - code output should be wrapped in markdown.`

0 commit comments

Comments
 (0)