openai 4.53.2 → 4.54.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 (108) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/README.md +2 -2
  3. package/index.d.mts +4 -0
  4. package/index.d.ts +4 -0
  5. package/index.d.ts.map +1 -1
  6. package/index.js +1 -0
  7. package/index.js.map +1 -1
  8. package/index.mjs +1 -0
  9. package/index.mjs.map +1 -1
  10. package/lib/AbstractChatCompletionRunner.d.ts +6 -61
  11. package/lib/AbstractChatCompletionRunner.d.ts.map +1 -1
  12. package/lib/AbstractChatCompletionRunner.js +5 -185
  13. package/lib/AbstractChatCompletionRunner.js.map +1 -1
  14. package/lib/AbstractChatCompletionRunner.mjs +6 -186
  15. package/lib/AbstractChatCompletionRunner.mjs.map +1 -1
  16. package/lib/AssistantStream.d.ts +8 -4
  17. package/lib/AssistantStream.d.ts.map +1 -1
  18. package/lib/AssistantStream.js +14 -2
  19. package/lib/AssistantStream.js.map +1 -1
  20. package/lib/AssistantStream.mjs +14 -2
  21. package/lib/AssistantStream.mjs.map +1 -1
  22. package/lib/ChatCompletionRunner.d.ts +1 -1
  23. package/lib/ChatCompletionRunner.d.ts.map +1 -1
  24. package/lib/ChatCompletionRunner.js.map +1 -1
  25. package/lib/ChatCompletionRunner.mjs.map +1 -1
  26. package/lib/ChatCompletionStream.d.ts +1 -1
  27. package/lib/ChatCompletionStream.d.ts.map +1 -1
  28. package/lib/ChatCompletionStream.js.map +1 -1
  29. package/lib/ChatCompletionStream.mjs.map +1 -1
  30. package/lib/EventStream.d.ts +63 -0
  31. package/lib/EventStream.d.ts.map +1 -0
  32. package/lib/EventStream.js +200 -0
  33. package/lib/EventStream.js.map +1 -0
  34. package/lib/EventStream.mjs +196 -0
  35. package/lib/EventStream.mjs.map +1 -0
  36. package/package.json +1 -1
  37. package/resources/audio/audio.d.ts +4 -0
  38. package/resources/audio/audio.d.ts.map +1 -1
  39. package/resources/audio/audio.js.map +1 -1
  40. package/resources/audio/audio.mjs.map +1 -1
  41. package/resources/audio/index.d.ts +2 -2
  42. package/resources/audio/index.d.ts.map +1 -1
  43. package/resources/audio/index.js.map +1 -1
  44. package/resources/audio/index.mjs.map +1 -1
  45. package/resources/audio/speech.d.ts +3 -1
  46. package/resources/audio/speech.d.ts.map +1 -1
  47. package/resources/audio/speech.js.map +1 -1
  48. package/resources/audio/speech.mjs.map +1 -1
  49. package/resources/audio/transcriptions.d.ts +2 -1
  50. package/resources/audio/transcriptions.d.ts.map +1 -1
  51. package/resources/audio/transcriptions.js.map +1 -1
  52. package/resources/audio/transcriptions.mjs.map +1 -1
  53. package/resources/audio/translations.d.ts +2 -1
  54. package/resources/audio/translations.d.ts.map +1 -1
  55. package/resources/audio/translations.js.map +1 -1
  56. package/resources/audio/translations.mjs.map +1 -1
  57. package/resources/beta/assistants.d.ts +2 -1
  58. package/resources/beta/assistants.d.ts.map +1 -1
  59. package/resources/beta/assistants.js.map +1 -1
  60. package/resources/beta/assistants.mjs.map +1 -1
  61. package/resources/beta/threads/runs/runs.d.ts +2 -1
  62. package/resources/beta/threads/runs/runs.d.ts.map +1 -1
  63. package/resources/beta/threads/runs/runs.js.map +1 -1
  64. package/resources/beta/threads/runs/runs.mjs.map +1 -1
  65. package/resources/beta/threads/threads.d.ts +2 -1
  66. package/resources/beta/threads/threads.d.ts.map +1 -1
  67. package/resources/beta/threads/threads.js.map +1 -1
  68. package/resources/beta/threads/threads.mjs.map +1 -1
  69. package/resources/images.d.ts +5 -3
  70. package/resources/images.d.ts.map +1 -1
  71. package/resources/images.js.map +1 -1
  72. package/resources/images.mjs.map +1 -1
  73. package/resources/index.d.ts +3 -3
  74. package/resources/index.d.ts.map +1 -1
  75. package/resources/index.js.map +1 -1
  76. package/resources/index.mjs +1 -1
  77. package/resources/index.mjs.map +1 -1
  78. package/resources/moderations.d.ts +3 -1
  79. package/resources/moderations.d.ts.map +1 -1
  80. package/resources/moderations.js.map +1 -1
  81. package/resources/moderations.mjs.map +1 -1
  82. package/src/index.ts +4 -0
  83. package/src/lib/AbstractChatCompletionRunner.ts +16 -239
  84. package/src/lib/AssistantStream.ts +43 -15
  85. package/src/lib/ChatCompletionRunner.ts +1 -1
  86. package/src/lib/ChatCompletionStream.ts +2 -2
  87. package/src/lib/{AbstractAssistantStreamRunner.ts → EventStream.ts} +37 -138
  88. package/src/resources/audio/audio.ts +5 -0
  89. package/src/resources/audio/index.ts +2 -2
  90. package/src/resources/audio/speech.ts +4 -1
  91. package/src/resources/audio/transcriptions.ts +2 -1
  92. package/src/resources/audio/translations.ts +2 -1
  93. package/src/resources/beta/assistants.ts +2 -24
  94. package/src/resources/beta/threads/runs/runs.ts +2 -25
  95. package/src/resources/beta/threads/threads.ts +2 -25
  96. package/src/resources/images.ts +6 -3
  97. package/src/resources/index.ts +9 -2
  98. package/src/resources/moderations.ts +4 -1
  99. package/src/version.ts +1 -1
  100. package/version.d.ts +1 -1
  101. package/version.js +1 -1
  102. package/version.mjs +1 -1
  103. package/lib/AbstractAssistantStreamRunner.d.ts +0 -74
  104. package/lib/AbstractAssistantStreamRunner.d.ts.map +0 -1
  105. package/lib/AbstractAssistantStreamRunner.js +0 -246
  106. package/lib/AbstractAssistantStreamRunner.js.map +0 -1
  107. package/lib/AbstractAssistantStreamRunner.mjs +0 -242
  108. package/lib/AbstractAssistantStreamRunner.mjs.map +0 -1
@@ -1,12 +1,6 @@
1
- import * as Core from "../core";
2
1
  import { APIUserAbortError, OpenAIError } from "../error";
3
- import { Run, RunSubmitToolOutputsParamsBase } from "../resources/beta/threads/runs/runs";
4
- import { RunCreateParamsBase, Runs } from "../resources/beta/threads/runs/runs";
5
- import { ThreadCreateAndRunParamsBase, Threads } from "../resources/beta/threads/threads";
6
2
 
7
- export abstract class AbstractAssistantStreamRunner<
8
- Events extends CustomEvents<any> = AbstractAssistantRunnerEvents,
9
- > {
3
+ export class EventStream<EventTypes extends BaseEvents> {
10
4
  controller: AbortController = new AbortController();
11
5
 
12
6
  #connectedPromise: Promise<void>;
@@ -17,7 +11,9 @@ export abstract class AbstractAssistantStreamRunner<
17
11
  #resolveEndPromise: () => void = () => {};
18
12
  #rejectEndPromise: (error: OpenAIError) => void = () => {};
19
13
 
20
- #listeners: { [Event in keyof Events]?: ListenersForEvent<Events, Event> } = {};
14
+ #listeners: {
15
+ [Event in keyof EventTypes]?: EventListeners<EventTypes, Event>;
16
+ } = {};
21
17
 
22
18
  #ended = false;
23
19
  #errored = false;
@@ -43,22 +39,18 @@ export abstract class AbstractAssistantStreamRunner<
43
39
  this.#endPromise.catch(() => {});
44
40
  }
45
41
 
46
- protected _run(executor: () => Promise<any>) {
42
+ protected _run(this: EventStream<EventTypes>, executor: () => Promise<any>) {
47
43
  // Unfortunately if we call `executor()` immediately we get runtime errors about
48
44
  // references to `this` before the `super()` constructor call returns.
49
45
  setTimeout(() => {
50
46
  executor().then(() => {
51
- // this._emitFinal();
47
+ this._emitFinal();
52
48
  this._emit('end');
53
- }, this.#handleError);
49
+ }, this.#handleError.bind(this));
54
50
  }, 0);
55
51
  }
56
52
 
57
- protected _addRun(run: Run): Run {
58
- return run;
59
- }
60
-
61
- protected _connected() {
53
+ protected _connected(this: EventStream<EventTypes>) {
62
54
  if (this.ended) return;
63
55
  this.#resolveConnectedPromise();
64
56
  this._emit('connect');
@@ -87,8 +79,8 @@ export abstract class AbstractAssistantStreamRunner<
87
79
  * called, multiple times.
88
80
  * @returns this ChatCompletionStream, so that calls can be chained
89
81
  */
90
- on<Event extends keyof Events>(event: Event, listener: ListenerForEvent<Events, Event>): this {
91
- const listeners: ListenersForEvent<Events, Event> =
82
+ on<Event extends keyof EventTypes>(event: Event, listener: EventListener<EventTypes, Event>): this {
83
+ const listeners: EventListeners<EventTypes, Event> =
92
84
  this.#listeners[event] || (this.#listeners[event] = []);
93
85
  listeners.push({ listener });
94
86
  return this;
@@ -101,7 +93,7 @@ export abstract class AbstractAssistantStreamRunner<
101
93
  * off() must be called multiple times to remove each instance.
102
94
  * @returns this ChatCompletionStream, so that calls can be chained
103
95
  */
104
- off<Event extends keyof Events>(event: Event, listener: ListenerForEvent<Events, Event>): this {
96
+ off<Event extends keyof EventTypes>(event: Event, listener: EventListener<EventTypes, Event>): this {
105
97
  const listeners = this.#listeners[event];
106
98
  if (!listeners) return this;
107
99
  const index = listeners.findIndex((l) => l.listener === listener);
@@ -114,8 +106,8 @@ export abstract class AbstractAssistantStreamRunner<
114
106
  * this listener is removed and then invoked.
115
107
  * @returns this ChatCompletionStream, so that calls can be chained
116
108
  */
117
- once<Event extends keyof Events>(event: Event, listener: ListenerForEvent<Events, Event>): this {
118
- const listeners: ListenersForEvent<Events, Event> =
109
+ once<Event extends keyof EventTypes>(event: Event, listener: EventListener<EventTypes, Event>): this {
110
+ const listeners: EventListeners<EventTypes, Event> =
119
111
  this.#listeners[event] || (this.#listeners[event] = []);
120
112
  listeners.push({ listener, once: true });
121
113
  return this;
@@ -132,12 +124,12 @@ export abstract class AbstractAssistantStreamRunner<
132
124
  *
133
125
  * const message = await stream.emitted('message') // rejects if the stream errors
134
126
  */
135
- emitted<Event extends keyof Events>(
127
+ emitted<Event extends keyof EventTypes>(
136
128
  event: Event,
137
129
  ): Promise<
138
- EventParameters<Events, Event> extends [infer Param] ? Param
139
- : EventParameters<Events, Event> extends [] ? void
140
- : EventParameters<Events, Event>
130
+ EventParameters<EventTypes, Event> extends [infer Param] ? Param
131
+ : EventParameters<EventTypes, Event> extends [] ? void
132
+ : EventParameters<EventTypes, Event>
141
133
  > {
142
134
  return new Promise((resolve, reject) => {
143
135
  this.#catchingPromiseCreated = true;
@@ -151,7 +143,7 @@ export abstract class AbstractAssistantStreamRunner<
151
143
  await this.#endPromise;
152
144
  }
153
145
 
154
- #handleError = (error: unknown) => {
146
+ #handleError(this: EventStream<EventTypes>, error: unknown) {
155
147
  this.#errored = true;
156
148
  if (error instanceof Error && error.name === 'AbortError') {
157
149
  error = new APIUserAbortError();
@@ -170,9 +162,15 @@ export abstract class AbstractAssistantStreamRunner<
170
162
  return this._emit('error', openAIError);
171
163
  }
172
164
  return this._emit('error', new OpenAIError(String(error)));
173
- };
165
+ }
174
166
 
175
- protected _emit<Event extends keyof Events>(event: Event, ...args: EventParameters<Events, Event>) {
167
+ _emit<Event extends keyof BaseEvents>(event: Event, ...args: EventParameters<BaseEvents, Event>): void;
168
+ _emit<Event extends keyof EventTypes>(event: Event, ...args: EventParameters<EventTypes, Event>): void;
169
+ _emit<Event extends keyof EventTypes>(
170
+ this: EventStream<EventTypes>,
171
+ event: Event,
172
+ ...args: EventParameters<EventTypes, Event>
173
+ ) {
176
174
  // make sure we don't emit any events after end
177
175
  if (this.#ended) {
178
176
  return;
@@ -183,10 +181,10 @@ export abstract class AbstractAssistantStreamRunner<
183
181
  this.#resolveEndPromise();
184
182
  }
185
183
 
186
- const listeners: ListenersForEvent<Events, Event> | undefined = this.#listeners[event];
184
+ const listeners: EventListeners<EventTypes, Event> | undefined = this.#listeners[event];
187
185
  if (listeners) {
188
186
  this.#listeners[event] = listeners.filter((l) => !l.once) as any;
189
- listeners.forEach(({ listener }: any) => listener(...args));
187
+ listeners.forEach(({ listener }: any) => listener(...(args as any)));
190
188
  }
191
189
 
192
190
  if (event === 'abort') {
@@ -219,121 +217,22 @@ export abstract class AbstractAssistantStreamRunner<
219
217
  }
220
218
  }
221
219
 
222
- protected async _threadAssistantStream(
223
- body: ThreadCreateAndRunParamsBase,
224
- thread: Threads,
225
- options?: Core.RequestOptions,
226
- ): Promise<Run> {
227
- return await this._createThreadAssistantStream(thread, body, options);
228
- }
229
-
230
- protected async _runAssistantStream(
231
- threadId: string,
232
- runs: Runs,
233
- params: RunCreateParamsBase,
234
- options?: Core.RequestOptions,
235
- ): Promise<Run> {
236
- return await this._createAssistantStream(runs, threadId, params, options);
237
- }
238
-
239
- protected async _runToolAssistantStream(
240
- threadId: string,
241
- runId: string,
242
- runs: Runs,
243
- params: RunSubmitToolOutputsParamsBase,
244
- options?: Core.RequestOptions,
245
- ): Promise<Run> {
246
- return await this._createToolAssistantStream(runs, threadId, runId, params, options);
247
- }
248
-
249
- protected async _createThreadAssistantStream(
250
- thread: Threads,
251
- body: ThreadCreateAndRunParamsBase,
252
- options?: Core.RequestOptions,
253
- ): Promise<Run> {
254
- const signal = options?.signal;
255
- if (signal) {
256
- if (signal.aborted) this.controller.abort();
257
- signal.addEventListener('abort', () => this.controller.abort());
258
- }
259
- // this.#validateParams(params);
260
-
261
- const runResult = await thread.createAndRun(
262
- { ...body, stream: false },
263
- { ...options, signal: this.controller.signal },
264
- );
265
- this._connected();
266
- return this._addRun(runResult as Run);
267
- }
268
-
269
- protected async _createToolAssistantStream(
270
- run: Runs,
271
- threadId: string,
272
- runId: string,
273
- params: RunSubmitToolOutputsParamsBase,
274
- options?: Core.RequestOptions,
275
- ): Promise<Run> {
276
- const signal = options?.signal;
277
- if (signal) {
278
- if (signal.aborted) this.controller.abort();
279
- signal.addEventListener('abort', () => this.controller.abort());
280
- }
281
-
282
- const runResult = await run.submitToolOutputs(
283
- threadId,
284
- runId,
285
- { ...params, stream: false },
286
- { ...options, signal: this.controller.signal },
287
- );
288
- this._connected();
289
- return this._addRun(runResult as Run);
290
- }
291
-
292
- protected async _createAssistantStream(
293
- run: Runs,
294
- threadId: string,
295
- params: RunCreateParamsBase,
296
- options?: Core.RequestOptions,
297
- ): Promise<Run> {
298
- const signal = options?.signal;
299
- if (signal) {
300
- if (signal.aborted) this.controller.abort();
301
- signal.addEventListener('abort', () => this.controller.abort());
302
- }
303
- // this.#validateParams(params);
304
-
305
- const runResult = await run.create(
306
- threadId,
307
- { ...params, stream: false },
308
- { ...options, signal: this.controller.signal },
309
- );
310
- this._connected();
311
- return this._addRun(runResult as Run);
312
- }
220
+ protected _emitFinal(): void {}
313
221
  }
314
222
 
315
- type CustomEvents<Event extends string> = {
316
- [k in Event]: k extends keyof AbstractAssistantRunnerEvents ? AbstractAssistantRunnerEvents[k]
317
- : (...args: any[]) => void;
318
- };
223
+ type EventListener<Events, EventType extends keyof Events> = Events[EventType];
319
224
 
320
- type ListenerForEvent<Events extends CustomEvents<any>, Event extends keyof Events> = Event extends (
321
- keyof AbstractAssistantRunnerEvents
322
- ) ?
323
- AbstractAssistantRunnerEvents[Event]
324
- : Events[Event];
325
-
326
- type ListenersForEvent<Events extends CustomEvents<any>, Event extends keyof Events> = Array<{
327
- listener: ListenerForEvent<Events, Event>;
225
+ type EventListeners<Events, EventType extends keyof Events> = Array<{
226
+ listener: EventListener<Events, EventType>;
328
227
  once?: boolean;
329
228
  }>;
330
- type EventParameters<Events extends CustomEvents<any>, Event extends keyof Events> = Parameters<
331
- ListenerForEvent<Events, Event>
332
- >;
333
229
 
334
- export interface AbstractAssistantRunnerEvents {
230
+ export type EventParameters<Events, EventType extends keyof Events> = {
231
+ [Event in EventType]: EventListener<Events, EventType> extends (...args: infer P) => any ? P : never;
232
+ }[EventType];
233
+
234
+ export interface BaseEvents {
335
235
  connect: () => void;
336
- run: (run: Run) => void;
337
236
  error: (error: OpenAIError) => void;
338
237
  abort: (error: APIUserAbortError) => void;
339
238
  end: () => void;
@@ -1,6 +1,7 @@
1
1
  // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
3
  import { APIResource } from '../../resource';
4
+ import * as AudioAPI from './audio';
4
5
  import * as SpeechAPI from './speech';
5
6
  import * as TranscriptionsAPI from './transcriptions';
6
7
  import * as TranslationsAPI from './translations';
@@ -11,7 +12,10 @@ export class Audio extends APIResource {
11
12
  speech: SpeechAPI.Speech = new SpeechAPI.Speech(this._client);
12
13
  }
13
14
 
15
+ export type AudioModel = 'whisper-1';
16
+
14
17
  export namespace Audio {
18
+ export import AudioModel = AudioAPI.AudioModel;
15
19
  export import Transcriptions = TranscriptionsAPI.Transcriptions;
16
20
  export import Transcription = TranscriptionsAPI.Transcription;
17
21
  export import TranscriptionCreateParams = TranscriptionsAPI.TranscriptionCreateParams;
@@ -19,5 +23,6 @@ export namespace Audio {
19
23
  export import Translation = TranslationsAPI.Translation;
20
24
  export import TranslationCreateParams = TranslationsAPI.TranslationCreateParams;
21
25
  export import Speech = SpeechAPI.Speech;
26
+ export import SpeechModel = SpeechAPI.SpeechModel;
22
27
  export import SpeechCreateParams = SpeechAPI.SpeechCreateParams;
23
28
  }
@@ -1,6 +1,6 @@
1
1
  // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
- export { Audio } from './audio';
4
- export { SpeechCreateParams, Speech } from './speech';
3
+ export { AudioModel, Audio } from './audio';
4
+ export { SpeechModel, SpeechCreateParams, Speech } from './speech';
5
5
  export { Transcription, TranscriptionCreateParams, Transcriptions } from './transcriptions';
6
6
  export { Translation, TranslationCreateParams, Translations } from './translations';
@@ -14,6 +14,8 @@ export class Speech extends APIResource {
14
14
  }
15
15
  }
16
16
 
17
+ export type SpeechModel = 'tts-1' | 'tts-1-hd';
18
+
17
19
  export interface SpeechCreateParams {
18
20
  /**
19
21
  * The text to generate audio for. The maximum length is 4096 characters.
@@ -24,7 +26,7 @@ export interface SpeechCreateParams {
24
26
  * One of the available [TTS models](https://platform.openai.com/docs/models/tts):
25
27
  * `tts-1` or `tts-1-hd`
26
28
  */
27
- model: (string & {}) | 'tts-1' | 'tts-1-hd';
29
+ model: (string & {}) | SpeechModel;
28
30
 
29
31
  /**
30
32
  * The voice to use when generating the audio. Supported voices are `alloy`,
@@ -48,5 +50,6 @@ export interface SpeechCreateParams {
48
50
  }
49
51
 
50
52
  export namespace Speech {
53
+ export import SpeechModel = SpeechAPI.SpeechModel;
51
54
  export import SpeechCreateParams = SpeechAPI.SpeechCreateParams;
52
55
  }
@@ -3,6 +3,7 @@
3
3
  import { APIResource } from '../../resource';
4
4
  import * as Core from '../../core';
5
5
  import * as TranscriptionsAPI from './transcriptions';
6
+ import * as AudioAPI from './audio';
6
7
 
7
8
  export class Transcriptions extends APIResource {
8
9
  /**
@@ -35,7 +36,7 @@ export interface TranscriptionCreateParams {
35
36
  * ID of the model to use. Only `whisper-1` (which is powered by our open source
36
37
  * Whisper V2 model) is currently available.
37
38
  */
38
- model: (string & {}) | 'whisper-1';
39
+ model: (string & {}) | AudioAPI.AudioModel;
39
40
 
40
41
  /**
41
42
  * The language of the input audio. Supplying the input language in
@@ -3,6 +3,7 @@
3
3
  import { APIResource } from '../../resource';
4
4
  import * as Core from '../../core';
5
5
  import * as TranslationsAPI from './translations';
6
+ import * as AudioAPI from './audio';
6
7
 
7
8
  export class Translations extends APIResource {
8
9
  /**
@@ -28,7 +29,7 @@ export interface TranslationCreateParams {
28
29
  * ID of the model to use. Only `whisper-1` (which is powered by our open source
29
30
  * Whisper V2 model) is currently available.
30
31
  */
31
- model: (string & {}) | 'whisper-1';
32
+ model: (string & {}) | AudioAPI.AudioModel;
32
33
 
33
34
  /**
34
35
  * An optional text to guide the model's style or continue a previous audio
@@ -5,6 +5,7 @@ import { isRequestOptions } from '../../core';
5
5
  import * as Core from '../../core';
6
6
  import * as AssistantsAPI from './assistants';
7
7
  import * as Shared from '../shared';
8
+ import * as ChatAPI from '../chat/chat';
8
9
  import * as MessagesAPI from './threads/messages';
9
10
  import * as ThreadsAPI from './threads/threads';
10
11
  import * as RunsAPI from './threads/runs/runs';
@@ -1053,30 +1054,7 @@ export interface AssistantCreateParams {
1053
1054
  * [Model overview](https://platform.openai.com/docs/models/overview) for
1054
1055
  * descriptions of them.
1055
1056
  */
1056
- model:
1057
- | (string & {})
1058
- | 'gpt-4o'
1059
- | 'gpt-4o-2024-05-13'
1060
- | 'gpt-4o-mini'
1061
- | 'gpt-4o-mini-2024-07-18'
1062
- | 'gpt-4-turbo'
1063
- | 'gpt-4-turbo-2024-04-09'
1064
- | 'gpt-4-0125-preview'
1065
- | 'gpt-4-turbo-preview'
1066
- | 'gpt-4-1106-preview'
1067
- | 'gpt-4-vision-preview'
1068
- | 'gpt-4'
1069
- | 'gpt-4-0314'
1070
- | 'gpt-4-0613'
1071
- | 'gpt-4-32k'
1072
- | 'gpt-4-32k-0314'
1073
- | 'gpt-4-32k-0613'
1074
- | 'gpt-3.5-turbo'
1075
- | 'gpt-3.5-turbo-16k'
1076
- | 'gpt-3.5-turbo-0613'
1077
- | 'gpt-3.5-turbo-1106'
1078
- | 'gpt-3.5-turbo-0125'
1079
- | 'gpt-3.5-turbo-16k-0613';
1057
+ model: (string & {}) | ChatAPI.ChatModel;
1080
1058
 
1081
1059
  /**
1082
1060
  * The description of the assistant. The maximum length is 512 characters.
@@ -9,6 +9,7 @@ import { sleep } from '../../../../core';
9
9
  import { RunSubmitToolOutputsParamsStream } from '../../../../lib/AssistantStream';
10
10
  import * as RunsAPI from './runs';
11
11
  import * as AssistantsAPI from '../../assistants';
12
+ import * as ChatAPI from '../../../chat/chat';
12
13
  import * as MessagesAPI from '../messages';
13
14
  import * as ThreadsAPI from '../threads';
14
15
  import * as StepsAPI from './steps';
@@ -668,31 +669,7 @@ export interface RunCreateParamsBase {
668
669
  * model associated with the assistant. If not, the model associated with the
669
670
  * assistant will be used.
670
671
  */
671
- model?:
672
- | (string & {})
673
- | 'gpt-4o'
674
- | 'gpt-4o-2024-05-13'
675
- | 'gpt-4o-mini'
676
- | 'gpt-4o-mini-2024-07-18'
677
- | 'gpt-4-turbo'
678
- | 'gpt-4-turbo-2024-04-09'
679
- | 'gpt-4-0125-preview'
680
- | 'gpt-4-turbo-preview'
681
- | 'gpt-4-1106-preview'
682
- | 'gpt-4-vision-preview'
683
- | 'gpt-4'
684
- | 'gpt-4-0314'
685
- | 'gpt-4-0613'
686
- | 'gpt-4-32k'
687
- | 'gpt-4-32k-0314'
688
- | 'gpt-4-32k-0613'
689
- | 'gpt-3.5-turbo'
690
- | 'gpt-3.5-turbo-16k'
691
- | 'gpt-3.5-turbo-0613'
692
- | 'gpt-3.5-turbo-1106'
693
- | 'gpt-3.5-turbo-0125'
694
- | 'gpt-3.5-turbo-16k-0613'
695
- | null;
672
+ model?: (string & {}) | ChatAPI.ChatModel | null;
696
673
 
697
674
  /**
698
675
  * Whether to enable
@@ -7,6 +7,7 @@ import { APIPromise } from '../../../core';
7
7
  import * as Core from '../../../core';
8
8
  import * as ThreadsAPI from './threads';
9
9
  import * as AssistantsAPI from '../assistants';
10
+ import * as ChatAPI from '../../chat/chat';
10
11
  import * as MessagesAPI from './messages';
11
12
  import * as RunsAPI from './runs/runs';
12
13
  import { Stream } from '../../../streaming';
@@ -545,31 +546,7 @@ export interface ThreadCreateAndRunParamsBase {
545
546
  * model associated with the assistant. If not, the model associated with the
546
547
  * assistant will be used.
547
548
  */
548
- model?:
549
- | (string & {})
550
- | 'gpt-4o'
551
- | 'gpt-4o-2024-05-13'
552
- | 'gpt-4o-mini'
553
- | 'gpt-4o-mini-2024-07-18'
554
- | 'gpt-4-turbo'
555
- | 'gpt-4-turbo-2024-04-09'
556
- | 'gpt-4-0125-preview'
557
- | 'gpt-4-turbo-preview'
558
- | 'gpt-4-1106-preview'
559
- | 'gpt-4-vision-preview'
560
- | 'gpt-4'
561
- | 'gpt-4-0314'
562
- | 'gpt-4-0613'
563
- | 'gpt-4-32k'
564
- | 'gpt-4-32k-0314'
565
- | 'gpt-4-32k-0613'
566
- | 'gpt-3.5-turbo'
567
- | 'gpt-3.5-turbo-16k'
568
- | 'gpt-3.5-turbo-0613'
569
- | 'gpt-3.5-turbo-1106'
570
- | 'gpt-3.5-turbo-0125'
571
- | 'gpt-3.5-turbo-16k-0613'
572
- | null;
549
+ model?: (string & {}) | ChatAPI.ChatModel | null;
573
550
 
574
551
  /**
575
552
  * Whether to enable
@@ -52,6 +52,8 @@ export interface Image {
52
52
  url?: string;
53
53
  }
54
54
 
55
+ export type ImageModel = 'dall-e-2' | 'dall-e-3';
56
+
55
57
  export interface ImagesResponse {
56
58
  created: number;
57
59
 
@@ -69,7 +71,7 @@ export interface ImageCreateVariationParams {
69
71
  * The model to use for image generation. Only `dall-e-2` is supported at this
70
72
  * time.
71
73
  */
72
- model?: (string & {}) | 'dall-e-2' | null;
74
+ model?: (string & {}) | ImageModel | null;
73
75
 
74
76
  /**
75
77
  * The number of images to generate. Must be between 1 and 10. For `dall-e-3`, only
@@ -122,7 +124,7 @@ export interface ImageEditParams {
122
124
  * The model to use for image generation. Only `dall-e-2` is supported at this
123
125
  * time.
124
126
  */
125
- model?: (string & {}) | 'dall-e-2' | null;
127
+ model?: (string & {}) | ImageModel | null;
126
128
 
127
129
  /**
128
130
  * The number of images to generate. Must be between 1 and 10.
@@ -160,7 +162,7 @@ export interface ImageGenerateParams {
160
162
  /**
161
163
  * The model to use for image generation.
162
164
  */
163
- model?: (string & {}) | 'dall-e-2' | 'dall-e-3' | null;
165
+ model?: (string & {}) | ImageModel | null;
164
166
 
165
167
  /**
166
168
  * The number of images to generate. Must be between 1 and 10. For `dall-e-3`, only
@@ -207,6 +209,7 @@ export interface ImageGenerateParams {
207
209
 
208
210
  export namespace Images {
209
211
  export import Image = ImagesAPI.Image;
212
+ export import ImageModel = ImagesAPI.ImageModel;
210
213
  export import ImagesResponse = ImagesAPI.ImagesResponse;
211
214
  export import ImageCreateVariationParams = ImagesAPI.ImageCreateVariationParams;
212
215
  export import ImageEditParams = ImagesAPI.ImageEditParams;
@@ -2,7 +2,7 @@
2
2
 
3
3
  export * from './chat/index';
4
4
  export * from './shared';
5
- export { Audio } from './audio/audio';
5
+ export { AudioModel, Audio } from './audio/audio';
6
6
  export {
7
7
  Batch,
8
8
  BatchError,
@@ -35,6 +35,7 @@ export {
35
35
  export { FineTuning } from './fine-tuning/fine-tuning';
36
36
  export {
37
37
  Image,
38
+ ImageModel,
38
39
  ImagesResponse,
39
40
  ImageCreateVariationParams,
40
41
  ImageEditParams,
@@ -42,5 +43,11 @@ export {
42
43
  Images,
43
44
  } from './images';
44
45
  export { Model, ModelDeleted, ModelsPage, Models } from './models';
45
- export { Moderation, ModerationCreateResponse, ModerationCreateParams, Moderations } from './moderations';
46
+ export {
47
+ Moderation,
48
+ ModerationModel,
49
+ ModerationCreateResponse,
50
+ ModerationCreateParams,
51
+ Moderations,
52
+ } from './moderations';
46
53
  export { Upload, UploadCreateParams, UploadCompleteParams, Uploads } from './uploads/uploads';
@@ -168,6 +168,8 @@ export namespace Moderation {
168
168
  }
169
169
  }
170
170
 
171
+ export type ModerationModel = 'text-moderation-latest' | 'text-moderation-stable';
172
+
171
173
  /**
172
174
  * Represents if a given text input is potentially harmful.
173
175
  */
@@ -204,11 +206,12 @@ export interface ModerationCreateParams {
204
206
  * model. Accuracy of `text-moderation-stable` may be slightly lower than for
205
207
  * `text-moderation-latest`.
206
208
  */
207
- model?: (string & {}) | 'text-moderation-latest' | 'text-moderation-stable';
209
+ model?: (string & {}) | ModerationModel;
208
210
  }
209
211
 
210
212
  export namespace Moderations {
211
213
  export import Moderation = ModerationsAPI.Moderation;
214
+ export import ModerationModel = ModerationsAPI.ModerationModel;
212
215
  export import ModerationCreateResponse = ModerationsAPI.ModerationCreateResponse;
213
216
  export import ModerationCreateParams = ModerationsAPI.ModerationCreateParams;
214
217
  }
package/src/version.ts CHANGED
@@ -1 +1 @@
1
- export const VERSION = '4.53.2'; // x-release-please-version
1
+ export const VERSION = '4.54.0'; // x-release-please-version
package/version.d.ts CHANGED
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "4.53.2";
1
+ export declare const VERSION = "4.54.0";
2
2
  //# sourceMappingURL=version.d.ts.map
package/version.js CHANGED
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.VERSION = void 0;
4
- exports.VERSION = '4.53.2'; // x-release-please-version
4
+ exports.VERSION = '4.54.0'; // x-release-please-version
5
5
  //# sourceMappingURL=version.js.map
package/version.mjs CHANGED
@@ -1,2 +1,2 @@
1
- export const VERSION = '4.53.2'; // x-release-please-version
1
+ export const VERSION = '4.54.0'; // x-release-please-version
2
2
  //# sourceMappingURL=version.mjs.map