openai 0.115.1 → 0.117.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +26 -0
  3. data/README.md +1 -1
  4. data/lib/openai/helpers/responses_websocket/incremental.rb +500 -154
  5. data/lib/openai/helpers/responses_websocket/session.rb +75 -2
  6. data/lib/openai/models/admin/organization/workload_identity_provider.rb +158 -0
  7. data/lib/openai/models/admin/organization/workload_identity_provider_create_params.rb +143 -0
  8. data/lib/openai/models/admin/organization/workload_identity_provider_delete_params.rb +24 -0
  9. data/lib/openai/models/admin/organization/workload_identity_provider_deleted.rb +32 -0
  10. data/lib/openai/models/admin/organization/workload_identity_provider_list_params.rb +58 -0
  11. data/lib/openai/models/admin/organization/workload_identity_provider_retrieve_params.rb +24 -0
  12. data/lib/openai/models/admin/organization/workload_identity_provider_update_params.rb +143 -0
  13. data/lib/openai/models/admin/organization/workload_identity_providers/federation_rule.rb +161 -0
  14. data/lib/openai/models/admin/organization/workload_identity_providers/federation_rule_create_params.rb +144 -0
  15. data/lib/openai/models/admin/organization/workload_identity_providers/federation_rule_delete_params.rb +32 -0
  16. data/lib/openai/models/admin/organization/workload_identity_providers/federation_rule_deleted.rb +34 -0
  17. data/lib/openai/models/admin/organization/workload_identity_providers/federation_rule_list_params.rb +85 -0
  18. data/lib/openai/models/admin/organization/workload_identity_providers/federation_rule_retrieve_params.rb +32 -0
  19. data/lib/openai/models/admin/organization/workload_identity_providers/federation_rule_update_params.rb +134 -0
  20. data/lib/openai/models/beta/chatkit/chat_session_workflow_param.rb +5 -3
  21. data/lib/openai/models/beta/chatkit_workflow.rb +5 -3
  22. data/lib/openai/models/live/responses_delegation_config.rb +999 -6
  23. data/lib/openai/models/live/responses_delegation_update_config.rb +1043 -6
  24. data/lib/openai/resources/admin/organization/workload_identity_providers/federation_rules.rb +198 -0
  25. data/lib/openai/resources/admin/organization/workload_identity_providers.rb +148 -0
  26. data/lib/openai/resources/admin/organization.rb +6 -0
  27. data/lib/openai/version.rb +1 -1
  28. data/lib/openai.rb +16 -0
  29. data/rbi/openai/helpers/responses_websocket/incremental.rbi +4 -0
  30. data/rbi/openai/models/admin/organization/workload_identity_provider.rbi +288 -0
  31. data/rbi/openai/models/admin/organization/workload_identity_provider_create_params.rbi +311 -0
  32. data/rbi/openai/models/admin/organization/workload_identity_provider_delete_params.rbi +57 -0
  33. data/rbi/openai/models/admin/organization/workload_identity_provider_deleted.rbi +64 -0
  34. data/rbi/openai/models/admin/organization/workload_identity_provider_list_params.rbi +111 -0
  35. data/rbi/openai/models/admin/organization/workload_identity_provider_retrieve_params.rbi +57 -0
  36. data/rbi/openai/models/admin/organization/workload_identity_provider_update_params.rbi +317 -0
  37. data/rbi/openai/models/admin/organization/workload_identity_providers/federation_rule.rbi +276 -0
  38. data/rbi/openai/models/admin/organization/workload_identity_providers/federation_rule_create_params.rbi +282 -0
  39. data/rbi/openai/models/admin/organization/workload_identity_providers/federation_rule_delete_params.rbi +72 -0
  40. data/rbi/openai/models/admin/organization/workload_identity_providers/federation_rule_deleted.rbi +68 -0
  41. data/rbi/openai/models/admin/organization/workload_identity_providers/federation_rule_list_params.rbi +153 -0
  42. data/rbi/openai/models/admin/organization/workload_identity_providers/federation_rule_retrieve_params.rbi +72 -0
  43. data/rbi/openai/models/admin/organization/workload_identity_providers/federation_rule_update_params.rbi +281 -0
  44. data/rbi/openai/models/beta/chatkit/chat_session_workflow_param.rbi +1 -1
  45. data/rbi/openai/models/beta/chatkit_workflow.rbi +1 -1
  46. data/rbi/openai/models/live/responses_delegation_config.rbi +2253 -24
  47. data/rbi/openai/models/live/responses_delegation_update_config.rbi +2327 -24
  48. data/rbi/openai/resources/admin/organization/workload_identity_providers/federation_rules.rbi +148 -0
  49. data/rbi/openai/resources/admin/organization/workload_identity_providers.rbi +123 -0
  50. data/rbi/openai/resources/admin/organization.rbi +3 -0
  51. data/responses-websocket.md +40 -2
  52. data/sig/openai/helpers/responses_websocket/incremental.rbs +1 -0
  53. data/sig/openai/models/admin/organization/external_key_create_params.rbs +9 -9
  54. data/sig/openai/models/admin/organization/workload_identity_provider.rbs +136 -0
  55. data/sig/openai/models/admin/organization/workload_identity_provider_create_params.rbs +140 -0
  56. data/sig/openai/models/admin/organization/workload_identity_provider_delete_params.rbs +30 -0
  57. data/sig/openai/models/admin/organization/workload_identity_provider_deleted.rbs +34 -0
  58. data/sig/openai/models/admin/organization/workload_identity_provider_list_params.rbs +59 -0
  59. data/sig/openai/models/admin/organization/workload_identity_provider_retrieve_params.rbs +30 -0
  60. data/sig/openai/models/admin/organization/workload_identity_provider_update_params.rbs +145 -0
  61. data/sig/openai/models/admin/organization/workload_identity_providers/federation_rule.rbs +124 -0
  62. data/sig/openai/models/admin/organization/workload_identity_providers/federation_rule_create_params.rbs +126 -0
  63. data/sig/openai/models/admin/organization/workload_identity_providers/federation_rule_delete_params.rbs +37 -0
  64. data/sig/openai/models/admin/organization/workload_identity_providers/federation_rule_deleted.rbs +36 -0
  65. data/sig/openai/models/admin/organization/workload_identity_providers/federation_rule_list_params.rbs +73 -0
  66. data/sig/openai/models/admin/organization/workload_identity_providers/federation_rule_retrieve_params.rbs +37 -0
  67. data/sig/openai/models/admin/organization/workload_identity_providers/federation_rule_update_params.rbs +123 -0
  68. data/sig/openai/models/audio/transcription_create_params.rbs +3 -3
  69. data/sig/openai/models/audio/voice_create_params.rbs +6 -6
  70. data/sig/openai/models/beta/assistant_create_params.rbs +14 -2
  71. data/sig/openai/models/beta/chatkit/chat_session_workflow_param.rbs +1 -1
  72. data/sig/openai/models/beta/chatkit_workflow.rbs +1 -1
  73. data/sig/openai/models/beta/thread_create_and_run_params.rbs +14 -2
  74. data/sig/openai/models/beta/thread_create_params.rbs +14 -2
  75. data/sig/openai/models/decision_create_params.rbs +42 -0
  76. data/sig/openai/models/eval_create_params.rbs +29 -2
  77. data/sig/openai/models/evals/run_create_params.rbs +53 -2
  78. data/sig/openai/models/live/responses_delegation_config.rbs +851 -0
  79. data/sig/openai/models/live/responses_delegation_update_config.rbs +871 -0
  80. data/sig/openai/resources/admin/organization/external_keys.rbs +3 -3
  81. data/sig/openai/resources/admin/organization/workload_identity_providers/federation_rules.rbs +61 -0
  82. data/sig/openai/resources/admin/organization/workload_identity_providers.rbs +58 -0
  83. data/sig/openai/resources/admin/organization.rbs +2 -0
  84. data/sig/openai/resources/audio/transcriptions.rbs +2 -2
  85. data/sig/openai/resources/audio/voices.rbs +2 -2
  86. data/sig/openai/resources/decisions.rbs +14 -0
  87. data/sig/openai/resources/evals.rbs +8 -1
  88. metadata +49 -1
@@ -0,0 +1,37 @@
1
+ module OpenAI
2
+ module Models
3
+ module Admin
4
+ module Organization
5
+ module WorkloadIdentityProviders
6
+ type federation_rule_delete_params =
7
+ {
8
+ workload_identity_provider_id: String,
9
+ workload_identity_federation_rule_id: String,
10
+ ?request_options: OpenAI::request_opts
11
+ }
12
+
13
+ class FederationRuleDeleteParams < OpenAI::Internal::Type::BaseModel
14
+ extend OpenAI::Internal::Type::RequestParameters::Converter
15
+ include OpenAI::Internal::Type::RequestParameters
16
+
17
+ attr_accessor workload_identity_provider_id: String
18
+
19
+ attr_accessor workload_identity_federation_rule_id: String
20
+
21
+ def initialize: (
22
+ workload_identity_provider_id: String,
23
+ workload_identity_federation_rule_id: String,
24
+ ?request_options: OpenAI::request_opts
25
+ ) -> void
26
+
27
+ def to_hash: -> {
28
+ workload_identity_provider_id: String,
29
+ workload_identity_federation_rule_id: String,
30
+ ?request_options: OpenAI::RequestOptions
31
+ }
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,36 @@
1
+ module OpenAI
2
+ module Models
3
+ module Admin
4
+ module Organization
5
+ module WorkloadIdentityProviders
6
+ type federation_rule_deleted =
7
+ {
8
+ id: String,
9
+ deleted: bool,
10
+ ?object: :"organization.workload_identity_federation_rule.deleted"
11
+ }
12
+
13
+ class FederationRuleDeleted < OpenAI::Internal::Type::BaseModel
14
+ attr_accessor id: String
15
+
16
+ attr_accessor deleted: bool
17
+
18
+ attr_accessor object: :"organization.workload_identity_federation_rule.deleted"
19
+
20
+ def initialize: (
21
+ id: String,
22
+ deleted: bool,
23
+ ?object: :"organization.workload_identity_federation_rule.deleted"
24
+ ) -> void
25
+
26
+ def to_hash: -> {
27
+ id: String,
28
+ deleted: bool,
29
+ ?object: :"organization.workload_identity_federation_rule.deleted"
30
+ }
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,73 @@
1
+ module OpenAI
2
+ module Models
3
+ module Admin
4
+ module Organization
5
+ module WorkloadIdentityProviders
6
+ type federation_rule_list_params =
7
+ {
8
+ workload_identity_provider_id: String,
9
+ ?after: String,
10
+ ?limit: Integer,
11
+ ?order: OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleListParams::order,
12
+ ?service_account_id: String,
13
+ ?request_options: OpenAI::request_opts
14
+ }
15
+
16
+ class FederationRuleListParams < OpenAI::Internal::Type::BaseModel
17
+ extend OpenAI::Internal::Type::RequestParameters::Converter
18
+ include OpenAI::Internal::Type::RequestParameters
19
+
20
+ attr_accessor workload_identity_provider_id: String
21
+
22
+ attr_reader after: String?
23
+
24
+ def after=: (String) -> String
25
+
26
+ attr_reader limit: Integer?
27
+
28
+ def limit=: (Integer) -> Integer
29
+
30
+ attr_reader order: OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleListParams::order?
31
+
32
+ def order=: (
33
+ OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleListParams::order
34
+ ) -> OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleListParams::order
35
+
36
+ attr_reader service_account_id: String?
37
+
38
+ def service_account_id=: (String) -> String
39
+
40
+ def initialize: (
41
+ workload_identity_provider_id: String,
42
+ ?after: String,
43
+ ?limit: Integer,
44
+ ?order: OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleListParams::order,
45
+ ?service_account_id: String,
46
+ ?request_options: OpenAI::request_opts
47
+ ) -> void
48
+
49
+ def to_hash: -> {
50
+ workload_identity_provider_id: String,
51
+ ?after: String,
52
+ ?limit: Integer,
53
+ ?order: OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleListParams::order,
54
+ ?service_account_id: String,
55
+ ?request_options: OpenAI::RequestOptions
56
+ }
57
+
58
+ type order = :asc | :desc
59
+
60
+ module Order
61
+ extend OpenAI::Internal::Type::Union
62
+
63
+ def self?.variants: -> ::Array[OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleListParams::order]
64
+
65
+ ASC: :asc
66
+ DESC: :desc
67
+ end
68
+ end
69
+ end
70
+ end
71
+ end
72
+ end
73
+ end
@@ -0,0 +1,37 @@
1
+ module OpenAI
2
+ module Models
3
+ module Admin
4
+ module Organization
5
+ module WorkloadIdentityProviders
6
+ type federation_rule_retrieve_params =
7
+ {
8
+ workload_identity_provider_id: String,
9
+ workload_identity_federation_rule_id: String,
10
+ ?request_options: OpenAI::request_opts
11
+ }
12
+
13
+ class FederationRuleRetrieveParams < OpenAI::Internal::Type::BaseModel
14
+ extend OpenAI::Internal::Type::RequestParameters::Converter
15
+ include OpenAI::Internal::Type::RequestParameters
16
+
17
+ attr_accessor workload_identity_provider_id: String
18
+
19
+ attr_accessor workload_identity_federation_rule_id: String
20
+
21
+ def initialize: (
22
+ workload_identity_provider_id: String,
23
+ workload_identity_federation_rule_id: String,
24
+ ?request_options: OpenAI::request_opts
25
+ ) -> void
26
+
27
+ def to_hash: -> {
28
+ workload_identity_provider_id: String,
29
+ workload_identity_federation_rule_id: String,
30
+ ?request_options: OpenAI::RequestOptions
31
+ }
32
+ end
33
+ end
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,123 @@
1
+ module OpenAI
2
+ module Models
3
+ module Admin
4
+ module Organization
5
+ module WorkloadIdentityProviders
6
+ type federation_rule_update_params =
7
+ {
8
+ workload_identity_provider_id: String,
9
+ workload_identity_federation_rule_id: String,
10
+ ?attribute_matchers: ::Hash[Symbol, OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleUpdateParams::attribute_matcher],
11
+ ?description: String?,
12
+ ?enabled: bool,
13
+ ?name: String?,
14
+ ?permissions: OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleUpdateParams::permissions,
15
+ ?request_options: OpenAI::request_opts
16
+ }
17
+
18
+ class FederationRuleUpdateParams < OpenAI::Internal::Type::BaseModel
19
+ extend OpenAI::Internal::Type::RequestParameters::Converter
20
+ include OpenAI::Internal::Type::RequestParameters
21
+
22
+ attr_accessor workload_identity_provider_id: String
23
+
24
+ attr_accessor workload_identity_federation_rule_id: String
25
+
26
+ attr_reader attribute_matchers: ::Hash[Symbol, OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleUpdateParams::attribute_matcher]?
27
+
28
+ def attribute_matchers=: (
29
+ ::Hash[Symbol, OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleUpdateParams::attribute_matcher]
30
+ ) -> ::Hash[Symbol, OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleUpdateParams::attribute_matcher]
31
+
32
+ attr_accessor description: String?
33
+
34
+ attr_reader enabled: bool?
35
+
36
+ def enabled=: (bool) -> bool
37
+
38
+ attr_accessor name: String?
39
+
40
+ attr_reader permissions: OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleUpdateParams::permissions?
41
+
42
+ def permissions=: (
43
+ OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleUpdateParams::permissions
44
+ | { type: :service_account_default }
45
+ | { scopes: ::Array[String], type: :restricted }
46
+ ) -> (OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleUpdateParams::permissions
47
+ | { type: :service_account_default }
48
+ | { scopes: ::Array[String], type: :restricted })
49
+
50
+ def initialize: (
51
+ workload_identity_provider_id: String,
52
+ workload_identity_federation_rule_id: String,
53
+ ?attribute_matchers: ::Hash[Symbol, OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleUpdateParams::attribute_matcher],
54
+ ?description: String?,
55
+ ?enabled: bool,
56
+ ?name: String?,
57
+ ?permissions: OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleUpdateParams::permissions
58
+ | { type: :service_account_default }
59
+ | { scopes: ::Array[String], type: :restricted },
60
+ ?request_options: OpenAI::request_opts
61
+ ) -> void
62
+
63
+ def to_hash: -> {
64
+ workload_identity_provider_id: String,
65
+ workload_identity_federation_rule_id: String,
66
+ ?attribute_matchers: ::Hash[Symbol, OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleUpdateParams::attribute_matcher],
67
+ ?description: String?,
68
+ ?enabled: bool,
69
+ ?name: String?,
70
+ ?permissions: OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleUpdateParams::permissions,
71
+ ?request_options: OpenAI::RequestOptions
72
+ }
73
+
74
+ type attribute_matcher = String | bool | Integer | Float
75
+
76
+ module AttributeMatcher
77
+ extend OpenAI::Internal::Type::Union
78
+
79
+ def self?.variants: -> ::Array[OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleUpdateParams::attribute_matcher]
80
+ end
81
+
82
+ type permissions =
83
+ OpenAI::Admin::Organization::WorkloadIdentityProviders::FederationRuleUpdateParams::Permissions::DefaultPermissionsParam
84
+ | OpenAI::Admin::Organization::WorkloadIdentityProviders::FederationRuleUpdateParams::Permissions::RestrictedPermissionsParam
85
+
86
+ module Permissions
87
+ extend OpenAI::Internal::Type::Union
88
+
89
+ type default_permissions_param =
90
+ { ?type: :service_account_default }
91
+
92
+ class DefaultPermissionsParam < OpenAI::Internal::Type::BaseModel
93
+ attr_accessor type: :service_account_default
94
+
95
+ def initialize: (?type: :service_account_default) -> void
96
+
97
+ def to_hash: -> { ?type: :service_account_default }
98
+ end
99
+
100
+ type restricted_permissions_param =
101
+ { scopes: ::Array[String], ?type: :restricted }
102
+
103
+ class RestrictedPermissionsParam < OpenAI::Internal::Type::BaseModel
104
+ attr_accessor scopes: ::Array[String]
105
+
106
+ attr_accessor type: :restricted
107
+
108
+ def initialize: (
109
+ scopes: ::Array[String],
110
+ ?type: :restricted
111
+ ) -> void
112
+
113
+ def to_hash: -> { scopes: ::Array[String], ?type: :restricted }
114
+ end
115
+
116
+ def self?.variants: -> ::Array[OpenAI::Models::Admin::Organization::WorkloadIdentityProviders::FederationRuleUpdateParams::permissions]
117
+ end
118
+ end
119
+ end
120
+ end
121
+ end
122
+ end
123
+ end
@@ -56,14 +56,14 @@ module OpenAI
56
56
  def chunking_strategy=: (
57
57
  (OpenAI::Models::Audio::TranscriptionCreateParams::chunking_strategy
58
58
  | {
59
- type: :server_vad,
59
+ type: OpenAI::Models::Audio::TranscriptionCreateParams::ChunkingStrategy::VadConfig::type_,
60
60
  ?prefix_padding_ms: Integer,
61
61
  ?silence_duration_ms: Integer,
62
62
  ?threshold: Float
63
63
  })?
64
64
  ) -> (OpenAI::Models::Audio::TranscriptionCreateParams::chunking_strategy
65
65
  | {
66
- type: :server_vad,
66
+ type: OpenAI::Models::Audio::TranscriptionCreateParams::ChunkingStrategy::VadConfig::type_,
67
67
  ?prefix_padding_ms: Integer,
68
68
  ?silence_duration_ms: Integer,
69
69
  ?threshold: Float
@@ -280,7 +280,7 @@ module OpenAI
280
280
  model: OpenAI::Models::Audio::TranscriptionCreateParams::model,
281
281
  ?chunking_strategy: (OpenAI::Models::Audio::TranscriptionCreateParams::chunking_strategy
282
282
  | {
283
- type: :server_vad,
283
+ type: OpenAI::Models::Audio::TranscriptionCreateParams::ChunkingStrategy::VadConfig::type_,
284
284
  ?prefix_padding_ms: Integer,
285
285
  ?silence_duration_ms: Integer,
286
286
  ?threshold: Float
@@ -23,12 +23,12 @@ module OpenAI
23
23
  audio_sample: OpenAI::Internal::file_input,
24
24
  consent: String,
25
25
  name: String,
26
- ?type: :audio_sample
26
+ ?type: OpenAI::Models::Audio::VoiceCreateParams::Body::AudioSample::type_
27
27
  }
28
28
  | {
29
29
  name: String,
30
30
  prompt: String,
31
- type: :prompt,
31
+ type: OpenAI::Models::Audio::VoiceCreateParams::Body::Prompt::type_,
32
32
  ?model: String | :auto | :"2026-10-08",
33
33
  ?script_hint: String
34
34
  }
@@ -37,12 +37,12 @@ module OpenAI
37
37
  audio_sample: OpenAI::Internal::file_input,
38
38
  consent: String,
39
39
  name: String,
40
- ?type: :audio_sample
40
+ ?type: OpenAI::Models::Audio::VoiceCreateParams::Body::AudioSample::type_
41
41
  }
42
42
  | {
43
43
  name: String,
44
44
  prompt: String,
45
- type: :prompt,
45
+ type: OpenAI::Models::Audio::VoiceCreateParams::Body::Prompt::type_,
46
46
  ?model: (String | :auto | :"2026-10-08"),
47
47
  ?script_hint: String
48
48
  })
@@ -56,12 +56,12 @@ module OpenAI
56
56
  audio_sample: OpenAI::Internal::file_input,
57
57
  consent: String,
58
58
  name: String,
59
- ?type: :audio_sample
59
+ ?type: OpenAI::Models::Audio::VoiceCreateParams::Body::AudioSample::type_
60
60
  }
61
61
  | {
62
62
  name: String,
63
63
  prompt: String,
64
- type: :prompt,
64
+ type: OpenAI::Models::Audio::VoiceCreateParams::Body::Prompt::type_,
65
65
  ?model: String | :auto | :"2026-10-08",
66
66
  ?script_hint: String
67
67
  },
@@ -332,8 +332,16 @@ module OpenAI
332
332
  def chunking_strategy=: (
333
333
  OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy
334
334
  | { type: :auto }
335
+ | {
336
+ static: OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static,
337
+ type: :static
338
+ }
335
339
  ) -> (OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy
336
- | { type: :auto })
340
+ | { type: :auto }
341
+ | {
342
+ static: OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static,
343
+ type: :static
344
+ })
337
345
 
338
346
  # A list of [file](https://developers.openai.com/api/reference/resources/files)
339
347
  # IDs to add to the vector store. For vector stores created before Nov 2025, there
@@ -372,7 +380,11 @@ module OpenAI
372
380
  # a maximum length of 512 characters.
373
381
  def initialize: (
374
382
  ?chunking_strategy: OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy
375
- | { type: :auto },
383
+ | { type: :auto }
384
+ | {
385
+ static: OpenAI::Models::Beta::AssistantCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static,
386
+ type: :static
387
+ },
376
388
  ?file_ids: ::Array[String],
377
389
  ?metadata: OpenAI::Models::metadata?
378
390
  ) -> void
@@ -64,7 +64,7 @@ module OpenAI
64
64
  ?version: String
65
65
  }
66
66
 
67
- type state_variable = String | bool | Float
67
+ type state_variable = String | Integer | bool | Float
68
68
 
69
69
  module StateVariable
70
70
  extend OpenAI::Internal::Type::Union
@@ -48,7 +48,7 @@ module OpenAI
48
48
  version: String?
49
49
  }
50
50
 
51
- type state_variable = String | bool | Float
51
+ type state_variable = String | Integer | bool | Float
52
52
 
53
53
  module StateVariable
54
54
  extend OpenAI::Internal::Type::Union
@@ -607,8 +607,16 @@ module OpenAI
607
607
  def chunking_strategy=: (
608
608
  OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::chunking_strategy
609
609
  | { type: :auto }
610
+ | {
611
+ static: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static,
612
+ type: :static
613
+ }
610
614
  ) -> (OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::chunking_strategy
611
- | { type: :auto })
615
+ | { type: :auto }
616
+ | {
617
+ static: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static,
618
+ type: :static
619
+ })
612
620
 
613
621
  # A list of [file](https://developers.openai.com/api/reference/resources/files)
614
622
  # IDs to add to the vector store. For vector stores created before Nov 2025, there
@@ -647,7 +655,11 @@ module OpenAI
647
655
  # a maximum length of 512 characters.
648
656
  def initialize: (
649
657
  ?chunking_strategy: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::chunking_strategy
650
- | { type: :auto },
658
+ | { type: :auto }
659
+ | {
660
+ static: OpenAI::Models::Beta::ThreadCreateAndRunParams::Thread::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static,
661
+ type: :static
662
+ },
651
663
  ?file_ids: ::Array[String],
652
664
  ?metadata: OpenAI::Models::metadata?
653
665
  ) -> void
@@ -339,8 +339,16 @@ module OpenAI
339
339
  def chunking_strategy=: (
340
340
  OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy
341
341
  | { type: :auto }
342
+ | {
343
+ static: OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static,
344
+ type: :static
345
+ }
342
346
  ) -> (OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy
343
- | { type: :auto })
347
+ | { type: :auto }
348
+ | {
349
+ static: OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static,
350
+ type: :static
351
+ })
344
352
 
345
353
  # A list of [file](https://developers.openai.com/api/reference/resources/files)
346
354
  # IDs to add to the vector store. For vector stores created before Nov 2025, there
@@ -379,7 +387,11 @@ module OpenAI
379
387
  # a maximum length of 512 characters.
380
388
  def initialize: (
381
389
  ?chunking_strategy: OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::chunking_strategy
382
- | { type: :auto },
390
+ | { type: :auto }
391
+ | {
392
+ static: OpenAI::Models::Beta::ThreadCreateParams::ToolResources::FileSearch::VectorStore::ChunkingStrategy::Static::Static,
393
+ type: :static
394
+ },
383
395
  ?file_ids: ::Array[String],
384
396
  ?metadata: OpenAI::Models::metadata?
385
397
  ) -> void
@@ -37,6 +37,20 @@ module OpenAI
37
37
  | ::Array[OpenAI::Models::decision_question_input_part],
38
38
  type: :predicate,
39
39
  ?name: String
40
+ }
41
+ | {
42
+ choices: ::Array[OpenAI::Models::DecisionCreateParams::Question::Choice::Choice],
43
+ instructions: String
44
+ | ::Array[OpenAI::Models::decision_question_input_part],
45
+ type: :choice,
46
+ ?name: String
47
+ }
48
+ | {
49
+ instructions: String
50
+ | ::Array[OpenAI::Models::decision_question_input_part],
51
+ levels: ::Array[OpenAI::Models::DecisionCreateParams::Question::Score::Level],
52
+ type: :score,
53
+ ?name: String
40
54
  }]
41
55
  ) -> ::Array[(OpenAI::Models::DecisionCreateParams::question
42
56
  | {
@@ -44,6 +58,20 @@ module OpenAI
44
58
  | ::Array[OpenAI::Models::decision_question_input_part]),
45
59
  type: :predicate,
46
60
  ?name: String
61
+ }
62
+ | {
63
+ choices: ::Array[OpenAI::Models::DecisionCreateParams::Question::Choice::Choice],
64
+ instructions: (String
65
+ | ::Array[OpenAI::Models::decision_question_input_part]),
66
+ type: :choice,
67
+ ?name: String
68
+ }
69
+ | {
70
+ instructions: (String
71
+ | ::Array[OpenAI::Models::decision_question_input_part]),
72
+ levels: ::Array[OpenAI::Models::DecisionCreateParams::Question::Score::Level],
73
+ type: :score,
74
+ ?name: String
47
75
  })]
48
76
 
49
77
  # Partition prompt cache reuse by caller-provided key.
@@ -98,6 +126,20 @@ module OpenAI
98
126
  | ::Array[OpenAI::Models::decision_question_input_part],
99
127
  type: :predicate,
100
128
  ?name: String
129
+ }
130
+ | {
131
+ choices: ::Array[OpenAI::Models::DecisionCreateParams::Question::Choice::Choice],
132
+ instructions: String
133
+ | ::Array[OpenAI::Models::decision_question_input_part],
134
+ type: :choice,
135
+ ?name: String
136
+ }
137
+ | {
138
+ instructions: String
139
+ | ::Array[OpenAI::Models::decision_question_input_part],
140
+ levels: ::Array[OpenAI::Models::DecisionCreateParams::Question::Score::Level],
141
+ type: :score,
142
+ ?name: String
101
143
  }],
102
144
  ?prompt_cache_key: String?,
103
145
  ?prompt_cache_options: (OpenAI::DecisionCreateParams::PromptCacheOptions
@@ -15,7 +15,27 @@ module OpenAI
15
15
 
16
16
  # The configuration for the data source used for the evaluation runs. Dictates the
17
17
  # schema of the data used in the evaluation.
18
- attr_accessor data_source_config: OpenAI::Models::EvalCreateParams::data_source_config
18
+ attr_reader data_source_config: OpenAI::Models::EvalCreateParams::data_source_config
19
+
20
+ # The configuration for the data source used for the evaluation runs. Dictates the
21
+ # schema of the data used in the evaluation.
22
+ def data_source_config=: (
23
+ OpenAI::Models::EvalCreateParams::data_source_config
24
+ | {
25
+ item_schema: ::Hash[Symbol, top],
26
+ type: :custom,
27
+ ?include_sample_schema: bool
28
+ }
29
+ | { type: :logs, ?metadata: ::Hash[Symbol, top] }
30
+ | { type: :stored_completions, ?metadata: ::Hash[Symbol, top] }
31
+ ) -> (OpenAI::Models::EvalCreateParams::data_source_config
32
+ | {
33
+ item_schema: ::Hash[Symbol, top],
34
+ type: :custom,
35
+ ?include_sample_schema: bool
36
+ }
37
+ | { type: :logs, ?metadata: ::Hash[Symbol, top] }
38
+ | { type: :stored_completions, ?metadata: ::Hash[Symbol, top] })
19
39
 
20
40
  # A list of graders for all eval runs in this group. Graders can reference
21
41
  # variables in the data source using double curly braces notation, like
@@ -55,7 +75,14 @@ module OpenAI
55
75
  # @param name
56
76
  # The name of the evaluation.
57
77
  def initialize: (
58
- data_source_config: OpenAI::Models::EvalCreateParams::data_source_config,
78
+ data_source_config: OpenAI::Models::EvalCreateParams::data_source_config
79
+ | {
80
+ item_schema: ::Hash[Symbol, top],
81
+ type: :custom,
82
+ ?include_sample_schema: bool
83
+ }
84
+ | { type: :logs, ?metadata: ::Hash[Symbol, top] }
85
+ | { type: :stored_completions, ?metadata: ::Hash[Symbol, top] },
59
86
  testing_criteria: ::Array[OpenAI::Models::EvalCreateParams::testing_criterion],
60
87
  ?metadata: OpenAI::Models::metadata?,
61
88
  ?name: String,
@@ -84,9 +84,43 @@ module OpenAI
84
84
  # Determines what populates the `item` namespace in this run's data source.
85
85
  def source=: (
86
86
  OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::source
87
+ | {
88
+ content: ::Array[OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content],
89
+ type: :file_content
90
+ }
87
91
  | { id: String, type: :file_id }
92
+ | {
93
+ type: :responses,
94
+ ?created_after: Integer?,
95
+ ?created_before: Integer?,
96
+ ?instructions_search: String?,
97
+ ?metadata: top?,
98
+ ?model: String?,
99
+ ?reasoning_effort: OpenAI::Models::reasoning_effort?,
100
+ ?temperature: Float?,
101
+ ?tools: ::Array[String]?,
102
+ ?top_p: Float?,
103
+ ?users: ::Array[String]?
104
+ }
88
105
  ) -> (OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::source
89
- | { id: String, type: :file_id })
106
+ | {
107
+ content: ::Array[OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content],
108
+ type: :file_content
109
+ }
110
+ | { id: String, type: :file_id }
111
+ | {
112
+ type: :responses,
113
+ ?created_after: Integer?,
114
+ ?created_before: Integer?,
115
+ ?instructions_search: String?,
116
+ ?metadata: top?,
117
+ ?model: String?,
118
+ ?reasoning_effort: OpenAI::Models::reasoning_effort?,
119
+ ?temperature: Float?,
120
+ ?tools: ::Array[String]?,
121
+ ?top_p: Float?,
122
+ ?users: ::Array[String]?
123
+ })
90
124
 
91
125
  # The type of run data source. Always `responses`.
92
126
  attr_accessor type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::type_
@@ -132,7 +166,24 @@ module OpenAI
132
166
  # The name of the model to use for generating completions (e.g. "o3-mini").
133
167
  def initialize: (
134
168
  source: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::source
135
- | { id: String, type: :file_id },
169
+ | {
170
+ content: ::Array[OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::Source::FileContent::Content],
171
+ type: :file_content
172
+ }
173
+ | { id: String, type: :file_id }
174
+ | {
175
+ type: :responses,
176
+ ?created_after: Integer?,
177
+ ?created_before: Integer?,
178
+ ?instructions_search: String?,
179
+ ?metadata: top?,
180
+ ?model: String?,
181
+ ?reasoning_effort: OpenAI::Models::reasoning_effort?,
182
+ ?temperature: Float?,
183
+ ?tools: ::Array[String]?,
184
+ ?top_p: Float?,
185
+ ?users: ::Array[String]?
186
+ },
136
187
  type: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::type_,
137
188
  ?input_messages: OpenAI::Models::Evals::RunCreateParams::DataSource::CreateEvalResponsesRunDataSource::input_messages
138
189
  | { item_reference: String, type: :item_reference },