openai 4.96.2 → 4.98.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 (235) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/README.md +1 -1
  3. package/index.d.mts +5 -2
  4. package/index.d.ts +5 -2
  5. package/index.d.ts.map +1 -1
  6. package/index.js +3 -0
  7. package/index.js.map +1 -1
  8. package/index.mjs +3 -0
  9. package/index.mjs.map +1 -1
  10. package/package.json +1 -1
  11. package/resources/audio/speech.d.ts +13 -1
  12. package/resources/audio/speech.d.ts.map +1 -1
  13. package/resources/audio/speech.js +12 -0
  14. package/resources/audio/speech.js.map +1 -1
  15. package/resources/audio/speech.mjs +12 -0
  16. package/resources/audio/speech.mjs.map +1 -1
  17. package/resources/audio/transcriptions.d.ts +9 -0
  18. package/resources/audio/transcriptions.d.ts.map +1 -1
  19. package/resources/audio/transcriptions.js.map +1 -1
  20. package/resources/audio/transcriptions.mjs.map +1 -1
  21. package/resources/audio/translations.d.ts +8 -0
  22. package/resources/audio/translations.d.ts.map +1 -1
  23. package/resources/audio/translations.js.map +1 -1
  24. package/resources/audio/translations.mjs.map +1 -1
  25. package/resources/beta/assistants.d.ts +36 -0
  26. package/resources/beta/assistants.d.ts.map +1 -1
  27. package/resources/beta/assistants.js +28 -0
  28. package/resources/beta/assistants.js.map +1 -1
  29. package/resources/beta/assistants.mjs +28 -0
  30. package/resources/beta/assistants.mjs.map +1 -1
  31. package/resources/beta/realtime/sessions.d.ts +6 -0
  32. package/resources/beta/realtime/sessions.d.ts.map +1 -1
  33. package/resources/beta/realtime/sessions.js +6 -0
  34. package/resources/beta/realtime/sessions.js.map +1 -1
  35. package/resources/beta/realtime/sessions.mjs +6 -0
  36. package/resources/beta/realtime/sessions.mjs.map +1 -1
  37. package/resources/beta/realtime/transcription-sessions.d.ts +6 -0
  38. package/resources/beta/realtime/transcription-sessions.d.ts.map +1 -1
  39. package/resources/beta/realtime/transcription-sessions.js +6 -0
  40. package/resources/beta/realtime/transcription-sessions.js.map +1 -1
  41. package/resources/beta/realtime/transcription-sessions.mjs +6 -0
  42. package/resources/beta/realtime/transcription-sessions.mjs.map +1 -1
  43. package/resources/beta/threads/messages.d.ts +43 -0
  44. package/resources/beta/threads/messages.d.ts.map +1 -1
  45. package/resources/beta/threads/messages.js +33 -0
  46. package/resources/beta/threads/messages.js.map +1 -1
  47. package/resources/beta/threads/messages.mjs +33 -0
  48. package/resources/beta/threads/messages.mjs.map +1 -1
  49. package/resources/beta/threads/runs/runs.d.ts +52 -0
  50. package/resources/beta/threads/runs/runs.d.ts.map +1 -1
  51. package/resources/beta/threads/runs/runs.js +24 -0
  52. package/resources/beta/threads/runs/runs.js.map +1 -1
  53. package/resources/beta/threads/runs/runs.mjs +24 -0
  54. package/resources/beta/threads/runs/runs.mjs.map +1 -1
  55. package/resources/beta/threads/runs/steps.d.ts +21 -0
  56. package/resources/beta/threads/runs/steps.d.ts.map +1 -1
  57. package/resources/beta/threads/runs/steps.js.map +1 -1
  58. package/resources/beta/threads/runs/steps.mjs.map +1 -1
  59. package/resources/beta/threads/threads.d.ts +33 -0
  60. package/resources/beta/threads/threads.d.ts.map +1 -1
  61. package/resources/beta/threads/threads.js +21 -0
  62. package/resources/beta/threads/threads.js.map +1 -1
  63. package/resources/beta/threads/threads.mjs +21 -0
  64. package/resources/beta/threads/threads.mjs.map +1 -1
  65. package/resources/chat/completions/completions.d.ts +42 -4
  66. package/resources/chat/completions/completions.d.ts.map +1 -1
  67. package/resources/chat/completions/completions.js +20 -0
  68. package/resources/chat/completions/completions.js.map +1 -1
  69. package/resources/chat/completions/completions.mjs +20 -0
  70. package/resources/chat/completions/completions.mjs.map +1 -1
  71. package/resources/chat/completions/messages.d.ts +10 -0
  72. package/resources/chat/completions/messages.d.ts.map +1 -1
  73. package/resources/chat/completions/messages.js.map +1 -1
  74. package/resources/chat/completions/messages.mjs.map +1 -1
  75. package/resources/completions.d.ts +8 -0
  76. package/resources/completions.d.ts.map +1 -1
  77. package/resources/completions.js.map +1 -1
  78. package/resources/completions.mjs.map +1 -1
  79. package/resources/embeddings.d.ts +9 -0
  80. package/resources/embeddings.d.ts.map +1 -1
  81. package/resources/embeddings.js +9 -0
  82. package/resources/embeddings.js.map +1 -1
  83. package/resources/embeddings.mjs +9 -0
  84. package/resources/embeddings.mjs.map +1 -1
  85. package/resources/evals/evals.d.ts +62 -533
  86. package/resources/evals/evals.d.ts.map +1 -1
  87. package/resources/evals/evals.js.map +1 -1
  88. package/resources/evals/evals.mjs.map +1 -1
  89. package/resources/evals/index.d.ts +1 -1
  90. package/resources/evals/index.d.ts.map +1 -1
  91. package/resources/evals/index.js.map +1 -1
  92. package/resources/evals/index.mjs.map +1 -1
  93. package/resources/fine-tuning/alpha/alpha.d.ts +10 -0
  94. package/resources/fine-tuning/alpha/alpha.d.ts.map +1 -0
  95. package/resources/fine-tuning/alpha/alpha.js +39 -0
  96. package/resources/fine-tuning/alpha/alpha.js.map +1 -0
  97. package/resources/fine-tuning/alpha/alpha.mjs +12 -0
  98. package/resources/fine-tuning/alpha/alpha.mjs.map +1 -0
  99. package/resources/fine-tuning/alpha/graders.d.ts +107 -0
  100. package/resources/fine-tuning/alpha/graders.d.ts.map +1 -0
  101. package/resources/fine-tuning/alpha/graders.js +50 -0
  102. package/resources/fine-tuning/alpha/graders.js.map +1 -0
  103. package/resources/fine-tuning/alpha/graders.mjs +46 -0
  104. package/resources/fine-tuning/alpha/graders.mjs.map +1 -0
  105. package/resources/fine-tuning/alpha/index.d.ts +3 -0
  106. package/resources/fine-tuning/alpha/index.d.ts.map +1 -0
  107. package/resources/fine-tuning/alpha/index.js +9 -0
  108. package/resources/fine-tuning/alpha/index.js.map +1 -0
  109. package/resources/fine-tuning/alpha/index.mjs +4 -0
  110. package/resources/fine-tuning/alpha/index.mjs.map +1 -0
  111. package/resources/fine-tuning/alpha.d.ts +2 -0
  112. package/resources/fine-tuning/alpha.d.ts.map +1 -0
  113. package/resources/fine-tuning/alpha.js +19 -0
  114. package/resources/fine-tuning/alpha.js.map +1 -0
  115. package/resources/fine-tuning/alpha.mjs +3 -0
  116. package/resources/fine-tuning/alpha.mjs.map +1 -0
  117. package/resources/fine-tuning/checkpoints/permissions.d.ts +28 -0
  118. package/resources/fine-tuning/checkpoints/permissions.d.ts.map +1 -1
  119. package/resources/fine-tuning/checkpoints/permissions.js +20 -0
  120. package/resources/fine-tuning/checkpoints/permissions.js.map +1 -1
  121. package/resources/fine-tuning/checkpoints/permissions.mjs +20 -0
  122. package/resources/fine-tuning/checkpoints/permissions.mjs.map +1 -1
  123. package/resources/fine-tuning/fine-tuning.d.ts +8 -0
  124. package/resources/fine-tuning/fine-tuning.d.ts.map +1 -1
  125. package/resources/fine-tuning/fine-tuning.js +8 -0
  126. package/resources/fine-tuning/fine-tuning.js.map +1 -1
  127. package/resources/fine-tuning/fine-tuning.mjs +8 -0
  128. package/resources/fine-tuning/fine-tuning.mjs.map +1 -1
  129. package/resources/fine-tuning/index.d.ts +2 -0
  130. package/resources/fine-tuning/index.d.ts.map +1 -1
  131. package/resources/fine-tuning/index.js +11 -7
  132. package/resources/fine-tuning/index.js.map +1 -1
  133. package/resources/fine-tuning/index.mjs +2 -0
  134. package/resources/fine-tuning/index.mjs.map +1 -1
  135. package/resources/fine-tuning/jobs/checkpoints.d.ts +10 -0
  136. package/resources/fine-tuning/jobs/checkpoints.d.ts.map +1 -1
  137. package/resources/fine-tuning/jobs/checkpoints.js.map +1 -1
  138. package/resources/fine-tuning/jobs/checkpoints.mjs.map +1 -1
  139. package/resources/fine-tuning/jobs/jobs.d.ts +80 -146
  140. package/resources/fine-tuning/jobs/jobs.d.ts.map +1 -1
  141. package/resources/fine-tuning/jobs/jobs.js +48 -0
  142. package/resources/fine-tuning/jobs/jobs.js.map +1 -1
  143. package/resources/fine-tuning/jobs/jobs.mjs +48 -0
  144. package/resources/fine-tuning/jobs/jobs.mjs.map +1 -1
  145. package/resources/fine-tuning/methods.d.ts +120 -0
  146. package/resources/fine-tuning/methods.d.ts.map +1 -0
  147. package/resources/fine-tuning/methods.js +9 -0
  148. package/resources/fine-tuning/methods.js.map +1 -0
  149. package/resources/fine-tuning/methods.mjs +5 -0
  150. package/resources/fine-tuning/methods.mjs.map +1 -0
  151. package/resources/graders/grader-models.d.ts +234 -0
  152. package/resources/graders/grader-models.d.ts.map +1 -0
  153. package/resources/graders/grader-models.js +9 -0
  154. package/resources/graders/grader-models.js.map +1 -0
  155. package/resources/graders/grader-models.mjs +5 -0
  156. package/resources/graders/grader-models.mjs.map +1 -0
  157. package/resources/graders/graders.d.ts +10 -0
  158. package/resources/graders/graders.d.ts.map +1 -0
  159. package/resources/graders/graders.js +39 -0
  160. package/resources/graders/graders.js.map +1 -0
  161. package/resources/graders/graders.mjs +12 -0
  162. package/resources/graders/graders.mjs.map +1 -0
  163. package/resources/graders/index.d.ts +3 -0
  164. package/resources/graders/index.d.ts.map +1 -0
  165. package/resources/graders/index.js +9 -0
  166. package/resources/graders/index.js.map +1 -0
  167. package/resources/graders/index.mjs +4 -0
  168. package/resources/graders/index.mjs.map +1 -0
  169. package/resources/graders.d.ts +2 -0
  170. package/resources/graders.d.ts.map +1 -0
  171. package/resources/graders.js +19 -0
  172. package/resources/graders.js.map +1 -0
  173. package/resources/graders.mjs +3 -0
  174. package/resources/graders.mjs.map +1 -0
  175. package/resources/images.d.ts +40 -5
  176. package/resources/images.d.ts.map +1 -1
  177. package/resources/images.js +22 -0
  178. package/resources/images.js.map +1 -1
  179. package/resources/images.mjs +22 -0
  180. package/resources/images.mjs.map +1 -1
  181. package/resources/index.d.ts +2 -1
  182. package/resources/index.d.ts.map +1 -1
  183. package/resources/index.js +3 -1
  184. package/resources/index.js.map +1 -1
  185. package/resources/index.mjs +1 -0
  186. package/resources/index.mjs.map +1 -1
  187. package/resources/responses/input-items.d.ts +10 -0
  188. package/resources/responses/input-items.d.ts.map +1 -1
  189. package/resources/responses/input-items.js.map +1 -1
  190. package/resources/responses/input-items.mjs.map +1 -1
  191. package/resources/responses/responses.d.ts +70 -29
  192. package/resources/responses/responses.d.ts.map +1 -1
  193. package/resources/responses/responses.js +7 -0
  194. package/resources/responses/responses.js.map +1 -1
  195. package/resources/responses/responses.mjs +7 -0
  196. package/resources/responses/responses.mjs.map +1 -1
  197. package/src/index.ts +5 -6
  198. package/src/resources/audio/speech.ts +13 -1
  199. package/src/resources/audio/transcriptions.ts +9 -0
  200. package/src/resources/audio/translations.ts +8 -0
  201. package/src/resources/beta/assistants.ts +36 -0
  202. package/src/resources/beta/realtime/sessions.ts +6 -0
  203. package/src/resources/beta/realtime/transcription-sessions.ts +6 -0
  204. package/src/resources/beta/threads/messages.ts +43 -0
  205. package/src/resources/beta/threads/runs/runs.ts +52 -0
  206. package/src/resources/beta/threads/runs/steps.ts +21 -0
  207. package/src/resources/beta/threads/threads.ts +33 -0
  208. package/src/resources/chat/completions/completions.ts +42 -4
  209. package/src/resources/chat/completions/messages.ts +10 -0
  210. package/src/resources/completions.ts +8 -0
  211. package/src/resources/embeddings.ts +9 -0
  212. package/src/resources/evals/evals.ts +78 -654
  213. package/src/resources/evals/index.ts +0 -3
  214. package/src/resources/fine-tuning/alpha/alpha.ts +27 -0
  215. package/src/resources/fine-tuning/alpha/graders.ts +168 -0
  216. package/src/resources/fine-tuning/alpha/index.ts +10 -0
  217. package/src/resources/fine-tuning/alpha.ts +3 -0
  218. package/src/resources/fine-tuning/checkpoints/permissions.ts +28 -0
  219. package/src/resources/fine-tuning/fine-tuning.ts +28 -0
  220. package/src/resources/fine-tuning/index.ts +10 -0
  221. package/src/resources/fine-tuning/jobs/checkpoints.ts +10 -0
  222. package/src/resources/fine-tuning/jobs/jobs.ts +86 -162
  223. package/src/resources/fine-tuning/methods.ts +152 -0
  224. package/src/resources/graders/grader-models.ts +296 -0
  225. package/src/resources/graders/graders.ts +31 -0
  226. package/src/resources/graders/index.ts +12 -0
  227. package/src/resources/graders.ts +3 -0
  228. package/src/resources/images.ts +41 -5
  229. package/src/resources/index.ts +1 -3
  230. package/src/resources/responses/input-items.ts +10 -0
  231. package/src/resources/responses/responses.ts +72 -29
  232. package/src/version.ts +1 -1
  233. package/version.d.ts +1 -1
  234. package/version.js +1 -1
  235. package/version.mjs +1 -1
@@ -4,10 +4,7 @@ export {
4
4
  EvalListResponsesPage,
5
5
  Evals,
6
6
  type EvalCustomDataSourceConfig,
7
- type EvalLabelModelGrader,
8
7
  type EvalStoredCompletionsDataSourceConfig,
9
- type EvalStringCheckGrader,
10
- type EvalTextSimilarityGrader,
11
8
  type EvalCreateResponse,
12
9
  type EvalRetrieveResponse,
13
10
  type EvalUpdateResponse,
@@ -0,0 +1,27 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../../../resource';
4
+ import * as GradersAPI from './graders';
5
+ import {
6
+ GraderRunParams,
7
+ GraderRunResponse,
8
+ GraderValidateParams,
9
+ GraderValidateResponse,
10
+ Graders,
11
+ } from './graders';
12
+
13
+ export class Alpha extends APIResource {
14
+ graders: GradersAPI.Graders = new GradersAPI.Graders(this._client);
15
+ }
16
+
17
+ Alpha.Graders = Graders;
18
+
19
+ export declare namespace Alpha {
20
+ export {
21
+ Graders as Graders,
22
+ type GraderRunResponse as GraderRunResponse,
23
+ type GraderValidateResponse as GraderValidateResponse,
24
+ type GraderRunParams as GraderRunParams,
25
+ type GraderValidateParams as GraderValidateParams,
26
+ };
27
+ }
@@ -0,0 +1,168 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../../../resource';
4
+ import * as Core from '../../../core';
5
+ import * as GraderModelsAPI from '../../graders/grader-models';
6
+
7
+ export class Graders extends APIResource {
8
+ /**
9
+ * Run a grader.
10
+ *
11
+ * @example
12
+ * ```ts
13
+ * const response = await client.fineTuning.alpha.graders.run({
14
+ * grader: {
15
+ * input: 'input',
16
+ * name: 'name',
17
+ * operation: 'eq',
18
+ * reference: 'reference',
19
+ * type: 'string_check',
20
+ * },
21
+ * model_sample: 'model_sample',
22
+ * reference_answer: 'string',
23
+ * });
24
+ * ```
25
+ */
26
+ run(body: GraderRunParams, options?: Core.RequestOptions): Core.APIPromise<GraderRunResponse> {
27
+ return this._client.post('/fine_tuning/alpha/graders/run', { body, ...options });
28
+ }
29
+
30
+ /**
31
+ * Validate a grader.
32
+ *
33
+ * @example
34
+ * ```ts
35
+ * const response =
36
+ * await client.fineTuning.alpha.graders.validate({
37
+ * grader: {
38
+ * input: 'input',
39
+ * name: 'name',
40
+ * operation: 'eq',
41
+ * reference: 'reference',
42
+ * type: 'string_check',
43
+ * },
44
+ * });
45
+ * ```
46
+ */
47
+ validate(
48
+ body: GraderValidateParams,
49
+ options?: Core.RequestOptions,
50
+ ): Core.APIPromise<GraderValidateResponse> {
51
+ return this._client.post('/fine_tuning/alpha/graders/validate', { body, ...options });
52
+ }
53
+ }
54
+
55
+ export interface GraderRunResponse {
56
+ metadata: GraderRunResponse.Metadata;
57
+
58
+ model_grader_token_usage_per_model: Record<string, unknown>;
59
+
60
+ reward: number;
61
+
62
+ sub_rewards: Record<string, unknown>;
63
+ }
64
+
65
+ export namespace GraderRunResponse {
66
+ export interface Metadata {
67
+ errors: Metadata.Errors;
68
+
69
+ execution_time: number;
70
+
71
+ name: string;
72
+
73
+ sampled_model_name: string | null;
74
+
75
+ scores: Record<string, unknown>;
76
+
77
+ token_usage: number | null;
78
+
79
+ type: string;
80
+ }
81
+
82
+ export namespace Metadata {
83
+ export interface Errors {
84
+ formula_parse_error: boolean;
85
+
86
+ invalid_variable_error: boolean;
87
+
88
+ model_grader_parse_error: boolean;
89
+
90
+ model_grader_refusal_error: boolean;
91
+
92
+ model_grader_server_error: boolean;
93
+
94
+ model_grader_server_error_details: string | null;
95
+
96
+ other_error: boolean;
97
+
98
+ python_grader_runtime_error: boolean;
99
+
100
+ python_grader_runtime_error_details: string | null;
101
+
102
+ python_grader_server_error: boolean;
103
+
104
+ python_grader_server_error_type: string | null;
105
+
106
+ sample_parse_error: boolean;
107
+
108
+ truncated_observation_error: boolean;
109
+
110
+ unresponsive_reward_error: boolean;
111
+ }
112
+ }
113
+ }
114
+
115
+ export interface GraderValidateResponse {
116
+ /**
117
+ * The grader used for the fine-tuning job.
118
+ */
119
+ grader?:
120
+ | GraderModelsAPI.StringCheckGrader
121
+ | GraderModelsAPI.TextSimilarityGrader
122
+ | GraderModelsAPI.PythonGrader
123
+ | GraderModelsAPI.ScoreModelGrader
124
+ | GraderModelsAPI.MultiGrader;
125
+ }
126
+
127
+ export interface GraderRunParams {
128
+ /**
129
+ * The grader used for the fine-tuning job.
130
+ */
131
+ grader:
132
+ | GraderModelsAPI.StringCheckGrader
133
+ | GraderModelsAPI.TextSimilarityGrader
134
+ | GraderModelsAPI.PythonGrader
135
+ | GraderModelsAPI.ScoreModelGrader
136
+ | GraderModelsAPI.MultiGrader;
137
+
138
+ /**
139
+ * The model sample to be evaluated.
140
+ */
141
+ model_sample: string;
142
+
143
+ /**
144
+ * The reference answer for the evaluation.
145
+ */
146
+ reference_answer: string | unknown | Array<unknown> | number;
147
+ }
148
+
149
+ export interface GraderValidateParams {
150
+ /**
151
+ * The grader used for the fine-tuning job.
152
+ */
153
+ grader:
154
+ | GraderModelsAPI.StringCheckGrader
155
+ | GraderModelsAPI.TextSimilarityGrader
156
+ | GraderModelsAPI.PythonGrader
157
+ | GraderModelsAPI.ScoreModelGrader
158
+ | GraderModelsAPI.MultiGrader;
159
+ }
160
+
161
+ export declare namespace Graders {
162
+ export {
163
+ type GraderRunResponse as GraderRunResponse,
164
+ type GraderValidateResponse as GraderValidateResponse,
165
+ type GraderRunParams as GraderRunParams,
166
+ type GraderValidateParams as GraderValidateParams,
167
+ };
168
+ }
@@ -0,0 +1,10 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ export { Alpha } from './alpha';
4
+ export {
5
+ Graders,
6
+ type GraderRunResponse,
7
+ type GraderValidateResponse,
8
+ type GraderRunParams,
9
+ type GraderValidateParams,
10
+ } from './graders';
@@ -0,0 +1,3 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ export * from './alpha/index';
@@ -11,6 +11,17 @@ export class Permissions extends APIResource {
11
11
  *
12
12
  * This enables organization owners to share fine-tuned models with other projects
13
13
  * in their organization.
14
+ *
15
+ * @example
16
+ * ```ts
17
+ * // Automatically fetches more pages as needed.
18
+ * for await (const permissionCreateResponse of client.fineTuning.checkpoints.permissions.create(
19
+ * 'ft:gpt-4o-mini-2024-07-18:org:weather:B7R9VjQd',
20
+ * { project_ids: ['string'] },
21
+ * )) {
22
+ * // ...
23
+ * }
24
+ * ```
14
25
  */
15
26
  create(
16
27
  fineTunedModelCheckpoint: string,
@@ -29,6 +40,14 @@ export class Permissions extends APIResource {
29
40
  *
30
41
  * Organization owners can use this endpoint to view all permissions for a
31
42
  * fine-tuned model checkpoint.
43
+ *
44
+ * @example
45
+ * ```ts
46
+ * const permission =
47
+ * await client.fineTuning.checkpoints.permissions.retrieve(
48
+ * 'ft-AF1WoRqd3aJAHsqc9NY7iL8F',
49
+ * );
50
+ * ```
32
51
  */
33
52
  retrieve(
34
53
  fineTunedModelCheckpoint: string,
@@ -58,6 +77,15 @@ export class Permissions extends APIResource {
58
77
  *
59
78
  * Organization owners can use this endpoint to delete a permission for a
60
79
  * fine-tuned model checkpoint.
80
+ *
81
+ * @example
82
+ * ```ts
83
+ * const permission =
84
+ * await client.fineTuning.checkpoints.permissions.del(
85
+ * 'ft:gpt-4o-mini-2024-07-18:org:weather:B7R9VjQd',
86
+ * 'cp_zc4Q7MP6XxulcVzj4MZdwsAB',
87
+ * );
88
+ * ```
61
89
  */
62
90
  del(
63
91
  fineTunedModelCheckpoint: string,
@@ -1,6 +1,18 @@
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 MethodsAPI from './methods';
5
+ import {
6
+ DpoHyperparameters,
7
+ DpoMethod,
8
+ Methods,
9
+ ReinforcementHyperparameters,
10
+ ReinforcementMethod,
11
+ SupervisedHyperparameters,
12
+ SupervisedMethod,
13
+ } from './methods';
14
+ import * as AlphaAPI from './alpha/alpha';
15
+ import { Alpha } from './alpha/alpha';
4
16
  import * as CheckpointsAPI from './checkpoints/checkpoints';
5
17
  import { Checkpoints } from './checkpoints/checkpoints';
6
18
  import * as JobsAPI from './jobs/jobs';
@@ -19,16 +31,30 @@ import {
19
31
  } from './jobs/jobs';
20
32
 
21
33
  export class FineTuning extends APIResource {
34
+ methods: MethodsAPI.Methods = new MethodsAPI.Methods(this._client);
22
35
  jobs: JobsAPI.Jobs = new JobsAPI.Jobs(this._client);
23
36
  checkpoints: CheckpointsAPI.Checkpoints = new CheckpointsAPI.Checkpoints(this._client);
37
+ alpha: AlphaAPI.Alpha = new AlphaAPI.Alpha(this._client);
24
38
  }
25
39
 
40
+ FineTuning.Methods = Methods;
26
41
  FineTuning.Jobs = Jobs;
27
42
  FineTuning.FineTuningJobsPage = FineTuningJobsPage;
28
43
  FineTuning.FineTuningJobEventsPage = FineTuningJobEventsPage;
29
44
  FineTuning.Checkpoints = Checkpoints;
45
+ FineTuning.Alpha = Alpha;
30
46
 
31
47
  export declare namespace FineTuning {
48
+ export {
49
+ Methods as Methods,
50
+ type DpoHyperparameters as DpoHyperparameters,
51
+ type DpoMethod as DpoMethod,
52
+ type ReinforcementHyperparameters as ReinforcementHyperparameters,
53
+ type ReinforcementMethod as ReinforcementMethod,
54
+ type SupervisedHyperparameters as SupervisedHyperparameters,
55
+ type SupervisedMethod as SupervisedMethod,
56
+ };
57
+
32
58
  export {
33
59
  Jobs as Jobs,
34
60
  type FineTuningJob as FineTuningJob,
@@ -44,4 +70,6 @@ export declare namespace FineTuning {
44
70
  };
45
71
 
46
72
  export { Checkpoints as Checkpoints };
73
+
74
+ export { Alpha as Alpha };
47
75
  }
@@ -1,5 +1,6 @@
1
1
  // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
2
 
3
+ export { Alpha } from './alpha/index';
3
4
  export { Checkpoints } from './checkpoints/index';
4
5
  export { FineTuning } from './fine-tuning';
5
6
  export {
@@ -15,3 +16,12 @@ export {
15
16
  type JobListParams,
16
17
  type JobListEventsParams,
17
18
  } from './jobs/index';
19
+ export {
20
+ Methods,
21
+ type DpoHyperparameters,
22
+ type DpoMethod,
23
+ type ReinforcementHyperparameters,
24
+ type ReinforcementMethod,
25
+ type SupervisedHyperparameters,
26
+ type SupervisedMethod,
27
+ } from './methods';
@@ -8,6 +8,16 @@ import { CursorPage, type CursorPageParams } from '../../../pagination';
8
8
  export class Checkpoints extends APIResource {
9
9
  /**
10
10
  * List checkpoints for a fine-tuning job.
11
+ *
12
+ * @example
13
+ * ```ts
14
+ * // Automatically fetches more pages as needed.
15
+ * for await (const fineTuningJobCheckpoint of client.fineTuning.jobs.checkpoints.list(
16
+ * 'ft-AF1WoRqd3aJAHsqc9NY7iL8F',
17
+ * )) {
18
+ * // ...
19
+ * }
20
+ * ```
11
21
  */
12
22
  list(
13
23
  fineTuningJobId: string,
@@ -3,6 +3,7 @@
3
3
  import { APIResource } from '../../../resource';
4
4
  import { isRequestOptions } from '../../../core';
5
5
  import * as Core from '../../../core';
6
+ import * as MethodsAPI from '../methods';
6
7
  import * as CheckpointsAPI from './checkpoints';
7
8
  import {
8
9
  CheckpointListParams,
@@ -23,6 +24,14 @@ export class Jobs extends APIResource {
23
24
  * of the fine-tuned models once complete.
24
25
  *
25
26
  * [Learn more about fine-tuning](https://platform.openai.com/docs/guides/fine-tuning)
27
+ *
28
+ * @example
29
+ * ```ts
30
+ * const fineTuningJob = await client.fineTuning.jobs.create({
31
+ * model: 'gpt-4o-mini',
32
+ * training_file: 'file-abc123',
33
+ * });
34
+ * ```
26
35
  */
27
36
  create(body: JobCreateParams, options?: Core.RequestOptions): Core.APIPromise<FineTuningJob> {
28
37
  return this._client.post('/fine_tuning/jobs', { body, ...options });
@@ -32,6 +41,13 @@ export class Jobs extends APIResource {
32
41
  * Get info about a fine-tuning job.
33
42
  *
34
43
  * [Learn more about fine-tuning](https://platform.openai.com/docs/guides/fine-tuning)
44
+ *
45
+ * @example
46
+ * ```ts
47
+ * const fineTuningJob = await client.fineTuning.jobs.retrieve(
48
+ * 'ft-AF1WoRqd3aJAHsqc9NY7iL8F',
49
+ * );
50
+ * ```
35
51
  */
36
52
  retrieve(fineTuningJobId: string, options?: Core.RequestOptions): Core.APIPromise<FineTuningJob> {
37
53
  return this._client.get(`/fine_tuning/jobs/${fineTuningJobId}`, options);
@@ -39,6 +55,14 @@ export class Jobs extends APIResource {
39
55
 
40
56
  /**
41
57
  * List your organization's fine-tuning jobs
58
+ *
59
+ * @example
60
+ * ```ts
61
+ * // Automatically fetches more pages as needed.
62
+ * for await (const fineTuningJob of client.fineTuning.jobs.list()) {
63
+ * // ...
64
+ * }
65
+ * ```
42
66
  */
43
67
  list(
44
68
  query?: JobListParams,
@@ -57,6 +81,13 @@ export class Jobs extends APIResource {
57
81
 
58
82
  /**
59
83
  * Immediately cancel a fine-tune job.
84
+ *
85
+ * @example
86
+ * ```ts
87
+ * const fineTuningJob = await client.fineTuning.jobs.cancel(
88
+ * 'ft-AF1WoRqd3aJAHsqc9NY7iL8F',
89
+ * );
90
+ * ```
60
91
  */
61
92
  cancel(fineTuningJobId: string, options?: Core.RequestOptions): Core.APIPromise<FineTuningJob> {
62
93
  return this._client.post(`/fine_tuning/jobs/${fineTuningJobId}/cancel`, options);
@@ -64,6 +95,16 @@ export class Jobs extends APIResource {
64
95
 
65
96
  /**
66
97
  * Get status updates for a fine-tuning job.
98
+ *
99
+ * @example
100
+ * ```ts
101
+ * // Automatically fetches more pages as needed.
102
+ * for await (const fineTuningJobEvent of client.fineTuning.jobs.listEvents(
103
+ * 'ft-AF1WoRqd3aJAHsqc9NY7iL8F',
104
+ * )) {
105
+ * // ...
106
+ * }
107
+ * ```
67
108
  */
68
109
  listEvents(
69
110
  fineTuningJobId: string,
@@ -87,6 +128,34 @@ export class Jobs extends APIResource {
87
128
  ...options,
88
129
  });
89
130
  }
131
+
132
+ /**
133
+ * Pause a fine-tune job.
134
+ *
135
+ * @example
136
+ * ```ts
137
+ * const fineTuningJob = await client.fineTuning.jobs.pause(
138
+ * 'ft-AF1WoRqd3aJAHsqc9NY7iL8F',
139
+ * );
140
+ * ```
141
+ */
142
+ pause(fineTuningJobId: string, options?: Core.RequestOptions): Core.APIPromise<FineTuningJob> {
143
+ return this._client.post(`/fine_tuning/jobs/${fineTuningJobId}/pause`, options);
144
+ }
145
+
146
+ /**
147
+ * Resume a fine-tune job.
148
+ *
149
+ * @example
150
+ * ```ts
151
+ * const fineTuningJob = await client.fineTuning.jobs.resume(
152
+ * 'ft-AF1WoRqd3aJAHsqc9NY7iL8F',
153
+ * );
154
+ * ```
155
+ */
156
+ resume(fineTuningJobId: string, options?: Core.RequestOptions): Core.APIPromise<FineTuningJob> {
157
+ return this._client.post(`/fine_tuning/jobs/${fineTuningJobId}/resume`, options);
158
+ }
90
159
  }
91
160
 
92
161
  export class FineTuningJobsPage extends CursorPage<FineTuningJob> {}
@@ -253,97 +322,24 @@ export namespace FineTuningJob {
253
322
  */
254
323
  export interface Method {
255
324
  /**
256
- * Configuration for the DPO fine-tuning method.
257
- */
258
- dpo?: Method.Dpo;
259
-
260
- /**
261
- * Configuration for the supervised fine-tuning method.
325
+ * The type of method. Is either `supervised`, `dpo`, or `reinforcement`.
262
326
  */
263
- supervised?: Method.Supervised;
327
+ type: 'supervised' | 'dpo' | 'reinforcement';
264
328
 
265
329
  /**
266
- * The type of method. Is either `supervised` or `dpo`.
330
+ * Configuration for the DPO fine-tuning method.
267
331
  */
268
- type?: 'supervised' | 'dpo';
269
- }
332
+ dpo?: MethodsAPI.DpoMethod;
270
333
 
271
- export namespace Method {
272
334
  /**
273
- * Configuration for the DPO fine-tuning method.
335
+ * Configuration for the reinforcement fine-tuning method.
274
336
  */
275
- export interface Dpo {
276
- /**
277
- * The hyperparameters used for the fine-tuning job.
278
- */
279
- hyperparameters?: Dpo.Hyperparameters;
280
- }
281
-
282
- export namespace Dpo {
283
- /**
284
- * The hyperparameters used for the fine-tuning job.
285
- */
286
- export interface Hyperparameters {
287
- /**
288
- * Number of examples in each batch. A larger batch size means that model
289
- * parameters are updated less frequently, but with lower variance.
290
- */
291
- batch_size?: 'auto' | number;
292
-
293
- /**
294
- * The beta value for the DPO method. A higher beta value will increase the weight
295
- * of the penalty between the policy and reference model.
296
- */
297
- beta?: 'auto' | number;
298
-
299
- /**
300
- * Scaling factor for the learning rate. A smaller learning rate may be useful to
301
- * avoid overfitting.
302
- */
303
- learning_rate_multiplier?: 'auto' | number;
304
-
305
- /**
306
- * The number of epochs to train the model for. An epoch refers to one full cycle
307
- * through the training dataset.
308
- */
309
- n_epochs?: 'auto' | number;
310
- }
311
- }
337
+ reinforcement?: MethodsAPI.ReinforcementMethod;
312
338
 
313
339
  /**
314
340
  * Configuration for the supervised fine-tuning method.
315
341
  */
316
- export interface Supervised {
317
- /**
318
- * The hyperparameters used for the fine-tuning job.
319
- */
320
- hyperparameters?: Supervised.Hyperparameters;
321
- }
322
-
323
- export namespace Supervised {
324
- /**
325
- * The hyperparameters used for the fine-tuning job.
326
- */
327
- export interface Hyperparameters {
328
- /**
329
- * Number of examples in each batch. A larger batch size means that model
330
- * parameters are updated less frequently, but with lower variance.
331
- */
332
- batch_size?: 'auto' | number;
333
-
334
- /**
335
- * Scaling factor for the learning rate. A smaller learning rate may be useful to
336
- * avoid overfitting.
337
- */
338
- learning_rate_multiplier?: 'auto' | number;
339
-
340
- /**
341
- * The number of epochs to train the model for. An epoch refers to one full cycle
342
- * through the training dataset.
343
- */
344
- n_epochs?: 'auto' | number;
345
- }
346
- }
342
+ supervised?: MethodsAPI.SupervisedMethod;
347
343
  }
348
344
  }
349
345
 
@@ -466,8 +462,9 @@ export interface JobCreateParams {
466
462
  training_file: string;
467
463
 
468
464
  /**
469
- * The hyperparameters used for the fine-tuning job. This value is now deprecated
470
- * in favor of `method`, and should be passed in under the `method` parameter.
465
+ * @deprecated The hyperparameters used for the fine-tuning job. This value is now
466
+ * deprecated in favor of `method`, and should be passed in under the `method`
467
+ * parameter.
471
468
  */
472
469
  hyperparameters?: JobCreateParams.Hyperparameters;
473
470
 
@@ -596,97 +593,24 @@ export namespace JobCreateParams {
596
593
  */
597
594
  export interface Method {
598
595
  /**
599
- * Configuration for the DPO fine-tuning method.
596
+ * The type of method. Is either `supervised`, `dpo`, or `reinforcement`.
600
597
  */
601
- dpo?: Method.Dpo;
598
+ type: 'supervised' | 'dpo' | 'reinforcement';
602
599
 
603
600
  /**
604
- * Configuration for the supervised fine-tuning method.
605
- */
606
- supervised?: Method.Supervised;
607
-
608
- /**
609
- * The type of method. Is either `supervised` or `dpo`.
601
+ * Configuration for the DPO fine-tuning method.
610
602
  */
611
- type?: 'supervised' | 'dpo';
612
- }
603
+ dpo?: MethodsAPI.DpoMethod;
613
604
 
614
- export namespace Method {
615
605
  /**
616
- * Configuration for the DPO fine-tuning method.
606
+ * Configuration for the reinforcement fine-tuning method.
617
607
  */
618
- export interface Dpo {
619
- /**
620
- * The hyperparameters used for the fine-tuning job.
621
- */
622
- hyperparameters?: Dpo.Hyperparameters;
623
- }
624
-
625
- export namespace Dpo {
626
- /**
627
- * The hyperparameters used for the fine-tuning job.
628
- */
629
- export interface Hyperparameters {
630
- /**
631
- * Number of examples in each batch. A larger batch size means that model
632
- * parameters are updated less frequently, but with lower variance.
633
- */
634
- batch_size?: 'auto' | number;
635
-
636
- /**
637
- * The beta value for the DPO method. A higher beta value will increase the weight
638
- * of the penalty between the policy and reference model.
639
- */
640
- beta?: 'auto' | number;
641
-
642
- /**
643
- * Scaling factor for the learning rate. A smaller learning rate may be useful to
644
- * avoid overfitting.
645
- */
646
- learning_rate_multiplier?: 'auto' | number;
647
-
648
- /**
649
- * The number of epochs to train the model for. An epoch refers to one full cycle
650
- * through the training dataset.
651
- */
652
- n_epochs?: 'auto' | number;
653
- }
654
- }
608
+ reinforcement?: MethodsAPI.ReinforcementMethod;
655
609
 
656
610
  /**
657
611
  * Configuration for the supervised fine-tuning method.
658
612
  */
659
- export interface Supervised {
660
- /**
661
- * The hyperparameters used for the fine-tuning job.
662
- */
663
- hyperparameters?: Supervised.Hyperparameters;
664
- }
665
-
666
- export namespace Supervised {
667
- /**
668
- * The hyperparameters used for the fine-tuning job.
669
- */
670
- export interface Hyperparameters {
671
- /**
672
- * Number of examples in each batch. A larger batch size means that model
673
- * parameters are updated less frequently, but with lower variance.
674
- */
675
- batch_size?: 'auto' | number;
676
-
677
- /**
678
- * Scaling factor for the learning rate. A smaller learning rate may be useful to
679
- * avoid overfitting.
680
- */
681
- learning_rate_multiplier?: 'auto' | number;
682
-
683
- /**
684
- * The number of epochs to train the model for. An epoch refers to one full cycle
685
- * through the training dataset.
686
- */
687
- n_epochs?: 'auto' | number;
688
- }
689
- }
613
+ supervised?: MethodsAPI.SupervisedMethod;
690
614
  }
691
615
  }
692
616