@vectorx/agent-runtime 0.5.0 → 0.6.1
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/lib/agent-runner.js +2 -3
- package/lib/agent.js +111 -21
- package/lib/schema/conversation.schema.d.ts +2 -2
- package/lib/schema/message.schema.d.ts +147 -0
- package/lib/schema/message.schema.js +18 -1
- package/package.json +5 -3
package/lib/agent-runner.js
CHANGED
|
@@ -30,7 +30,7 @@ class AgentDriver {
|
|
|
30
30
|
}
|
|
31
31
|
const apiFuncs = {
|
|
32
32
|
"POST:send-message": this.sendMessageFunc.bind(this),
|
|
33
|
-
"POST:upload-file": this.uploadFileFunc.bind(this),
|
|
33
|
+
"POST:upload-openai-file": this.uploadFileFunc.bind(this),
|
|
34
34
|
"GET:query-tasks": this.queryTasksFunc.bind(this),
|
|
35
35
|
"GET:messages": this.getHistoryMessagesFunc.bind(this),
|
|
36
36
|
"GET:info": this.getAgentInfoFunc.bind(this),
|
|
@@ -112,8 +112,7 @@ class AgentDriver {
|
|
|
112
112
|
return __awaiter(this, void 0, void 0, function* () {
|
|
113
113
|
var _a, _b;
|
|
114
114
|
try {
|
|
115
|
-
|
|
116
|
-
return yield ((_b = (_a = this.agent).uploadFile) === null || _b === void 0 ? void 0 : _b.call(_a, parsedEvent));
|
|
115
|
+
return yield ((_b = (_a = this.agent).uploadFile) === null || _b === void 0 ? void 0 : _b.call(_a, event));
|
|
117
116
|
}
|
|
118
117
|
catch (e) {
|
|
119
118
|
return (0, integration_response_1.createIntegrationResponse)(500, codes_1.CODES.AGENT_API_ERROR, `Agent API 'uploadFile' failed, message: ${e}`);
|
package/lib/agent.js
CHANGED
|
@@ -1,4 +1,37 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
2
35
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
36
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
37
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -640,43 +673,82 @@ class AgentRuntime {
|
|
|
640
673
|
}
|
|
641
674
|
uploadFile(input) {
|
|
642
675
|
return __awaiter(this, void 0, void 0, function* () {
|
|
676
|
+
var _a, _b;
|
|
677
|
+
const fs = yield Promise.resolve().then(() => __importStar(require("fs")));
|
|
678
|
+
const path = yield Promise.resolve().then(() => __importStar(require("path")));
|
|
679
|
+
const os = yield Promise.resolve().then(() => __importStar(require("os")));
|
|
680
|
+
let tempFilePath = null;
|
|
643
681
|
try {
|
|
644
|
-
const
|
|
682
|
+
const fileData = input.file;
|
|
683
|
+
const rawFilename = fileData.newFilename || fileData.name || fileData.originalFilename || "unknown";
|
|
684
|
+
const baseName = (yield Promise.resolve().then(() => __importStar(require("path")))).basename(String(rawFilename));
|
|
685
|
+
const safeFilename = baseName.replace(/[\/\\:*?"<>|]/g, "_");
|
|
686
|
+
const filename = safeFilename;
|
|
687
|
+
const purpose = input.purpose || "file-extract";
|
|
688
|
+
const mimeType = fileData.type || fileData.mimetype || "application/octet-stream";
|
|
689
|
+
const fileBuffer = fileData.buffer || fileData;
|
|
690
|
+
if (!Buffer.isBuffer(fileBuffer)) {
|
|
691
|
+
throw new Error("无法从上传的文件对象中提取文件内容:buffer 不存在或格式错误");
|
|
692
|
+
}
|
|
693
|
+
this.logger.logAccesslog(functions_framework_1.LogLevel.INFO, safeJsonStringify({
|
|
694
|
+
type: AgentEventType.FRAMEWORK_EVENT,
|
|
695
|
+
scene: "AI_SDK_UPLOAD_FILE_PARSE",
|
|
696
|
+
message: "Parsed upload file metadata",
|
|
697
|
+
eventId: this.context.eventID,
|
|
698
|
+
timestamp: new Date().toISOString(),
|
|
699
|
+
data: {
|
|
700
|
+
filename,
|
|
701
|
+
rawFilename,
|
|
702
|
+
mimeType,
|
|
703
|
+
purpose,
|
|
704
|
+
size: typeof (fileData === null || fileData === void 0 ? void 0 : fileData.size) === "number" ? fileData.size : fileBuffer.length,
|
|
705
|
+
hasBuffer: true,
|
|
706
|
+
source: {
|
|
707
|
+
name: fileData === null || fileData === void 0 ? void 0 : fileData.name,
|
|
708
|
+
newFilename: fileData === null || fileData === void 0 ? void 0 : fileData.newFilename,
|
|
709
|
+
originalFilename: fileData === null || fileData === void 0 ? void 0 : fileData.originalFilename,
|
|
710
|
+
mimetype: fileData === null || fileData === void 0 ? void 0 : fileData.mimetype,
|
|
711
|
+
type: fileData === null || fileData === void 0 ? void 0 : fileData.type,
|
|
712
|
+
filepath: fileData === null || fileData === void 0 ? void 0 : fileData.filepath,
|
|
713
|
+
},
|
|
714
|
+
},
|
|
715
|
+
}));
|
|
716
|
+
const tempDir = os.tmpdir();
|
|
717
|
+
const timestamp = Date.now();
|
|
718
|
+
const randomStr = Math.random().toString(36).substring(2, 15);
|
|
719
|
+
const ext = path.extname(filename) || "";
|
|
720
|
+
tempFilePath = path.join(tempDir, `upload_${timestamp}_${randomStr}${ext}`);
|
|
721
|
+
fs.writeFileSync(tempFilePath, fileBuffer);
|
|
645
722
|
this.logger.logAccesslog(functions_framework_1.LogLevel.INFO, safeJsonStringify({
|
|
646
723
|
type: AgentEventType.FRAMEWORK_EVENT,
|
|
647
724
|
scene: "AI_SDK_UPLOAD_FILE",
|
|
648
725
|
method: "POST",
|
|
649
726
|
url: "https://dashscope.aliyuncs.com/compatible-mode/v1/files",
|
|
650
727
|
headers: {},
|
|
651
|
-
data: { filename
|
|
728
|
+
data: { filename, purpose, tempFilePath },
|
|
652
729
|
eventId: this.context.eventID,
|
|
653
730
|
timestamp: new Date().toISOString(),
|
|
654
731
|
}));
|
|
655
732
|
const token = yield this.ai.tokenManager.getValidToken();
|
|
656
|
-
const
|
|
657
|
-
const formData =
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
},
|
|
665
|
-
purpose: validatedInput.purpose || "file-extract",
|
|
666
|
-
};
|
|
667
|
-
const response = yield this.request.upload({
|
|
733
|
+
const FormData = (yield Promise.resolve().then(() => __importStar(require("form-data")))).default;
|
|
734
|
+
const formData = new FormData();
|
|
735
|
+
formData.append("file", fs.createReadStream(tempFilePath), {
|
|
736
|
+
filename,
|
|
737
|
+
contentType: mimeType,
|
|
738
|
+
});
|
|
739
|
+
formData.append("purpose", purpose);
|
|
740
|
+
const response = yield this.request.fetch({
|
|
668
741
|
url: "https://dashscope.aliyuncs.com/compatible-mode/v1/files",
|
|
669
|
-
headers: {
|
|
670
|
-
|
|
671
|
-
|
|
672
|
-
data: formData,
|
|
742
|
+
headers: Object.assign({ Authorization: `Bearer ${token}` }, formData.getHeaders()),
|
|
743
|
+
method: "POST",
|
|
744
|
+
body: formData,
|
|
673
745
|
});
|
|
674
746
|
this.logger.logAccesslog(functions_framework_1.LogLevel.INFO, safeJsonStringify({
|
|
675
747
|
type: AgentEventType.FRAMEWORK_EVENT,
|
|
676
748
|
scene: "AI_SDK_UPLOAD_FILE",
|
|
677
749
|
method: "POST",
|
|
678
750
|
url: "https://dashscope.aliyuncs.com/compatible-mode/v1/files",
|
|
679
|
-
status: response.
|
|
751
|
+
status: response.statusCode,
|
|
680
752
|
data: response.data,
|
|
681
753
|
eventId: this.context.eventID,
|
|
682
754
|
timestamp: new Date().toISOString(),
|
|
@@ -690,8 +762,8 @@ class AgentRuntime {
|
|
|
690
762
|
}
|
|
691
763
|
else {
|
|
692
764
|
return {
|
|
693
|
-
code: response.
|
|
694
|
-
msg: response.
|
|
765
|
+
code: response.statusCode,
|
|
766
|
+
msg: ((_b = (_a = response.data) === null || _a === void 0 ? void 0 : _a.error) === null || _b === void 0 ? void 0 : _b.message) || "文件上传失败",
|
|
695
767
|
data: response.data,
|
|
696
768
|
};
|
|
697
769
|
}
|
|
@@ -712,6 +784,24 @@ class AgentRuntime {
|
|
|
712
784
|
msg: error instanceof Error ? error.message : "文件上传失败",
|
|
713
785
|
};
|
|
714
786
|
}
|
|
787
|
+
finally {
|
|
788
|
+
if (tempFilePath) {
|
|
789
|
+
try {
|
|
790
|
+
fs.unlinkSync(tempFilePath);
|
|
791
|
+
}
|
|
792
|
+
catch (cleanupError) {
|
|
793
|
+
this.logger.logAccesslog(functions_framework_1.LogLevel.WARN, safeJsonStringify({
|
|
794
|
+
type: AgentEventType.FRAMEWORK_EVENT,
|
|
795
|
+
scene: "AI_SDK_UPLOAD_FILE_CLEANUP",
|
|
796
|
+
message: "临时文件清理失败",
|
|
797
|
+
tempFilePath,
|
|
798
|
+
error: cleanupError instanceof Error ? cleanupError.message : "未知错误",
|
|
799
|
+
eventId: this.context.eventID,
|
|
800
|
+
timestamp: new Date().toISOString(),
|
|
801
|
+
}));
|
|
802
|
+
}
|
|
803
|
+
}
|
|
804
|
+
}
|
|
715
805
|
});
|
|
716
806
|
}
|
|
717
807
|
}
|
|
@@ -101,13 +101,13 @@ export declare const participantInfoSchema: z.ZodObject<{
|
|
|
101
101
|
avatar_url: z.ZodString;
|
|
102
102
|
}, "strip", z.ZodTypeAny, {
|
|
103
103
|
name?: string;
|
|
104
|
-
desc?: string;
|
|
105
104
|
id?: string;
|
|
105
|
+
desc?: string;
|
|
106
106
|
avatar_url?: string;
|
|
107
107
|
}, {
|
|
108
108
|
name?: string;
|
|
109
|
-
desc?: string;
|
|
110
109
|
id?: string;
|
|
110
|
+
desc?: string;
|
|
111
111
|
avatar_url?: string;
|
|
112
112
|
}>;
|
|
113
113
|
export declare const conversationSchema: z.ZodObject<{
|
|
@@ -84,6 +84,19 @@ export declare const videoUrlContentSchema: z.ZodObject<{
|
|
|
84
84
|
url?: string;
|
|
85
85
|
};
|
|
86
86
|
}>;
|
|
87
|
+
export declare const docUrlContentSchema: z.ZodObject<{
|
|
88
|
+
type: z.ZodLiteral<"doc_url">;
|
|
89
|
+
doc_url: z.ZodArray<z.ZodString, "many">;
|
|
90
|
+
file_parsing_strategy: z.ZodOptional<z.ZodString>;
|
|
91
|
+
}, "strip", z.ZodTypeAny, {
|
|
92
|
+
type?: "doc_url";
|
|
93
|
+
doc_url?: string[];
|
|
94
|
+
file_parsing_strategy?: string;
|
|
95
|
+
}, {
|
|
96
|
+
type?: "doc_url";
|
|
97
|
+
doc_url?: string[];
|
|
98
|
+
file_parsing_strategy?: string;
|
|
99
|
+
}>;
|
|
87
100
|
export declare const messageContentSchema: z.ZodUnion<[z.ZodObject<{
|
|
88
101
|
type: z.ZodLiteral<"text">;
|
|
89
102
|
text: z.ZodString;
|
|
@@ -164,6 +177,18 @@ export declare const messageContentSchema: z.ZodUnion<[z.ZodObject<{
|
|
|
164
177
|
video_url?: {
|
|
165
178
|
url?: string;
|
|
166
179
|
};
|
|
180
|
+
}>, z.ZodObject<{
|
|
181
|
+
type: z.ZodLiteral<"doc_url">;
|
|
182
|
+
doc_url: z.ZodArray<z.ZodString, "many">;
|
|
183
|
+
file_parsing_strategy: z.ZodOptional<z.ZodString>;
|
|
184
|
+
}, "strip", z.ZodTypeAny, {
|
|
185
|
+
type?: "doc_url";
|
|
186
|
+
doc_url?: string[];
|
|
187
|
+
file_parsing_strategy?: string;
|
|
188
|
+
}, {
|
|
189
|
+
type?: "doc_url";
|
|
190
|
+
doc_url?: string[];
|
|
191
|
+
file_parsing_strategy?: string;
|
|
167
192
|
}>]>;
|
|
168
193
|
export declare const baseMessageSchema: z.ZodObject<{
|
|
169
194
|
role: z.ZodUnion<[z.ZodLiteral<"system">, z.ZodLiteral<"user">, z.ZodLiteral<"assistant">]>;
|
|
@@ -247,6 +272,18 @@ export declare const baseMessageSchema: z.ZodObject<{
|
|
|
247
272
|
video_url?: {
|
|
248
273
|
url?: string;
|
|
249
274
|
};
|
|
275
|
+
}>, z.ZodObject<{
|
|
276
|
+
type: z.ZodLiteral<"doc_url">;
|
|
277
|
+
doc_url: z.ZodArray<z.ZodString, "many">;
|
|
278
|
+
file_parsing_strategy: z.ZodOptional<z.ZodString>;
|
|
279
|
+
}, "strip", z.ZodTypeAny, {
|
|
280
|
+
type?: "doc_url";
|
|
281
|
+
doc_url?: string[];
|
|
282
|
+
file_parsing_strategy?: string;
|
|
283
|
+
}, {
|
|
284
|
+
type?: "doc_url";
|
|
285
|
+
doc_url?: string[];
|
|
286
|
+
file_parsing_strategy?: string;
|
|
250
287
|
}>]>, "many">]>;
|
|
251
288
|
}, "strip", z.ZodTypeAny, {
|
|
252
289
|
role?: "user" | "assistant" | "system";
|
|
@@ -272,6 +309,10 @@ export declare const baseMessageSchema: z.ZodObject<{
|
|
|
272
309
|
video_url?: {
|
|
273
310
|
url?: string;
|
|
274
311
|
};
|
|
312
|
+
} | {
|
|
313
|
+
type?: "doc_url";
|
|
314
|
+
doc_url?: string[];
|
|
315
|
+
file_parsing_strategy?: string;
|
|
275
316
|
})[];
|
|
276
317
|
}, {
|
|
277
318
|
role?: "user" | "assistant" | "system";
|
|
@@ -297,6 +338,10 @@ export declare const baseMessageSchema: z.ZodObject<{
|
|
|
297
338
|
video_url?: {
|
|
298
339
|
url?: string;
|
|
299
340
|
};
|
|
341
|
+
} | {
|
|
342
|
+
type?: "doc_url";
|
|
343
|
+
doc_url?: string[];
|
|
344
|
+
file_parsing_strategy?: string;
|
|
300
345
|
})[];
|
|
301
346
|
}>;
|
|
302
347
|
export declare const toolCallMessageSchema: z.ZodObject<{
|
|
@@ -410,6 +455,18 @@ export declare const messageItemSchema: z.ZodUnion<[z.ZodObject<{
|
|
|
410
455
|
video_url?: {
|
|
411
456
|
url?: string;
|
|
412
457
|
};
|
|
458
|
+
}>, z.ZodObject<{
|
|
459
|
+
type: z.ZodLiteral<"doc_url">;
|
|
460
|
+
doc_url: z.ZodArray<z.ZodString, "many">;
|
|
461
|
+
file_parsing_strategy: z.ZodOptional<z.ZodString>;
|
|
462
|
+
}, "strip", z.ZodTypeAny, {
|
|
463
|
+
type?: "doc_url";
|
|
464
|
+
doc_url?: string[];
|
|
465
|
+
file_parsing_strategy?: string;
|
|
466
|
+
}, {
|
|
467
|
+
type?: "doc_url";
|
|
468
|
+
doc_url?: string[];
|
|
469
|
+
file_parsing_strategy?: string;
|
|
413
470
|
}>]>, "many">]>;
|
|
414
471
|
}, "strip", z.ZodTypeAny, {
|
|
415
472
|
role?: "user" | "assistant" | "system";
|
|
@@ -435,6 +492,10 @@ export declare const messageItemSchema: z.ZodUnion<[z.ZodObject<{
|
|
|
435
492
|
video_url?: {
|
|
436
493
|
url?: string;
|
|
437
494
|
};
|
|
495
|
+
} | {
|
|
496
|
+
type?: "doc_url";
|
|
497
|
+
doc_url?: string[];
|
|
498
|
+
file_parsing_strategy?: string;
|
|
438
499
|
})[];
|
|
439
500
|
}, {
|
|
440
501
|
role?: "user" | "assistant" | "system";
|
|
@@ -460,6 +521,10 @@ export declare const messageItemSchema: z.ZodUnion<[z.ZodObject<{
|
|
|
460
521
|
video_url?: {
|
|
461
522
|
url?: string;
|
|
462
523
|
};
|
|
524
|
+
} | {
|
|
525
|
+
type?: "doc_url";
|
|
526
|
+
doc_url?: string[];
|
|
527
|
+
file_parsing_strategy?: string;
|
|
463
528
|
})[];
|
|
464
529
|
}>, z.ZodObject<{
|
|
465
530
|
role: z.ZodLiteral<"tool">;
|
|
@@ -571,6 +636,18 @@ export declare const messageHistorySchema: z.ZodArray<z.ZodUnion<[z.ZodObject<{
|
|
|
571
636
|
video_url?: {
|
|
572
637
|
url?: string;
|
|
573
638
|
};
|
|
639
|
+
}>, z.ZodObject<{
|
|
640
|
+
type: z.ZodLiteral<"doc_url">;
|
|
641
|
+
doc_url: z.ZodArray<z.ZodString, "many">;
|
|
642
|
+
file_parsing_strategy: z.ZodOptional<z.ZodString>;
|
|
643
|
+
}, "strip", z.ZodTypeAny, {
|
|
644
|
+
type?: "doc_url";
|
|
645
|
+
doc_url?: string[];
|
|
646
|
+
file_parsing_strategy?: string;
|
|
647
|
+
}, {
|
|
648
|
+
type?: "doc_url";
|
|
649
|
+
doc_url?: string[];
|
|
650
|
+
file_parsing_strategy?: string;
|
|
574
651
|
}>]>, "many">]>;
|
|
575
652
|
}, "strip", z.ZodTypeAny, {
|
|
576
653
|
role?: "user" | "assistant" | "system";
|
|
@@ -596,6 +673,10 @@ export declare const messageHistorySchema: z.ZodArray<z.ZodUnion<[z.ZodObject<{
|
|
|
596
673
|
video_url?: {
|
|
597
674
|
url?: string;
|
|
598
675
|
};
|
|
676
|
+
} | {
|
|
677
|
+
type?: "doc_url";
|
|
678
|
+
doc_url?: string[];
|
|
679
|
+
file_parsing_strategy?: string;
|
|
599
680
|
})[];
|
|
600
681
|
}, {
|
|
601
682
|
role?: "user" | "assistant" | "system";
|
|
@@ -621,6 +702,10 @@ export declare const messageHistorySchema: z.ZodArray<z.ZodUnion<[z.ZodObject<{
|
|
|
621
702
|
video_url?: {
|
|
622
703
|
url?: string;
|
|
623
704
|
};
|
|
705
|
+
} | {
|
|
706
|
+
type?: "doc_url";
|
|
707
|
+
doc_url?: string[];
|
|
708
|
+
file_parsing_strategy?: string;
|
|
624
709
|
})[];
|
|
625
710
|
}>, z.ZodObject<{
|
|
626
711
|
role: z.ZodLiteral<"tool">;
|
|
@@ -734,6 +819,18 @@ export declare const sendMessageInputSchema: z.ZodObject<{
|
|
|
734
819
|
video_url?: {
|
|
735
820
|
url?: string;
|
|
736
821
|
};
|
|
822
|
+
}>, z.ZodObject<{
|
|
823
|
+
type: z.ZodLiteral<"doc_url">;
|
|
824
|
+
doc_url: z.ZodArray<z.ZodString, "many">;
|
|
825
|
+
file_parsing_strategy: z.ZodOptional<z.ZodString>;
|
|
826
|
+
}, "strip", z.ZodTypeAny, {
|
|
827
|
+
type?: "doc_url";
|
|
828
|
+
doc_url?: string[];
|
|
829
|
+
file_parsing_strategy?: string;
|
|
830
|
+
}, {
|
|
831
|
+
type?: "doc_url";
|
|
832
|
+
doc_url?: string[];
|
|
833
|
+
file_parsing_strategy?: string;
|
|
737
834
|
}>]>, "many">]>;
|
|
738
835
|
}, "strip", z.ZodTypeAny, {
|
|
739
836
|
role?: "user" | "assistant" | "system";
|
|
@@ -759,6 +856,10 @@ export declare const sendMessageInputSchema: z.ZodObject<{
|
|
|
759
856
|
video_url?: {
|
|
760
857
|
url?: string;
|
|
761
858
|
};
|
|
859
|
+
} | {
|
|
860
|
+
type?: "doc_url";
|
|
861
|
+
doc_url?: string[];
|
|
862
|
+
file_parsing_strategy?: string;
|
|
762
863
|
})[];
|
|
763
864
|
}, {
|
|
764
865
|
role?: "user" | "assistant" | "system";
|
|
@@ -784,6 +885,10 @@ export declare const sendMessageInputSchema: z.ZodObject<{
|
|
|
784
885
|
video_url?: {
|
|
785
886
|
url?: string;
|
|
786
887
|
};
|
|
888
|
+
} | {
|
|
889
|
+
type?: "doc_url";
|
|
890
|
+
doc_url?: string[];
|
|
891
|
+
file_parsing_strategy?: string;
|
|
787
892
|
})[];
|
|
788
893
|
}>, z.ZodObject<{
|
|
789
894
|
role: z.ZodLiteral<"tool">;
|
|
@@ -813,6 +918,25 @@ export declare const sendMessageInputSchema: z.ZodObject<{
|
|
|
813
918
|
content?: string | any[] | Record<string, any>;
|
|
814
919
|
name?: string;
|
|
815
920
|
}>]>, "many">;
|
|
921
|
+
files: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
922
|
+
id: z.ZodString;
|
|
923
|
+
filename: z.ZodString;
|
|
924
|
+
purpose: z.ZodString;
|
|
925
|
+
bytes: z.ZodNumber;
|
|
926
|
+
created_at: z.ZodNumber;
|
|
927
|
+
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
|
928
|
+
id: z.ZodString;
|
|
929
|
+
filename: z.ZodString;
|
|
930
|
+
purpose: z.ZodString;
|
|
931
|
+
bytes: z.ZodNumber;
|
|
932
|
+
created_at: z.ZodNumber;
|
|
933
|
+
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
|
934
|
+
id: z.ZodString;
|
|
935
|
+
filename: z.ZodString;
|
|
936
|
+
purpose: z.ZodString;
|
|
937
|
+
bytes: z.ZodNumber;
|
|
938
|
+
created_at: z.ZodNumber;
|
|
939
|
+
}, z.ZodTypeAny, "passthrough">>, "many">>;
|
|
816
940
|
}, "strip", z.ZodTypeAny, {
|
|
817
941
|
msg?: string;
|
|
818
942
|
history?: ({
|
|
@@ -839,6 +963,10 @@ export declare const sendMessageInputSchema: z.ZodObject<{
|
|
|
839
963
|
video_url?: {
|
|
840
964
|
url?: string;
|
|
841
965
|
};
|
|
966
|
+
} | {
|
|
967
|
+
type?: "doc_url";
|
|
968
|
+
doc_url?: string[];
|
|
969
|
+
file_parsing_strategy?: string;
|
|
842
970
|
})[];
|
|
843
971
|
} | {
|
|
844
972
|
function?: string;
|
|
@@ -850,6 +978,13 @@ export declare const sendMessageInputSchema: z.ZodObject<{
|
|
|
850
978
|
content?: string | any[] | Record<string, any>;
|
|
851
979
|
name?: string;
|
|
852
980
|
})[];
|
|
981
|
+
files?: z.objectOutputType<{
|
|
982
|
+
id: z.ZodString;
|
|
983
|
+
filename: z.ZodString;
|
|
984
|
+
purpose: z.ZodString;
|
|
985
|
+
bytes: z.ZodNumber;
|
|
986
|
+
created_at: z.ZodNumber;
|
|
987
|
+
}, z.ZodTypeAny, "passthrough">[];
|
|
853
988
|
}, {
|
|
854
989
|
msg?: string;
|
|
855
990
|
history?: ({
|
|
@@ -876,6 +1011,10 @@ export declare const sendMessageInputSchema: z.ZodObject<{
|
|
|
876
1011
|
video_url?: {
|
|
877
1012
|
url?: string;
|
|
878
1013
|
};
|
|
1014
|
+
} | {
|
|
1015
|
+
type?: "doc_url";
|
|
1016
|
+
doc_url?: string[];
|
|
1017
|
+
file_parsing_strategy?: string;
|
|
879
1018
|
})[];
|
|
880
1019
|
} | {
|
|
881
1020
|
function?: string;
|
|
@@ -887,12 +1026,20 @@ export declare const sendMessageInputSchema: z.ZodObject<{
|
|
|
887
1026
|
content?: string | any[] | Record<string, any>;
|
|
888
1027
|
name?: string;
|
|
889
1028
|
})[];
|
|
1029
|
+
files?: z.objectInputType<{
|
|
1030
|
+
id: z.ZodString;
|
|
1031
|
+
filename: z.ZodString;
|
|
1032
|
+
purpose: z.ZodString;
|
|
1033
|
+
bytes: z.ZodNumber;
|
|
1034
|
+
created_at: z.ZodNumber;
|
|
1035
|
+
}, z.ZodTypeAny, "passthrough">[];
|
|
890
1036
|
}>;
|
|
891
1037
|
export type TextContent = z.infer<typeof textContentSchema>;
|
|
892
1038
|
export type ImageContent = z.infer<typeof imageContentSchema>;
|
|
893
1039
|
export type AudioContent = z.infer<typeof audioContentSchema>;
|
|
894
1040
|
export type VideoContent = z.infer<typeof videoContentSchema>;
|
|
895
1041
|
export type VideoUrlContent = z.infer<typeof videoUrlContentSchema>;
|
|
1042
|
+
export type DocUrlContent = z.infer<typeof docUrlContentSchema>;
|
|
896
1043
|
export type MessageContent = z.infer<typeof messageContentSchema>;
|
|
897
1044
|
export type BaseMessage = z.infer<typeof baseMessageSchema>;
|
|
898
1045
|
export type ToolCallMessage = z.infer<typeof toolCallMessageSchema>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.sendMessageInputSchema = exports.messageHistorySchema = exports.messageItemSchema = exports.toolResultMessageSchema = exports.toolCallMessageSchema = exports.baseMessageSchema = exports.messageContentSchema = exports.videoUrlContentSchema = exports.videoContentSchema = exports.audioContentSchema = exports.imageContentSchema = exports.textContentSchema = void 0;
|
|
3
|
+
exports.sendMessageInputSchema = exports.messageHistorySchema = exports.messageItemSchema = exports.toolResultMessageSchema = exports.toolCallMessageSchema = exports.baseMessageSchema = exports.messageContentSchema = exports.docUrlContentSchema = exports.videoUrlContentSchema = exports.videoContentSchema = exports.audioContentSchema = exports.imageContentSchema = exports.textContentSchema = void 0;
|
|
4
4
|
const zod_1 = require("zod");
|
|
5
5
|
exports.textContentSchema = zod_1.z.object({
|
|
6
6
|
type: zod_1.z.literal("text"),
|
|
@@ -29,12 +29,18 @@ exports.videoUrlContentSchema = zod_1.z.object({
|
|
|
29
29
|
url: zod_1.z.string(),
|
|
30
30
|
}),
|
|
31
31
|
});
|
|
32
|
+
exports.docUrlContentSchema = zod_1.z.object({
|
|
33
|
+
type: zod_1.z.literal("doc_url"),
|
|
34
|
+
doc_url: zod_1.z.array(zod_1.z.string()),
|
|
35
|
+
file_parsing_strategy: zod_1.z.string().optional(),
|
|
36
|
+
});
|
|
32
37
|
exports.messageContentSchema = zod_1.z.union([
|
|
33
38
|
exports.textContentSchema,
|
|
34
39
|
exports.imageContentSchema,
|
|
35
40
|
exports.audioContentSchema,
|
|
36
41
|
exports.videoContentSchema,
|
|
37
42
|
exports.videoUrlContentSchema,
|
|
43
|
+
exports.docUrlContentSchema,
|
|
38
44
|
]);
|
|
39
45
|
exports.baseMessageSchema = zod_1.z.object({
|
|
40
46
|
role: zod_1.z.union([zod_1.z.literal("system"), zod_1.z.literal("user"), zod_1.z.literal("assistant")]),
|
|
@@ -59,4 +65,15 @@ exports.messageHistorySchema = zod_1.z.array(exports.messageItemSchema);
|
|
|
59
65
|
exports.sendMessageInputSchema = zod_1.z.object({
|
|
60
66
|
msg: zod_1.z.string(),
|
|
61
67
|
history: exports.messageHistorySchema,
|
|
68
|
+
files: zod_1.z
|
|
69
|
+
.array(zod_1.z
|
|
70
|
+
.object({
|
|
71
|
+
id: zod_1.z.string(),
|
|
72
|
+
filename: zod_1.z.string(),
|
|
73
|
+
purpose: zod_1.z.string(),
|
|
74
|
+
bytes: zod_1.z.number(),
|
|
75
|
+
created_at: zod_1.z.number(),
|
|
76
|
+
})
|
|
77
|
+
.passthrough())
|
|
78
|
+
.optional(),
|
|
62
79
|
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vectorx/agent-runtime",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.6.1",
|
|
4
4
|
"description": "Cloud AI agent runtime",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"files": [
|
|
@@ -20,13 +20,15 @@
|
|
|
20
20
|
"node": ">=18.0.0"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"@vectorx/ai-sdk": "0.
|
|
24
|
-
"@vectorx/functions-framework": "0.
|
|
23
|
+
"@vectorx/ai-sdk": "0.6.1",
|
|
24
|
+
"@vectorx/functions-framework": "0.6.1",
|
|
25
|
+
"form-data": "^4.0.0",
|
|
25
26
|
"langfuse": "^3.38.4",
|
|
26
27
|
"query-string": "^6.14.1",
|
|
27
28
|
"zod": "^3.24.2"
|
|
28
29
|
},
|
|
29
30
|
"devDependencies": {
|
|
31
|
+
"@types/form-data": "^2.5.0",
|
|
30
32
|
"@types/jest": "^29.5.12",
|
|
31
33
|
"@types/node": "^20.11.24",
|
|
32
34
|
"@typescript-eslint/eslint-plugin": "^7.1.0",
|