@inductiv/node-red-openai-api 0.3.9 → 0.4.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.
- package/README.md +13 -6
- package/examples/assistants.json +60 -82
- package/examples/audio.json +182 -63
- package/examples/files.json +70 -32
- package/examples/images.json +56 -28
- package/lib.js +666 -688
- package/locales/de-DE/node.json +2 -1
- package/locales/en-US/node.json +1 -1
- package/locales/ja/node.json +2 -1
- package/locales/zh-CN/node.json +2 -1
- package/node.html +98 -100
- package/node.js +61 -98
- package/package.json +2 -3
package/lib.js
CHANGED
|
@@ -1,788 +1,766 @@
|
|
|
1
|
-
|
|
1
|
+
let OpenaiApi = (function () {
|
|
2
2
|
"use strict";
|
|
3
3
|
|
|
4
|
-
const
|
|
5
|
-
const
|
|
4
|
+
const fs = require("fs");
|
|
5
|
+
const OpenAI = require("openai").OpenAI;
|
|
6
6
|
|
|
7
7
|
class OpenaiApi {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
8
|
+
async createChatCompletion(parameters) {
|
|
9
|
+
let node = parameters._node;
|
|
10
|
+
delete parameters._node;
|
|
11
|
+
|
|
12
|
+
const openai = new OpenAI({
|
|
13
|
+
apiKey: parameters.apiKey,
|
|
14
|
+
baseURL: parameters.apiBase,
|
|
15
|
+
organization: parameters.organization,
|
|
16
|
+
});
|
|
17
|
+
const response = await openai.chat.completions.create({
|
|
18
|
+
...parameters.payload,
|
|
19
|
+
});
|
|
16
20
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
if (parameters.payload.stream) {
|
|
22
|
+
for await (const chunk of response) {
|
|
23
|
+
node.send(chunk);
|
|
24
|
+
}
|
|
25
|
+
return { code: 0, status: "complete" };
|
|
26
|
+
} else {
|
|
27
|
+
return response;
|
|
28
|
+
}
|
|
24
29
|
}
|
|
25
30
|
|
|
26
|
-
|
|
27
|
-
|
|
31
|
+
async createImage(parameters) {
|
|
32
|
+
const openai = new OpenAI({
|
|
33
|
+
apiKey: parameters.apiKey,
|
|
34
|
+
organization: parameters.organization,
|
|
35
|
+
});
|
|
36
|
+
const response = await openai.images.generate({
|
|
37
|
+
...parameters.payload,
|
|
38
|
+
});
|
|
39
|
+
|
|
40
|
+
return response;
|
|
28
41
|
}
|
|
29
42
|
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
43
|
+
async createImageEdit(parameters) {
|
|
44
|
+
const openai = new OpenAI({
|
|
45
|
+
apiKey: parameters.apiKey,
|
|
46
|
+
organization: parameters.organization,
|
|
47
|
+
});
|
|
48
|
+
|
|
49
|
+
parameters.payload.image = fs.createReadStream(parameters.payload.image);
|
|
50
|
+
if (parameters.payload.mask) {
|
|
51
|
+
parameters.payload.mask = fs.createReadStream(parameters.payload.mask);
|
|
34
52
|
}
|
|
35
|
-
return headers;
|
|
36
|
-
}
|
|
37
53
|
|
|
38
|
-
|
|
39
|
-
|
|
54
|
+
const response = await openai.images.edit({
|
|
55
|
+
...parameters.payload,
|
|
56
|
+
});
|
|
57
|
+
|
|
58
|
+
return response;
|
|
40
59
|
}
|
|
41
60
|
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
var baseHeaders = {};
|
|
61
|
+
async createImageVariation(parameters) {
|
|
62
|
+
const openai = new OpenAI({
|
|
63
|
+
apiKey: parameters.apiKey,
|
|
64
|
+
organization: parameters.organization,
|
|
65
|
+
});
|
|
48
66
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
}
|
|
67
|
+
parameters.payload.image = fs.createReadStream(parameters.payload.image);
|
|
68
|
+
const response = await openai.images.createVariation({
|
|
69
|
+
...parameters.payload,
|
|
70
|
+
});
|
|
54
71
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
...customHeaders,
|
|
58
|
-
};
|
|
59
|
-
|
|
60
|
-
// Only add query parameters if they are expected and exist
|
|
61
|
-
if (expectedQueryParams) {
|
|
62
|
-
expectedQueryParams.forEach((param) => {
|
|
63
|
-
if (parameters.body[param] !== undefined) {
|
|
64
|
-
queryParameters[param] = parameters.body[param];
|
|
65
|
-
}
|
|
66
|
-
});
|
|
67
|
-
}
|
|
72
|
+
return response;
|
|
73
|
+
}
|
|
68
74
|
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
method: "GET",
|
|
75
|
-
url: domain + path,
|
|
76
|
-
headers: headers,
|
|
77
|
-
params: queryParameters,
|
|
78
|
-
};
|
|
79
|
-
|
|
80
|
-
// Axios GET request
|
|
81
|
-
axios(config)
|
|
82
|
-
.then((response) => {
|
|
83
|
-
resolve(response);
|
|
84
|
-
})
|
|
85
|
-
.catch((error) => {
|
|
86
|
-
reject(error);
|
|
87
|
-
});
|
|
88
|
-
});
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
postToEndpoint(
|
|
92
|
-
path,
|
|
93
|
-
parameters,
|
|
94
|
-
expectedQueryParams,
|
|
95
|
-
contentType,
|
|
96
|
-
filePath,
|
|
97
|
-
customHeaders = {},
|
|
98
|
-
) {
|
|
99
|
-
return new Promise((resolve, reject) => {
|
|
100
|
-
const _path = require("path");
|
|
101
|
-
|
|
102
|
-
parameters = parameters || {};
|
|
103
|
-
var domain = this.domain;
|
|
104
|
-
var organizationId = this.organizationId;
|
|
105
|
-
var queryParameters = {},
|
|
106
|
-
baseHeaders = {},
|
|
107
|
-
data;
|
|
108
|
-
|
|
109
|
-
baseHeaders = this.setAuthHeaders(baseHeaders);
|
|
110
|
-
baseHeaders["Accept"] = "application/json";
|
|
111
|
-
|
|
112
|
-
if (organizationId) {
|
|
113
|
-
customHeaders["OpenAI-Organization"] = organizationId;
|
|
114
|
-
}
|
|
75
|
+
async createEmbedding(parameters) {
|
|
76
|
+
const openai = new OpenAI({
|
|
77
|
+
apiKey: parameters.apiKey,
|
|
78
|
+
organization: parameters.organization,
|
|
79
|
+
});
|
|
115
80
|
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
};
|
|
120
|
-
|
|
121
|
-
// Determine the Content-Type
|
|
122
|
-
if (contentType === "form-data") {
|
|
123
|
-
var formData = new FormData();
|
|
124
|
-
|
|
125
|
-
Object.entries(parameters.body).forEach(([key, value]) => {
|
|
126
|
-
if (value instanceof Buffer) {
|
|
127
|
-
if (!filePath) {
|
|
128
|
-
throw new Error(
|
|
129
|
-
"msg.payload must include a `filename` property.",
|
|
130
|
-
);
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
const filename = _path.basename(filePath);
|
|
134
|
-
formData.append(key, value, filename);
|
|
135
|
-
} else {
|
|
136
|
-
if (parameters.body[key] !== undefined) {
|
|
137
|
-
formData.append(key, value);
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
});
|
|
141
|
-
|
|
142
|
-
data = formData;
|
|
143
|
-
|
|
144
|
-
let formHeaders = formData.getHeaders();
|
|
145
|
-
Object.assign(headers, formHeaders);
|
|
146
|
-
} else {
|
|
147
|
-
// Handle JSON payloads
|
|
148
|
-
headers["Content-Type"] = "application/json";
|
|
149
|
-
data = parameters.body || {};
|
|
150
|
-
}
|
|
81
|
+
const response = await openai.embeddings.create({
|
|
82
|
+
...parameters.payload,
|
|
83
|
+
});
|
|
151
84
|
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
expectedQueryParams.forEach((param) => {
|
|
155
|
-
if (parameters.body[param] !== undefined) {
|
|
156
|
-
queryParameters[param] = parameters.body[param];
|
|
157
|
-
}
|
|
158
|
-
});
|
|
159
|
-
}
|
|
85
|
+
return response;
|
|
86
|
+
}
|
|
160
87
|
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
method: "POST",
|
|
167
|
-
url: domain + path,
|
|
168
|
-
headers: headers,
|
|
169
|
-
params: queryParameters,
|
|
170
|
-
data: data,
|
|
171
|
-
responseType: data.stream === true ? "stream" : "json",
|
|
172
|
-
};
|
|
173
|
-
|
|
174
|
-
axios(config)
|
|
175
|
-
.then((response) => {
|
|
176
|
-
if (config.responseType === "stream") {
|
|
177
|
-
// Handle the stream response
|
|
178
|
-
response.data
|
|
179
|
-
.on("data", (chunk) => {
|
|
180
|
-
// Convert chunk from Uint8Array to string
|
|
181
|
-
const chunkAsString = new TextDecoder().decode(chunk);
|
|
182
|
-
|
|
183
|
-
// Emit converted data chunks as Node-RED messages
|
|
184
|
-
this.node.send({ payload: chunkAsString });
|
|
185
|
-
})
|
|
186
|
-
.on("end", () => {
|
|
187
|
-
// Handle the end of the stream
|
|
188
|
-
resolve({ payload: "Stream ended" });
|
|
189
|
-
})
|
|
190
|
-
.on("error", (err) => {
|
|
191
|
-
// Handle any errors
|
|
192
|
-
reject(err);
|
|
193
|
-
});
|
|
194
|
-
} else {
|
|
195
|
-
// Handle non-stream response (e.g., JSON)
|
|
196
|
-
resolve(response);
|
|
197
|
-
}
|
|
198
|
-
})
|
|
199
|
-
.catch((error) => {
|
|
200
|
-
reject(error);
|
|
201
|
-
});
|
|
202
|
-
});
|
|
203
|
-
}
|
|
204
|
-
|
|
205
|
-
deleteFromEndpoint(
|
|
206
|
-
path,
|
|
207
|
-
parameters,
|
|
208
|
-
expectedQueryParams,
|
|
209
|
-
customHeaders = {},
|
|
210
|
-
) {
|
|
211
|
-
return new Promise((resolve, reject) => {
|
|
212
|
-
parameters = parameters || {};
|
|
213
|
-
var domain = this.domain;
|
|
214
|
-
var organizationId = this.organizationId;
|
|
215
|
-
var queryParameters = {},
|
|
216
|
-
baseHeaders = {};
|
|
217
|
-
|
|
218
|
-
baseHeaders = this.setAuthHeaders(headers);
|
|
219
|
-
baseHeaders["Accept"] = "application/json";
|
|
220
|
-
|
|
221
|
-
if (organizationId) {
|
|
222
|
-
customHeaders["OpenAI-Organization"] = organizationId;
|
|
223
|
-
}
|
|
88
|
+
async createSpeech(parameters) {
|
|
89
|
+
const openai = new OpenAI({
|
|
90
|
+
apiKey: parameters.apiKey,
|
|
91
|
+
organization: parameters.organization,
|
|
92
|
+
});
|
|
224
93
|
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
...customHeaders,
|
|
228
|
-
};
|
|
229
|
-
|
|
230
|
-
// Only add query parameters if they are expected and exist
|
|
231
|
-
if (expectedQueryParams) {
|
|
232
|
-
expectedQueryParams.forEach((param) => {
|
|
233
|
-
if (parameters[param] !== undefined) {
|
|
234
|
-
queryParameters[param] = parameters.body[param];
|
|
235
|
-
}
|
|
236
|
-
});
|
|
237
|
-
}
|
|
94
|
+
const audio = await openai.audio.speech.create({ ...parameters.payload });
|
|
95
|
+
const response = Buffer.from(await audio.arrayBuffer());
|
|
238
96
|
|
|
239
|
-
|
|
240
|
-
|
|
97
|
+
return response;
|
|
98
|
+
}
|
|
241
99
|
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
params: queryParameters,
|
|
248
|
-
};
|
|
100
|
+
async createTranscription(parameters) {
|
|
101
|
+
const openai = new OpenAI({
|
|
102
|
+
apiKey: parameters.apiKey,
|
|
103
|
+
organization: parameters.organization,
|
|
104
|
+
});
|
|
249
105
|
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
})
|
|
255
|
-
.catch((error) => {
|
|
256
|
-
reject(error);
|
|
257
|
-
});
|
|
106
|
+
parameters.payload.file = fs.createReadStream(parameters.payload.file);
|
|
107
|
+
|
|
108
|
+
const response = await openai.audio.transcriptions.create({
|
|
109
|
+
...parameters.payload,
|
|
258
110
|
});
|
|
259
|
-
}
|
|
260
111
|
|
|
261
|
-
createChatCompletion(parameters) {
|
|
262
|
-
const response = this.postToEndpoint("/chat/completions", parameters);
|
|
263
112
|
return response;
|
|
264
113
|
}
|
|
265
|
-
createImage(parameters) {
|
|
266
|
-
return this.postToEndpoint("/images/generations", parameters);
|
|
267
|
-
}
|
|
268
|
-
createImageEdit(parameters) {
|
|
269
|
-
const filename = parameters.body.filename;
|
|
270
|
-
delete parameters.body.filename;
|
|
271
114
|
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
parameters,
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
filename,
|
|
278
|
-
);
|
|
279
|
-
}
|
|
280
|
-
createImageVariation(parameters) {
|
|
281
|
-
const filename = parameters.body.filename;
|
|
282
|
-
delete parameters.body.filename;
|
|
115
|
+
async createTranslation(parameters) {
|
|
116
|
+
const openai = new OpenAI({
|
|
117
|
+
apiKey: parameters.apiKey,
|
|
118
|
+
organization: parameters.organization,
|
|
119
|
+
});
|
|
283
120
|
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
parameters,
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
);
|
|
121
|
+
parameters.payload.file = fs.createReadStream(parameters.payload.file);
|
|
122
|
+
const response = await openai.audio.translations.create({
|
|
123
|
+
...parameters.payload,
|
|
124
|
+
});
|
|
125
|
+
|
|
126
|
+
return response;
|
|
291
127
|
}
|
|
292
|
-
|
|
293
|
-
|
|
128
|
+
|
|
129
|
+
async listFiles(parameters) {
|
|
130
|
+
const openai = new OpenAI({
|
|
131
|
+
apiKey: parameters.apiKey,
|
|
132
|
+
organization: parameters.organization,
|
|
133
|
+
});
|
|
134
|
+
|
|
135
|
+
const list = await openai.files.list({
|
|
136
|
+
...parameters.payload,
|
|
137
|
+
});
|
|
138
|
+
|
|
139
|
+
let files = [];
|
|
140
|
+
for await (const file of list) {
|
|
141
|
+
files.push(file);
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
return files;
|
|
294
145
|
}
|
|
295
|
-
|
|
296
|
-
|
|
146
|
+
|
|
147
|
+
async createFile(parameters) {
|
|
148
|
+
const openai = new OpenAI({
|
|
149
|
+
apiKey: parameters.apiKey,
|
|
150
|
+
organization: parameters.organization,
|
|
151
|
+
});
|
|
152
|
+
|
|
153
|
+
parameters.payload.file = fs.createReadStream(parameters.payload.file);
|
|
154
|
+
const response = await openai.files.create({
|
|
155
|
+
...parameters.payload,
|
|
156
|
+
});
|
|
157
|
+
|
|
158
|
+
return response;
|
|
297
159
|
}
|
|
298
|
-
|
|
299
|
-
const
|
|
300
|
-
|
|
160
|
+
async deleteFile(parameters) {
|
|
161
|
+
const openai = new OpenAI({
|
|
162
|
+
apiKey: parameters.apiKey,
|
|
163
|
+
organization: parameters.organization,
|
|
164
|
+
});
|
|
301
165
|
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
filename,
|
|
308
|
-
);
|
|
166
|
+
const response = await openai.files.del({
|
|
167
|
+
...parameters.payload,
|
|
168
|
+
});
|
|
169
|
+
|
|
170
|
+
return response;
|
|
309
171
|
}
|
|
310
|
-
|
|
311
|
-
const
|
|
312
|
-
|
|
172
|
+
async retrieveFile(parameters) {
|
|
173
|
+
const openai = new OpenAI({
|
|
174
|
+
apiKey: parameters.apiKey,
|
|
175
|
+
organization: parameters.organization,
|
|
176
|
+
});
|
|
313
177
|
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
178
|
+
const file_id = parameters.payload.file_id;
|
|
179
|
+
delete parameters.payload.file_id;
|
|
180
|
+
|
|
181
|
+
const response = await openai.files.retrieve(file_id, {
|
|
182
|
+
...parameters.payload,
|
|
183
|
+
});
|
|
184
|
+
|
|
185
|
+
return response;
|
|
321
186
|
}
|
|
322
|
-
|
|
323
|
-
const
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
187
|
+
async downloadFile(parameters) {
|
|
188
|
+
const openai = new OpenAI({
|
|
189
|
+
apiKey: parameters.apiKey,
|
|
190
|
+
organization: parameters.organization,
|
|
191
|
+
});
|
|
192
|
+
|
|
193
|
+
const file_id = parameters.payload.file_id;
|
|
194
|
+
delete parameters.payload.file_id;
|
|
195
|
+
|
|
196
|
+
const response = await openai.files.retrieveContent(file_id, {
|
|
197
|
+
...parameters.payload,
|
|
198
|
+
});
|
|
199
|
+
|
|
200
|
+
return response;
|
|
329
201
|
}
|
|
330
|
-
|
|
331
|
-
|
|
202
|
+
async createFineTuningJob(parameters) {
|
|
203
|
+
const openai = new OpenAI({
|
|
204
|
+
apiKey: parameters.apiKey,
|
|
205
|
+
organization: parameters.organization,
|
|
206
|
+
});
|
|
332
207
|
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
208
|
+
const response = await openai.fineTuning.jobs.create({
|
|
209
|
+
...parameters.payload,
|
|
210
|
+
});
|
|
336
211
|
|
|
337
|
-
return
|
|
338
|
-
"/files",
|
|
339
|
-
parameters,
|
|
340
|
-
null,
|
|
341
|
-
"form-data",
|
|
342
|
-
filename,
|
|
343
|
-
);
|
|
212
|
+
return response;
|
|
344
213
|
}
|
|
345
|
-
|
|
346
|
-
const
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
const
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
const
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
return this.postToEndpoint("/fine_tuning/jobs", parameters);
|
|
362
|
-
}
|
|
363
|
-
listPaginatedFineTuningJobs(parameters) {
|
|
364
|
-
const expectedQueryParameters = ["after", "limit"];
|
|
365
|
-
return this.getFromEndpoint(
|
|
366
|
-
"/fine_tuning/jobs",
|
|
367
|
-
parameters,
|
|
368
|
-
expectedQueryParameters,
|
|
369
|
-
);
|
|
214
|
+
async listPaginatedFineTuningJobs(parameters) {
|
|
215
|
+
const openai = new OpenAI({
|
|
216
|
+
apiKey: parameters.apiKey,
|
|
217
|
+
organization: parameters.organization,
|
|
218
|
+
});
|
|
219
|
+
|
|
220
|
+
const list = await openai.fineTuning.jobs.list({
|
|
221
|
+
...parameters.payload,
|
|
222
|
+
});
|
|
223
|
+
|
|
224
|
+
let response = [];
|
|
225
|
+
for await (const fineTune of list) {
|
|
226
|
+
response.push(fineTune);
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
return response;
|
|
370
230
|
}
|
|
371
|
-
retrieveFineTuningJob(parameters) {
|
|
372
|
-
const
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
231
|
+
async retrieveFineTuningJob(parameters) {
|
|
232
|
+
const openai = new OpenAI({
|
|
233
|
+
apiKey: parameters.apiKey,
|
|
234
|
+
organization: parameters.organization,
|
|
235
|
+
});
|
|
236
|
+
|
|
237
|
+
const response = await openai.fineTuning.jobs.retrieve(
|
|
238
|
+
parameters.payload.fine_tuning_job_id,
|
|
377
239
|
);
|
|
240
|
+
|
|
241
|
+
return response;
|
|
378
242
|
}
|
|
379
|
-
listFineTuningEvents(parameters) {
|
|
380
|
-
const
|
|
381
|
-
|
|
382
|
-
|
|
243
|
+
async listFineTuningEvents(parameters) {
|
|
244
|
+
const openai = new OpenAI({
|
|
245
|
+
apiKey: parameters.apiKey,
|
|
246
|
+
organization: parameters.organization,
|
|
247
|
+
});
|
|
383
248
|
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
parameters,
|
|
387
|
-
expectedQueryParameters,
|
|
249
|
+
let response = [];
|
|
250
|
+
const list = await openai.fineTuning.jobs.listEvents(
|
|
251
|
+
parameters.payload.fine_tuning_job_id,
|
|
388
252
|
);
|
|
253
|
+
for await (const fineTuneEvent of list) {
|
|
254
|
+
response.push(fineTuneEvent);
|
|
255
|
+
}
|
|
256
|
+
return response;
|
|
389
257
|
}
|
|
390
|
-
cancelFineTuningJob(parameters) {
|
|
391
|
-
const
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
258
|
+
async cancelFineTuningJob(parameters) {
|
|
259
|
+
const openai = new OpenAI({
|
|
260
|
+
apiKey: parameters.apiKey,
|
|
261
|
+
organization: parameters.organization,
|
|
262
|
+
});
|
|
263
|
+
|
|
264
|
+
const response = await openai.fineTuning.jobs.cancel(
|
|
265
|
+
parameters.payload.fine_tuning_job_id,
|
|
396
266
|
);
|
|
267
|
+
|
|
268
|
+
return response;
|
|
397
269
|
}
|
|
398
|
-
listModels(parameters) {
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
270
|
+
async listModels(parameters) {
|
|
271
|
+
const openai = new OpenAI({
|
|
272
|
+
apiKey: parameters.apiKey,
|
|
273
|
+
organization: parameters.organization,
|
|
274
|
+
});
|
|
275
|
+
|
|
276
|
+
const response = await openai.models.list();
|
|
277
|
+
|
|
278
|
+
return response.body;
|
|
405
279
|
}
|
|
406
|
-
|
|
407
|
-
const
|
|
408
|
-
|
|
409
|
-
|
|
280
|
+
async retrieveModel(parameters) {
|
|
281
|
+
const openai = new OpenAI({
|
|
282
|
+
apiKey: parameters.apiKey,
|
|
283
|
+
organization: parameters.organization,
|
|
284
|
+
});
|
|
285
|
+
|
|
286
|
+
const model = parameters.payload.model;
|
|
287
|
+
const response = await openai.models.retrieve(model);
|
|
288
|
+
|
|
289
|
+
return response;
|
|
410
290
|
}
|
|
411
|
-
|
|
412
|
-
|
|
291
|
+
async deleteModel(parameters) {
|
|
292
|
+
const openai = new OpenAI({
|
|
293
|
+
apiKey: parameters.apiKey,
|
|
294
|
+
organization: parameters.organization,
|
|
295
|
+
});
|
|
296
|
+
|
|
297
|
+
const model = parameters.payload.model;
|
|
298
|
+
const response = await openai.models.del(model);
|
|
299
|
+
|
|
300
|
+
return response;
|
|
413
301
|
}
|
|
414
|
-
|
|
415
|
-
const
|
|
416
|
-
|
|
302
|
+
async createModeration(parameters) {
|
|
303
|
+
const openai = new OpenAI({
|
|
304
|
+
apiKey: parameters.apiKey,
|
|
305
|
+
organization: parameters.organization,
|
|
306
|
+
});
|
|
417
307
|
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
parameters,
|
|
421
|
-
expectedQueryParameters,
|
|
422
|
-
customHeaders,
|
|
423
|
-
);
|
|
308
|
+
const response = await openai.moderations.create(parameters.payload);
|
|
309
|
+
return response;
|
|
424
310
|
}
|
|
425
|
-
|
|
426
|
-
|
|
311
|
+
async listAssistants(parameters) {
|
|
312
|
+
const openai = new OpenAI({
|
|
313
|
+
apiKey: parameters.apiKey,
|
|
314
|
+
organization: parameters.organization,
|
|
315
|
+
});
|
|
427
316
|
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
null,
|
|
434
|
-
customHeaders,
|
|
435
|
-
);
|
|
317
|
+
const response = await openai.beta.assistants.list({
|
|
318
|
+
...parameters.payload,
|
|
319
|
+
});
|
|
320
|
+
|
|
321
|
+
return response.body;
|
|
436
322
|
}
|
|
437
|
-
|
|
438
|
-
const
|
|
439
|
-
|
|
440
|
-
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
323
|
+
async createAssistant(parameters) {
|
|
324
|
+
const openai = new OpenAI({
|
|
325
|
+
apiKey: parameters.apiKey,
|
|
326
|
+
organization: parameters.organization,
|
|
327
|
+
});
|
|
328
|
+
|
|
329
|
+
const response = await openai.beta.assistants.create({
|
|
330
|
+
...parameters.payload,
|
|
331
|
+
});
|
|
332
|
+
|
|
333
|
+
return response;
|
|
447
334
|
}
|
|
448
|
-
|
|
449
|
-
const
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
customHeaders,
|
|
459
|
-
);
|
|
335
|
+
async getAssistant(parameters) {
|
|
336
|
+
const openai = new OpenAI({
|
|
337
|
+
apiKey: parameters.apiKey,
|
|
338
|
+
organization: parameters.organization,
|
|
339
|
+
});
|
|
340
|
+
|
|
341
|
+
const id = parameters.payload.assistant_id;
|
|
342
|
+
const response = await openai.beta.assistants.retrieve(id);
|
|
343
|
+
|
|
344
|
+
return response;
|
|
460
345
|
}
|
|
461
|
-
|
|
462
|
-
const
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
346
|
+
async modifyAssistant(parameters) {
|
|
347
|
+
const openai = new OpenAI({
|
|
348
|
+
apiKey: parameters.apiKey,
|
|
349
|
+
organization: parameters.organization,
|
|
350
|
+
});
|
|
351
|
+
|
|
352
|
+
const id = parameters.payload.assistant_id;
|
|
353
|
+
delete parameters.payload.assistant_id;
|
|
354
|
+
|
|
355
|
+
const response = await openai.beta.assistants.update(id, {
|
|
356
|
+
...parameters.payload,
|
|
357
|
+
});
|
|
358
|
+
|
|
359
|
+
return response;
|
|
471
360
|
}
|
|
472
|
-
|
|
473
|
-
const
|
|
474
|
-
|
|
475
|
-
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
361
|
+
async deleteAssistant(parameters) {
|
|
362
|
+
const openai = new OpenAI({
|
|
363
|
+
apiKey: parameters.apiKey,
|
|
364
|
+
organization: parameters.organization,
|
|
365
|
+
});
|
|
366
|
+
|
|
367
|
+
const id = parameters.payload.assistant_id;
|
|
368
|
+
const response = await openai.beta.assistants.del(id);
|
|
369
|
+
|
|
370
|
+
return response;
|
|
482
371
|
}
|
|
483
|
-
|
|
484
|
-
const
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
372
|
+
async createThread(parameters) {
|
|
373
|
+
const openai = new OpenAI({
|
|
374
|
+
apiKey: parameters.apiKey,
|
|
375
|
+
organization: parameters.organization,
|
|
376
|
+
});
|
|
377
|
+
|
|
378
|
+
const response = await openai.beta.threads.create({
|
|
379
|
+
...parameters.payload,
|
|
380
|
+
});
|
|
381
|
+
|
|
382
|
+
return response;
|
|
493
383
|
}
|
|
494
|
-
|
|
495
|
-
const
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
customHeaders,
|
|
505
|
-
);
|
|
384
|
+
async getThread(parameters) {
|
|
385
|
+
const openai = new OpenAI({
|
|
386
|
+
apiKey: parameters.apiKey,
|
|
387
|
+
organization: parameters.organization,
|
|
388
|
+
});
|
|
389
|
+
|
|
390
|
+
const id = parameters.payload.thread_id;
|
|
391
|
+
const response = await openai.beta.threads.retrieve(id);
|
|
392
|
+
|
|
393
|
+
return response;
|
|
506
394
|
}
|
|
507
|
-
|
|
508
|
-
const
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
395
|
+
async modifyThread(parameters) {
|
|
396
|
+
const openai = new OpenAI({
|
|
397
|
+
apiKey: parameters.apiKey,
|
|
398
|
+
organization: parameters.organization,
|
|
399
|
+
});
|
|
400
|
+
|
|
401
|
+
const id = parameters.payload.thread_id;
|
|
402
|
+
delete parameters.payload.thread_id;
|
|
403
|
+
|
|
404
|
+
const response = await openai.beta.threads.update(id, {
|
|
405
|
+
...parameters.payload,
|
|
406
|
+
});
|
|
407
|
+
|
|
408
|
+
return response;
|
|
517
409
|
}
|
|
518
|
-
|
|
519
|
-
const
|
|
520
|
-
|
|
521
|
-
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
);
|
|
410
|
+
async deleteThread(parameters) {
|
|
411
|
+
const openai = new OpenAI({
|
|
412
|
+
apiKey: parameters.apiKey,
|
|
413
|
+
organization: parameters.organization,
|
|
414
|
+
});
|
|
415
|
+
|
|
416
|
+
const id = parameters.payload.thread_id;
|
|
417
|
+
const response = await openai.beta.threads.del(id);
|
|
418
|
+
|
|
419
|
+
return response;
|
|
529
420
|
}
|
|
530
|
-
|
|
531
|
-
const
|
|
532
|
-
|
|
533
|
-
|
|
534
|
-
|
|
535
|
-
|
|
536
|
-
|
|
537
|
-
|
|
538
|
-
|
|
539
|
-
|
|
540
|
-
customHeaders,
|
|
541
|
-
);
|
|
421
|
+
async listMessages(parameters) {
|
|
422
|
+
const openai = new OpenAI({
|
|
423
|
+
apiKey: parameters.apiKey,
|
|
424
|
+
organization: parameters.organization,
|
|
425
|
+
});
|
|
426
|
+
|
|
427
|
+
const id = parameters.payload.thread_id;
|
|
428
|
+
const response = await openai.beta.threads.messages.list(id);
|
|
429
|
+
|
|
430
|
+
return response.body;
|
|
542
431
|
}
|
|
543
|
-
|
|
544
|
-
const
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
);
|
|
432
|
+
async createMessage(parameters) {
|
|
433
|
+
const openai = new OpenAI({
|
|
434
|
+
apiKey: parameters.apiKey,
|
|
435
|
+
organization: parameters.organization,
|
|
436
|
+
});
|
|
437
|
+
|
|
438
|
+
const thread_id = parameters.payload.thread_id;
|
|
439
|
+
delete parameters.payload.thread_id;
|
|
440
|
+
|
|
441
|
+
const response = await openai.beta.threads.messages.create(thread_id, {
|
|
442
|
+
...parameters.payload,
|
|
443
|
+
});
|
|
444
|
+
|
|
445
|
+
return response;
|
|
555
446
|
}
|
|
556
|
-
|
|
557
|
-
const
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
customHeaders,
|
|
447
|
+
async getMessage(parameters) {
|
|
448
|
+
const openai = new OpenAI({
|
|
449
|
+
apiKey: parameters.apiKey,
|
|
450
|
+
organization: parameters.organization,
|
|
451
|
+
});
|
|
452
|
+
|
|
453
|
+
const thread_id = parameters.payload.thread_id;
|
|
454
|
+
const message_id = parameters.payload.message_id;
|
|
455
|
+
|
|
456
|
+
const response = await openai.beta.threads.messages.retrieve(
|
|
457
|
+
thread_id,
|
|
458
|
+
message_id,
|
|
569
459
|
);
|
|
460
|
+
|
|
461
|
+
return response;
|
|
570
462
|
}
|
|
571
|
-
|
|
572
|
-
const
|
|
463
|
+
async modifyMessage(parameters) {
|
|
464
|
+
const openai = new OpenAI({
|
|
465
|
+
apiKey: parameters.apiKey,
|
|
466
|
+
organization: parameters.organization,
|
|
467
|
+
});
|
|
573
468
|
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
469
|
+
const thread_id = parameters.payload.thread_id;
|
|
470
|
+
const message_id = parameters.payload.message_id;
|
|
471
|
+
delete parameters.payload.thread_id;
|
|
472
|
+
delete parameters.payload.message_id;
|
|
473
|
+
|
|
474
|
+
const response = await openai.beta.threads.messages.update(
|
|
475
|
+
thread_id,
|
|
476
|
+
message_id,
|
|
477
|
+
{
|
|
478
|
+
...parameters.payload,
|
|
479
|
+
},
|
|
581
480
|
);
|
|
481
|
+
|
|
482
|
+
return response;
|
|
582
483
|
}
|
|
583
|
-
|
|
584
|
-
const
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
590
|
-
parameters,
|
|
591
|
-
|
|
592
|
-
|
|
593
|
-
|
|
484
|
+
async createThreadAndRun(parameters) {
|
|
485
|
+
const openai = new OpenAI({
|
|
486
|
+
apiKey: parameters.apiKey,
|
|
487
|
+
organization: parameters.organization,
|
|
488
|
+
});
|
|
489
|
+
|
|
490
|
+
const response = await openai.beta.threads.createAndRun({
|
|
491
|
+
...parameters.payload,
|
|
492
|
+
});
|
|
493
|
+
|
|
494
|
+
return response;
|
|
594
495
|
}
|
|
595
|
-
|
|
596
|
-
const
|
|
597
|
-
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
);
|
|
496
|
+
async listRuns(parameters) {
|
|
497
|
+
const openai = new OpenAI({
|
|
498
|
+
apiKey: parameters.apiKey,
|
|
499
|
+
organization: parameters.organization,
|
|
500
|
+
});
|
|
501
|
+
|
|
502
|
+
const thred_id = parameters.payload.thread_id;
|
|
503
|
+
delete parameters.payload.thread_id;
|
|
504
|
+
|
|
505
|
+
const response = await openai.beta.threads.runs.list(thred_id, {
|
|
506
|
+
...parameters.payload,
|
|
507
|
+
});
|
|
508
|
+
|
|
509
|
+
return response.body;
|
|
607
510
|
}
|
|
608
|
-
|
|
609
|
-
const
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
);
|
|
511
|
+
async createRun(parameters) {
|
|
512
|
+
const openai = new OpenAI({
|
|
513
|
+
apiKey: parameters.apiKey,
|
|
514
|
+
organization: parameters.organization,
|
|
515
|
+
});
|
|
516
|
+
|
|
517
|
+
const thread_id = parameters.payload.thread_id;
|
|
518
|
+
delete parameters.payload.thread_id;
|
|
519
|
+
|
|
520
|
+
const response = await openai.beta.threads.runs.create(thread_id, {
|
|
521
|
+
...parameters.payload,
|
|
522
|
+
});
|
|
523
|
+
|
|
524
|
+
return response;
|
|
620
525
|
}
|
|
621
|
-
|
|
622
|
-
const
|
|
623
|
-
|
|
624
|
-
|
|
625
|
-
|
|
626
|
-
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
633
|
-
|
|
526
|
+
async getRun(parameters) {
|
|
527
|
+
const openai = new OpenAI({
|
|
528
|
+
apiKey: parameters.apiKey,
|
|
529
|
+
organization: parameters.organization,
|
|
530
|
+
});
|
|
531
|
+
|
|
532
|
+
const thread_id = parameters.payload.thread_id;
|
|
533
|
+
const run_id = parameters.payload.run_id;
|
|
534
|
+
delete parameters.payload.thread_id;
|
|
535
|
+
delete parameters.payload.run_id;
|
|
536
|
+
|
|
537
|
+
const response = await openai.beta.threads.runs.retrieve(
|
|
538
|
+
thread_id,
|
|
539
|
+
run_id,
|
|
634
540
|
);
|
|
541
|
+
|
|
542
|
+
return response;
|
|
635
543
|
}
|
|
636
|
-
|
|
637
|
-
const
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
544
|
+
async modifyRun(parameters) {
|
|
545
|
+
const openai = new OpenAI({
|
|
546
|
+
apiKey: parameters.apiKey,
|
|
547
|
+
organization: parameters.organization,
|
|
548
|
+
});
|
|
549
|
+
|
|
550
|
+
const thread_id = parameters.payload.thread_id;
|
|
551
|
+
const run_id = parameters.payload.run_id;
|
|
552
|
+
delete parameters.payload.thread_id;
|
|
553
|
+
delete parameters.payload.run_id;
|
|
554
|
+
|
|
555
|
+
const response = await openai.beta.threads.runs.update(
|
|
556
|
+
thread_id,
|
|
557
|
+
run_id,
|
|
558
|
+
{
|
|
559
|
+
...parameters.payload,
|
|
560
|
+
},
|
|
649
561
|
);
|
|
562
|
+
|
|
563
|
+
return response;
|
|
650
564
|
}
|
|
651
|
-
|
|
652
|
-
const
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
565
|
+
async submitToolOuputsToRun(parameters) {
|
|
566
|
+
const openai = new OpenAI({
|
|
567
|
+
apiKey: parameters.apiKey,
|
|
568
|
+
organization: parameters.organization,
|
|
569
|
+
});
|
|
570
|
+
|
|
571
|
+
const thread_id = parameters.payload.thread_id;
|
|
572
|
+
const run_id = parameters.payload.run_id;
|
|
573
|
+
delete parameters.payload.thread_id;
|
|
574
|
+
delete parameters.payload.run_id;
|
|
575
|
+
|
|
576
|
+
const response = await openai.beta.threads.runs.submitToolOutputs(
|
|
577
|
+
thread_id,
|
|
578
|
+
run_id,
|
|
579
|
+
{
|
|
580
|
+
...parameters.payload,
|
|
581
|
+
},
|
|
664
582
|
);
|
|
583
|
+
|
|
584
|
+
return response;
|
|
665
585
|
}
|
|
666
|
-
|
|
667
|
-
const
|
|
668
|
-
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
586
|
+
async cancelRun(parameters) {
|
|
587
|
+
const openai = new OpenAI({
|
|
588
|
+
apiKey: parameters.apiKey,
|
|
589
|
+
organization: parameters.organization,
|
|
590
|
+
});
|
|
591
|
+
|
|
592
|
+
const thread_id = parameters.payload.thread_id;
|
|
593
|
+
const run_id = parameters.payload.run_id;
|
|
594
|
+
delete parameters.payload.thread_id;
|
|
595
|
+
delete parameters.payload.run_id;
|
|
596
|
+
|
|
597
|
+
const response = await openai.beta.threads.runs.cancel(
|
|
598
|
+
thread_id,
|
|
599
|
+
run_id,
|
|
600
|
+
{
|
|
601
|
+
...parameters.payload,
|
|
602
|
+
},
|
|
678
603
|
);
|
|
604
|
+
|
|
605
|
+
return response;
|
|
679
606
|
}
|
|
680
|
-
|
|
681
|
-
const
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
607
|
+
async listRunSteps(parameters) {
|
|
608
|
+
const openai = new OpenAI({
|
|
609
|
+
apiKey: parameters.apiKey,
|
|
610
|
+
organization: parameters.organization,
|
|
611
|
+
});
|
|
612
|
+
|
|
613
|
+
const thread_id = parameters.payload.thread_id;
|
|
614
|
+
const run_id = parameters.payload.run_id;
|
|
615
|
+
delete parameters.payload.thread_id;
|
|
616
|
+
delete parameters.payload.run_id;
|
|
617
|
+
|
|
618
|
+
const response = await openai.beta.threads.runs.steps.list(
|
|
619
|
+
thread_id,
|
|
620
|
+
run_id,
|
|
621
|
+
{
|
|
622
|
+
...parameters.payload,
|
|
623
|
+
},
|
|
692
624
|
);
|
|
625
|
+
|
|
626
|
+
return response.body;
|
|
693
627
|
}
|
|
694
|
-
|
|
695
|
-
const
|
|
696
|
-
|
|
697
|
-
|
|
698
|
-
|
|
699
|
-
|
|
700
|
-
|
|
701
|
-
|
|
702
|
-
|
|
703
|
-
|
|
628
|
+
async getRunStep(parameters) {
|
|
629
|
+
const openai = new OpenAI({
|
|
630
|
+
apiKey: parameters.apiKey,
|
|
631
|
+
organization: parameters.organization,
|
|
632
|
+
});
|
|
633
|
+
|
|
634
|
+
const thread_id = parameters.payload.thread_id;
|
|
635
|
+
const run_id = parameters.payload.run_id;
|
|
636
|
+
const step_id = parameters.payload.step_id;
|
|
637
|
+
|
|
638
|
+
const response = await openai.beta.threads.runs.steps.retrieve(
|
|
639
|
+
thread_id,
|
|
640
|
+
run_id,
|
|
641
|
+
step_id,
|
|
704
642
|
);
|
|
643
|
+
|
|
644
|
+
return response;
|
|
705
645
|
}
|
|
706
|
-
|
|
707
|
-
const
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
|
|
714
|
-
|
|
715
|
-
|
|
716
|
-
|
|
717
|
-
);
|
|
646
|
+
async listAssistantFiles(parameters) {
|
|
647
|
+
const openai = new OpenAI({
|
|
648
|
+
apiKey: parameters.apiKey,
|
|
649
|
+
organization: parameters.organization,
|
|
650
|
+
});
|
|
651
|
+
|
|
652
|
+
const assistant_id = parameters.payload.assistant_id;
|
|
653
|
+
delete parameters.payload.assistant_id;
|
|
654
|
+
|
|
655
|
+
const response = await openai.beta.assistants.files.list(assistant_id, {
|
|
656
|
+
...parameters.payload,
|
|
657
|
+
});
|
|
658
|
+
|
|
659
|
+
return response.body;
|
|
718
660
|
}
|
|
719
|
-
|
|
720
|
-
const
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
);
|
|
661
|
+
async createAssistantFile(parameters) {
|
|
662
|
+
const openai = new OpenAI({
|
|
663
|
+
apiKey: parameters.apiKey,
|
|
664
|
+
organization: parameters.organization,
|
|
665
|
+
});
|
|
666
|
+
|
|
667
|
+
const assistant_id = parameters.payload.assistant_id;
|
|
668
|
+
delete parameters.payload.assistant_id;
|
|
669
|
+
|
|
670
|
+
const response = await openai.beta.assistants.files.create(assistant_id, {
|
|
671
|
+
...parameters.payload,
|
|
672
|
+
});
|
|
673
|
+
|
|
674
|
+
return response;
|
|
731
675
|
}
|
|
732
|
-
|
|
733
|
-
const
|
|
734
|
-
|
|
735
|
-
|
|
736
|
-
|
|
737
|
-
|
|
738
|
-
|
|
739
|
-
|
|
740
|
-
|
|
741
|
-
|
|
742
|
-
|
|
676
|
+
async getAssistantFile(parameters) {
|
|
677
|
+
const openai = new OpenAI({
|
|
678
|
+
apiKey: parameters.apiKey,
|
|
679
|
+
organization: parameters.organization,
|
|
680
|
+
});
|
|
681
|
+
|
|
682
|
+
const assistant_id = parameters.payload.assistant_id;
|
|
683
|
+
const file_id = parameters.payload.file_id;
|
|
684
|
+
delete parameters.payload.assistant_id;
|
|
685
|
+
delete parameters.payload.file_id;
|
|
686
|
+
|
|
687
|
+
const response = await openai.beta.assistants.files.retrieve(
|
|
688
|
+
assistant_id,
|
|
689
|
+
file_id,
|
|
690
|
+
{
|
|
691
|
+
...parameters.payload,
|
|
692
|
+
},
|
|
743
693
|
);
|
|
694
|
+
|
|
695
|
+
return response;
|
|
744
696
|
}
|
|
745
|
-
|
|
746
|
-
const
|
|
747
|
-
|
|
748
|
-
|
|
749
|
-
|
|
750
|
-
|
|
751
|
-
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
697
|
+
async deleteAssistantFile(parameters) {
|
|
698
|
+
const openai = new OpenAI({
|
|
699
|
+
apiKey: parameters.apiKey,
|
|
700
|
+
organization: parameters.organization,
|
|
701
|
+
});
|
|
702
|
+
|
|
703
|
+
const assistant_id = parameters.payload.assistant_id;
|
|
704
|
+
const file_id = parameters.payload.file_id;
|
|
705
|
+
delete parameters.payload.assistant_id;
|
|
706
|
+
delete parameters.payload.file_id;
|
|
707
|
+
|
|
708
|
+
const response = await openai.beta.assistants.files.del(
|
|
709
|
+
assistant_id,
|
|
710
|
+
file_id,
|
|
711
|
+
{
|
|
712
|
+
...parameters.payload,
|
|
713
|
+
},
|
|
757
714
|
);
|
|
715
|
+
|
|
716
|
+
return response;
|
|
758
717
|
}
|
|
759
|
-
|
|
760
|
-
const
|
|
761
|
-
|
|
762
|
-
|
|
763
|
-
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
718
|
+
async listMessageFiles(parameters) {
|
|
719
|
+
const openai = new OpenAI({
|
|
720
|
+
apiKey: parameters.apiKey,
|
|
721
|
+
organization: parameters.organization,
|
|
722
|
+
});
|
|
723
|
+
|
|
724
|
+
const thread_id = parameters.payload.thread_id;
|
|
725
|
+
const message_id = parameters.payload.message_id;
|
|
726
|
+
delete parameters.payload.thread_id;
|
|
727
|
+
delete parameters.payload.message_id;
|
|
728
|
+
|
|
729
|
+
const response = await openai.beta.threads.messages.files.list(
|
|
730
|
+
thread_id,
|
|
731
|
+
message_id,
|
|
732
|
+
{
|
|
733
|
+
...parameters.payload,
|
|
734
|
+
},
|
|
772
735
|
);
|
|
736
|
+
|
|
737
|
+
return response;
|
|
773
738
|
}
|
|
774
|
-
|
|
739
|
+
async getMessageFile(parameters) {
|
|
740
|
+
const openai = new OpenAI({
|
|
741
|
+
apiKey: parameters.apiKey,
|
|
742
|
+
organization: parameters.organization,
|
|
743
|
+
});
|
|
775
744
|
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
745
|
+
const thread_id = parameters.payload.thread_id;
|
|
746
|
+
const message_id = parameters.payload.message_id;
|
|
747
|
+
const file_id = parameters.payload.file_id;
|
|
748
|
+
|
|
749
|
+
delete parameters.payload.thread_id;
|
|
750
|
+
delete parameters.payload.message_id;
|
|
751
|
+
delete parameters.payload.file_id;
|
|
752
|
+
|
|
753
|
+
const response = await openai.beta.threads.messages.files.retrieve(
|
|
754
|
+
thread_id,
|
|
755
|
+
message_id,
|
|
756
|
+
file_id,
|
|
757
|
+
{
|
|
758
|
+
...parameters.payload,
|
|
782
759
|
},
|
|
783
760
|
);
|
|
761
|
+
|
|
762
|
+
return response;
|
|
784
763
|
}
|
|
785
|
-
return queryParameters;
|
|
786
764
|
}
|
|
787
765
|
|
|
788
766
|
return OpenaiApi;
|