openai 0.64.0 → 0.65.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 (63) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/README.md +1 -1
  4. data/lib/openai/models/admin/organization/audit_log_list_params.rb +6 -0
  5. data/lib/openai/models/admin/organization/audit_log_list_response.rb +231 -1
  6. data/lib/openai/models/chat/completion_create_params.rb +16 -0
  7. data/lib/openai/models/conversations/conversation_create_params.rb +2 -2
  8. data/lib/openai/models/conversations/conversation_item.rb +57 -1
  9. data/lib/openai/models/conversations/conversation_item_list.rb +2 -2
  10. data/lib/openai/models/conversations/item_create_params.rb +2 -2
  11. data/lib/openai/models/responses/compacted_response.rb +2 -2
  12. data/lib/openai/models/responses/input_token_count_params.rb +41 -4
  13. data/lib/openai/models/responses/response.rb +21 -5
  14. data/lib/openai/models/responses/response_compact_params.rb +3 -3
  15. data/lib/openai/models/responses/response_create_params.rb +19 -3
  16. data/lib/openai/models/responses/response_function_web_search.rb +11 -9
  17. data/lib/openai/models/responses/response_input_item.rb +38 -1
  18. data/lib/openai/models/responses/response_item.rb +57 -1
  19. data/lib/openai/models/responses/response_item_list.rb +2 -2
  20. data/lib/openai/models/responses/response_output_item.rb +57 -1
  21. data/lib/openai/models/responses/response_output_item_added_event.rb +2 -2
  22. data/lib/openai/models/responses/response_output_item_done_event.rb +2 -2
  23. data/lib/openai/models/responses/responses_client_event.rb +19 -3
  24. data/lib/openai/resources/conversations/items.rb +3 -3
  25. data/lib/openai/resources/conversations.rb +1 -1
  26. data/lib/openai/resources/responses/input_items.rb +1 -1
  27. data/lib/openai/resources/responses/input_tokens.rb +4 -2
  28. data/lib/openai/resources/responses.rb +3 -3
  29. data/lib/openai/version.rb +1 -1
  30. data/rbi/openai/models/admin/organization/audit_log_list_params.rbi +30 -0
  31. data/rbi/openai/models/admin/organization/audit_log_list_response.rbi +489 -3
  32. data/rbi/openai/models/chat/completion_create_params.rbi +24 -0
  33. data/rbi/openai/models/conversations/conversation_create_params.rbi +3 -0
  34. data/rbi/openai/models/conversations/conversation_item.rbi +150 -0
  35. data/rbi/openai/models/conversations/conversation_item_list.rbi +1 -0
  36. data/rbi/openai/models/conversations/item_create_params.rbi +3 -0
  37. data/rbi/openai/models/responses/compacted_response.rbi +1 -0
  38. data/rbi/openai/models/responses/input_token_count_params.rbi +85 -0
  39. data/rbi/openai/models/responses/response.rbi +25 -0
  40. data/rbi/openai/models/responses/response_create_params.rbi +24 -0
  41. data/rbi/openai/models/responses/response_function_web_search.rbi +11 -8
  42. data/rbi/openai/models/responses/response_input_item.rbi +120 -0
  43. data/rbi/openai/models/responses/response_item.rbi +150 -0
  44. data/rbi/openai/models/responses/response_item_list.rbi +1 -0
  45. data/rbi/openai/models/responses/response_output_item.rbi +150 -0
  46. data/rbi/openai/models/responses/response_output_item_added_event.rbi +1 -0
  47. data/rbi/openai/models/responses/response_output_item_done_event.rbi +1 -0
  48. data/rbi/openai/models/responses/responses_client_event.rbi +24 -0
  49. data/rbi/openai/resources/chat/completions.rbi +16 -0
  50. data/rbi/openai/resources/conversations/items.rbi +1 -0
  51. data/rbi/openai/resources/conversations.rbi +1 -0
  52. data/rbi/openai/resources/responses/input_tokens.rbi +9 -0
  53. data/rbi/openai/resources/responses.rbi +16 -0
  54. data/sig/openai/models/admin/organization/audit_log_list_params.rbs +12 -0
  55. data/sig/openai/models/admin/organization/audit_log_list_response.rbs +216 -3
  56. data/sig/openai/models/conversations/conversation_item.rbs +58 -0
  57. data/sig/openai/models/responses/input_token_count_params.rbs +20 -0
  58. data/sig/openai/models/responses/response_function_web_search.rbs +7 -5
  59. data/sig/openai/models/responses/response_input_item.rbs +33 -0
  60. data/sig/openai/models/responses/response_item.rbs +58 -0
  61. data/sig/openai/models/responses/response_output_item.rbs +58 -0
  62. data/sig/openai/resources/responses/input_tokens.rbs +1 -0
  63. metadata +2 -2
@@ -55,7 +55,13 @@ module OpenAI
55
55
  service_account_updated: OpenAI::Models::Admin::Organization::AuditLogListResponse::ServiceAccountUpdated,
56
56
  user_added: OpenAI::Models::Admin::Organization::AuditLogListResponse::UserAdded,
57
57
  user_deleted: OpenAI::Models::Admin::Organization::AuditLogListResponse::UserDeleted,
58
- user_updated: OpenAI::Models::Admin::Organization::AuditLogListResponse::UserUpdated
58
+ user_updated: OpenAI::Models::Admin::Organization::AuditLogListResponse::UserUpdated,
59
+ workload_identity_provider_mapping_created: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderMappingCreated,
60
+ workload_identity_provider_mapping_deleted: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderMappingDeleted,
61
+ workload_identity_provider_mapping_updated: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderMappingUpdated,
62
+ workload_identity_provider_created: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderCreated,
63
+ workload_identity_provider_deleted: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderDeleted,
64
+ workload_identity_provider_updated: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderUpdated
59
65
  }
60
66
 
61
67
  class AuditLogListResponse < OpenAI::Internal::Type::BaseModel
@@ -351,6 +357,42 @@ module OpenAI
351
357
  OpenAI::Models::Admin::Organization::AuditLogListResponse::UserUpdated
352
358
  ) -> OpenAI::Models::Admin::Organization::AuditLogListResponse::UserUpdated
353
359
 
360
+ attr_reader workload_identity_provider_mapping_created: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderMappingCreated?
361
+
362
+ def workload_identity_provider_mapping_created=: (
363
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderMappingCreated
364
+ ) -> OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderMappingCreated
365
+
366
+ attr_reader workload_identity_provider_mapping_deleted: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderMappingDeleted?
367
+
368
+ def workload_identity_provider_mapping_deleted=: (
369
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderMappingDeleted
370
+ ) -> OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderMappingDeleted
371
+
372
+ attr_reader workload_identity_provider_mapping_updated: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderMappingUpdated?
373
+
374
+ def workload_identity_provider_mapping_updated=: (
375
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderMappingUpdated
376
+ ) -> OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderMappingUpdated
377
+
378
+ attr_reader workload_identity_provider_created: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderCreated?
379
+
380
+ def workload_identity_provider_created=: (
381
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderCreated
382
+ ) -> OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderCreated
383
+
384
+ attr_reader workload_identity_provider_deleted: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderDeleted?
385
+
386
+ def workload_identity_provider_deleted=: (
387
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderDeleted
388
+ ) -> OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderDeleted
389
+
390
+ attr_reader workload_identity_provider_updated: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderUpdated?
391
+
392
+ def workload_identity_provider_updated=: (
393
+ OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderUpdated
394
+ ) -> OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderUpdated
395
+
354
396
  def initialize: (
355
397
  id: String,
356
398
  effective_at: Integer,
@@ -403,7 +445,13 @@ module OpenAI
403
445
  ?service_account_updated: OpenAI::Models::Admin::Organization::AuditLogListResponse::ServiceAccountUpdated,
404
446
  ?user_added: OpenAI::Models::Admin::Organization::AuditLogListResponse::UserAdded,
405
447
  ?user_deleted: OpenAI::Models::Admin::Organization::AuditLogListResponse::UserDeleted,
406
- ?user_updated: OpenAI::Models::Admin::Organization::AuditLogListResponse::UserUpdated
448
+ ?user_updated: OpenAI::Models::Admin::Organization::AuditLogListResponse::UserUpdated,
449
+ ?workload_identity_provider_mapping_created: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderMappingCreated,
450
+ ?workload_identity_provider_mapping_deleted: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderMappingDeleted,
451
+ ?workload_identity_provider_mapping_updated: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderMappingUpdated,
452
+ ?workload_identity_provider_created: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderCreated,
453
+ ?workload_identity_provider_deleted: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderDeleted,
454
+ ?workload_identity_provider_updated: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderUpdated
407
455
  ) -> void
408
456
 
409
457
  def to_hash: -> {
@@ -458,7 +506,13 @@ module OpenAI
458
506
  service_account_updated: OpenAI::Models::Admin::Organization::AuditLogListResponse::ServiceAccountUpdated,
459
507
  user_added: OpenAI::Models::Admin::Organization::AuditLogListResponse::UserAdded,
460
508
  user_deleted: OpenAI::Models::Admin::Organization::AuditLogListResponse::UserDeleted,
461
- user_updated: OpenAI::Models::Admin::Organization::AuditLogListResponse::UserUpdated
509
+ user_updated: OpenAI::Models::Admin::Organization::AuditLogListResponse::UserUpdated,
510
+ workload_identity_provider_mapping_created: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderMappingCreated,
511
+ workload_identity_provider_mapping_deleted: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderMappingDeleted,
512
+ workload_identity_provider_mapping_updated: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderMappingUpdated,
513
+ workload_identity_provider_created: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderCreated,
514
+ workload_identity_provider_deleted: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderDeleted,
515
+ workload_identity_provider_updated: OpenAI::Models::Admin::Organization::AuditLogListResponse::WorkloadIdentityProviderUpdated
462
516
  }
463
517
 
464
518
  type type_ =
@@ -500,6 +554,12 @@ module OpenAI
500
554
  | :"tunnel.created"
501
555
  | :"tunnel.updated"
502
556
  | :"tunnel.deleted"
557
+ | :"workload_identity_provider.created"
558
+ | :"workload_identity_provider.updated"
559
+ | :"workload_identity_provider.deleted"
560
+ | :"workload_identity_provider_mapping.created"
561
+ | :"workload_identity_provider_mapping.updated"
562
+ | :"workload_identity_provider_mapping.deleted"
503
563
  | :"role.created"
504
564
  | :"role.updated"
505
565
  | :"role.deleted"
@@ -555,6 +615,12 @@ module OpenAI
555
615
  TUNNEL_CREATED: :"tunnel.created"
556
616
  TUNNEL_UPDATED: :"tunnel.updated"
557
617
  TUNNEL_DELETED: :"tunnel.deleted"
618
+ WORKLOAD_IDENTITY_PROVIDER_CREATED: :"workload_identity_provider.created"
619
+ WORKLOAD_IDENTITY_PROVIDER_UPDATED: :"workload_identity_provider.updated"
620
+ WORKLOAD_IDENTITY_PROVIDER_DELETED: :"workload_identity_provider.deleted"
621
+ WORKLOAD_IDENTITY_PROVIDER_MAPPING_CREATED: :"workload_identity_provider_mapping.created"
622
+ WORKLOAD_IDENTITY_PROVIDER_MAPPING_UPDATED: :"workload_identity_provider_mapping.updated"
623
+ WORKLOAD_IDENTITY_PROVIDER_MAPPING_DELETED: :"workload_identity_provider_mapping.deleted"
558
624
  ROLE_CREATED: :"role.created"
559
625
  ROLE_UPDATED: :"role.updated"
560
626
  ROLE_DELETED: :"role.deleted"
@@ -2168,6 +2234,153 @@ module OpenAI
2168
2234
  def to_hash: -> { role: String }
2169
2235
  end
2170
2236
  end
2237
+
2238
+ type workload_identity_provider_mapping_created =
2239
+ { id: String, data: top, identity_provider_id: String }
2240
+
2241
+ class WorkloadIdentityProviderMappingCreated < OpenAI::Internal::Type::BaseModel
2242
+ attr_reader id: String?
2243
+
2244
+ def id=: (String) -> String
2245
+
2246
+ attr_reader data: top?
2247
+
2248
+ def data=: (top) -> top
2249
+
2250
+ attr_reader identity_provider_id: String?
2251
+
2252
+ def identity_provider_id=: (String) -> String
2253
+
2254
+ def initialize: (
2255
+ ?id: String,
2256
+ ?data: top,
2257
+ ?identity_provider_id: String
2258
+ ) -> void
2259
+
2260
+ def to_hash: -> {
2261
+ id: String,
2262
+ data: top,
2263
+ identity_provider_id: String
2264
+ }
2265
+ end
2266
+
2267
+ type workload_identity_provider_mapping_deleted =
2268
+ {
2269
+ id: String,
2270
+ identity_provider_id: String,
2271
+ project_id: String,
2272
+ service_account_id: String
2273
+ }
2274
+
2275
+ class WorkloadIdentityProviderMappingDeleted < OpenAI::Internal::Type::BaseModel
2276
+ attr_reader id: String?
2277
+
2278
+ def id=: (String) -> String
2279
+
2280
+ attr_reader identity_provider_id: String?
2281
+
2282
+ def identity_provider_id=: (String) -> String
2283
+
2284
+ attr_reader project_id: String?
2285
+
2286
+ def project_id=: (String) -> String
2287
+
2288
+ attr_reader service_account_id: String?
2289
+
2290
+ def service_account_id=: (String) -> String
2291
+
2292
+ def initialize: (
2293
+ ?id: String,
2294
+ ?identity_provider_id: String,
2295
+ ?project_id: String,
2296
+ ?service_account_id: String
2297
+ ) -> void
2298
+
2299
+ def to_hash: -> {
2300
+ id: String,
2301
+ identity_provider_id: String,
2302
+ project_id: String,
2303
+ service_account_id: String
2304
+ }
2305
+ end
2306
+
2307
+ type workload_identity_provider_mapping_updated =
2308
+ { id: String, changes_requested: top, identity_provider_id: String }
2309
+
2310
+ class WorkloadIdentityProviderMappingUpdated < OpenAI::Internal::Type::BaseModel
2311
+ attr_reader id: String?
2312
+
2313
+ def id=: (String) -> String
2314
+
2315
+ attr_reader changes_requested: top?
2316
+
2317
+ def changes_requested=: (top) -> top
2318
+
2319
+ attr_reader identity_provider_id: String?
2320
+
2321
+ def identity_provider_id=: (String) -> String
2322
+
2323
+ def initialize: (
2324
+ ?id: String,
2325
+ ?changes_requested: top,
2326
+ ?identity_provider_id: String
2327
+ ) -> void
2328
+
2329
+ def to_hash: -> {
2330
+ id: String,
2331
+ changes_requested: top,
2332
+ identity_provider_id: String
2333
+ }
2334
+ end
2335
+
2336
+ type workload_identity_provider_created = { id: String, data: top }
2337
+
2338
+ class WorkloadIdentityProviderCreated < OpenAI::Internal::Type::BaseModel
2339
+ attr_reader id: String?
2340
+
2341
+ def id=: (String) -> String
2342
+
2343
+ attr_reader data: top?
2344
+
2345
+ def data=: (top) -> top
2346
+
2347
+ def initialize: (?id: String, ?data: top) -> void
2348
+
2349
+ def to_hash: -> { id: String, data: top }
2350
+ end
2351
+
2352
+ type workload_identity_provider_deleted = { id: String, name: String }
2353
+
2354
+ class WorkloadIdentityProviderDeleted < OpenAI::Internal::Type::BaseModel
2355
+ attr_reader id: String?
2356
+
2357
+ def id=: (String) -> String
2358
+
2359
+ attr_reader name: String?
2360
+
2361
+ def name=: (String) -> String
2362
+
2363
+ def initialize: (?id: String, ?name: String) -> void
2364
+
2365
+ def to_hash: -> { id: String, name: String }
2366
+ end
2367
+
2368
+ type workload_identity_provider_updated =
2369
+ { id: String, changes_requested: top }
2370
+
2371
+ class WorkloadIdentityProviderUpdated < OpenAI::Internal::Type::BaseModel
2372
+ attr_reader id: String?
2373
+
2374
+ def id=: (String) -> String
2375
+
2376
+ attr_reader changes_requested: top?
2377
+
2378
+ def changes_requested=: (top) -> top
2379
+
2380
+ def initialize: (?id: String, ?changes_requested: top) -> void
2381
+
2382
+ def to_hash: -> { id: String, changes_requested: top }
2383
+ end
2171
2384
  end
2172
2385
  end
2173
2386
  end
@@ -14,6 +14,7 @@ module OpenAI
14
14
  | OpenAI::Responses::ResponseComputerToolCallOutputItem
15
15
  | OpenAI::Responses::ResponseToolSearchCall
16
16
  | OpenAI::Responses::ResponseToolSearchOutputItem
17
+ | OpenAI::Conversations::ConversationItem::AdditionalTools
17
18
  | OpenAI::Responses::ResponseReasoningItem
18
19
  | OpenAI::Responses::ResponseCompactionItem
19
20
  | OpenAI::Responses::ResponseCodeInterpreterToolCall
@@ -78,6 +79,63 @@ module OpenAI
78
79
  end
79
80
  end
80
81
 
82
+ type additional_tools =
83
+ {
84
+ id: String,
85
+ role: OpenAI::Models::Conversations::ConversationItem::AdditionalTools::role,
86
+ tools: ::Array[OpenAI::Models::Responses::tool],
87
+ type: :additional_tools
88
+ }
89
+
90
+ class AdditionalTools < OpenAI::Internal::Type::BaseModel
91
+ attr_accessor id: String
92
+
93
+ attr_accessor role: OpenAI::Models::Conversations::ConversationItem::AdditionalTools::role
94
+
95
+ attr_accessor tools: ::Array[OpenAI::Models::Responses::tool]
96
+
97
+ attr_accessor type: :additional_tools
98
+
99
+ def initialize: (
100
+ id: String,
101
+ role: OpenAI::Models::Conversations::ConversationItem::AdditionalTools::role,
102
+ tools: ::Array[OpenAI::Models::Responses::tool],
103
+ ?type: :additional_tools
104
+ ) -> void
105
+
106
+ def to_hash: -> {
107
+ id: String,
108
+ role: OpenAI::Models::Conversations::ConversationItem::AdditionalTools::role,
109
+ tools: ::Array[OpenAI::Models::Responses::tool],
110
+ type: :additional_tools
111
+ }
112
+
113
+ type role =
114
+ :unknown
115
+ | :user
116
+ | :assistant
117
+ | :system
118
+ | :critic
119
+ | :discriminator
120
+ | :developer
121
+ | :tool
122
+
123
+ module Role
124
+ extend OpenAI::Internal::Type::Enum
125
+
126
+ UNKNOWN: :unknown
127
+ USER: :user
128
+ ASSISTANT: :assistant
129
+ SYSTEM: :system
130
+ CRITIC: :critic
131
+ DISCRIMINATOR: :discriminator
132
+ DEVELOPER: :developer
133
+ TOOL: :tool
134
+
135
+ def self?.values: -> ::Array[OpenAI::Models::Conversations::ConversationItem::AdditionalTools::role]
136
+ end
137
+ end
138
+
81
139
  type local_shell_call =
82
140
  {
83
141
  id: String,
@@ -8,6 +8,7 @@ module OpenAI
8
8
  instructions: String?,
9
9
  model: String?,
10
10
  parallel_tool_calls: bool?,
11
+ personality: OpenAI::Models::Responses::InputTokenCountParams::personality,
11
12
  previous_response_id: String?,
12
13
  reasoning: OpenAI::Reasoning?,
13
14
  text: OpenAI::Responses::InputTokenCountParams::Text?,
@@ -31,6 +32,12 @@ module OpenAI
31
32
 
32
33
  attr_accessor parallel_tool_calls: bool?
33
34
 
35
+ attr_reader personality: OpenAI::Models::Responses::InputTokenCountParams::personality?
36
+
37
+ def personality=: (
38
+ OpenAI::Models::Responses::InputTokenCountParams::personality
39
+ ) -> OpenAI::Models::Responses::InputTokenCountParams::personality
40
+
34
41
  attr_accessor previous_response_id: String?
35
42
 
36
43
  attr_accessor reasoning: OpenAI::Reasoning?
@@ -53,6 +60,7 @@ module OpenAI
53
60
  ?instructions: String?,
54
61
  ?model: String?,
55
62
  ?parallel_tool_calls: bool?,
63
+ ?personality: OpenAI::Models::Responses::InputTokenCountParams::personality,
56
64
  ?previous_response_id: String?,
57
65
  ?reasoning: OpenAI::Reasoning?,
58
66
  ?text: OpenAI::Responses::InputTokenCountParams::Text?,
@@ -68,6 +76,7 @@ module OpenAI
68
76
  instructions: String?,
69
77
  model: String?,
70
78
  parallel_tool_calls: bool?,
79
+ personality: OpenAI::Models::Responses::InputTokenCountParams::personality,
71
80
  previous_response_id: String?,
72
81
  reasoning: OpenAI::Reasoning?,
73
82
  text: OpenAI::Responses::InputTokenCountParams::Text?,
@@ -97,6 +106,17 @@ module OpenAI
97
106
  ResponseInputItemArray: OpenAI::Internal::Type::Converter
98
107
  end
99
108
 
109
+ type personality = String | :friendly | :pragmatic
110
+
111
+ module Personality
112
+ extend OpenAI::Internal::Type::Union
113
+
114
+ def self?.variants: -> ::Array[OpenAI::Models::Responses::InputTokenCountParams::personality]
115
+
116
+ FRIENDLY: :friendly
117
+ PRAGMATIC: :pragmatic
118
+ end
119
+
100
120
  type text =
101
121
  {
102
122
  format_: OpenAI::Models::Responses::response_format_text_config,
@@ -42,21 +42,23 @@ module OpenAI
42
42
 
43
43
  type search =
44
44
  {
45
- query: String,
46
45
  type: :search,
47
46
  queries: ::Array[String],
47
+ query: String,
48
48
  sources: ::Array[OpenAI::Responses::ResponseFunctionWebSearch::Action::Search::Source]
49
49
  }
50
50
 
51
51
  class Search < OpenAI::Internal::Type::BaseModel
52
- attr_accessor query: String
53
-
54
52
  attr_accessor type: :search
55
53
 
56
54
  attr_reader queries: ::Array[String]?
57
55
 
58
56
  def queries=: (::Array[String]) -> ::Array[String]
59
57
 
58
+ attr_reader query: String?
59
+
60
+ def query=: (String) -> String
61
+
60
62
  attr_reader sources: ::Array[OpenAI::Responses::ResponseFunctionWebSearch::Action::Search::Source]?
61
63
 
62
64
  def sources=: (
@@ -64,16 +66,16 @@ module OpenAI
64
66
  ) -> ::Array[OpenAI::Responses::ResponseFunctionWebSearch::Action::Search::Source]
65
67
 
66
68
  def initialize: (
67
- query: String,
68
69
  ?queries: ::Array[String],
70
+ ?query: String,
69
71
  ?sources: ::Array[OpenAI::Responses::ResponseFunctionWebSearch::Action::Search::Source],
70
72
  ?type: :search
71
73
  ) -> void
72
74
 
73
75
  def to_hash: -> {
74
- query: String,
75
76
  type: :search,
76
77
  queries: ::Array[String],
78
+ query: String,
77
79
  sources: ::Array[OpenAI::Responses::ResponseFunctionWebSearch::Action::Search::Source]
78
80
  }
79
81
 
@@ -13,6 +13,7 @@ module OpenAI
13
13
  | OpenAI::Responses::ResponseInputItem::FunctionCallOutput
14
14
  | OpenAI::Responses::ResponseInputItem::ToolSearchCall
15
15
  | OpenAI::Responses::ResponseToolSearchOutputItemParam
16
+ | OpenAI::Responses::ResponseInputItem::AdditionalTools
16
17
  | OpenAI::Responses::ResponseReasoningItem
17
18
  | OpenAI::Responses::ResponseCompactionItemParam
18
19
  | OpenAI::Responses::ResponseInputItem::ImageGenerationCall
@@ -310,6 +311,38 @@ module OpenAI
310
311
  end
311
312
  end
312
313
 
314
+ type additional_tools =
315
+ {
316
+ role: :developer,
317
+ tools: ::Array[OpenAI::Models::Responses::tool],
318
+ type: :additional_tools,
319
+ id: String?
320
+ }
321
+
322
+ class AdditionalTools < OpenAI::Internal::Type::BaseModel
323
+ attr_accessor role: :developer
324
+
325
+ attr_accessor tools: ::Array[OpenAI::Models::Responses::tool]
326
+
327
+ attr_accessor type: :additional_tools
328
+
329
+ attr_accessor id: String?
330
+
331
+ def initialize: (
332
+ tools: ::Array[OpenAI::Models::Responses::tool],
333
+ ?id: String?,
334
+ ?role: :developer,
335
+ ?type: :additional_tools
336
+ ) -> void
337
+
338
+ def to_hash: -> {
339
+ role: :developer,
340
+ tools: ::Array[OpenAI::Models::Responses::tool],
341
+ type: :additional_tools,
342
+ id: String?
343
+ }
344
+ end
345
+
313
346
  type image_generation_call =
314
347
  {
315
348
  id: String,
@@ -12,6 +12,7 @@ module OpenAI
12
12
  | OpenAI::Responses::ResponseFunctionToolCallOutputItem
13
13
  | OpenAI::Responses::ResponseToolSearchCall
14
14
  | OpenAI::Responses::ResponseToolSearchOutputItem
15
+ | OpenAI::Responses::ResponseItem::AdditionalTools
15
16
  | OpenAI::Responses::ResponseReasoningItem
16
17
  | OpenAI::Responses::ResponseCompactionItem
17
18
  | OpenAI::Responses::ResponseItem::ImageGenerationCall
@@ -32,6 +33,63 @@ module OpenAI
32
33
  module ResponseItem
33
34
  extend OpenAI::Internal::Type::Union
34
35
 
36
+ type additional_tools =
37
+ {
38
+ id: String,
39
+ role: OpenAI::Models::Responses::ResponseItem::AdditionalTools::role,
40
+ tools: ::Array[OpenAI::Models::Responses::tool],
41
+ type: :additional_tools
42
+ }
43
+
44
+ class AdditionalTools < OpenAI::Internal::Type::BaseModel
45
+ attr_accessor id: String
46
+
47
+ attr_accessor role: OpenAI::Models::Responses::ResponseItem::AdditionalTools::role
48
+
49
+ attr_accessor tools: ::Array[OpenAI::Models::Responses::tool]
50
+
51
+ attr_accessor type: :additional_tools
52
+
53
+ def initialize: (
54
+ id: String,
55
+ role: OpenAI::Models::Responses::ResponseItem::AdditionalTools::role,
56
+ tools: ::Array[OpenAI::Models::Responses::tool],
57
+ ?type: :additional_tools
58
+ ) -> void
59
+
60
+ def to_hash: -> {
61
+ id: String,
62
+ role: OpenAI::Models::Responses::ResponseItem::AdditionalTools::role,
63
+ tools: ::Array[OpenAI::Models::Responses::tool],
64
+ type: :additional_tools
65
+ }
66
+
67
+ type role =
68
+ :unknown
69
+ | :user
70
+ | :assistant
71
+ | :system
72
+ | :critic
73
+ | :discriminator
74
+ | :developer
75
+ | :tool
76
+
77
+ module Role
78
+ extend OpenAI::Internal::Type::Enum
79
+
80
+ UNKNOWN: :unknown
81
+ USER: :user
82
+ ASSISTANT: :assistant
83
+ SYSTEM: :system
84
+ CRITIC: :critic
85
+ DISCRIMINATOR: :discriminator
86
+ DEVELOPER: :developer
87
+ TOOL: :tool
88
+
89
+ def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseItem::AdditionalTools::role]
90
+ end
91
+ end
92
+
35
93
  type image_generation_call =
36
94
  {
37
95
  id: String,
@@ -12,6 +12,7 @@ module OpenAI
12
12
  | OpenAI::Responses::ResponseReasoningItem
13
13
  | OpenAI::Responses::ResponseToolSearchCall
14
14
  | OpenAI::Responses::ResponseToolSearchOutputItem
15
+ | OpenAI::Responses::ResponseOutputItem::AdditionalTools
15
16
  | OpenAI::Responses::ResponseCompactionItem
16
17
  | OpenAI::Responses::ResponseOutputItem::ImageGenerationCall
17
18
  | OpenAI::Responses::ResponseCodeInterpreterToolCall
@@ -31,6 +32,63 @@ module OpenAI
31
32
  module ResponseOutputItem
32
33
  extend OpenAI::Internal::Type::Union
33
34
 
35
+ type additional_tools =
36
+ {
37
+ id: String,
38
+ role: OpenAI::Models::Responses::ResponseOutputItem::AdditionalTools::role,
39
+ tools: ::Array[OpenAI::Models::Responses::tool],
40
+ type: :additional_tools
41
+ }
42
+
43
+ class AdditionalTools < OpenAI::Internal::Type::BaseModel
44
+ attr_accessor id: String
45
+
46
+ attr_accessor role: OpenAI::Models::Responses::ResponseOutputItem::AdditionalTools::role
47
+
48
+ attr_accessor tools: ::Array[OpenAI::Models::Responses::tool]
49
+
50
+ attr_accessor type: :additional_tools
51
+
52
+ def initialize: (
53
+ id: String,
54
+ role: OpenAI::Models::Responses::ResponseOutputItem::AdditionalTools::role,
55
+ tools: ::Array[OpenAI::Models::Responses::tool],
56
+ ?type: :additional_tools
57
+ ) -> void
58
+
59
+ def to_hash: -> {
60
+ id: String,
61
+ role: OpenAI::Models::Responses::ResponseOutputItem::AdditionalTools::role,
62
+ tools: ::Array[OpenAI::Models::Responses::tool],
63
+ type: :additional_tools
64
+ }
65
+
66
+ type role =
67
+ :unknown
68
+ | :user
69
+ | :assistant
70
+ | :system
71
+ | :critic
72
+ | :discriminator
73
+ | :developer
74
+ | :tool
75
+
76
+ module Role
77
+ extend OpenAI::Internal::Type::Enum
78
+
79
+ UNKNOWN: :unknown
80
+ USER: :user
81
+ ASSISTANT: :assistant
82
+ SYSTEM: :system
83
+ CRITIC: :critic
84
+ DISCRIMINATOR: :discriminator
85
+ DEVELOPER: :developer
86
+ TOOL: :tool
87
+
88
+ def self?.values: -> ::Array[OpenAI::Models::Responses::ResponseOutputItem::AdditionalTools::role]
89
+ end
90
+ end
91
+
34
92
  type image_generation_call =
35
93
  {
36
94
  id: String,
@@ -8,6 +8,7 @@ module OpenAI
8
8
  ?instructions: String?,
9
9
  ?model: String?,
10
10
  ?parallel_tool_calls: bool?,
11
+ ?personality: OpenAI::Models::Responses::InputTokenCountParams::personality,
11
12
  ?previous_response_id: String?,
12
13
  ?reasoning: OpenAI::Reasoning?,
13
14
  ?text: OpenAI::Responses::InputTokenCountParams::Text?,
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: openai
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.64.0
4
+ version: 0.65.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - OpenAI
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-05-21 00:00:00.000000000 Z
11
+ date: 2026-06-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: base64