diff --git a/.release-please-manifest.json b/.release-please-manifest.json
index ad56a78c..a43b15a4 100644
--- a/.release-please-manifest.json
+++ b/.release-please-manifest.json
@@ -1,3 +1,3 @@
{
- ".": "4.10.0"
+ ".": "4.11.0"
}
\ No newline at end of file
diff --git a/.stats.yml b/.stats.yml
index f8c9054f..da4ec1f6 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 136
-openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/openai%2Fopenai-88d85ff87ad8983262af2b729762a6e05fd509468bb691529bc2f81e4ce27c69.yml
-openapi_spec_hash: 46a55acbccd0147534017b92c1f4dd99
+openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/openai%2Fopenai-41f98da99f44ebe6204fce5c1dc9940f85f3472779e797b674c4fdc20306c77d.yml
+openapi_spec_hash: c61259027f421f501bdc6b23cf9e430e
config_hash: 141b101c9f13b90e21af74e1686f1f41
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 103ddf66..0752c1a4 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,13 @@
# Changelog
+## 4.11.0 (2025-12-12)
+
+Full Changelog: [v4.10.0...v4.11.0](https://github.com/openai/openai-java/compare/v4.10.0...v4.11.0)
+
+### Features
+
+* **api:** gpt 5.2 ([de55bd3](https://github.com/openai/openai-java/commit/de55bd3ecfcf1c325a6908b8521b4fc06ed6fc7c))
+
## 4.10.0 (2025-12-10)
Full Changelog: [v4.9.0...v4.10.0](https://github.com/openai/openai-java/compare/v4.9.0...v4.10.0)
diff --git a/README.md b/README.md
index cc882b2a..6136d625 100644
--- a/README.md
+++ b/README.md
@@ -2,8 +2,8 @@
-[](https://central.sonatype.com/artifact/com.openai/openai-java/4.10.0)
-[](https://javadoc.io/doc/com.openai/openai-java/4.10.0)
+[](https://central.sonatype.com/artifact/com.openai/openai-java/4.11.0)
+[](https://javadoc.io/doc/com.openai/openai-java/4.11.0)
@@ -11,7 +11,7 @@ The OpenAI Java SDK provides convenient access to the [OpenAI REST API](https://
-The REST API documentation can be found on [platform.openai.com](https://platform.openai.com/docs). Javadocs are available on [javadoc.io](https://javadoc.io/doc/com.openai/openai-java/4.10.0).
+The REST API documentation can be found on [platform.openai.com](https://platform.openai.com/docs). Javadocs are available on [javadoc.io](https://javadoc.io/doc/com.openai/openai-java/4.11.0).
@@ -24,7 +24,7 @@ The REST API documentation can be found on [platform.openai.com](https://platfor
### Gradle
```kotlin
-implementation("com.openai:openai-java:4.10.0")
+implementation("com.openai:openai-java:4.11.0")
```
### Maven
@@ -33,7 +33,7 @@ implementation("com.openai:openai-java:4.10.0")
com.openaiopenai-java
- 4.10.0
+ 4.11.0
```
@@ -82,7 +82,7 @@ OpenAIClient client = OpenAIOkHttpClient.fromEnv();
ChatCompletionCreateParams params = ChatCompletionCreateParams.builder()
.addUserMessage("Say this is a test")
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.build();
ChatCompletion chatCompletion = client.chat().completions().create(params);
```
@@ -188,7 +188,7 @@ OpenAIClient client = OpenAIOkHttpClient.fromEnv();
ChatCompletionCreateParams params = ChatCompletionCreateParams.builder()
.addUserMessage("Say this is a test")
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.build();
CompletableFuture chatCompletion = client.async().chat().completions().create(params);
```
@@ -209,7 +209,7 @@ OpenAIClientAsync client = OpenAIOkHttpClientAsync.fromEnv();
ChatCompletionCreateParams params = ChatCompletionCreateParams.builder()
.addUserMessage("Say this is a test")
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.build();
CompletableFuture chatCompletion = client.chat().completions().create(params);
```
@@ -1143,7 +1143,7 @@ import com.openai.models.chat.completions.ChatCompletionCreateParams;
ChatCompletionCreateParams params = ChatCompletionCreateParams.builder()
.addUserMessage("Say this is a test")
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.build();
HttpResponseFor chatCompletion = client.chat().completions().withRawResponse().create(params);
@@ -1342,7 +1342,7 @@ If you're using Spring Boot, then you can use the SDK's [Spring Boot starter](ht
#### Gradle
```kotlin
-implementation("com.openai:openai-java-spring-boot-starter:4.10.0")
+implementation("com.openai:openai-java-spring-boot-starter:4.11.0")
```
#### Maven
@@ -1351,7 +1351,7 @@ implementation("com.openai:openai-java-spring-boot-starter:4.10.0")
com.openaiopenai-java-spring-boot-starter
- 4.10.0
+ 4.11.0
```
@@ -1616,7 +1616,7 @@ import com.openai.models.chat.completions.ChatCompletionCreateParams;
ChatCompletionCreateParams params = ChatCompletionCreateParams.builder()
.messages(JsonValue.from(42))
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.build();
```
@@ -1669,7 +1669,7 @@ import com.openai.models.ChatModel;
import com.openai.models.chat.completions.ChatCompletionCreateParams;
ChatCompletionCreateParams params = ChatCompletionCreateParams.builder()
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.messages(JsonMissing.of())
.build();
```
diff --git a/build.gradle.kts b/build.gradle.kts
index 13b1f1bc..01745c5a 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -8,7 +8,7 @@ repositories {
allprojects {
group = "com.openai"
- version = "4.10.0" // x-release-please-version
+ version = "4.11.0" // x-release-please-version
}
subprojects {
diff --git a/openai-java-core/src/main/kotlin/com/openai/models/ChatModel.kt b/openai-java-core/src/main/kotlin/com/openai/models/ChatModel.kt
index 9d969547..9a4ac20c 100644
--- a/openai-java-core/src/main/kotlin/com/openai/models/ChatModel.kt
+++ b/openai-java-core/src/main/kotlin/com/openai/models/ChatModel.kt
@@ -20,6 +20,16 @@ class ChatModel @JsonCreator private constructor(private val value: JsonField Value.GPT_5_2
+ GPT_5_2_2025_12_11 -> Value.GPT_5_2_2025_12_11
+ GPT_5_2_CHAT_LATEST -> Value.GPT_5_2_CHAT_LATEST
+ GPT_5_2_PRO -> Value.GPT_5_2_PRO
+ GPT_5_2_PRO_2025_12_11 -> Value.GPT_5_2_PRO_2025_12_11
GPT_5_1 -> Value.GPT_5_1
GPT_5_1_2025_11_13 -> Value.GPT_5_1_2025_11_13
GPT_5_1_CODEX -> Value.GPT_5_1_CODEX
@@ -400,6 +425,11 @@ class ChatModel @JsonCreator private constructor(private val value: JsonField Known.GPT_5_2
+ GPT_5_2_2025_12_11 -> Known.GPT_5_2_2025_12_11
+ GPT_5_2_CHAT_LATEST -> Known.GPT_5_2_CHAT_LATEST
+ GPT_5_2_PRO -> Known.GPT_5_2_PRO
+ GPT_5_2_PRO_2025_12_11 -> Known.GPT_5_2_PRO_2025_12_11
GPT_5_1 -> Known.GPT_5_1
GPT_5_1_2025_11_13 -> Known.GPT_5_1_2025_11_13
GPT_5_1_CODEX -> Known.GPT_5_1_CODEX
diff --git a/openai-java-core/src/main/kotlin/com/openai/models/Reasoning.kt b/openai-java-core/src/main/kotlin/com/openai/models/Reasoning.kt
index b102ab22..685342fb 100644
--- a/openai-java-core/src/main/kotlin/com/openai/models/Reasoning.kt
+++ b/openai-java-core/src/main/kotlin/com/openai/models/Reasoning.kt
@@ -53,7 +53,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not support
* `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type (e.g. if the
* server responded with an unexpected value).
@@ -77,7 +77,8 @@ private constructor(
* A summary of the reasoning performed by the model. This can be useful for debugging and
* understanding the model's reasoning process. One of `auto`, `concise`, or `detailed`.
*
- * `concise` is only supported for `computer-use-preview` models.
+ * `concise` is supported for `computer-use-preview` models and all reasoning models after
+ * `gpt-5`.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type (e.g. if the
* server responded with an unexpected value).
@@ -154,7 +155,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not support
* `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*/
fun effort(effort: ReasoningEffort?) = effort(JsonField.ofNullable(effort))
@@ -201,7 +202,8 @@ private constructor(
* A summary of the reasoning performed by the model. This can be useful for debugging and
* understanding the model's reasoning process. One of `auto`, `concise`, or `detailed`.
*
- * `concise` is only supported for `computer-use-preview` models.
+ * `concise` is supported for `computer-use-preview` models and all reasoning models after
+ * `gpt-5`.
*/
fun summary(summary: Summary?) = summary(JsonField.ofNullable(summary))
@@ -422,7 +424,8 @@ private constructor(
* A summary of the reasoning performed by the model. This can be useful for debugging and
* understanding the model's reasoning process. One of `auto`, `concise`, or `detailed`.
*
- * `concise` is only supported for `computer-use-preview` models.
+ * `concise` is supported for `computer-use-preview` models and all reasoning models after
+ * `gpt-5`.
*/
class Summary @JsonCreator private constructor(private val value: JsonField) : Enum {
diff --git a/openai-java-core/src/main/kotlin/com/openai/models/ReasoningEffort.kt b/openai-java-core/src/main/kotlin/com/openai/models/ReasoningEffort.kt
index 5519cce6..183297e0 100644
--- a/openai-java-core/src/main/kotlin/com/openai/models/ReasoningEffort.kt
+++ b/openai-java-core/src/main/kotlin/com/openai/models/ReasoningEffort.kt
@@ -17,7 +17,7 @@ import com.openai.errors.OpenAIInvalidDataException
* reasoning values in gpt-5.1.
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*/
class ReasoningEffort @JsonCreator private constructor(private val value: JsonField) :
Enum {
diff --git a/openai-java-core/src/main/kotlin/com/openai/models/beta/assistants/AssistantCreateParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/beta/assistants/AssistantCreateParams.kt
index 3c5939db..f55051cc 100644
--- a/openai-java-core/src/main/kotlin/com/openai/models/beta/assistants/AssistantCreateParams.kt
+++ b/openai-java-core/src/main/kotlin/com/openai/models/beta/assistants/AssistantCreateParams.kt
@@ -106,7 +106,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not support
* `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type (e.g. if the
* server responded with an unexpected value).
@@ -413,7 +413,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not support
* `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*/
fun reasoningEffort(reasoningEffort: ReasoningEffort?) = apply {
body.reasoningEffort(reasoningEffort)
@@ -883,7 +883,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not support
* `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type (e.g. if the
* server responded with an unexpected value).
@@ -1222,7 +1222,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not
* support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*/
fun reasoningEffort(reasoningEffort: ReasoningEffort?) =
reasoningEffort(JsonField.ofNullable(reasoningEffort))
diff --git a/openai-java-core/src/main/kotlin/com/openai/models/beta/assistants/AssistantUpdateParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/beta/assistants/AssistantUpdateParams.kt
index 9fca0bf2..7fa9214c 100644
--- a/openai-java-core/src/main/kotlin/com/openai/models/beta/assistants/AssistantUpdateParams.kt
+++ b/openai-java-core/src/main/kotlin/com/openai/models/beta/assistants/AssistantUpdateParams.kt
@@ -98,7 +98,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not support
* `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type (e.g. if the
* server responded with an unexpected value).
@@ -407,7 +407,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not support
* `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*/
fun reasoningEffort(reasoningEffort: ReasoningEffort?) = apply {
body.reasoningEffort(reasoningEffort)
@@ -877,7 +877,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not support
* `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type (e.g. if the
* server responded with an unexpected value).
@@ -1209,7 +1209,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not
* support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*/
fun reasoningEffort(reasoningEffort: ReasoningEffort?) =
reasoningEffort(JsonField.ofNullable(reasoningEffort))
diff --git a/openai-java-core/src/main/kotlin/com/openai/models/beta/threads/runs/RunCreateParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/beta/threads/runs/RunCreateParams.kt
index 71e92717..2061ef30 100644
--- a/openai-java-core/src/main/kotlin/com/openai/models/beta/threads/runs/RunCreateParams.kt
+++ b/openai-java-core/src/main/kotlin/com/openai/models/beta/threads/runs/RunCreateParams.kt
@@ -175,7 +175,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not support
* `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type (e.g. if the
* server responded with an unexpected value).
@@ -702,7 +702,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not support
* `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*/
fun reasoningEffort(reasoningEffort: ReasoningEffort?) = apply {
body.reasoningEffort(reasoningEffort)
@@ -1302,7 +1302,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not support
* `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type (e.g. if the
* server responded with an unexpected value).
@@ -1852,7 +1852,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not
* support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*/
fun reasoningEffort(reasoningEffort: ReasoningEffort?) =
reasoningEffort(JsonField.ofNullable(reasoningEffort))
diff --git a/openai-java-core/src/main/kotlin/com/openai/models/chat/completions/ChatCompletionCreateParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/chat/completions/ChatCompletionCreateParams.kt
index c42eff41..0e988348 100644
--- a/openai-java-core/src/main/kotlin/com/openai/models/chat/completions/ChatCompletionCreateParams.kt
+++ b/openai-java-core/src/main/kotlin/com/openai/models/chat/completions/ChatCompletionCreateParams.kt
@@ -286,7 +286,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not support
* `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type (e.g. if the
* server responded with an unexpected value).
@@ -1407,7 +1407,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not support
* `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*/
fun reasoningEffort(reasoningEffort: ReasoningEffort?) = apply {
body.reasoningEffort(reasoningEffort)
@@ -2446,7 +2446,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not support
* `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type (e.g. if the
* server responded with an unexpected value).
@@ -3743,7 +3743,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not
* support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*/
fun reasoningEffort(reasoningEffort: ReasoningEffort?) =
reasoningEffort(JsonField.ofNullable(reasoningEffort))
diff --git a/openai-java-core/src/main/kotlin/com/openai/models/evals/EvalCreateParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/evals/EvalCreateParams.kt
index 2d01e5c8..7807447f 100644
--- a/openai-java-core/src/main/kotlin/com/openai/models/evals/EvalCreateParams.kt
+++ b/openai-java-core/src/main/kotlin/com/openai/models/evals/EvalCreateParams.kt
@@ -5478,7 +5478,8 @@ private constructor(
.build()
/**
- * The input text. This may include template strings.
+ * The input messages evaluated by the grader. Supports text, output text, input image,
+ * and input audio content blocks, and may include template strings.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type or is
* unexpectedly missing or null (e.g. if the server responded with an unexpected
@@ -5644,7 +5645,10 @@ private constructor(
additionalProperties = scoreModel.additionalProperties.toMutableMap()
}
- /** The input text. This may include template strings. */
+ /**
+ * The input messages evaluated by the grader. Supports text, output text, input
+ * image, and input audio content blocks, and may include template strings.
+ */
fun input(input: List) = input(JsonField.of(input))
/**
diff --git a/openai-java-core/src/main/kotlin/com/openai/models/evals/EvalCreateResponse.kt b/openai-java-core/src/main/kotlin/com/openai/models/evals/EvalCreateResponse.kt
index d3e36970..d76a9720 100644
--- a/openai-java-core/src/main/kotlin/com/openai/models/evals/EvalCreateResponse.kt
+++ b/openai-java-core/src/main/kotlin/com/openai/models/evals/EvalCreateResponse.kt
@@ -2531,7 +2531,8 @@ private constructor(
.build()
/**
- * The input text. This may include template strings.
+ * The input messages evaluated by the grader. Supports text, output text, input image,
+ * and input audio content blocks, and may include template strings.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type or is
* unexpectedly missing or null (e.g. if the server responded with an unexpected
@@ -2697,7 +2698,10 @@ private constructor(
additionalProperties = evalGraderScoreModel.additionalProperties.toMutableMap()
}
- /** The input text. This may include template strings. */
+ /**
+ * The input messages evaluated by the grader. Supports text, output text, input
+ * image, and input audio content blocks, and may include template strings.
+ */
fun input(input: List) = input(JsonField.of(input))
/**
diff --git a/openai-java-core/src/main/kotlin/com/openai/models/evals/EvalListResponse.kt b/openai-java-core/src/main/kotlin/com/openai/models/evals/EvalListResponse.kt
index 59e133fc..49f7c34e 100644
--- a/openai-java-core/src/main/kotlin/com/openai/models/evals/EvalListResponse.kt
+++ b/openai-java-core/src/main/kotlin/com/openai/models/evals/EvalListResponse.kt
@@ -2531,7 +2531,8 @@ private constructor(
.build()
/**
- * The input text. This may include template strings.
+ * The input messages evaluated by the grader. Supports text, output text, input image,
+ * and input audio content blocks, and may include template strings.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type or is
* unexpectedly missing or null (e.g. if the server responded with an unexpected
@@ -2697,7 +2698,10 @@ private constructor(
additionalProperties = evalGraderScoreModel.additionalProperties.toMutableMap()
}
- /** The input text. This may include template strings. */
+ /**
+ * The input messages evaluated by the grader. Supports text, output text, input
+ * image, and input audio content blocks, and may include template strings.
+ */
fun input(input: List) = input(JsonField.of(input))
/**
diff --git a/openai-java-core/src/main/kotlin/com/openai/models/evals/EvalRetrieveResponse.kt b/openai-java-core/src/main/kotlin/com/openai/models/evals/EvalRetrieveResponse.kt
index 51858f0e..2f89b702 100644
--- a/openai-java-core/src/main/kotlin/com/openai/models/evals/EvalRetrieveResponse.kt
+++ b/openai-java-core/src/main/kotlin/com/openai/models/evals/EvalRetrieveResponse.kt
@@ -2531,7 +2531,8 @@ private constructor(
.build()
/**
- * The input text. This may include template strings.
+ * The input messages evaluated by the grader. Supports text, output text, input image,
+ * and input audio content blocks, and may include template strings.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type or is
* unexpectedly missing or null (e.g. if the server responded with an unexpected
@@ -2697,7 +2698,10 @@ private constructor(
additionalProperties = evalGraderScoreModel.additionalProperties.toMutableMap()
}
- /** The input text. This may include template strings. */
+ /**
+ * The input messages evaluated by the grader. Supports text, output text, input
+ * image, and input audio content blocks, and may include template strings.
+ */
fun input(input: List) = input(JsonField.of(input))
/**
diff --git a/openai-java-core/src/main/kotlin/com/openai/models/evals/EvalUpdateResponse.kt b/openai-java-core/src/main/kotlin/com/openai/models/evals/EvalUpdateResponse.kt
index fe3d930a..afd92d5f 100644
--- a/openai-java-core/src/main/kotlin/com/openai/models/evals/EvalUpdateResponse.kt
+++ b/openai-java-core/src/main/kotlin/com/openai/models/evals/EvalUpdateResponse.kt
@@ -2531,7 +2531,8 @@ private constructor(
.build()
/**
- * The input text. This may include template strings.
+ * The input messages evaluated by the grader. Supports text, output text, input image,
+ * and input audio content blocks, and may include template strings.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type or is
* unexpectedly missing or null (e.g. if the server responded with an unexpected
@@ -2697,7 +2698,10 @@ private constructor(
additionalProperties = evalGraderScoreModel.additionalProperties.toMutableMap()
}
- /** The input text. This may include template strings. */
+ /**
+ * The input messages evaluated by the grader. Supports text, output text, input
+ * image, and input audio content blocks, and may include template strings.
+ */
fun input(input: List) = input(JsonField.of(input))
/**
diff --git a/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/CreateEvalCompletionsRunDataSource.kt b/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/CreateEvalCompletionsRunDataSource.kt
index 6e50e10a..c010ad47 100644
--- a/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/CreateEvalCompletionsRunDataSource.kt
+++ b/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/CreateEvalCompletionsRunDataSource.kt
@@ -4483,7 +4483,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not support
* `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type (e.g. if the
* server responded with an unexpected value).
@@ -4673,7 +4673,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not
* support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*/
fun reasoningEffort(reasoningEffort: ReasoningEffort?) =
reasoningEffort(JsonField.ofNullable(reasoningEffort))
diff --git a/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/RunCancelResponse.kt b/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/RunCancelResponse.kt
index 43eeef52..f05d4645 100644
--- a/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/RunCancelResponse.kt
+++ b/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/RunCancelResponse.kt
@@ -2745,7 +2745,7 @@ private constructor(
* not support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning
* effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type
* (e.g. if the server responded with an unexpected value).
@@ -3069,7 +3069,7 @@ private constructor(
* do not support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning
* effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*/
fun reasoningEffort(reasoningEffort: ReasoningEffort?) =
reasoningEffort(JsonField.ofNullable(reasoningEffort))
@@ -6071,7 +6071,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not
* support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type (e.g.
* if the server responded with an unexpected value).
@@ -6268,7 +6268,7 @@ private constructor(
* not support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning
* effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*/
fun reasoningEffort(reasoningEffort: ReasoningEffort?) =
reasoningEffort(JsonField.ofNullable(reasoningEffort))
diff --git a/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/RunCreateParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/RunCreateParams.kt
index 4f48b185..263508bf 100644
--- a/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/RunCreateParams.kt
+++ b/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/RunCreateParams.kt
@@ -2507,7 +2507,7 @@ private constructor(
* not support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning
* effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type
* (e.g. if the server responded with an unexpected value).
@@ -2829,7 +2829,7 @@ private constructor(
* do not support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning
* effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*/
fun reasoningEffort(reasoningEffort: ReasoningEffort?) =
reasoningEffort(JsonField.ofNullable(reasoningEffort))
@@ -5956,7 +5956,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not
* support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type (e.g.
* if the server responded with an unexpected value).
@@ -6153,7 +6153,7 @@ private constructor(
* not support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning
* effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*/
fun reasoningEffort(reasoningEffort: ReasoningEffort?) =
reasoningEffort(JsonField.ofNullable(reasoningEffort))
diff --git a/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/RunCreateResponse.kt b/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/RunCreateResponse.kt
index 31809894..589bd9a1 100644
--- a/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/RunCreateResponse.kt
+++ b/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/RunCreateResponse.kt
@@ -2745,7 +2745,7 @@ private constructor(
* not support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning
* effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type
* (e.g. if the server responded with an unexpected value).
@@ -3069,7 +3069,7 @@ private constructor(
* do not support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning
* effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*/
fun reasoningEffort(reasoningEffort: ReasoningEffort?) =
reasoningEffort(JsonField.ofNullable(reasoningEffort))
@@ -6071,7 +6071,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not
* support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type (e.g.
* if the server responded with an unexpected value).
@@ -6268,7 +6268,7 @@ private constructor(
* not support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning
* effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*/
fun reasoningEffort(reasoningEffort: ReasoningEffort?) =
reasoningEffort(JsonField.ofNullable(reasoningEffort))
diff --git a/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/RunListResponse.kt b/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/RunListResponse.kt
index 6383fc57..6653a4d0 100644
--- a/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/RunListResponse.kt
+++ b/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/RunListResponse.kt
@@ -2745,7 +2745,7 @@ private constructor(
* not support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning
* effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type
* (e.g. if the server responded with an unexpected value).
@@ -3069,7 +3069,7 @@ private constructor(
* do not support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning
* effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*/
fun reasoningEffort(reasoningEffort: ReasoningEffort?) =
reasoningEffort(JsonField.ofNullable(reasoningEffort))
@@ -6071,7 +6071,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not
* support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type (e.g.
* if the server responded with an unexpected value).
@@ -6268,7 +6268,7 @@ private constructor(
* not support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning
* effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*/
fun reasoningEffort(reasoningEffort: ReasoningEffort?) =
reasoningEffort(JsonField.ofNullable(reasoningEffort))
diff --git a/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/RunRetrieveResponse.kt b/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/RunRetrieveResponse.kt
index 9957806c..81d9ff1d 100644
--- a/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/RunRetrieveResponse.kt
+++ b/openai-java-core/src/main/kotlin/com/openai/models/evals/runs/RunRetrieveResponse.kt
@@ -2745,7 +2745,7 @@ private constructor(
* not support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning
* effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type
* (e.g. if the server responded with an unexpected value).
@@ -3069,7 +3069,7 @@ private constructor(
* do not support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning
* effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*/
fun reasoningEffort(reasoningEffort: ReasoningEffort?) =
reasoningEffort(JsonField.ofNullable(reasoningEffort))
@@ -6071,7 +6071,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not
* support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type (e.g.
* if the server responded with an unexpected value).
@@ -6268,7 +6268,7 @@ private constructor(
* not support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning
* effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*/
fun reasoningEffort(reasoningEffort: ReasoningEffort?) =
reasoningEffort(JsonField.ofNullable(reasoningEffort))
diff --git a/openai-java-core/src/main/kotlin/com/openai/models/graders/gradermodels/ScoreModelGrader.kt b/openai-java-core/src/main/kotlin/com/openai/models/graders/gradermodels/ScoreModelGrader.kt
index c62e4d9e..67b34ab5 100644
--- a/openai-java-core/src/main/kotlin/com/openai/models/graders/gradermodels/ScoreModelGrader.kt
+++ b/openai-java-core/src/main/kotlin/com/openai/models/graders/gradermodels/ScoreModelGrader.kt
@@ -60,7 +60,8 @@ private constructor(
) : this(input, model, name, type, range, samplingParams, mutableMapOf())
/**
- * The input text. This may include template strings.
+ * The input messages evaluated by the grader. Supports text, output text, input image, and
+ * input audio content blocks, and may include template strings.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type or is
* unexpectedly missing or null (e.g. if the server responded with an unexpected value).
@@ -198,7 +199,10 @@ private constructor(
additionalProperties = scoreModelGrader.additionalProperties.toMutableMap()
}
- /** The input text. This may include template strings. */
+ /**
+ * The input messages evaluated by the grader. Supports text, output text, input image, and
+ * input audio content blocks, and may include template strings.
+ */
fun input(input: List) = input(JsonField.of(input))
/**
@@ -1795,7 +1799,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not support
* `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*
* @throws OpenAIInvalidDataException if the JSON field has an unexpected type (e.g. if the
* server responded with an unexpected value).
@@ -1950,7 +1954,7 @@ private constructor(
* - All models before `gpt-5.1` default to `medium` reasoning effort, and do not
* support `none`.
* - The `gpt-5-pro` model defaults to (and only supports) `high` reasoning effort.
- * - `xhigh` is currently only supported for `gpt-5.1-codex-max`.
+ * - `xhigh` is supported for all models after `gpt-5.1-codex-max`.
*/
fun reasoningEffort(reasoningEffort: ReasoningEffort?) =
reasoningEffort(JsonField.ofNullable(reasoningEffort))
diff --git a/openai-java-core/src/main/kotlin/com/openai/models/responses/ResponseCompactParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/responses/ResponseCompactParams.kt
index 43c5ec9c..9238f30c 100644
--- a/openai-java-core/src/main/kotlin/com/openai/models/responses/ResponseCompactParams.kt
+++ b/openai-java-core/src/main/kotlin/com/openai/models/responses/ResponseCompactParams.kt
@@ -763,6 +763,16 @@ private constructor(
companion object {
+ @JvmField val GPT_5_2 = of("gpt-5.2")
+
+ @JvmField val GPT_5_2_2025_12_11 = of("gpt-5.2-2025-12-11")
+
+ @JvmField val GPT_5_2_CHAT_LATEST = of("gpt-5.2-chat-latest")
+
+ @JvmField val GPT_5_2_PRO = of("gpt-5.2-pro")
+
+ @JvmField val GPT_5_2_PRO_2025_12_11 = of("gpt-5.2-pro-2025-12-11")
+
@JvmField val GPT_5_1 = of("gpt-5.1")
@JvmField val GPT_5_1_2025_11_13 = of("gpt-5.1-2025-11-13")
@@ -932,6 +942,11 @@ private constructor(
/** An enum containing [Model]'s known values. */
enum class Known {
+ GPT_5_2,
+ GPT_5_2_2025_12_11,
+ GPT_5_2_CHAT_LATEST,
+ GPT_5_2_PRO,
+ GPT_5_2_PRO_2025_12_11,
GPT_5_1,
GPT_5_1_2025_11_13,
GPT_5_1_CODEX,
@@ -1025,6 +1040,11 @@ private constructor(
* - It was constructed with an arbitrary value using the [of] method.
*/
enum class Value {
+ GPT_5_2,
+ GPT_5_2_2025_12_11,
+ GPT_5_2_CHAT_LATEST,
+ GPT_5_2_PRO,
+ GPT_5_2_PRO_2025_12_11,
GPT_5_1,
GPT_5_1_2025_11_13,
GPT_5_1_CODEX,
@@ -1119,6 +1139,11 @@ private constructor(
*/
fun value(): Value =
when (this) {
+ GPT_5_2 -> Value.GPT_5_2
+ GPT_5_2_2025_12_11 -> Value.GPT_5_2_2025_12_11
+ GPT_5_2_CHAT_LATEST -> Value.GPT_5_2_CHAT_LATEST
+ GPT_5_2_PRO -> Value.GPT_5_2_PRO
+ GPT_5_2_PRO_2025_12_11 -> Value.GPT_5_2_PRO_2025_12_11
GPT_5_1 -> Value.GPT_5_1
GPT_5_1_2025_11_13 -> Value.GPT_5_1_2025_11_13
GPT_5_1_CODEX -> Value.GPT_5_1_CODEX
@@ -1214,6 +1239,11 @@ private constructor(
*/
fun known(): Known =
when (this) {
+ GPT_5_2 -> Known.GPT_5_2
+ GPT_5_2_2025_12_11 -> Known.GPT_5_2_2025_12_11
+ GPT_5_2_CHAT_LATEST -> Known.GPT_5_2_CHAT_LATEST
+ GPT_5_2_PRO -> Known.GPT_5_2_PRO
+ GPT_5_2_PRO_2025_12_11 -> Known.GPT_5_2_PRO_2025_12_11
GPT_5_1 -> Known.GPT_5_1
GPT_5_1_2025_11_13 -> Known.GPT_5_1_2025_11_13
GPT_5_1_CODEX -> Known.GPT_5_1_CODEX
diff --git a/openai-java-core/src/test/kotlin/com/openai/models/AllModelsTest.kt b/openai-java-core/src/test/kotlin/com/openai/models/AllModelsTest.kt
index e02aba68..85f4f936 100644
--- a/openai-java-core/src/test/kotlin/com/openai/models/AllModelsTest.kt
+++ b/openai-java-core/src/test/kotlin/com/openai/models/AllModelsTest.kt
@@ -41,7 +41,7 @@ internal class AllModelsTest {
@Test
fun ofChatModel() {
- val chatModel = ChatModel.GPT_5_1
+ val chatModel = ChatModel.GPT_5_2
val allModels = AllModels.ofChatModel(chatModel)
@@ -53,7 +53,7 @@ internal class AllModelsTest {
@Test
fun ofChatModelRoundtrip() {
val jsonMapper = jsonMapper()
- val allModels = AllModels.ofChatModel(ChatModel.GPT_5_1)
+ val allModels = AllModels.ofChatModel(ChatModel.GPT_5_2)
val roundtrippedAllModels =
jsonMapper.readValue(
diff --git a/openai-java-core/src/test/kotlin/com/openai/models/ResponsesModelTest.kt b/openai-java-core/src/test/kotlin/com/openai/models/ResponsesModelTest.kt
index d7e059ef..d42d7f8d 100644
--- a/openai-java-core/src/test/kotlin/com/openai/models/ResponsesModelTest.kt
+++ b/openai-java-core/src/test/kotlin/com/openai/models/ResponsesModelTest.kt
@@ -41,7 +41,7 @@ internal class ResponsesModelTest {
@Test
fun ofChat() {
- val chat = ChatModel.GPT_5_1
+ val chat = ChatModel.GPT_5_2
val responsesModel = ResponsesModel.ofChat(chat)
@@ -53,7 +53,7 @@ internal class ResponsesModelTest {
@Test
fun ofChatRoundtrip() {
val jsonMapper = jsonMapper()
- val responsesModel = ResponsesModel.ofChat(ChatModel.GPT_5_1)
+ val responsesModel = ResponsesModel.ofChat(ChatModel.GPT_5_2)
val roundtrippedResponsesModel =
jsonMapper.readValue(
diff --git a/openai-java-core/src/test/kotlin/com/openai/models/beta/assistants/AssistantCreateParamsTest.kt b/openai-java-core/src/test/kotlin/com/openai/models/beta/assistants/AssistantCreateParamsTest.kt
index efdcd15e..58c98869 100644
--- a/openai-java-core/src/test/kotlin/com/openai/models/beta/assistants/AssistantCreateParamsTest.kt
+++ b/openai-java-core/src/test/kotlin/com/openai/models/beta/assistants/AssistantCreateParamsTest.kt
@@ -15,7 +15,7 @@ internal class AssistantCreateParamsTest {
@Test
fun create() {
AssistantCreateParams.builder()
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.description("description")
.instructions("instructions")
.metadata(
@@ -63,7 +63,7 @@ internal class AssistantCreateParamsTest {
fun body() {
val params =
AssistantCreateParams.builder()
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.description("description")
.instructions("instructions")
.metadata(
@@ -113,7 +113,7 @@ internal class AssistantCreateParamsTest {
val body = params._body()
- assertThat(body.model()).isEqualTo(ChatModel.GPT_5_1)
+ assertThat(body.model()).isEqualTo(ChatModel.GPT_5_2)
assertThat(body.description()).contains("description")
assertThat(body.instructions()).contains("instructions")
assertThat(body.metadata())
@@ -161,10 +161,10 @@ internal class AssistantCreateParamsTest {
@Test
fun bodyWithoutOptionalFields() {
- val params = AssistantCreateParams.builder().model(ChatModel.GPT_5_1).build()
+ val params = AssistantCreateParams.builder().model(ChatModel.GPT_5_2).build()
val body = params._body()
- assertThat(body.model()).isEqualTo(ChatModel.GPT_5_1)
+ assertThat(body.model()).isEqualTo(ChatModel.GPT_5_2)
}
}
diff --git a/openai-java-core/src/test/kotlin/com/openai/models/beta/threads/ThreadCreateAndRunParamsTest.kt b/openai-java-core/src/test/kotlin/com/openai/models/beta/threads/ThreadCreateAndRunParamsTest.kt
index 22c2bee4..e2ab4cc0 100644
--- a/openai-java-core/src/test/kotlin/com/openai/models/beta/threads/ThreadCreateAndRunParamsTest.kt
+++ b/openai-java-core/src/test/kotlin/com/openai/models/beta/threads/ThreadCreateAndRunParamsTest.kt
@@ -24,7 +24,7 @@ internal class ThreadCreateAndRunParamsTest {
.putAdditionalProperty("foo", JsonValue.from("string"))
.build()
)
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.parallelToolCalls(true)
.responseFormatAuto()
.temperature(1.0)
@@ -128,7 +128,7 @@ internal class ThreadCreateAndRunParamsTest {
.putAdditionalProperty("foo", JsonValue.from("string"))
.build()
)
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.parallelToolCalls(true)
.responseFormatAuto()
.temperature(1.0)
@@ -231,7 +231,7 @@ internal class ThreadCreateAndRunParamsTest {
.putAdditionalProperty("foo", JsonValue.from("string"))
.build()
)
- assertThat(body.model()).contains(ChatModel.GPT_5_1)
+ assertThat(body.model()).contains(ChatModel.GPT_5_2)
assertThat(body.parallelToolCalls()).contains(true)
assertThat(body.responseFormat()).contains(AssistantResponseFormatOption.ofAuto())
assertThat(body.temperature()).contains(1.0)
diff --git a/openai-java-core/src/test/kotlin/com/openai/models/beta/threads/runs/RunCreateParamsTest.kt b/openai-java-core/src/test/kotlin/com/openai/models/beta/threads/runs/RunCreateParamsTest.kt
index a140104f..b28a1685 100644
--- a/openai-java-core/src/test/kotlin/com/openai/models/beta/threads/runs/RunCreateParamsTest.kt
+++ b/openai-java-core/src/test/kotlin/com/openai/models/beta/threads/runs/RunCreateParamsTest.kt
@@ -49,7 +49,7 @@ internal class RunCreateParamsTest {
.putAdditionalProperty("foo", JsonValue.from("string"))
.build()
)
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.parallelToolCalls(true)
.reasoningEffort(ReasoningEffort.NONE)
.responseFormatAuto()
@@ -109,7 +109,7 @@ internal class RunCreateParamsTest {
.putAdditionalProperty("foo", JsonValue.from("string"))
.build()
)
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.parallelToolCalls(true)
.reasoningEffort(ReasoningEffort.NONE)
.responseFormatAuto()
@@ -178,7 +178,7 @@ internal class RunCreateParamsTest {
.putAdditionalProperty("foo", JsonValue.from("string"))
.build()
)
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.parallelToolCalls(true)
.reasoningEffort(ReasoningEffort.NONE)
.responseFormatAuto()
@@ -225,7 +225,7 @@ internal class RunCreateParamsTest {
.putAdditionalProperty("foo", JsonValue.from("string"))
.build()
)
- assertThat(body.model()).contains(ChatModel.GPT_5_1)
+ assertThat(body.model()).contains(ChatModel.GPT_5_2)
assertThat(body.parallelToolCalls()).contains(true)
assertThat(body.reasoningEffort()).contains(ReasoningEffort.NONE)
assertThat(body.responseFormat()).contains(AssistantResponseFormatOption.ofAuto())
diff --git a/openai-java-core/src/test/kotlin/com/openai/models/chat/completions/ChatCompletionCreateParamsTest.kt b/openai-java-core/src/test/kotlin/com/openai/models/chat/completions/ChatCompletionCreateParamsTest.kt
index 9228d15d..4b7c1b12 100644
--- a/openai-java-core/src/test/kotlin/com/openai/models/chat/completions/ChatCompletionCreateParamsTest.kt
+++ b/openai-java-core/src/test/kotlin/com/openai/models/chat/completions/ChatCompletionCreateParamsTest.kt
@@ -20,7 +20,7 @@ internal class ChatCompletionCreateParamsTest {
.addMessage(
ChatCompletionDeveloperMessageParam.builder().content("string").name("name").build()
)
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.audio(
ChatCompletionAudioParam.builder()
.format(ChatCompletionAudioParam.Format.WAV)
@@ -124,7 +124,7 @@ internal class ChatCompletionCreateParamsTest {
.name("name")
.build()
)
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.audio(
ChatCompletionAudioParam.builder()
.format(ChatCompletionAudioParam.Format.WAV)
@@ -229,7 +229,7 @@ internal class ChatCompletionCreateParamsTest {
.build()
)
)
- assertThat(body.model()).isEqualTo(ChatModel.GPT_5_1)
+ assertThat(body.model()).isEqualTo(ChatModel.GPT_5_2)
assertThat(body.audio())
.contains(
ChatCompletionAudioParam.builder()
@@ -356,7 +356,7 @@ internal class ChatCompletionCreateParamsTest {
val params =
ChatCompletionCreateParams.builder()
.addDeveloperMessage("string")
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.build()
val body = params._body()
@@ -367,7 +367,7 @@ internal class ChatCompletionCreateParamsTest {
ChatCompletionDeveloperMessageParam.builder().content("string").build()
)
)
- assertThat(body.model()).isEqualTo(ChatModel.GPT_5_1)
+ assertThat(body.model()).isEqualTo(ChatModel.GPT_5_2)
}
@Test
diff --git a/openai-java-core/src/test/kotlin/com/openai/models/responses/ResponseCompactParamsTest.kt b/openai-java-core/src/test/kotlin/com/openai/models/responses/ResponseCompactParamsTest.kt
index 1fdd1da7..e7bc3033 100644
--- a/openai-java-core/src/test/kotlin/com/openai/models/responses/ResponseCompactParamsTest.kt
+++ b/openai-java-core/src/test/kotlin/com/openai/models/responses/ResponseCompactParamsTest.kt
@@ -10,7 +10,7 @@ internal class ResponseCompactParamsTest {
@Test
fun create() {
ResponseCompactParams.builder()
- .model(ResponseCompactParams.Model.GPT_5_1)
+ .model(ResponseCompactParams.Model.GPT_5_2)
.input("string")
.instructions("instructions")
.previousResponseId("resp_123")
@@ -21,7 +21,7 @@ internal class ResponseCompactParamsTest {
fun body() {
val params =
ResponseCompactParams.builder()
- .model(ResponseCompactParams.Model.GPT_5_1)
+ .model(ResponseCompactParams.Model.GPT_5_2)
.input("string")
.instructions("instructions")
.previousResponseId("resp_123")
@@ -29,7 +29,7 @@ internal class ResponseCompactParamsTest {
val body = params._body()
- assertThat(body.model()).contains(ResponseCompactParams.Model.GPT_5_1)
+ assertThat(body.model()).contains(ResponseCompactParams.Model.GPT_5_2)
assertThat(body.input()).contains(ResponseCompactParams.Input.ofString("string"))
assertThat(body.instructions()).contains("instructions")
assertThat(body.previousResponseId()).contains("resp_123")
@@ -38,10 +38,10 @@ internal class ResponseCompactParamsTest {
@Test
fun bodyWithoutOptionalFields() {
val params =
- ResponseCompactParams.builder().model(ResponseCompactParams.Model.GPT_5_1).build()
+ ResponseCompactParams.builder().model(ResponseCompactParams.Model.GPT_5_2).build()
val body = params._body()
- assertThat(body.model()).contains(ResponseCompactParams.Model.GPT_5_1)
+ assertThat(body.model()).contains(ResponseCompactParams.Model.GPT_5_2)
}
}
diff --git a/openai-java-core/src/test/kotlin/com/openai/services/ServiceParamsTest.kt b/openai-java-core/src/test/kotlin/com/openai/services/ServiceParamsTest.kt
index 629a88e9..9fe7439c 100644
--- a/openai-java-core/src/test/kotlin/com/openai/services/ServiceParamsTest.kt
+++ b/openai-java-core/src/test/kotlin/com/openai/services/ServiceParamsTest.kt
@@ -58,7 +58,7 @@ internal class ServiceParamsTest {
.name("name")
.build()
)
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.audio(
ChatCompletionAudioParam.builder()
.format(ChatCompletionAudioParam.Format.WAV)
diff --git a/openai-java-core/src/test/kotlin/com/openai/services/async/ResponseServiceAsyncTest.kt b/openai-java-core/src/test/kotlin/com/openai/services/async/ResponseServiceAsyncTest.kt
index ac40b043..5948f688 100644
--- a/openai-java-core/src/test/kotlin/com/openai/services/async/ResponseServiceAsyncTest.kt
+++ b/openai-java-core/src/test/kotlin/com/openai/services/async/ResponseServiceAsyncTest.kt
@@ -284,7 +284,7 @@ internal class ResponseServiceAsyncTest {
val compactedResponseFuture =
responseServiceAsync.compact(
ResponseCompactParams.builder()
- .model(ResponseCompactParams.Model.GPT_5_1)
+ .model(ResponseCompactParams.Model.GPT_5_2)
.input("string")
.instructions("instructions")
.previousResponseId("resp_123")
diff --git a/openai-java-core/src/test/kotlin/com/openai/services/async/beta/AssistantServiceAsyncTest.kt b/openai-java-core/src/test/kotlin/com/openai/services/async/beta/AssistantServiceAsyncTest.kt
index 68d6742f..b2fb0602 100644
--- a/openai-java-core/src/test/kotlin/com/openai/services/async/beta/AssistantServiceAsyncTest.kt
+++ b/openai-java-core/src/test/kotlin/com/openai/services/async/beta/AssistantServiceAsyncTest.kt
@@ -28,7 +28,7 @@ internal class AssistantServiceAsyncTest {
val assistantFuture =
assistantServiceAsync.create(
AssistantCreateParams.builder()
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.description("description")
.instructions("instructions")
.metadata(
diff --git a/openai-java-core/src/test/kotlin/com/openai/services/async/beta/ThreadServiceAsyncTest.kt b/openai-java-core/src/test/kotlin/com/openai/services/async/beta/ThreadServiceAsyncTest.kt
index 744ae248..1f7504e2 100644
--- a/openai-java-core/src/test/kotlin/com/openai/services/async/beta/ThreadServiceAsyncTest.kt
+++ b/openai-java-core/src/test/kotlin/com/openai/services/async/beta/ThreadServiceAsyncTest.kt
@@ -180,7 +180,7 @@ internal class ThreadServiceAsyncTest {
.putAdditionalProperty("foo", JsonValue.from("string"))
.build()
)
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.parallelToolCalls(true)
.responseFormatAuto()
.temperature(1.0)
@@ -300,7 +300,7 @@ internal class ThreadServiceAsyncTest {
.putAdditionalProperty("foo", JsonValue.from("string"))
.build()
)
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.parallelToolCalls(true)
.responseFormatAuto()
.temperature(1.0)
diff --git a/openai-java-core/src/test/kotlin/com/openai/services/async/beta/threads/RunServiceAsyncTest.kt b/openai-java-core/src/test/kotlin/com/openai/services/async/beta/threads/RunServiceAsyncTest.kt
index 1ab284e6..9cab6049 100644
--- a/openai-java-core/src/test/kotlin/com/openai/services/async/beta/threads/RunServiceAsyncTest.kt
+++ b/openai-java-core/src/test/kotlin/com/openai/services/async/beta/threads/RunServiceAsyncTest.kt
@@ -62,7 +62,7 @@ internal class RunServiceAsyncTest {
.putAdditionalProperty("foo", JsonValue.from("string"))
.build()
)
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.parallelToolCalls(true)
.reasoningEffort(ReasoningEffort.NONE)
.responseFormatAuto()
@@ -124,7 +124,7 @@ internal class RunServiceAsyncTest {
.putAdditionalProperty("foo", JsonValue.from("string"))
.build()
)
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.parallelToolCalls(true)
.reasoningEffort(ReasoningEffort.NONE)
.responseFormatAuto()
diff --git a/openai-java-core/src/test/kotlin/com/openai/services/async/chat/ChatCompletionServiceAsyncTest.kt b/openai-java-core/src/test/kotlin/com/openai/services/async/chat/ChatCompletionServiceAsyncTest.kt
index c88310be..a5d60e3b 100644
--- a/openai-java-core/src/test/kotlin/com/openai/services/async/chat/ChatCompletionServiceAsyncTest.kt
+++ b/openai-java-core/src/test/kotlin/com/openai/services/async/chat/ChatCompletionServiceAsyncTest.kt
@@ -41,7 +41,7 @@ internal class ChatCompletionServiceAsyncTest {
.name("name")
.build()
)
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.audio(
ChatCompletionAudioParam.builder()
.format(ChatCompletionAudioParam.Format.WAV)
@@ -158,7 +158,7 @@ internal class ChatCompletionServiceAsyncTest {
.name("name")
.build()
)
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.audio(
ChatCompletionAudioParam.builder()
.format(ChatCompletionAudioParam.Format.WAV)
diff --git a/openai-java-core/src/test/kotlin/com/openai/services/blocking/ResponseServiceTest.kt b/openai-java-core/src/test/kotlin/com/openai/services/blocking/ResponseServiceTest.kt
index 7e507d80..e0acab40 100644
--- a/openai-java-core/src/test/kotlin/com/openai/services/blocking/ResponseServiceTest.kt
+++ b/openai-java-core/src/test/kotlin/com/openai/services/blocking/ResponseServiceTest.kt
@@ -279,7 +279,7 @@ internal class ResponseServiceTest {
val compactedResponse =
responseService.compact(
ResponseCompactParams.builder()
- .model(ResponseCompactParams.Model.GPT_5_1)
+ .model(ResponseCompactParams.Model.GPT_5_2)
.input("string")
.instructions("instructions")
.previousResponseId("resp_123")
diff --git a/openai-java-core/src/test/kotlin/com/openai/services/blocking/beta/AssistantServiceTest.kt b/openai-java-core/src/test/kotlin/com/openai/services/blocking/beta/AssistantServiceTest.kt
index 04bffbff..918f687a 100644
--- a/openai-java-core/src/test/kotlin/com/openai/services/blocking/beta/AssistantServiceTest.kt
+++ b/openai-java-core/src/test/kotlin/com/openai/services/blocking/beta/AssistantServiceTest.kt
@@ -28,7 +28,7 @@ internal class AssistantServiceTest {
val assistant =
assistantService.create(
AssistantCreateParams.builder()
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.description("description")
.instructions("instructions")
.metadata(
diff --git a/openai-java-core/src/test/kotlin/com/openai/services/blocking/beta/ThreadServiceTest.kt b/openai-java-core/src/test/kotlin/com/openai/services/blocking/beta/ThreadServiceTest.kt
index 2a224eec..1b301314 100644
--- a/openai-java-core/src/test/kotlin/com/openai/services/blocking/beta/ThreadServiceTest.kt
+++ b/openai-java-core/src/test/kotlin/com/openai/services/blocking/beta/ThreadServiceTest.kt
@@ -176,7 +176,7 @@ internal class ThreadServiceTest {
.putAdditionalProperty("foo", JsonValue.from("string"))
.build()
)
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.parallelToolCalls(true)
.responseFormatAuto()
.temperature(1.0)
@@ -295,7 +295,7 @@ internal class ThreadServiceTest {
.putAdditionalProperty("foo", JsonValue.from("string"))
.build()
)
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.parallelToolCalls(true)
.responseFormatAuto()
.temperature(1.0)
diff --git a/openai-java-core/src/test/kotlin/com/openai/services/blocking/beta/threads/RunServiceTest.kt b/openai-java-core/src/test/kotlin/com/openai/services/blocking/beta/threads/RunServiceTest.kt
index 766bffa0..38735ff2 100644
--- a/openai-java-core/src/test/kotlin/com/openai/services/blocking/beta/threads/RunServiceTest.kt
+++ b/openai-java-core/src/test/kotlin/com/openai/services/blocking/beta/threads/RunServiceTest.kt
@@ -62,7 +62,7 @@ internal class RunServiceTest {
.putAdditionalProperty("foo", JsonValue.from("string"))
.build()
)
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.parallelToolCalls(true)
.reasoningEffort(ReasoningEffort.NONE)
.responseFormatAuto()
@@ -123,7 +123,7 @@ internal class RunServiceTest {
.putAdditionalProperty("foo", JsonValue.from("string"))
.build()
)
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.parallelToolCalls(true)
.reasoningEffort(ReasoningEffort.NONE)
.responseFormatAuto()
diff --git a/openai-java-core/src/test/kotlin/com/openai/services/blocking/chat/ChatCompletionServiceTest.kt b/openai-java-core/src/test/kotlin/com/openai/services/blocking/chat/ChatCompletionServiceTest.kt
index e7552bf3..d9c03151 100644
--- a/openai-java-core/src/test/kotlin/com/openai/services/blocking/chat/ChatCompletionServiceTest.kt
+++ b/openai-java-core/src/test/kotlin/com/openai/services/blocking/chat/ChatCompletionServiceTest.kt
@@ -41,7 +41,7 @@ internal class ChatCompletionServiceTest {
.name("name")
.build()
)
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.audio(
ChatCompletionAudioParam.builder()
.format(ChatCompletionAudioParam.Format.WAV)
@@ -157,7 +157,7 @@ internal class ChatCompletionServiceTest {
.name("name")
.build()
)
- .model(ChatModel.GPT_5_1)
+ .model(ChatModel.GPT_5_2)
.audio(
ChatCompletionAudioParam.builder()
.format(ChatCompletionAudioParam.Format.WAV)