openai 4.86.2 → 4.87.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 (198) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/README.md +50 -101
  3. package/core.js +2 -1
  4. package/core.js.map +1 -1
  5. package/core.mjs +2 -1
  6. package/core.mjs.map +1 -1
  7. package/helpers/zod.d.ts +14 -1
  8. package/helpers/zod.d.ts.map +1 -1
  9. package/helpers/zod.js +25 -1
  10. package/helpers/zod.js.map +1 -1
  11. package/helpers/zod.mjs +23 -1
  12. package/helpers/zod.mjs.map +1 -1
  13. package/index.d.mts +14 -3
  14. package/index.d.ts +14 -3
  15. package/index.d.ts.map +1 -1
  16. package/index.js +8 -0
  17. package/index.js.map +1 -1
  18. package/index.mjs +8 -0
  19. package/index.mjs.map +1 -1
  20. package/lib/ResponsesParser.d.ts +33 -0
  21. package/lib/ResponsesParser.d.ts.map +1 -0
  22. package/lib/ResponsesParser.js +171 -0
  23. package/lib/ResponsesParser.js.map +1 -0
  24. package/lib/ResponsesParser.mjs +160 -0
  25. package/lib/ResponsesParser.mjs.map +1 -0
  26. package/lib/parser.d.ts +7 -0
  27. package/lib/parser.d.ts.map +1 -1
  28. package/lib/parser.js +16 -1
  29. package/lib/parser.js.map +1 -1
  30. package/lib/parser.mjs +14 -0
  31. package/lib/parser.mjs.map +1 -1
  32. package/lib/responses/EventTypes.d.ts +9 -0
  33. package/lib/responses/EventTypes.d.ts.map +1 -0
  34. package/lib/responses/EventTypes.js +3 -0
  35. package/lib/responses/EventTypes.js.map +1 -0
  36. package/lib/responses/EventTypes.mjs +2 -0
  37. package/lib/responses/EventTypes.mjs.map +1 -0
  38. package/lib/responses/ResponseStream.d.ts +34 -0
  39. package/lib/responses/ResponseStream.d.ts.map +1 -0
  40. package/lib/responses/ResponseStream.js +238 -0
  41. package/lib/responses/ResponseStream.js.map +1 -0
  42. package/lib/responses/ResponseStream.mjs +234 -0
  43. package/lib/responses/ResponseStream.mjs.map +1 -0
  44. package/package.json +1 -1
  45. package/resources/beta/assistants.d.ts +41 -9
  46. package/resources/beta/assistants.d.ts.map +1 -1
  47. package/resources/beta/assistants.js.map +1 -1
  48. package/resources/beta/assistants.mjs.map +1 -1
  49. package/resources/beta/beta.d.ts +0 -4
  50. package/resources/beta/beta.d.ts.map +1 -1
  51. package/resources/beta/beta.js +0 -5
  52. package/resources/beta/beta.js.map +1 -1
  53. package/resources/beta/beta.mjs +0 -5
  54. package/resources/beta/beta.mjs.map +1 -1
  55. package/resources/beta/index.d.ts +0 -1
  56. package/resources/beta/index.d.ts.map +1 -1
  57. package/resources/beta/index.js +1 -4
  58. package/resources/beta/index.js.map +1 -1
  59. package/resources/beta/index.mjs +0 -1
  60. package/resources/beta/index.mjs.map +1 -1
  61. package/resources/beta/threads/runs/runs.d.ts +3 -4
  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 +73 -7
  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/chat/chat.d.ts +3 -2
  70. package/resources/chat/chat.d.ts.map +1 -1
  71. package/resources/chat/chat.js.map +1 -1
  72. package/resources/chat/chat.mjs.map +1 -1
  73. package/resources/chat/completions/completions.d.ts +200 -64
  74. package/resources/chat/completions/completions.d.ts.map +1 -1
  75. package/resources/chat/completions/completions.js +3 -3
  76. package/resources/chat/completions/completions.js.map +1 -1
  77. package/resources/chat/completions/completions.mjs +3 -3
  78. package/resources/chat/completions/completions.mjs.map +1 -1
  79. package/resources/chat/completions/index.d.ts +1 -1
  80. package/resources/chat/completions/index.d.ts.map +1 -1
  81. package/resources/chat/completions/index.js.map +1 -1
  82. package/resources/chat/completions/index.mjs.map +1 -1
  83. package/resources/chat/completions/messages.d.ts +1 -1
  84. package/resources/chat/index.d.ts +2 -2
  85. package/resources/chat/index.d.ts.map +1 -1
  86. package/resources/chat/index.js.map +1 -1
  87. package/resources/chat/index.mjs.map +1 -1
  88. package/resources/files.d.ts +9 -17
  89. package/resources/files.d.ts.map +1 -1
  90. package/resources/files.js.map +1 -1
  91. package/resources/files.mjs.map +1 -1
  92. package/resources/index.d.ts +2 -0
  93. package/resources/index.d.ts.map +1 -1
  94. package/resources/index.js +7 -1
  95. package/resources/index.js.map +1 -1
  96. package/resources/index.mjs +2 -0
  97. package/resources/index.mjs.map +1 -1
  98. package/resources/responses/index.d.ts +3 -0
  99. package/resources/responses/index.d.ts.map +1 -0
  100. package/resources/responses/index.js +10 -0
  101. package/resources/responses/index.js.map +1 -0
  102. package/resources/responses/index.mjs +4 -0
  103. package/resources/responses/index.mjs.map +1 -0
  104. package/resources/responses/input-items.d.ts +169 -0
  105. package/resources/responses/input-items.d.ts.map +1 -0
  106. package/resources/responses/input-items.js +24 -0
  107. package/resources/responses/input-items.js.map +1 -0
  108. package/resources/responses/input-items.mjs +19 -0
  109. package/resources/responses/input-items.mjs.map +1 -0
  110. package/resources/responses/responses.d.ts +2230 -0
  111. package/resources/responses/responses.d.ts.map +1 -0
  112. package/resources/responses/responses.js +77 -0
  113. package/resources/responses/responses.js.map +1 -0
  114. package/resources/responses/responses.mjs +50 -0
  115. package/resources/responses/responses.mjs.map +1 -0
  116. package/resources/shared.d.ts +99 -4
  117. package/resources/shared.d.ts.map +1 -1
  118. package/resources/uploads/uploads.d.ts +3 -4
  119. package/resources/uploads/uploads.d.ts.map +1 -1
  120. package/resources/uploads/uploads.js +3 -4
  121. package/resources/uploads/uploads.js.map +1 -1
  122. package/resources/uploads/uploads.mjs +3 -4
  123. package/resources/uploads/uploads.mjs.map +1 -1
  124. package/resources/{beta/vector-stores → vector-stores}/file-batches.d.ts +12 -4
  125. package/resources/vector-stores/file-batches.d.ts.map +1 -0
  126. package/resources/{beta/vector-stores → vector-stores}/file-batches.js +4 -4
  127. package/resources/vector-stores/file-batches.js.map +1 -0
  128. package/resources/{beta/vector-stores → vector-stores}/file-batches.mjs +4 -4
  129. package/resources/vector-stores/file-batches.mjs.map +1 -0
  130. package/resources/{beta/vector-stores → vector-stores}/files.d.ts +54 -5
  131. package/resources/vector-stores/files.d.ts.map +1 -0
  132. package/resources/{beta/vector-stores → vector-stores}/files.js +27 -4
  133. package/resources/vector-stores/files.js.map +1 -0
  134. package/resources/{beta/vector-stores → vector-stores}/files.mjs +25 -3
  135. package/resources/vector-stores/files.mjs.map +1 -0
  136. package/resources/vector-stores/index.d.ts +4 -0
  137. package/resources/vector-stores/index.d.ts.map +1 -0
  138. package/resources/{beta/vector-stores → vector-stores}/index.js +3 -1
  139. package/resources/vector-stores/index.js.map +1 -0
  140. package/resources/vector-stores/index.mjs +5 -0
  141. package/resources/vector-stores/index.mjs.map +1 -0
  142. package/resources/{beta/vector-stores → vector-stores}/vector-stores.d.ts +90 -7
  143. package/resources/vector-stores/vector-stores.d.ts.map +1 -0
  144. package/resources/{beta/vector-stores → vector-stores}/vector-stores.js +24 -4
  145. package/resources/vector-stores/vector-stores.js.map +1 -0
  146. package/resources/{beta/vector-stores → vector-stores}/vector-stores.mjs +23 -4
  147. package/resources/vector-stores/vector-stores.mjs.map +1 -0
  148. package/src/core.ts +2 -2
  149. package/src/helpers/zod.ts +46 -0
  150. package/src/index.ts +54 -4
  151. package/src/lib/ResponsesParser.ts +262 -0
  152. package/src/lib/parser.ts +28 -0
  153. package/src/lib/responses/EventTypes.ts +76 -0
  154. package/src/lib/responses/ResponseStream.ts +298 -0
  155. package/src/resources/beta/assistants.ts +46 -9
  156. package/src/resources/beta/beta.ts +0 -37
  157. package/src/resources/beta/index.ts +0 -16
  158. package/src/resources/beta/threads/runs/runs.ts +3 -4
  159. package/src/resources/beta/threads/threads.ts +83 -7
  160. package/src/resources/chat/chat.ts +3 -43
  161. package/src/resources/chat/completions/completions.ts +224 -66
  162. package/src/resources/chat/completions/index.ts +0 -1
  163. package/src/resources/chat/completions/messages.ts +1 -1
  164. package/src/resources/chat/index.ts +1 -2
  165. package/src/resources/files.ts +9 -17
  166. package/src/resources/index.ts +20 -0
  167. package/src/resources/responses/index.ts +9 -0
  168. package/src/resources/responses/input-items.ts +276 -0
  169. package/src/resources/responses/responses.ts +2761 -0
  170. package/src/resources/shared.ts +152 -4
  171. package/src/resources/uploads/uploads.ts +3 -4
  172. package/src/resources/{beta/vector-stores → vector-stores}/file-batches.ts +16 -7
  173. package/src/resources/{beta/vector-stores → vector-stores}/files.ts +85 -4
  174. package/src/resources/{beta/vector-stores → vector-stores}/index.ts +6 -0
  175. package/src/resources/{beta/vector-stores → vector-stores}/vector-stores.ts +125 -5
  176. package/src/streaming.ts +1 -1
  177. package/src/version.ts +1 -1
  178. package/streaming.js +1 -1
  179. package/streaming.js.map +1 -1
  180. package/streaming.mjs +1 -1
  181. package/streaming.mjs.map +1 -1
  182. package/version.d.ts +1 -1
  183. package/version.js +1 -1
  184. package/version.mjs +1 -1
  185. package/resources/beta/vector-stores/file-batches.d.ts.map +0 -1
  186. package/resources/beta/vector-stores/file-batches.js.map +0 -1
  187. package/resources/beta/vector-stores/file-batches.mjs.map +0 -1
  188. package/resources/beta/vector-stores/files.d.ts.map +0 -1
  189. package/resources/beta/vector-stores/files.js.map +0 -1
  190. package/resources/beta/vector-stores/files.mjs.map +0 -1
  191. package/resources/beta/vector-stores/index.d.ts +0 -4
  192. package/resources/beta/vector-stores/index.d.ts.map +0 -1
  193. package/resources/beta/vector-stores/index.js.map +0 -1
  194. package/resources/beta/vector-stores/index.mjs +0 -5
  195. package/resources/beta/vector-stores/index.mjs.map +0 -1
  196. package/resources/beta/vector-stores/vector-stores.d.ts.map +0 -1
  197. package/resources/beta/vector-stores/vector-stores.js.map +0 -1
  198. package/resources/beta/vector-stores/vector-stores.mjs.map +0 -1
@@ -0,0 +1,171 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.addOutputText = exports.validateInputTools = exports.shouldParseToolCall = exports.isAutoParsableTool = exports.makeParseableResponseTool = exports.hasAutoParseableInput = exports.parseResponse = exports.maybeParseResponse = void 0;
4
+ const error_1 = require("../error.js");
5
+ const parser_1 = require("../lib/parser.js");
6
+ function maybeParseResponse(response, params) {
7
+ if (!params || !hasAutoParseableInput(params)) {
8
+ return {
9
+ ...response,
10
+ output_parsed: null,
11
+ output: response.output.map((item) => {
12
+ if (item.type === 'function_call') {
13
+ return {
14
+ ...item,
15
+ parsed_arguments: null,
16
+ };
17
+ }
18
+ if (item.type === 'message') {
19
+ return {
20
+ ...item,
21
+ content: item.content.map((content) => ({
22
+ ...content,
23
+ parsed: null,
24
+ })),
25
+ };
26
+ }
27
+ else {
28
+ return item;
29
+ }
30
+ }),
31
+ };
32
+ }
33
+ return parseResponse(response, params);
34
+ }
35
+ exports.maybeParseResponse = maybeParseResponse;
36
+ function parseResponse(response, params) {
37
+ const output = response.output.map((item) => {
38
+ if (item.type === 'function_call') {
39
+ return {
40
+ ...item,
41
+ parsed_arguments: parseToolCall(params, item),
42
+ };
43
+ }
44
+ if (item.type === 'message') {
45
+ const content = item.content.map((content) => {
46
+ if (content.type === 'output_text') {
47
+ return {
48
+ ...content,
49
+ parsed: parseTextFormat(params, content.text),
50
+ };
51
+ }
52
+ return content;
53
+ });
54
+ return {
55
+ ...item,
56
+ content,
57
+ };
58
+ }
59
+ return item;
60
+ });
61
+ const parsed = Object.assign({}, response, { output });
62
+ if (!Object.getOwnPropertyDescriptor(response, 'output_text')) {
63
+ addOutputText(parsed);
64
+ }
65
+ Object.defineProperty(parsed, 'output_parsed', {
66
+ enumerable: true,
67
+ get() {
68
+ for (const output of parsed.output) {
69
+ if (output.type !== 'message') {
70
+ continue;
71
+ }
72
+ for (const content of output.content) {
73
+ if (content.type === 'output_text' && content.parsed !== null) {
74
+ return content.parsed;
75
+ }
76
+ }
77
+ }
78
+ return null;
79
+ },
80
+ });
81
+ return parsed;
82
+ }
83
+ exports.parseResponse = parseResponse;
84
+ function parseTextFormat(params, content) {
85
+ if (params.text?.format?.type !== 'json_schema') {
86
+ return null;
87
+ }
88
+ if ('$parseRaw' in params.text?.format) {
89
+ const text_format = params.text?.format;
90
+ return text_format.$parseRaw(content);
91
+ }
92
+ return JSON.parse(content);
93
+ }
94
+ function hasAutoParseableInput(params) {
95
+ if ((0, parser_1.isAutoParsableResponseFormat)(params.text?.format)) {
96
+ return true;
97
+ }
98
+ return false;
99
+ }
100
+ exports.hasAutoParseableInput = hasAutoParseableInput;
101
+ function makeParseableResponseTool(tool, { parser, callback, }) {
102
+ const obj = { ...tool };
103
+ Object.defineProperties(obj, {
104
+ $brand: {
105
+ value: 'auto-parseable-tool',
106
+ enumerable: false,
107
+ },
108
+ $parseRaw: {
109
+ value: parser,
110
+ enumerable: false,
111
+ },
112
+ $callback: {
113
+ value: callback,
114
+ enumerable: false,
115
+ },
116
+ });
117
+ return obj;
118
+ }
119
+ exports.makeParseableResponseTool = makeParseableResponseTool;
120
+ function isAutoParsableTool(tool) {
121
+ return tool?.['$brand'] === 'auto-parseable-tool';
122
+ }
123
+ exports.isAutoParsableTool = isAutoParsableTool;
124
+ function getInputToolByName(input_tools, name) {
125
+ return input_tools.find((tool) => tool.type === 'function' && tool.name === name);
126
+ }
127
+ function parseToolCall(params, toolCall) {
128
+ const inputTool = getInputToolByName(params.tools ?? [], toolCall.name);
129
+ return {
130
+ ...toolCall,
131
+ ...toolCall,
132
+ parsed_arguments: isAutoParsableTool(inputTool) ? inputTool.$parseRaw(toolCall.arguments)
133
+ : inputTool?.strict ? JSON.parse(toolCall.arguments)
134
+ : null,
135
+ };
136
+ }
137
+ function shouldParseToolCall(params, toolCall) {
138
+ if (!params) {
139
+ return false;
140
+ }
141
+ const inputTool = getInputToolByName(params.tools ?? [], toolCall.name);
142
+ return isAutoParsableTool(inputTool) || inputTool?.strict || false;
143
+ }
144
+ exports.shouldParseToolCall = shouldParseToolCall;
145
+ function validateInputTools(tools) {
146
+ for (const tool of tools ?? []) {
147
+ if (tool.type !== 'function') {
148
+ throw new error_1.OpenAIError(`Currently only \`function\` tool types support auto-parsing; Received \`${tool.type}\``);
149
+ }
150
+ if (tool.function.strict !== true) {
151
+ throw new error_1.OpenAIError(`The \`${tool.function.name}\` tool is not marked with \`strict: true\`. Only strict function tools can be auto-parsed`);
152
+ }
153
+ }
154
+ }
155
+ exports.validateInputTools = validateInputTools;
156
+ function addOutputText(rsp) {
157
+ const texts = [];
158
+ for (const output of rsp.output) {
159
+ if (output.type !== 'message') {
160
+ continue;
161
+ }
162
+ for (const content of output.content) {
163
+ if (content.type === 'output_text') {
164
+ texts.push(content.text);
165
+ }
166
+ }
167
+ }
168
+ rsp.output_text = texts.join('');
169
+ }
170
+ exports.addOutputText = addOutputText;
171
+ //# sourceMappingURL=ResponsesParser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponsesParser.js","sourceRoot":"","sources":["../src/lib/ResponsesParser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,160 @@
1
+ import { OpenAIError } from "../error.mjs";
2
+ import { isAutoParsableResponseFormat } from "../lib/parser.mjs";
3
+ export function maybeParseResponse(response, params) {
4
+ if (!params || !hasAutoParseableInput(params)) {
5
+ return {
6
+ ...response,
7
+ output_parsed: null,
8
+ output: response.output.map((item) => {
9
+ if (item.type === 'function_call') {
10
+ return {
11
+ ...item,
12
+ parsed_arguments: null,
13
+ };
14
+ }
15
+ if (item.type === 'message') {
16
+ return {
17
+ ...item,
18
+ content: item.content.map((content) => ({
19
+ ...content,
20
+ parsed: null,
21
+ })),
22
+ };
23
+ }
24
+ else {
25
+ return item;
26
+ }
27
+ }),
28
+ };
29
+ }
30
+ return parseResponse(response, params);
31
+ }
32
+ export function parseResponse(response, params) {
33
+ const output = response.output.map((item) => {
34
+ if (item.type === 'function_call') {
35
+ return {
36
+ ...item,
37
+ parsed_arguments: parseToolCall(params, item),
38
+ };
39
+ }
40
+ if (item.type === 'message') {
41
+ const content = item.content.map((content) => {
42
+ if (content.type === 'output_text') {
43
+ return {
44
+ ...content,
45
+ parsed: parseTextFormat(params, content.text),
46
+ };
47
+ }
48
+ return content;
49
+ });
50
+ return {
51
+ ...item,
52
+ content,
53
+ };
54
+ }
55
+ return item;
56
+ });
57
+ const parsed = Object.assign({}, response, { output });
58
+ if (!Object.getOwnPropertyDescriptor(response, 'output_text')) {
59
+ addOutputText(parsed);
60
+ }
61
+ Object.defineProperty(parsed, 'output_parsed', {
62
+ enumerable: true,
63
+ get() {
64
+ for (const output of parsed.output) {
65
+ if (output.type !== 'message') {
66
+ continue;
67
+ }
68
+ for (const content of output.content) {
69
+ if (content.type === 'output_text' && content.parsed !== null) {
70
+ return content.parsed;
71
+ }
72
+ }
73
+ }
74
+ return null;
75
+ },
76
+ });
77
+ return parsed;
78
+ }
79
+ function parseTextFormat(params, content) {
80
+ if (params.text?.format?.type !== 'json_schema') {
81
+ return null;
82
+ }
83
+ if ('$parseRaw' in params.text?.format) {
84
+ const text_format = params.text?.format;
85
+ return text_format.$parseRaw(content);
86
+ }
87
+ return JSON.parse(content);
88
+ }
89
+ export function hasAutoParseableInput(params) {
90
+ if (isAutoParsableResponseFormat(params.text?.format)) {
91
+ return true;
92
+ }
93
+ return false;
94
+ }
95
+ export function makeParseableResponseTool(tool, { parser, callback, }) {
96
+ const obj = { ...tool };
97
+ Object.defineProperties(obj, {
98
+ $brand: {
99
+ value: 'auto-parseable-tool',
100
+ enumerable: false,
101
+ },
102
+ $parseRaw: {
103
+ value: parser,
104
+ enumerable: false,
105
+ },
106
+ $callback: {
107
+ value: callback,
108
+ enumerable: false,
109
+ },
110
+ });
111
+ return obj;
112
+ }
113
+ export function isAutoParsableTool(tool) {
114
+ return tool?.['$brand'] === 'auto-parseable-tool';
115
+ }
116
+ function getInputToolByName(input_tools, name) {
117
+ return input_tools.find((tool) => tool.type === 'function' && tool.name === name);
118
+ }
119
+ function parseToolCall(params, toolCall) {
120
+ const inputTool = getInputToolByName(params.tools ?? [], toolCall.name);
121
+ return {
122
+ ...toolCall,
123
+ ...toolCall,
124
+ parsed_arguments: isAutoParsableTool(inputTool) ? inputTool.$parseRaw(toolCall.arguments)
125
+ : inputTool?.strict ? JSON.parse(toolCall.arguments)
126
+ : null,
127
+ };
128
+ }
129
+ export function shouldParseToolCall(params, toolCall) {
130
+ if (!params) {
131
+ return false;
132
+ }
133
+ const inputTool = getInputToolByName(params.tools ?? [], toolCall.name);
134
+ return isAutoParsableTool(inputTool) || inputTool?.strict || false;
135
+ }
136
+ export function validateInputTools(tools) {
137
+ for (const tool of tools ?? []) {
138
+ if (tool.type !== 'function') {
139
+ throw new OpenAIError(`Currently only \`function\` tool types support auto-parsing; Received \`${tool.type}\``);
140
+ }
141
+ if (tool.function.strict !== true) {
142
+ throw new OpenAIError(`The \`${tool.function.name}\` tool is not marked with \`strict: true\`. Only strict function tools can be auto-parsed`);
143
+ }
144
+ }
145
+ }
146
+ export function addOutputText(rsp) {
147
+ const texts = [];
148
+ for (const output of rsp.output) {
149
+ if (output.type !== 'message') {
150
+ continue;
151
+ }
152
+ for (const content of output.content) {
153
+ if (content.type === 'output_text') {
154
+ texts.push(content.text);
155
+ }
156
+ }
157
+ }
158
+ rsp.output_text = texts.join('');
159
+ }
160
+ //# sourceMappingURL=ResponsesParser.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponsesParser.mjs","sourceRoot":"","sources":["../src/lib/ResponsesParser.ts"],"names":[],"mappings":"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"}
package/lib/parser.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import { ChatCompletion, ChatCompletionCreateParams, ChatCompletionMessageToolCall, ChatCompletionTool } from "../resources/chat/completions.js";
2
2
  import { ChatCompletionStreamingToolRunnerParams, ChatCompletionStreamParams, ChatCompletionToolRunnerParams, ParsedChatCompletion } from "../resources/beta/chat/completions.js";
3
3
  import { ResponseFormatJSONSchema } from "../resources/shared.js";
4
+ import { type ResponseFormatTextJSONSchemaConfig } from "../resources/responses/responses.js";
4
5
  type AnyChatCompletionCreateParams = ChatCompletionCreateParams | ChatCompletionToolRunnerParams<any> | ChatCompletionStreamingToolRunnerParams<any> | ChatCompletionStreamParams;
5
6
  export type ExtractParsedContentFromParams<Params extends AnyChatCompletionCreateParams> = Params['response_format'] extends AutoParseableResponseFormat<infer P> ? P : null;
6
7
  export type AutoParseableResponseFormat<ParsedT> = ResponseFormatJSONSchema & {
@@ -9,6 +10,12 @@ export type AutoParseableResponseFormat<ParsedT> = ResponseFormatJSONSchema & {
9
10
  $parseRaw(content: string): ParsedT;
10
11
  };
11
12
  export declare function makeParseableResponseFormat<ParsedT>(response_format: ResponseFormatJSONSchema, parser: (content: string) => ParsedT): AutoParseableResponseFormat<ParsedT>;
13
+ export type AutoParseableTextFormat<ParsedT> = ResponseFormatTextJSONSchemaConfig & {
14
+ __output: ParsedT;
15
+ $brand: 'auto-parseable-response-format';
16
+ $parseRaw(content: string): ParsedT;
17
+ };
18
+ export declare function makeParseableTextFormat<ParsedT>(response_format: ResponseFormatTextJSONSchemaConfig, parser: (content: string) => ParsedT): AutoParseableTextFormat<ParsedT>;
12
19
  export declare function isAutoParsableResponseFormat<ParsedT>(response_format: any): response_format is AutoParseableResponseFormat<ParsedT>;
13
20
  type ToolOptions = {
14
21
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/lib/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../src/lib/parser.ts"],"names":[],"mappings":"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"}
package/lib/parser.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.validateInputTools = exports.hasAutoParseableInput = exports.shouldParseToolCall = exports.parseChatCompletion = exports.maybeParseChatCompletion = exports.isAutoParsableTool = exports.makeParseableTool = exports.isAutoParsableResponseFormat = exports.makeParseableResponseFormat = void 0;
3
+ exports.validateInputTools = exports.hasAutoParseableInput = exports.shouldParseToolCall = exports.parseChatCompletion = exports.maybeParseChatCompletion = exports.isAutoParsableTool = exports.makeParseableTool = exports.isAutoParsableResponseFormat = exports.makeParseableTextFormat = exports.makeParseableResponseFormat = void 0;
4
4
  const error_1 = require("../error.js");
5
5
  function makeParseableResponseFormat(response_format, parser) {
6
6
  const obj = { ...response_format };
@@ -17,6 +17,21 @@ function makeParseableResponseFormat(response_format, parser) {
17
17
  return obj;
18
18
  }
19
19
  exports.makeParseableResponseFormat = makeParseableResponseFormat;
20
+ function makeParseableTextFormat(response_format, parser) {
21
+ const obj = { ...response_format };
22
+ Object.defineProperties(obj, {
23
+ $brand: {
24
+ value: 'auto-parseable-response-format',
25
+ enumerable: false,
26
+ },
27
+ $parseRaw: {
28
+ value: parser,
29
+ enumerable: false,
30
+ },
31
+ });
32
+ return obj;
33
+ }
34
+ exports.makeParseableTextFormat = makeParseableTextFormat;
20
35
  function isAutoParsableResponseFormat(response_format) {
21
36
  return response_format?.['$brand'] === 'auto-parseable-response-format';
22
37
  }
package/lib/parser.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/lib/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../src/lib/parser.ts"],"names":[],"mappings":"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"}
package/lib/parser.mjs CHANGED
@@ -13,6 +13,20 @@ export function makeParseableResponseFormat(response_format, parser) {
13
13
  });
14
14
  return obj;
15
15
  }
16
+ export function makeParseableTextFormat(response_format, parser) {
17
+ const obj = { ...response_format };
18
+ Object.defineProperties(obj, {
19
+ $brand: {
20
+ value: 'auto-parseable-response-format',
21
+ enumerable: false,
22
+ },
23
+ $parseRaw: {
24
+ value: parser,
25
+ enumerable: false,
26
+ },
27
+ });
28
+ return obj;
29
+ }
16
30
  export function isAutoParsableResponseFormat(response_format) {
17
31
  return response_format?.['$brand'] === 'auto-parseable-response-format';
18
32
  }
@@ -1 +1 @@
1
- {"version":3,"file":"parser.mjs","sourceRoot":"","sources":["../src/lib/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.mjs","sourceRoot":"","sources":["../src/lib/parser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import { ResponseAudioDeltaEvent, ResponseAudioDoneEvent, ResponseAudioTranscriptDeltaEvent, ResponseAudioTranscriptDoneEvent, ResponseCodeInterpreterCallCodeDeltaEvent, ResponseCodeInterpreterCallCodeDoneEvent, ResponseCodeInterpreterCallCompletedEvent, ResponseCodeInterpreterCallInProgressEvent, ResponseCodeInterpreterCallInterpretingEvent, ResponseCompletedEvent, ResponseContentPartAddedEvent, ResponseContentPartDoneEvent, ResponseCreatedEvent, ResponseErrorEvent, ResponseFailedEvent, ResponseFileSearchCallCompletedEvent, ResponseFileSearchCallInProgressEvent, ResponseFileSearchCallSearchingEvent, ResponseFunctionCallArgumentsDeltaEvent as RawResponseFunctionCallArgumentsDeltaEvent, ResponseFunctionCallArgumentsDoneEvent, ResponseInProgressEvent, ResponseOutputItemAddedEvent, ResponseOutputItemDoneEvent, ResponseRefusalDeltaEvent, ResponseRefusalDoneEvent, ResponseTextAnnotationDeltaEvent, ResponseTextDeltaEvent as RawResponseTextDeltaEvent, ResponseTextDoneEvent, ResponseIncompleteEvent, ResponseWebSearchCallCompletedEvent, ResponseWebSearchCallInProgressEvent, ResponseWebSearchCallSearchingEvent } from "../../resources/responses/responses.js";
2
+ export type ResponseFunctionCallArgumentsDeltaEvent = RawResponseFunctionCallArgumentsDeltaEvent & {
3
+ snapshot: string;
4
+ };
5
+ export type ResponseTextDeltaEvent = RawResponseTextDeltaEvent & {
6
+ snapshot: string;
7
+ };
8
+ export type ParsedResponseStreamEvent = ResponseAudioDeltaEvent | ResponseAudioDoneEvent | ResponseAudioTranscriptDeltaEvent | ResponseAudioTranscriptDoneEvent | ResponseCodeInterpreterCallCodeDeltaEvent | ResponseCodeInterpreterCallCodeDoneEvent | ResponseCodeInterpreterCallCompletedEvent | ResponseCodeInterpreterCallInProgressEvent | ResponseCodeInterpreterCallInterpretingEvent | ResponseCompletedEvent | ResponseContentPartAddedEvent | ResponseContentPartDoneEvent | ResponseCreatedEvent | ResponseErrorEvent | ResponseFileSearchCallCompletedEvent | ResponseFileSearchCallInProgressEvent | ResponseFileSearchCallSearchingEvent | ResponseFunctionCallArgumentsDeltaEvent | ResponseFunctionCallArgumentsDoneEvent | ResponseInProgressEvent | ResponseFailedEvent | ResponseIncompleteEvent | ResponseOutputItemAddedEvent | ResponseOutputItemDoneEvent | ResponseRefusalDeltaEvent | ResponseRefusalDoneEvent | ResponseTextAnnotationDeltaEvent | ResponseTextDeltaEvent | ResponseTextDoneEvent | ResponseWebSearchCallCompletedEvent | ResponseWebSearchCallInProgressEvent | ResponseWebSearchCallSearchingEvent;
9
+ //# sourceMappingURL=EventTypes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventTypes.d.ts","sourceRoot":"","sources":["../../src/lib/responses/EventTypes.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,sBAAsB,EACtB,iCAAiC,EACjC,gCAAgC,EAChC,yCAAyC,EACzC,wCAAwC,EACxC,yCAAyC,EACzC,0CAA0C,EAC1C,4CAA4C,EAC5C,sBAAsB,EACtB,6BAA6B,EAC7B,4BAA4B,EAC5B,oBAAoB,EACpB,kBAAkB,EAClB,mBAAmB,EACnB,oCAAoC,EACpC,qCAAqC,EACrC,oCAAoC,EACpC,uCAAuC,IAAI,0CAA0C,EACrF,sCAAsC,EACtC,uBAAuB,EACvB,4BAA4B,EAC5B,2BAA2B,EAC3B,yBAAyB,EACzB,wBAAwB,EACxB,gCAAgC,EAChC,sBAAsB,IAAI,yBAAyB,EACnD,qBAAqB,EACrB,uBAAuB,EACvB,mCAAmC,EACnC,oCAAoC,EACpC,mCAAmC,EACpC,MAAM,qCAAqC,CAAC;AAE7C,MAAM,MAAM,uCAAuC,GAAG,0CAA0C,GAAG;IACjG,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,yBAAyB,GAAG;IAC/D,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GACjC,uBAAuB,GACvB,sBAAsB,GACtB,iCAAiC,GACjC,gCAAgC,GAChC,yCAAyC,GACzC,wCAAwC,GACxC,yCAAyC,GACzC,0CAA0C,GAC1C,4CAA4C,GAC5C,sBAAsB,GACtB,6BAA6B,GAC7B,4BAA4B,GAC5B,oBAAoB,GACpB,kBAAkB,GAClB,oCAAoC,GACpC,qCAAqC,GACrC,oCAAoC,GACpC,uCAAuC,GACvC,sCAAsC,GACtC,uBAAuB,GACvB,mBAAmB,GACnB,uBAAuB,GACvB,4BAA4B,GAC5B,2BAA2B,GAC3B,yBAAyB,GACzB,wBAAwB,GACxB,gCAAgC,GAChC,sBAAsB,GACtB,qBAAqB,GACrB,mCAAmC,GACnC,oCAAoC,GACpC,mCAAmC,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=EventTypes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventTypes.js","sourceRoot":"","sources":["../../src/lib/responses/EventTypes.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=EventTypes.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventTypes.mjs","sourceRoot":"","sources":["../../src/lib/responses/EventTypes.ts"],"names":[],"mappings":""}
@@ -0,0 +1,34 @@
1
+ import { type ParsedResponse, type ResponseCreateParamsBase, type ResponseStreamEvent } from 'openai/resources/responses/responses';
2
+ import * as Core from "../../core.js";
3
+ import OpenAI from "../../index.js";
4
+ import { type BaseEvents, EventStream } from "../EventStream.js";
5
+ import { type ResponseFunctionCallArgumentsDeltaEvent, type ResponseTextDeltaEvent } from "./EventTypes.js";
6
+ export type ResponseStreamParams = Omit<ResponseCreateParamsBase, 'stream'> & {
7
+ stream?: true;
8
+ };
9
+ type ResponseEvents = BaseEvents & Omit<{
10
+ [K in ResponseStreamEvent['type']]: (event: Extract<ResponseStreamEvent, {
11
+ type: K;
12
+ }>) => void;
13
+ }, 'response.output_text.delta' | 'response.function_call_arguments.delta'> & {
14
+ event: (event: ResponseStreamEvent) => void;
15
+ 'response.output_text.delta': (event: ResponseTextDeltaEvent) => void;
16
+ 'response.function_call_arguments.delta': (event: ResponseFunctionCallArgumentsDeltaEvent) => void;
17
+ };
18
+ export type ResponseStreamingParams = Omit<ResponseCreateParamsBase, 'stream'> & {
19
+ stream?: true;
20
+ };
21
+ export declare class ResponseStream<ParsedT = null> extends EventStream<ResponseEvents> implements AsyncIterable<ResponseStreamEvent> {
22
+ #private;
23
+ constructor(params: ResponseStreamingParams | null);
24
+ static createResponse<ParsedT>(client: OpenAI, params: ResponseStreamParams, options?: Core.RequestOptions): ResponseStream<ParsedT>;
25
+ protected _createResponse(client: OpenAI, params: ResponseStreamingParams, options?: Core.RequestOptions): Promise<ParsedResponse<ParsedT>>;
26
+ [Symbol.asyncIterator](this: ResponseStream<ParsedT>): AsyncIterator<ResponseStreamEvent>;
27
+ /**
28
+ * @returns a promise that resolves with the final Response, or rejects
29
+ * if an error occurred or the stream ended prematurely without producing a REsponse.
30
+ */
31
+ finalResponse(): Promise<ParsedResponse<ParsedT>>;
32
+ }
33
+ export {};
34
+ //# sourceMappingURL=ResponseStream.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ResponseStream.d.ts","sourceRoot":"","sources":["../../src/lib/responses/ResponseStream.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,cAAc,EAEnB,KAAK,wBAAwB,EAE7B,KAAK,mBAAmB,EACzB,MAAM,sCAAsC,CAAC;AAC9C,OAAO,KAAK,IAAI,MAAM,YAAY,CAAC;AAEnC,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,KAAK,UAAU,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC9D,OAAO,EAAE,KAAK,uCAAuC,EAAE,KAAK,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAGzG,MAAM,MAAM,oBAAoB,GAAG,IAAI,CAAC,wBAAwB,EAAE,QAAQ,CAAC,GAAG;IAC5E,MAAM,CAAC,EAAE,IAAI,CAAC;CACf,CAAC;AAEF,KAAK,cAAc,GAAG,UAAU,GAC9B,IAAI,CACF;KACG,CAAC,IAAI,mBAAmB,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,OAAO,CAAC,mBAAmB,EAAE;QAAE,IAAI,EAAE,CAAC,CAAA;KAAE,CAAC,KAAK,IAAI;CAC/F,EACD,4BAA4B,GAAG,wCAAwC,CACxE,GAAG;IACF,KAAK,EAAE,CAAC,KAAK,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAC5C,4BAA4B,EAAE,CAAC,KAAK,EAAE,sBAAsB,KAAK,IAAI,CAAC;IACtE,wCAAwC,EAAE,CAAC,KAAK,EAAE,uCAAuC,KAAK,IAAI,CAAC;CACpG,CAAC;AAEJ,MAAM,MAAM,uBAAuB,GAAG,IAAI,CAAC,wBAAwB,EAAE,QAAQ,CAAC,GAAG;IAC/E,MAAM,CAAC,EAAE,IAAI,CAAC;CACf,CAAC;AAEF,qBAAa,cAAc,CAAC,OAAO,GAAG,IAAI,CACxC,SAAQ,WAAW,CAAC,cAAc,CAClC,YAAW,aAAa,CAAC,mBAAmB,CAAC;;gBAMjC,MAAM,EAAE,uBAAuB,GAAG,IAAI;IAKlD,MAAM,CAAC,cAAc,CAAC,OAAO,EAC3B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,oBAAoB,EAC5B,OAAO,CAAC,EAAE,IAAI,CAAC,cAAc,GAC5B,cAAc,CAAC,OAAO,CAAC;cA+EV,eAAe,CAC7B,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,uBAAuB,EAC/B,OAAO,CAAC,EAAE,IAAI,CAAC,cAAc,GAC5B,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IAqFnC,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,IAAI,EAAE,cAAc,CAAC,OAAO,CAAC,GAAG,aAAa,CAAC,mBAAmB,CAAC;IA6DzF;;;OAGG;IACG,aAAa,IAAI,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;CAMxD"}