@assistant-ui/react 0.7.22 → 0.7.24
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/dist/runtimes/composer/BaseComposerRuntimeCore.d.ts +1 -1
- package/dist/runtimes/composer/BaseComposerRuntimeCore.d.ts.map +1 -1
- package/dist/runtimes/composer/BaseComposerRuntimeCore.js +13 -5
- package/dist/runtimes/composer/BaseComposerRuntimeCore.js.map +1 -1
- package/dist/runtimes/composer/BaseComposerRuntimeCore.mjs +13 -5
- package/dist/runtimes/composer/BaseComposerRuntimeCore.mjs.map +1 -1
- package/dist/runtimes/edge/EdgeChatAdapter.d.ts +1 -1
- package/dist/runtimes/edge/EdgeChatAdapter.d.ts.map +1 -1
- package/dist/runtimes/edge/EdgeChatAdapter.js +2 -0
- package/dist/runtimes/edge/EdgeChatAdapter.js.map +1 -1
- package/dist/runtimes/edge/EdgeChatAdapter.mjs +2 -0
- package/dist/runtimes/edge/EdgeChatAdapter.mjs.map +1 -1
- package/dist/runtimes/edge/EdgeRuntimeRequestOptions.d.ts +13 -0
- package/dist/runtimes/edge/EdgeRuntimeRequestOptions.d.ts.map +1 -1
- package/dist/runtimes/edge/EdgeRuntimeRequestOptions.js +3 -0
- package/dist/runtimes/edge/EdgeRuntimeRequestOptions.js.map +1 -1
- package/dist/runtimes/edge/EdgeRuntimeRequestOptions.mjs +3 -0
- package/dist/runtimes/edge/EdgeRuntimeRequestOptions.mjs.map +1 -1
- package/dist/types/AssistantTypes.d.ts +1 -1
- package/dist/types/AssistantTypes.d.ts.map +1 -1
- package/dist/types/AssistantTypes.js.map +1 -1
- package/package.json +3 -3
- package/src/runtimes/composer/BaseComposerRuntimeCore.tsx +21 -6
- package/src/runtimes/edge/EdgeChatAdapter.ts +2 -0
- package/src/runtimes/edge/EdgeRuntimeRequestOptions.ts +5 -0
- package/src/types/AssistantTypes.ts +1 -1
|
@@ -21,7 +21,7 @@ export declare abstract class BaseComposerRuntimeCore implements ComposerRuntime
|
|
|
21
21
|
setText(value: string): void;
|
|
22
22
|
setRole(role: MessageRole): void;
|
|
23
23
|
setRunConfig(runConfig: RunConfig): void;
|
|
24
|
-
private
|
|
24
|
+
private _sendOrReset;
|
|
25
25
|
reset(): Promise<void>;
|
|
26
26
|
send(): Promise<void>;
|
|
27
27
|
cancel(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseComposerRuntimeCore.d.ts","sourceRoot":"","sources":["../../../src/runtimes/composer/BaseComposerRuntimeCore.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAGX,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACzB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAKpE,8BAAsB,uBAAwB,YAAW,mBAAmB;IAC1E,SAAgB,SAAS,QAAQ;IAEjC,SAAS,CAAC,QAAQ,CAAC,oBAAoB,IAAI,iBAAiB,GAAG,SAAS;IAEjE,mBAAmB,IAAI,MAAM;IAIpC,OAAO,CAAC,YAAY,CAA6B;IACjD,IAAW,WAAW,0BAErB;IAED,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,UAAU,EAAE;IAKrD,aAAoB,SAAS,IAAI,OAAO,CAAC;IAEzC,IAAW,OAAO,YAEjB;IAED,OAAO,CAAC,KAAK,CAAM;IAEnB,IAAI,IAAI,WAEP;IAED,OAAO,CAAC,KAAK,CAAuB;IAEpC,IAAI,IAAI,gBAEP;IAED,OAAO,CAAC,UAAU,CAAiB;IAEnC,IAAI,SAAS,cAEZ;IAEM,OAAO,CAAC,KAAK,EAAE,MAAM;IAOrB,OAAO,CAAC,IAAI,EAAE,WAAW;IAOzB,YAAY,CAAC,SAAS,EAAE,SAAS;IAOxC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"BaseComposerRuntimeCore.d.ts","sourceRoot":"","sources":["../../../src/runtimes/composer/BaseComposerRuntimeCore.tsx"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EAGX,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAClD,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACzB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAKpE,8BAAsB,uBAAwB,YAAW,mBAAmB;IAC1E,SAAgB,SAAS,QAAQ;IAEjC,SAAS,CAAC,QAAQ,CAAC,oBAAoB,IAAI,iBAAiB,GAAG,SAAS;IAEjE,mBAAmB,IAAI,MAAM;IAIpC,OAAO,CAAC,YAAY,CAA6B;IACjD,IAAW,WAAW,0BAErB;IAED,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,UAAU,EAAE;IAKrD,aAAoB,SAAS,IAAI,OAAO,CAAC;IAEzC,IAAW,OAAO,YAEjB;IAED,OAAO,CAAC,KAAK,CAAM;IAEnB,IAAI,IAAI,WAEP;IAED,OAAO,CAAC,KAAK,CAAuB;IAEpC,IAAI,IAAI,gBAEP;IAED,OAAO,CAAC,UAAU,CAAiB;IAEnC,IAAI,SAAS,cAEZ;IAEM,OAAO,CAAC,KAAK,EAAE,MAAM;IAOrB,OAAO,CAAC,IAAI,EAAE,WAAW;IAOzB,YAAY,CAAC,SAAS,EAAE,SAAS;IAOxC,OAAO,CAAC,YAAY;IAMP,KAAK;IAsBL,IAAI;IAyBV,MAAM;IAIb,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC,GAAG,IAAI;IAC7E,SAAS,CAAC,QAAQ,CAAC,YAAY,IAAI,IAAI;IAEjC,aAAa,CAAC,IAAI,EAAE,IAAI;IAUxB,gBAAgB,CAAC,YAAY,EAAE,MAAM;IAc3C,OAAO,CAAC,cAAc,CAAyB;IAE/C,SAAS,CAAC,iBAAiB;IAIpB,SAAS,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,WAAW;IAKnD,OAAO,CAAC,iBAAiB,CAGrB;IAEJ,SAAS,CAAC,uBAAuB,CAAC,KAAK,EAAE,wBAAwB;IAO1D,WAAW,CAAC,KAAK,EAAE,wBAAwB,EAAE,QAAQ,EAAE,MAAM,IAAI;CAczE"}
|
|
@@ -67,15 +67,23 @@ var BaseComposerRuntimeCore = class {
|
|
|
67
67
|
this._runConfig = runConfig;
|
|
68
68
|
this.notifySubscribers();
|
|
69
69
|
}
|
|
70
|
-
|
|
70
|
+
_sendOrReset() {
|
|
71
71
|
this._attachments = [];
|
|
72
72
|
this._text = "";
|
|
73
|
-
this._role = "user";
|
|
74
|
-
this._runConfig = {};
|
|
75
73
|
this.notifySubscribers();
|
|
76
74
|
}
|
|
77
75
|
async reset() {
|
|
78
|
-
|
|
76
|
+
if (this._attachments.length === 0 && this._text === "" && this._role === "user" && Object.keys(this._runConfig).length === 0) {
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
const attachments = this._attachments;
|
|
80
|
+
this._role = "user";
|
|
81
|
+
this._runConfig = {};
|
|
82
|
+
this._sendOrReset();
|
|
83
|
+
const adapter = this.getAttachmentAdapter();
|
|
84
|
+
if (adapter) {
|
|
85
|
+
await Promise.all(attachments.map((a) => adapter.remove(a)));
|
|
86
|
+
}
|
|
79
87
|
}
|
|
80
88
|
async send() {
|
|
81
89
|
const adapter = this.getAttachmentAdapter();
|
|
@@ -92,7 +100,7 @@ var BaseComposerRuntimeCore = class {
|
|
|
92
100
|
attachments,
|
|
93
101
|
runConfig: this.runConfig
|
|
94
102
|
};
|
|
95
|
-
this.
|
|
103
|
+
this._sendOrReset();
|
|
96
104
|
this.handleSend(message);
|
|
97
105
|
this._notifyEventSubscribers("send");
|
|
98
106
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/runtimes/composer/BaseComposerRuntimeCore.tsx"],"sourcesContent":["import {\n Attachment,\n CompleteAttachment,\n PendingAttachment,\n} from \"../../types/AttachmentTypes\";\nimport { AppendMessage, Unsubscribe } from \"../../types\";\nimport { AttachmentAdapter } from \"../attachment\";\nimport {\n ComposerRuntimeCore,\n ComposerRuntimeEventType,\n} from \"../core/ComposerRuntimeCore\";\nimport { MessageRole, RunConfig } from \"../../types/AssistantTypes\";\n\nconst isAttachmentComplete = (a: Attachment): a is CompleteAttachment =>\n a.status.type === \"complete\";\n\nexport abstract class BaseComposerRuntimeCore implements ComposerRuntimeCore {\n public readonly isEditing = true;\n\n protected abstract getAttachmentAdapter(): AttachmentAdapter | undefined;\n\n public getAttachmentAccept(): string {\n return this.getAttachmentAdapter()?.accept ?? \"*\";\n }\n\n private _attachments: readonly Attachment[] = [];\n public get attachments() {\n return this._attachments;\n }\n\n protected setAttachments(value: readonly Attachment[]) {\n this._attachments = value;\n this.notifySubscribers();\n }\n\n public abstract get canCancel(): boolean;\n\n public get isEmpty() {\n return !this.text.trim() && !this.attachments.length;\n }\n\n private _text = \"\";\n\n get text() {\n return this._text;\n }\n\n private _role: MessageRole = \"user\";\n\n get role() {\n return this._role;\n }\n\n private _runConfig: RunConfig = {};\n\n get runConfig() {\n return this._runConfig;\n }\n\n public setText(value: string) {\n if (this._text === value) return;\n\n this._text = value;\n this.notifySubscribers();\n }\n\n public setRole(role: MessageRole) {\n if (this._role === role) return;\n\n this._role = role;\n this.notifySubscribers();\n }\n\n public setRunConfig(runConfig: RunConfig) {\n if (this._runConfig === runConfig) return;\n\n this._runConfig = runConfig;\n this.notifySubscribers();\n }\n\n private
|
|
1
|
+
{"version":3,"sources":["../../../src/runtimes/composer/BaseComposerRuntimeCore.tsx"],"sourcesContent":["import {\n Attachment,\n CompleteAttachment,\n PendingAttachment,\n} from \"../../types/AttachmentTypes\";\nimport { AppendMessage, Unsubscribe } from \"../../types\";\nimport { AttachmentAdapter } from \"../attachment\";\nimport {\n ComposerRuntimeCore,\n ComposerRuntimeEventType,\n} from \"../core/ComposerRuntimeCore\";\nimport { MessageRole, RunConfig } from \"../../types/AssistantTypes\";\n\nconst isAttachmentComplete = (a: Attachment): a is CompleteAttachment =>\n a.status.type === \"complete\";\n\nexport abstract class BaseComposerRuntimeCore implements ComposerRuntimeCore {\n public readonly isEditing = true;\n\n protected abstract getAttachmentAdapter(): AttachmentAdapter | undefined;\n\n public getAttachmentAccept(): string {\n return this.getAttachmentAdapter()?.accept ?? \"*\";\n }\n\n private _attachments: readonly Attachment[] = [];\n public get attachments() {\n return this._attachments;\n }\n\n protected setAttachments(value: readonly Attachment[]) {\n this._attachments = value;\n this.notifySubscribers();\n }\n\n public abstract get canCancel(): boolean;\n\n public get isEmpty() {\n return !this.text.trim() && !this.attachments.length;\n }\n\n private _text = \"\";\n\n get text() {\n return this._text;\n }\n\n private _role: MessageRole = \"user\";\n\n get role() {\n return this._role;\n }\n\n private _runConfig: RunConfig = {};\n\n get runConfig() {\n return this._runConfig;\n }\n\n public setText(value: string) {\n if (this._text === value) return;\n\n this._text = value;\n this.notifySubscribers();\n }\n\n public setRole(role: MessageRole) {\n if (this._role === role) return;\n\n this._role = role;\n this.notifySubscribers();\n }\n\n public setRunConfig(runConfig: RunConfig) {\n if (this._runConfig === runConfig) return;\n\n this._runConfig = runConfig;\n this.notifySubscribers();\n }\n\n private _sendOrReset() {\n this._attachments = [];\n this._text = \"\";\n this.notifySubscribers();\n }\n\n public async reset() {\n if (\n this._attachments.length === 0 &&\n this._text === \"\" &&\n this._role === \"user\" &&\n Object.keys(this._runConfig).length === 0\n ) {\n return;\n }\n\n const attachments = this._attachments;\n this._role = \"user\";\n this._runConfig = {};\n\n this._sendOrReset();\n\n const adapter = this.getAttachmentAdapter();\n if (adapter) {\n await Promise.all(attachments.map((a) => adapter.remove(a)));\n }\n }\n\n public async send() {\n const adapter = this.getAttachmentAdapter();\n const attachments =\n adapter && this.attachments.length > 0\n ? await Promise.all(\n this.attachments.map(async (a) => {\n if (isAttachmentComplete(a)) return a;\n const result = await adapter.send(a);\n return result as CompleteAttachment;\n }),\n )\n : [];\n\n const message: Omit<AppendMessage, \"parentId\"> = {\n role: this.role,\n content: this.text ? [{ type: \"text\", text: this.text }] : [],\n attachments,\n runConfig: this.runConfig,\n };\n this._sendOrReset();\n\n this.handleSend(message);\n this._notifyEventSubscribers(\"send\");\n }\n\n public cancel() {\n this.handleCancel();\n }\n\n protected abstract handleSend(message: Omit<AppendMessage, \"parentId\">): void;\n protected abstract handleCancel(): void;\n\n async addAttachment(file: File) {\n const adapter = this.getAttachmentAdapter();\n if (!adapter) throw new Error(\"Attachments are not supported\");\n\n const attachment = await adapter.add({ file });\n\n this._attachments = [...this._attachments, attachment as PendingAttachment];\n this.notifySubscribers();\n }\n\n async removeAttachment(attachmentId: string) {\n const adapter = this.getAttachmentAdapter();\n if (!adapter) throw new Error(\"Attachments are not supported\");\n\n const index = this._attachments.findIndex((a) => a.id === attachmentId);\n if (index === -1) throw new Error(\"Attachment not found\");\n const attachment = this._attachments[index]!;\n\n await adapter.remove(attachment);\n\n this._attachments = this._attachments.toSpliced(index, 1);\n this.notifySubscribers();\n }\n\n private _subscriptions = new Set<() => void>();\n\n protected notifySubscribers() {\n for (const callback of this._subscriptions) callback();\n }\n\n public subscribe(callback: () => void): Unsubscribe {\n this._subscriptions.add(callback);\n return () => this._subscriptions.delete(callback);\n }\n\n private _eventSubscribers = new Map<\n ComposerRuntimeEventType,\n Set<() => void>\n >();\n\n protected _notifyEventSubscribers(event: ComposerRuntimeEventType) {\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) return;\n\n for (const callback of subscribers) callback();\n }\n\n public unstable_on(event: ComposerRuntimeEventType, callback: () => void) {\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) {\n this._eventSubscribers.set(event, new Set([callback]));\n } else {\n subscribers.add(callback);\n }\n\n return () => {\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) return;\n subscribers.delete(callback);\n };\n }\n}\n"],"mappings":"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","names":["subscribers"]}
|
|
@@ -43,15 +43,23 @@ var BaseComposerRuntimeCore = class {
|
|
|
43
43
|
this._runConfig = runConfig;
|
|
44
44
|
this.notifySubscribers();
|
|
45
45
|
}
|
|
46
|
-
|
|
46
|
+
_sendOrReset() {
|
|
47
47
|
this._attachments = [];
|
|
48
48
|
this._text = "";
|
|
49
|
-
this._role = "user";
|
|
50
|
-
this._runConfig = {};
|
|
51
49
|
this.notifySubscribers();
|
|
52
50
|
}
|
|
53
51
|
async reset() {
|
|
54
|
-
|
|
52
|
+
if (this._attachments.length === 0 && this._text === "" && this._role === "user" && Object.keys(this._runConfig).length === 0) {
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
const attachments = this._attachments;
|
|
56
|
+
this._role = "user";
|
|
57
|
+
this._runConfig = {};
|
|
58
|
+
this._sendOrReset();
|
|
59
|
+
const adapter = this.getAttachmentAdapter();
|
|
60
|
+
if (adapter) {
|
|
61
|
+
await Promise.all(attachments.map((a) => adapter.remove(a)));
|
|
62
|
+
}
|
|
55
63
|
}
|
|
56
64
|
async send() {
|
|
57
65
|
const adapter = this.getAttachmentAdapter();
|
|
@@ -68,7 +76,7 @@ var BaseComposerRuntimeCore = class {
|
|
|
68
76
|
attachments,
|
|
69
77
|
runConfig: this.runConfig
|
|
70
78
|
};
|
|
71
|
-
this.
|
|
79
|
+
this._sendOrReset();
|
|
72
80
|
this.handleSend(message);
|
|
73
81
|
this._notifyEventSubscribers("send");
|
|
74
82
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/runtimes/composer/BaseComposerRuntimeCore.tsx"],"sourcesContent":["import {\n Attachment,\n CompleteAttachment,\n PendingAttachment,\n} from \"../../types/AttachmentTypes\";\nimport { AppendMessage, Unsubscribe } from \"../../types\";\nimport { AttachmentAdapter } from \"../attachment\";\nimport {\n ComposerRuntimeCore,\n ComposerRuntimeEventType,\n} from \"../core/ComposerRuntimeCore\";\nimport { MessageRole, RunConfig } from \"../../types/AssistantTypes\";\n\nconst isAttachmentComplete = (a: Attachment): a is CompleteAttachment =>\n a.status.type === \"complete\";\n\nexport abstract class BaseComposerRuntimeCore implements ComposerRuntimeCore {\n public readonly isEditing = true;\n\n protected abstract getAttachmentAdapter(): AttachmentAdapter | undefined;\n\n public getAttachmentAccept(): string {\n return this.getAttachmentAdapter()?.accept ?? \"*\";\n }\n\n private _attachments: readonly Attachment[] = [];\n public get attachments() {\n return this._attachments;\n }\n\n protected setAttachments(value: readonly Attachment[]) {\n this._attachments = value;\n this.notifySubscribers();\n }\n\n public abstract get canCancel(): boolean;\n\n public get isEmpty() {\n return !this.text.trim() && !this.attachments.length;\n }\n\n private _text = \"\";\n\n get text() {\n return this._text;\n }\n\n private _role: MessageRole = \"user\";\n\n get role() {\n return this._role;\n }\n\n private _runConfig: RunConfig = {};\n\n get runConfig() {\n return this._runConfig;\n }\n\n public setText(value: string) {\n if (this._text === value) return;\n\n this._text = value;\n this.notifySubscribers();\n }\n\n public setRole(role: MessageRole) {\n if (this._role === role) return;\n\n this._role = role;\n this.notifySubscribers();\n }\n\n public setRunConfig(runConfig: RunConfig) {\n if (this._runConfig === runConfig) return;\n\n this._runConfig = runConfig;\n this.notifySubscribers();\n }\n\n private
|
|
1
|
+
{"version":3,"sources":["../../../src/runtimes/composer/BaseComposerRuntimeCore.tsx"],"sourcesContent":["import {\n Attachment,\n CompleteAttachment,\n PendingAttachment,\n} from \"../../types/AttachmentTypes\";\nimport { AppendMessage, Unsubscribe } from \"../../types\";\nimport { AttachmentAdapter } from \"../attachment\";\nimport {\n ComposerRuntimeCore,\n ComposerRuntimeEventType,\n} from \"../core/ComposerRuntimeCore\";\nimport { MessageRole, RunConfig } from \"../../types/AssistantTypes\";\n\nconst isAttachmentComplete = (a: Attachment): a is CompleteAttachment =>\n a.status.type === \"complete\";\n\nexport abstract class BaseComposerRuntimeCore implements ComposerRuntimeCore {\n public readonly isEditing = true;\n\n protected abstract getAttachmentAdapter(): AttachmentAdapter | undefined;\n\n public getAttachmentAccept(): string {\n return this.getAttachmentAdapter()?.accept ?? \"*\";\n }\n\n private _attachments: readonly Attachment[] = [];\n public get attachments() {\n return this._attachments;\n }\n\n protected setAttachments(value: readonly Attachment[]) {\n this._attachments = value;\n this.notifySubscribers();\n }\n\n public abstract get canCancel(): boolean;\n\n public get isEmpty() {\n return !this.text.trim() && !this.attachments.length;\n }\n\n private _text = \"\";\n\n get text() {\n return this._text;\n }\n\n private _role: MessageRole = \"user\";\n\n get role() {\n return this._role;\n }\n\n private _runConfig: RunConfig = {};\n\n get runConfig() {\n return this._runConfig;\n }\n\n public setText(value: string) {\n if (this._text === value) return;\n\n this._text = value;\n this.notifySubscribers();\n }\n\n public setRole(role: MessageRole) {\n if (this._role === role) return;\n\n this._role = role;\n this.notifySubscribers();\n }\n\n public setRunConfig(runConfig: RunConfig) {\n if (this._runConfig === runConfig) return;\n\n this._runConfig = runConfig;\n this.notifySubscribers();\n }\n\n private _sendOrReset() {\n this._attachments = [];\n this._text = \"\";\n this.notifySubscribers();\n }\n\n public async reset() {\n if (\n this._attachments.length === 0 &&\n this._text === \"\" &&\n this._role === \"user\" &&\n Object.keys(this._runConfig).length === 0\n ) {\n return;\n }\n\n const attachments = this._attachments;\n this._role = \"user\";\n this._runConfig = {};\n\n this._sendOrReset();\n\n const adapter = this.getAttachmentAdapter();\n if (adapter) {\n await Promise.all(attachments.map((a) => adapter.remove(a)));\n }\n }\n\n public async send() {\n const adapter = this.getAttachmentAdapter();\n const attachments =\n adapter && this.attachments.length > 0\n ? await Promise.all(\n this.attachments.map(async (a) => {\n if (isAttachmentComplete(a)) return a;\n const result = await adapter.send(a);\n return result as CompleteAttachment;\n }),\n )\n : [];\n\n const message: Omit<AppendMessage, \"parentId\"> = {\n role: this.role,\n content: this.text ? [{ type: \"text\", text: this.text }] : [],\n attachments,\n runConfig: this.runConfig,\n };\n this._sendOrReset();\n\n this.handleSend(message);\n this._notifyEventSubscribers(\"send\");\n }\n\n public cancel() {\n this.handleCancel();\n }\n\n protected abstract handleSend(message: Omit<AppendMessage, \"parentId\">): void;\n protected abstract handleCancel(): void;\n\n async addAttachment(file: File) {\n const adapter = this.getAttachmentAdapter();\n if (!adapter) throw new Error(\"Attachments are not supported\");\n\n const attachment = await adapter.add({ file });\n\n this._attachments = [...this._attachments, attachment as PendingAttachment];\n this.notifySubscribers();\n }\n\n async removeAttachment(attachmentId: string) {\n const adapter = this.getAttachmentAdapter();\n if (!adapter) throw new Error(\"Attachments are not supported\");\n\n const index = this._attachments.findIndex((a) => a.id === attachmentId);\n if (index === -1) throw new Error(\"Attachment not found\");\n const attachment = this._attachments[index]!;\n\n await adapter.remove(attachment);\n\n this._attachments = this._attachments.toSpliced(index, 1);\n this.notifySubscribers();\n }\n\n private _subscriptions = new Set<() => void>();\n\n protected notifySubscribers() {\n for (const callback of this._subscriptions) callback();\n }\n\n public subscribe(callback: () => void): Unsubscribe {\n this._subscriptions.add(callback);\n return () => this._subscriptions.delete(callback);\n }\n\n private _eventSubscribers = new Map<\n ComposerRuntimeEventType,\n Set<() => void>\n >();\n\n protected _notifyEventSubscribers(event: ComposerRuntimeEventType) {\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) return;\n\n for (const callback of subscribers) callback();\n }\n\n public unstable_on(event: ComposerRuntimeEventType, callback: () => void) {\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) {\n this._eventSubscribers.set(event, new Set([callback]));\n } else {\n subscribers.add(callback);\n }\n\n return () => {\n const subscribers = this._eventSubscribers.get(event);\n if (!subscribers) return;\n subscribers.delete(callback);\n };\n }\n}\n"],"mappings":"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","names":["subscribers"]}
|
|
@@ -19,6 +19,6 @@ export type EdgeChatAdapterOptions = {
|
|
|
19
19
|
export declare class EdgeChatAdapter implements ChatModelAdapter {
|
|
20
20
|
private options;
|
|
21
21
|
constructor(options: EdgeChatAdapterOptions);
|
|
22
|
-
run({ messages, abortSignal, config, unstable_assistantMessageId, }: ChatModelRunOptions): AsyncGenerator<ChatModelRunResult, void, unknown>;
|
|
22
|
+
run({ messages, runConfig, abortSignal, config, unstable_assistantMessageId, }: ChatModelRunOptions): AsyncGenerator<ChatModelRunResult, void, unknown>;
|
|
23
23
|
}
|
|
24
24
|
//# sourceMappingURL=EdgeChatAdapter.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EdgeChatAdapter.d.ts","sourceRoot":"","sources":["../../../src/runtimes/edge/EdgeChatAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAU/D,wBAAgB,eAAe,CAAC,CAAC,EAC/B,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,GACxB,aAAa,CAAC,CAAC,CAAC,CAclB;AACD,MAAM,MAAM,sBAAsB,GAAG;IACnC,GAAG,EAAE,MAAM,CAAC;IAEZ,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAElC;;;OAGG;IACH,qBAAqB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC7C,CAAC;AAEF,qBAAa,eAAgB,YAAW,gBAAgB;IAC1C,OAAO,CAAC,OAAO;gBAAP,OAAO,EAAE,sBAAsB;IAE5C,GAAG,CAAC,EACT,QAAQ,EACR,WAAW,EACX,MAAM,EACN,2BAA2B,GAC5B,EAAE,mBAAmB;
|
|
1
|
+
{"version":3,"file":"EdgeChatAdapter.d.ts","sourceRoot":"","sources":["../../../src/runtimes/edge/EdgeChatAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,mBAAmB,EACpB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAU/D,wBAAgB,eAAe,CAAC,CAAC,EAC/B,MAAM,EAAE,cAAc,CAAC,CAAC,CAAC,GACxB,aAAa,CAAC,CAAC,CAAC,CAclB;AACD,MAAM,MAAM,sBAAsB,GAAG;IACnC,GAAG,EAAE,MAAM,CAAC;IAEZ,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;OAEG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAElC;;;OAGG;IACH,qBAAqB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CAC7C,CAAC;AAEF,qBAAa,eAAgB,YAAW,gBAAgB;IAC1C,OAAO,CAAC,OAAO;gBAAP,OAAO,EAAE,sBAAsB;IAE5C,GAAG,CAAC,EACT,QAAQ,EACR,SAAS,EACT,WAAW,EACX,MAAM,EACN,2BAA2B,GAC5B,EAAE,mBAAmB;CA8CvB"}
|
|
@@ -50,6 +50,7 @@ var EdgeChatAdapter = class {
|
|
|
50
50
|
}
|
|
51
51
|
async *run({
|
|
52
52
|
messages,
|
|
53
|
+
runConfig,
|
|
53
54
|
abortSignal,
|
|
54
55
|
config,
|
|
55
56
|
unstable_assistantMessageId
|
|
@@ -69,6 +70,7 @@ var EdgeChatAdapter = class {
|
|
|
69
70
|
}),
|
|
70
71
|
tools: config.tools ? (0, import_toLanguageModelTools.toLanguageModelTools)(config.tools) : [],
|
|
71
72
|
unstable_assistantMessageId,
|
|
73
|
+
runConfig,
|
|
72
74
|
...config.callSettings,
|
|
73
75
|
...config.config,
|
|
74
76
|
...this.options.body
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/runtimes/edge/EdgeChatAdapter.ts"],"sourcesContent":["import {\n ChatModelAdapter,\n ChatModelRunOptions,\n} from \"../local/ChatModelAdapter\";\nimport { ChatModelRunResult } from \"../local/ChatModelAdapter\";\nimport { toCoreMessages } from \"./converters/toCoreMessages\";\nimport { toLanguageModelTools } from \"./converters/toLanguageModelTools\";\nimport { EdgeRuntimeRequestOptions } from \"./EdgeRuntimeRequestOptions\";\nimport { assistantDecoderStream } from \"./streams/assistantDecoderStream\";\nimport { streamPartDecoderStream } from \"./streams/utils/streamPartDecoderStream\";\nimport { runResultStream } from \"./streams/runResultStream\";\nimport { toolResultStream } from \"./streams/toolResultStream\";\nimport { toLanguageModelMessages } from \"./converters\";\n\nexport function asAsyncIterable<T>(\n source: ReadableStream<T>,\n): AsyncIterable<T> {\n return {\n [Symbol.asyncIterator]: () => {\n const reader = source.getReader();\n return {\n async next(): Promise<IteratorResult<T, undefined>> {\n const { done, value } = await reader.read();\n return done\n ? { done: true, value: undefined }\n : { done: false, value };\n },\n };\n },\n };\n}\nexport type EdgeChatAdapterOptions = {\n api: string;\n\n credentials?: RequestCredentials;\n headers?: Record<string, string> | Headers;\n body?: object;\n\n /**\n * When enabled, the adapter will not strip `id` from messages in the messages array.\n */\n unstable_sendMessageIds?: boolean;\n\n /**\n * When enabled, the adapter will send messages in the format expected by the Vercel AI SDK Core.\n * This feature will be removed in the future in favor of a better solution.\n */\n unstable_AISDKInterop?: boolean | undefined;\n};\n\nexport class EdgeChatAdapter implements ChatModelAdapter {\n constructor(private options: EdgeChatAdapterOptions) {}\n\n async *run({\n messages,\n abortSignal,\n config,\n unstable_assistantMessageId,\n }: ChatModelRunOptions) {\n const headers = new Headers(this.options.headers);\n headers.set(\"Content-Type\", \"application/json\");\n\n const result = await fetch(this.options.api, {\n method: \"POST\",\n headers,\n credentials: this.options.credentials ?? \"same-origin\",\n body: JSON.stringify({\n system: config.system,\n messages: this.options.unstable_AISDKInterop\n ? (toLanguageModelMessages(\n messages,\n ) as EdgeRuntimeRequestOptions[\"messages\"]) // TODO figure out a better way to do this\n : toCoreMessages(messages, {\n unstable_includeId: this.options.unstable_sendMessageIds,\n }),\n tools: config.tools ? toLanguageModelTools(config.tools) : [],\n unstable_assistantMessageId,\n ...config.callSettings,\n ...config.config,\n\n ...this.options.body,\n } satisfies EdgeRuntimeRequestOptions),\n signal: abortSignal,\n });\n\n if (!result.ok) {\n throw new Error(`Status ${result.status}: ${await result.text()}`);\n }\n\n const stream = result\n .body!.pipeThrough(streamPartDecoderStream())\n .pipeThrough(assistantDecoderStream())\n .pipeThrough(toolResultStream(config.tools, abortSignal))\n .pipeThrough(runResultStream());\n\n let update: ChatModelRunResult | undefined;\n for await (update of asAsyncIterable(stream)) {\n yield update;\n }\n\n if (update === undefined)\n throw new Error(\"No data received from Edge Runtime\");\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,4BAA+B;AAC/B,kCAAqC;AAErC,oCAAuC;AACvC,qCAAwC;AACxC,6BAAgC;AAChC,8BAAiC;AACjC,wBAAwC;AAEjC,SAAS,gBACd,QACkB;AAClB,SAAO;AAAA,IACL,CAAC,OAAO,aAAa,GAAG,MAAM;AAC5B,YAAM,SAAS,OAAO,UAAU;AAChC,aAAO;AAAA,QACL,MAAM,OAA8C;AAClD,gBAAM,EAAE,MAAM,MAAM,IAAI,MAAM,OAAO,KAAK;AAC1C,iBAAO,OACH,EAAE,MAAM,MAAM,OAAO,OAAU,IAC/B,EAAE,MAAM,OAAO,MAAM;AAAA,QAC3B;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;AAoBO,IAAM,kBAAN,MAAkD;AAAA,EACvD,YAAoB,SAAiC;AAAjC;AAAA,EAAkC;AAAA,EAEtD,OAAO,IAAI;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAAwB;AACtB,UAAM,UAAU,IAAI,QAAQ,KAAK,QAAQ,OAAO;AAChD,YAAQ,IAAI,gBAAgB,kBAAkB;AAE9C,UAAM,SAAS,MAAM,MAAM,KAAK,QAAQ,KAAK;AAAA,MAC3C,QAAQ;AAAA,MACR;AAAA,MACA,aAAa,KAAK,QAAQ,eAAe;AAAA,MACzC,MAAM,KAAK,UAAU;AAAA,QACnB,QAAQ,OAAO;AAAA,QACf,UAAU,KAAK,QAAQ,4BAClB;AAAA,UACC;AAAA,QACF,QACA,sCAAe,UAAU;AAAA,UACvB,oBAAoB,KAAK,QAAQ;AAAA,QACnC,CAAC;AAAA,QACL,OAAO,OAAO,YAAQ,kDAAqB,OAAO,KAAK,IAAI,CAAC;AAAA,QAC5D;AAAA,QACA,GAAG,OAAO;AAAA,QACV,GAAG,OAAO;AAAA,QAEV,GAAG,KAAK,QAAQ;AAAA,MAClB,CAAqC;AAAA,MACrC,QAAQ;AAAA,IACV,CAAC;AAED,QAAI,CAAC,OAAO,IAAI;AACd,YAAM,IAAI,MAAM,UAAU,OAAO,MAAM,KAAK,MAAM,OAAO,KAAK,CAAC,EAAE;AAAA,IACnE;AAEA,UAAM,SAAS,OACZ,KAAM,gBAAY,wDAAwB,CAAC,EAC3C,gBAAY,sDAAuB,CAAC,EACpC,gBAAY,0CAAiB,OAAO,OAAO,WAAW,CAAC,EACvD,gBAAY,wCAAgB,CAAC;AAEhC,QAAI;AACJ,eAAW,UAAU,gBAAgB,MAAM,GAAG;AAC5C,YAAM;AAAA,IACR;AAEA,QAAI,WAAW;AACb,YAAM,IAAI,MAAM,oCAAoC;AAAA,EACxD;AACF;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../src/runtimes/edge/EdgeChatAdapter.ts"],"sourcesContent":["import {\n ChatModelAdapter,\n ChatModelRunOptions,\n} from \"../local/ChatModelAdapter\";\nimport { ChatModelRunResult } from \"../local/ChatModelAdapter\";\nimport { toCoreMessages } from \"./converters/toCoreMessages\";\nimport { toLanguageModelTools } from \"./converters/toLanguageModelTools\";\nimport { EdgeRuntimeRequestOptions } from \"./EdgeRuntimeRequestOptions\";\nimport { assistantDecoderStream } from \"./streams/assistantDecoderStream\";\nimport { streamPartDecoderStream } from \"./streams/utils/streamPartDecoderStream\";\nimport { runResultStream } from \"./streams/runResultStream\";\nimport { toolResultStream } from \"./streams/toolResultStream\";\nimport { toLanguageModelMessages } from \"./converters\";\n\nexport function asAsyncIterable<T>(\n source: ReadableStream<T>,\n): AsyncIterable<T> {\n return {\n [Symbol.asyncIterator]: () => {\n const reader = source.getReader();\n return {\n async next(): Promise<IteratorResult<T, undefined>> {\n const { done, value } = await reader.read();\n return done\n ? { done: true, value: undefined }\n : { done: false, value };\n },\n };\n },\n };\n}\nexport type EdgeChatAdapterOptions = {\n api: string;\n\n credentials?: RequestCredentials;\n headers?: Record<string, string> | Headers;\n body?: object;\n\n /**\n * When enabled, the adapter will not strip `id` from messages in the messages array.\n */\n unstable_sendMessageIds?: boolean;\n\n /**\n * When enabled, the adapter will send messages in the format expected by the Vercel AI SDK Core.\n * This feature will be removed in the future in favor of a better solution.\n */\n unstable_AISDKInterop?: boolean | undefined;\n};\n\nexport class EdgeChatAdapter implements ChatModelAdapter {\n constructor(private options: EdgeChatAdapterOptions) {}\n\n async *run({\n messages,\n runConfig,\n abortSignal,\n config,\n unstable_assistantMessageId,\n }: ChatModelRunOptions) {\n const headers = new Headers(this.options.headers);\n headers.set(\"Content-Type\", \"application/json\");\n\n const result = await fetch(this.options.api, {\n method: \"POST\",\n headers,\n credentials: this.options.credentials ?? \"same-origin\",\n body: JSON.stringify({\n system: config.system,\n messages: this.options.unstable_AISDKInterop\n ? (toLanguageModelMessages(\n messages,\n ) as EdgeRuntimeRequestOptions[\"messages\"]) // TODO figure out a better way to do this\n : toCoreMessages(messages, {\n unstable_includeId: this.options.unstable_sendMessageIds,\n }),\n tools: config.tools ? toLanguageModelTools(config.tools) : [],\n unstable_assistantMessageId,\n runConfig,\n ...config.callSettings,\n ...config.config,\n\n ...this.options.body,\n } satisfies EdgeRuntimeRequestOptions),\n signal: abortSignal,\n });\n\n if (!result.ok) {\n throw new Error(`Status ${result.status}: ${await result.text()}`);\n }\n\n const stream = result\n .body!.pipeThrough(streamPartDecoderStream())\n .pipeThrough(assistantDecoderStream())\n .pipeThrough(toolResultStream(config.tools, abortSignal))\n .pipeThrough(runResultStream());\n\n let update: ChatModelRunResult | undefined;\n for await (update of asAsyncIterable(stream)) {\n yield update;\n }\n\n if (update === undefined)\n throw new Error(\"No data received from Edge Runtime\");\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,4BAA+B;AAC/B,kCAAqC;AAErC,oCAAuC;AACvC,qCAAwC;AACxC,6BAAgC;AAChC,8BAAiC;AACjC,wBAAwC;AAEjC,SAAS,gBACd,QACkB;AAClB,SAAO;AAAA,IACL,CAAC,OAAO,aAAa,GAAG,MAAM;AAC5B,YAAM,SAAS,OAAO,UAAU;AAChC,aAAO;AAAA,QACL,MAAM,OAA8C;AAClD,gBAAM,EAAE,MAAM,MAAM,IAAI,MAAM,OAAO,KAAK;AAC1C,iBAAO,OACH,EAAE,MAAM,MAAM,OAAO,OAAU,IAC/B,EAAE,MAAM,OAAO,MAAM;AAAA,QAC3B;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;AAoBO,IAAM,kBAAN,MAAkD;AAAA,EACvD,YAAoB,SAAiC;AAAjC;AAAA,EAAkC;AAAA,EAEtD,OAAO,IAAI;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAAwB;AACtB,UAAM,UAAU,IAAI,QAAQ,KAAK,QAAQ,OAAO;AAChD,YAAQ,IAAI,gBAAgB,kBAAkB;AAE9C,UAAM,SAAS,MAAM,MAAM,KAAK,QAAQ,KAAK;AAAA,MAC3C,QAAQ;AAAA,MACR;AAAA,MACA,aAAa,KAAK,QAAQ,eAAe;AAAA,MACzC,MAAM,KAAK,UAAU;AAAA,QACnB,QAAQ,OAAO;AAAA,QACf,UAAU,KAAK,QAAQ,4BAClB;AAAA,UACC;AAAA,QACF,QACA,sCAAe,UAAU;AAAA,UACvB,oBAAoB,KAAK,QAAQ;AAAA,QACnC,CAAC;AAAA,QACL,OAAO,OAAO,YAAQ,kDAAqB,OAAO,KAAK,IAAI,CAAC;AAAA,QAC5D;AAAA,QACA;AAAA,QACA,GAAG,OAAO;AAAA,QACV,GAAG,OAAO;AAAA,QAEV,GAAG,KAAK,QAAQ;AAAA,MAClB,CAAqC;AAAA,MACrC,QAAQ;AAAA,IACV,CAAC;AAED,QAAI,CAAC,OAAO,IAAI;AACd,YAAM,IAAI,MAAM,UAAU,OAAO,MAAM,KAAK,MAAM,OAAO,KAAK,CAAC,EAAE;AAAA,IACnE;AAEA,UAAM,SAAS,OACZ,KAAM,gBAAY,wDAAwB,CAAC,EAC3C,gBAAY,sDAAuB,CAAC,EACpC,gBAAY,0CAAiB,OAAO,OAAO,WAAW,CAAC,EACvD,gBAAY,wCAAgB,CAAC;AAEhC,QAAI;AACJ,eAAW,UAAU,gBAAgB,MAAM,GAAG;AAC5C,YAAM;AAAA,IACR;AAEA,QAAI,WAAW;AACb,YAAM,IAAI,MAAM,oCAAoC;AAAA,EACxD;AACF;","names":[]}
|
|
@@ -25,6 +25,7 @@ var EdgeChatAdapter = class {
|
|
|
25
25
|
}
|
|
26
26
|
async *run({
|
|
27
27
|
messages,
|
|
28
|
+
runConfig,
|
|
28
29
|
abortSignal,
|
|
29
30
|
config,
|
|
30
31
|
unstable_assistantMessageId
|
|
@@ -44,6 +45,7 @@ var EdgeChatAdapter = class {
|
|
|
44
45
|
}),
|
|
45
46
|
tools: config.tools ? toLanguageModelTools(config.tools) : [],
|
|
46
47
|
unstable_assistantMessageId,
|
|
48
|
+
runConfig,
|
|
47
49
|
...config.callSettings,
|
|
48
50
|
...config.config,
|
|
49
51
|
...this.options.body
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/runtimes/edge/EdgeChatAdapter.ts"],"sourcesContent":["import {\n ChatModelAdapter,\n ChatModelRunOptions,\n} from \"../local/ChatModelAdapter\";\nimport { ChatModelRunResult } from \"../local/ChatModelAdapter\";\nimport { toCoreMessages } from \"./converters/toCoreMessages\";\nimport { toLanguageModelTools } from \"./converters/toLanguageModelTools\";\nimport { EdgeRuntimeRequestOptions } from \"./EdgeRuntimeRequestOptions\";\nimport { assistantDecoderStream } from \"./streams/assistantDecoderStream\";\nimport { streamPartDecoderStream } from \"./streams/utils/streamPartDecoderStream\";\nimport { runResultStream } from \"./streams/runResultStream\";\nimport { toolResultStream } from \"./streams/toolResultStream\";\nimport { toLanguageModelMessages } from \"./converters\";\n\nexport function asAsyncIterable<T>(\n source: ReadableStream<T>,\n): AsyncIterable<T> {\n return {\n [Symbol.asyncIterator]: () => {\n const reader = source.getReader();\n return {\n async next(): Promise<IteratorResult<T, undefined>> {\n const { done, value } = await reader.read();\n return done\n ? { done: true, value: undefined }\n : { done: false, value };\n },\n };\n },\n };\n}\nexport type EdgeChatAdapterOptions = {\n api: string;\n\n credentials?: RequestCredentials;\n headers?: Record<string, string> | Headers;\n body?: object;\n\n /**\n * When enabled, the adapter will not strip `id` from messages in the messages array.\n */\n unstable_sendMessageIds?: boolean;\n\n /**\n * When enabled, the adapter will send messages in the format expected by the Vercel AI SDK Core.\n * This feature will be removed in the future in favor of a better solution.\n */\n unstable_AISDKInterop?: boolean | undefined;\n};\n\nexport class EdgeChatAdapter implements ChatModelAdapter {\n constructor(private options: EdgeChatAdapterOptions) {}\n\n async *run({\n messages,\n abortSignal,\n config,\n unstable_assistantMessageId,\n }: ChatModelRunOptions) {\n const headers = new Headers(this.options.headers);\n headers.set(\"Content-Type\", \"application/json\");\n\n const result = await fetch(this.options.api, {\n method: \"POST\",\n headers,\n credentials: this.options.credentials ?? \"same-origin\",\n body: JSON.stringify({\n system: config.system,\n messages: this.options.unstable_AISDKInterop\n ? (toLanguageModelMessages(\n messages,\n ) as EdgeRuntimeRequestOptions[\"messages\"]) // TODO figure out a better way to do this\n : toCoreMessages(messages, {\n unstable_includeId: this.options.unstable_sendMessageIds,\n }),\n tools: config.tools ? toLanguageModelTools(config.tools) : [],\n unstable_assistantMessageId,\n ...config.callSettings,\n ...config.config,\n\n ...this.options.body,\n } satisfies EdgeRuntimeRequestOptions),\n signal: abortSignal,\n });\n\n if (!result.ok) {\n throw new Error(`Status ${result.status}: ${await result.text()}`);\n }\n\n const stream = result\n .body!.pipeThrough(streamPartDecoderStream())\n .pipeThrough(assistantDecoderStream())\n .pipeThrough(toolResultStream(config.tools, abortSignal))\n .pipeThrough(runResultStream());\n\n let update: ChatModelRunResult | undefined;\n for await (update of asAsyncIterable(stream)) {\n yield update;\n }\n\n if (update === undefined)\n throw new Error(\"No data received from Edge Runtime\");\n }\n}\n"],"mappings":";AAKA,SAAS,sBAAsB;AAC/B,SAAS,4BAA4B;AAErC,SAAS,8BAA8B;AACvC,SAAS,+BAA+B;AACxC,SAAS,uBAAuB;AAChC,SAAS,wBAAwB;AACjC,SAAS,+BAA+B;AAEjC,SAAS,gBACd,QACkB;AAClB,SAAO;AAAA,IACL,CAAC,OAAO,aAAa,GAAG,MAAM;AAC5B,YAAM,SAAS,OAAO,UAAU;AAChC,aAAO;AAAA,QACL,MAAM,OAA8C;AAClD,gBAAM,EAAE,MAAM,MAAM,IAAI,MAAM,OAAO,KAAK;AAC1C,iBAAO,OACH,EAAE,MAAM,MAAM,OAAO,OAAU,IAC/B,EAAE,MAAM,OAAO,MAAM;AAAA,QAC3B;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;AAoBO,IAAM,kBAAN,MAAkD;AAAA,EACvD,YAAoB,SAAiC;AAAjC;AAAA,EAAkC;AAAA,EAEtD,OAAO,IAAI;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAAwB;AACtB,UAAM,UAAU,IAAI,QAAQ,KAAK,QAAQ,OAAO;AAChD,YAAQ,IAAI,gBAAgB,kBAAkB;AAE9C,UAAM,SAAS,MAAM,MAAM,KAAK,QAAQ,KAAK;AAAA,MAC3C,QAAQ;AAAA,MACR;AAAA,MACA,aAAa,KAAK,QAAQ,eAAe;AAAA,MACzC,MAAM,KAAK,UAAU;AAAA,QACnB,QAAQ,OAAO;AAAA,QACf,UAAU,KAAK,QAAQ,wBAClB;AAAA,UACC;AAAA,QACF,IACA,eAAe,UAAU;AAAA,UACvB,oBAAoB,KAAK,QAAQ;AAAA,QACnC,CAAC;AAAA,QACL,OAAO,OAAO,QAAQ,qBAAqB,OAAO,KAAK,IAAI,CAAC;AAAA,QAC5D;AAAA,QACA,GAAG,OAAO;AAAA,QACV,GAAG,OAAO;AAAA,QAEV,GAAG,KAAK,QAAQ;AAAA,MAClB,CAAqC;AAAA,MACrC,QAAQ;AAAA,IACV,CAAC;AAED,QAAI,CAAC,OAAO,IAAI;AACd,YAAM,IAAI,MAAM,UAAU,OAAO,MAAM,KAAK,MAAM,OAAO,KAAK,CAAC,EAAE;AAAA,IACnE;AAEA,UAAM,SAAS,OACZ,KAAM,YAAY,wBAAwB,CAAC,EAC3C,YAAY,uBAAuB,CAAC,EACpC,YAAY,iBAAiB,OAAO,OAAO,WAAW,CAAC,EACvD,YAAY,gBAAgB,CAAC;AAEhC,QAAI;AACJ,eAAW,UAAU,gBAAgB,MAAM,GAAG;AAC5C,YAAM;AAAA,IACR;AAEA,QAAI,WAAW;AACb,YAAM,IAAI,MAAM,oCAAoC;AAAA,EACxD;AACF;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../src/runtimes/edge/EdgeChatAdapter.ts"],"sourcesContent":["import {\n ChatModelAdapter,\n ChatModelRunOptions,\n} from \"../local/ChatModelAdapter\";\nimport { ChatModelRunResult } from \"../local/ChatModelAdapter\";\nimport { toCoreMessages } from \"./converters/toCoreMessages\";\nimport { toLanguageModelTools } from \"./converters/toLanguageModelTools\";\nimport { EdgeRuntimeRequestOptions } from \"./EdgeRuntimeRequestOptions\";\nimport { assistantDecoderStream } from \"./streams/assistantDecoderStream\";\nimport { streamPartDecoderStream } from \"./streams/utils/streamPartDecoderStream\";\nimport { runResultStream } from \"./streams/runResultStream\";\nimport { toolResultStream } from \"./streams/toolResultStream\";\nimport { toLanguageModelMessages } from \"./converters\";\n\nexport function asAsyncIterable<T>(\n source: ReadableStream<T>,\n): AsyncIterable<T> {\n return {\n [Symbol.asyncIterator]: () => {\n const reader = source.getReader();\n return {\n async next(): Promise<IteratorResult<T, undefined>> {\n const { done, value } = await reader.read();\n return done\n ? { done: true, value: undefined }\n : { done: false, value };\n },\n };\n },\n };\n}\nexport type EdgeChatAdapterOptions = {\n api: string;\n\n credentials?: RequestCredentials;\n headers?: Record<string, string> | Headers;\n body?: object;\n\n /**\n * When enabled, the adapter will not strip `id` from messages in the messages array.\n */\n unstable_sendMessageIds?: boolean;\n\n /**\n * When enabled, the adapter will send messages in the format expected by the Vercel AI SDK Core.\n * This feature will be removed in the future in favor of a better solution.\n */\n unstable_AISDKInterop?: boolean | undefined;\n};\n\nexport class EdgeChatAdapter implements ChatModelAdapter {\n constructor(private options: EdgeChatAdapterOptions) {}\n\n async *run({\n messages,\n runConfig,\n abortSignal,\n config,\n unstable_assistantMessageId,\n }: ChatModelRunOptions) {\n const headers = new Headers(this.options.headers);\n headers.set(\"Content-Type\", \"application/json\");\n\n const result = await fetch(this.options.api, {\n method: \"POST\",\n headers,\n credentials: this.options.credentials ?? \"same-origin\",\n body: JSON.stringify({\n system: config.system,\n messages: this.options.unstable_AISDKInterop\n ? (toLanguageModelMessages(\n messages,\n ) as EdgeRuntimeRequestOptions[\"messages\"]) // TODO figure out a better way to do this\n : toCoreMessages(messages, {\n unstable_includeId: this.options.unstable_sendMessageIds,\n }),\n tools: config.tools ? toLanguageModelTools(config.tools) : [],\n unstable_assistantMessageId,\n runConfig,\n ...config.callSettings,\n ...config.config,\n\n ...this.options.body,\n } satisfies EdgeRuntimeRequestOptions),\n signal: abortSignal,\n });\n\n if (!result.ok) {\n throw new Error(`Status ${result.status}: ${await result.text()}`);\n }\n\n const stream = result\n .body!.pipeThrough(streamPartDecoderStream())\n .pipeThrough(assistantDecoderStream())\n .pipeThrough(toolResultStream(config.tools, abortSignal))\n .pipeThrough(runResultStream());\n\n let update: ChatModelRunResult | undefined;\n for await (update of asAsyncIterable(stream)) {\n yield update;\n }\n\n if (update === undefined)\n throw new Error(\"No data received from Edge Runtime\");\n }\n}\n"],"mappings":";AAKA,SAAS,sBAAsB;AAC/B,SAAS,4BAA4B;AAErC,SAAS,8BAA8B;AACvC,SAAS,+BAA+B;AACxC,SAAS,uBAAuB;AAChC,SAAS,wBAAwB;AACjC,SAAS,+BAA+B;AAEjC,SAAS,gBACd,QACkB;AAClB,SAAO;AAAA,IACL,CAAC,OAAO,aAAa,GAAG,MAAM;AAC5B,YAAM,SAAS,OAAO,UAAU;AAChC,aAAO;AAAA,QACL,MAAM,OAA8C;AAClD,gBAAM,EAAE,MAAM,MAAM,IAAI,MAAM,OAAO,KAAK;AAC1C,iBAAO,OACH,EAAE,MAAM,MAAM,OAAO,OAAU,IAC/B,EAAE,MAAM,OAAO,MAAM;AAAA,QAC3B;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACF;AAoBO,IAAM,kBAAN,MAAkD;AAAA,EACvD,YAAoB,SAAiC;AAAjC;AAAA,EAAkC;AAAA,EAEtD,OAAO,IAAI;AAAA,IACT;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,GAAwB;AACtB,UAAM,UAAU,IAAI,QAAQ,KAAK,QAAQ,OAAO;AAChD,YAAQ,IAAI,gBAAgB,kBAAkB;AAE9C,UAAM,SAAS,MAAM,MAAM,KAAK,QAAQ,KAAK;AAAA,MAC3C,QAAQ;AAAA,MACR;AAAA,MACA,aAAa,KAAK,QAAQ,eAAe;AAAA,MACzC,MAAM,KAAK,UAAU;AAAA,QACnB,QAAQ,OAAO;AAAA,QACf,UAAU,KAAK,QAAQ,wBAClB;AAAA,UACC;AAAA,QACF,IACA,eAAe,UAAU;AAAA,UACvB,oBAAoB,KAAK,QAAQ;AAAA,QACnC,CAAC;AAAA,QACL,OAAO,OAAO,QAAQ,qBAAqB,OAAO,KAAK,IAAI,CAAC;AAAA,QAC5D;AAAA,QACA;AAAA,QACA,GAAG,OAAO;AAAA,QACV,GAAG,OAAO;AAAA,QAEV,GAAG,KAAK,QAAQ;AAAA,MAClB,CAAqC;AAAA,MACrC,QAAQ;AAAA,IACV,CAAC;AAED,QAAI,CAAC,OAAO,IAAI;AACd,YAAM,IAAI,MAAM,UAAU,OAAO,MAAM,KAAK,MAAM,OAAO,KAAK,CAAC,EAAE;AAAA,IACnE;AAEA,UAAM,SAAS,OACZ,KAAM,YAAY,wBAAwB,CAAC,EAC3C,YAAY,uBAAuB,CAAC,EACpC,YAAY,iBAAiB,OAAO,OAAO,WAAW,CAAC,EACvD,YAAY,gBAAgB,CAAC;AAEhC,QAAI;AACJ,eAAW,UAAU,gBAAgB,MAAM,GAAG;AAC5C,YAAM;AAAA,IACR;AAEA,QAAI,WAAW;AACb,YAAM,IAAI,MAAM,oCAAoC;AAAA,EACxD;AACF;","names":[]}
|
|
@@ -161,6 +161,13 @@ export declare const EdgeRuntimeRequestOptionsSchema: z.ZodObject<z.objectUtil.e
|
|
|
161
161
|
result?: unknown;
|
|
162
162
|
})[];
|
|
163
163
|
}>]>, "many">;
|
|
164
|
+
runConfig: z.ZodOptional<z.ZodObject<{
|
|
165
|
+
custom: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
166
|
+
}, "strip", z.ZodTypeAny, {
|
|
167
|
+
custom?: Record<string, unknown> | undefined;
|
|
168
|
+
}, {
|
|
169
|
+
custom?: Record<string, unknown> | undefined;
|
|
170
|
+
}>>;
|
|
164
171
|
tools: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
165
172
|
type: z.ZodLiteral<"function">;
|
|
166
173
|
name: z.ZodString;
|
|
@@ -237,6 +244,9 @@ export declare const EdgeRuntimeRequestOptionsSchema: z.ZodObject<z.objectUtil.e
|
|
|
237
244
|
apiKey?: string | undefined;
|
|
238
245
|
baseUrl?: string | undefined;
|
|
239
246
|
modelName?: string | undefined;
|
|
247
|
+
runConfig?: {
|
|
248
|
+
custom?: Record<string, unknown> | undefined;
|
|
249
|
+
} | undefined;
|
|
240
250
|
tools?: {
|
|
241
251
|
type: "function";
|
|
242
252
|
name: string;
|
|
@@ -291,6 +301,9 @@ export declare const EdgeRuntimeRequestOptionsSchema: z.ZodObject<z.objectUtil.e
|
|
|
291
301
|
apiKey?: string | undefined;
|
|
292
302
|
baseUrl?: string | undefined;
|
|
293
303
|
modelName?: string | undefined;
|
|
304
|
+
runConfig?: {
|
|
305
|
+
custom?: Record<string, unknown> | undefined;
|
|
306
|
+
} | undefined;
|
|
294
307
|
tools?: {
|
|
295
308
|
type: "function";
|
|
296
309
|
name: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EdgeRuntimeRequestOptions.d.ts","sourceRoot":"","sources":["../../../src/runtimes/edge/EdgeRuntimeRequestOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAK1C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA2ExB,eAAO,MAAM,+BAA+B
|
|
1
|
+
{"version":3,"file":"EdgeRuntimeRequestOptions.d.ts","sourceRoot":"","sources":["../../../src/runtimes/edge/EdgeRuntimeRequestOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAK1C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AA2ExB,eAAO,MAAM,+BAA+B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAaT,CAAC;AAEpC,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAC7C,OAAO,+BAA+B,CACvC,CAAC"}
|
|
@@ -87,6 +87,9 @@ var CoreMessageSchema = import_zod.z.discriminatedUnion("role", [
|
|
|
87
87
|
var EdgeRuntimeRequestOptionsSchema = import_zod.z.object({
|
|
88
88
|
system: import_zod.z.string().optional(),
|
|
89
89
|
messages: import_zod.z.array(CoreMessageSchema).min(1),
|
|
90
|
+
runConfig: import_zod.z.object({
|
|
91
|
+
custom: import_zod.z.record(import_zod.z.unknown()).optional()
|
|
92
|
+
}).optional(),
|
|
90
93
|
tools: import_zod.z.array(LanguageModelV1FunctionToolSchema).optional(),
|
|
91
94
|
unstable_assistantMessageId: import_zod.z.string().optional()
|
|
92
95
|
}).merge(import_ModelConfigTypes.LanguageModelV1CallSettingsSchema).merge(import_ModelConfigTypes.LanguageModelConfigSchema);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/runtimes/edge/EdgeRuntimeRequestOptions.ts"],"sourcesContent":["import { JSONSchema7 } from \"json-schema\";\nimport {\n LanguageModelConfigSchema,\n LanguageModelV1CallSettingsSchema,\n} from \"../../types/ModelConfigTypes\";\nimport { z } from \"zod\";\n\nconst LanguageModelV1FunctionToolSchema = z.object({\n type: z.literal(\"function\"),\n name: z.string(),\n description: z.string().optional(),\n parameters: z.custom<JSONSchema7>(\n (val) => typeof val === \"object\" && val !== null,\n ),\n});\n\nconst TextContentPartSchema = z.object({\n type: z.literal(\"text\"),\n text: z.string(),\n});\n\nconst ImageContentPartSchema = z.object({\n type: z.literal(\"image\"),\n image: z.string(),\n});\n\nconst Unstable_AudioContentPart = z.object({\n type: z.literal(\"audio\"),\n audio: z.object({\n data: z.string(),\n format: z.union([z.literal(\"mp3\"), z.literal(\"wav\")]),\n }),\n});\n\nconst CoreToolCallContentPartSchema = z.object({\n type: z.literal(\"tool-call\"),\n toolCallId: z.string(),\n toolName: z.string(),\n args: z.record(z.unknown()),\n result: z.unknown().optional(),\n isError: z.boolean().optional(),\n});\n// args is required but unknown;\n\nconst CoreUserMessageSchema = z.object({\n role: z.literal(\"user\"),\n content: z\n .array(\n z.discriminatedUnion(\"type\", [\n TextContentPartSchema,\n ImageContentPartSchema,\n Unstable_AudioContentPart,\n ]),\n )\n .min(1),\n});\n\nconst CoreAssistantMessageSchema = z.object({\n role: z.literal(\"assistant\"),\n content: z\n .array(\n z.discriminatedUnion(\"type\", [\n TextContentPartSchema,\n CoreToolCallContentPartSchema,\n ]),\n )\n .min(1),\n});\n\nconst CoreSystemMessageSchema = z.object({\n role: z.literal(\"system\"),\n content: z.tuple([TextContentPartSchema]),\n});\n\nconst CoreMessageSchema = z.discriminatedUnion(\"role\", [\n CoreSystemMessageSchema,\n CoreUserMessageSchema,\n CoreAssistantMessageSchema,\n]);\n\nexport const EdgeRuntimeRequestOptionsSchema = z\n .object({\n system: z.string().optional(),\n messages: z.array(CoreMessageSchema).min(1),\n tools: z.array(LanguageModelV1FunctionToolSchema).optional(),\n unstable_assistantMessageId: z.string().optional(),\n })\n .merge(LanguageModelV1CallSettingsSchema)\n .merge(LanguageModelConfigSchema);\n\nexport type EdgeRuntimeRequestOptions = z.infer<\n typeof EdgeRuntimeRequestOptionsSchema\n>;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,8BAGO;AACP,iBAAkB;AAElB,IAAM,oCAAoC,aAAE,OAAO;AAAA,EACjD,MAAM,aAAE,QAAQ,UAAU;AAAA,EAC1B,MAAM,aAAE,OAAO;AAAA,EACf,aAAa,aAAE,OAAO,EAAE,SAAS;AAAA,EACjC,YAAY,aAAE;AAAA,IACZ,CAAC,QAAQ,OAAO,QAAQ,YAAY,QAAQ;AAAA,EAC9C;AACF,CAAC;AAED,IAAM,wBAAwB,aAAE,OAAO;AAAA,EACrC,MAAM,aAAE,QAAQ,MAAM;AAAA,EACtB,MAAM,aAAE,OAAO;AACjB,CAAC;AAED,IAAM,yBAAyB,aAAE,OAAO;AAAA,EACtC,MAAM,aAAE,QAAQ,OAAO;AAAA,EACvB,OAAO,aAAE,OAAO;AAClB,CAAC;AAED,IAAM,4BAA4B,aAAE,OAAO;AAAA,EACzC,MAAM,aAAE,QAAQ,OAAO;AAAA,EACvB,OAAO,aAAE,OAAO;AAAA,IACd,MAAM,aAAE,OAAO;AAAA,IACf,QAAQ,aAAE,MAAM,CAAC,aAAE,QAAQ,KAAK,GAAG,aAAE,QAAQ,KAAK,CAAC,CAAC;AAAA,EACtD,CAAC;AACH,CAAC;AAED,IAAM,gCAAgC,aAAE,OAAO;AAAA,EAC7C,MAAM,aAAE,QAAQ,WAAW;AAAA,EAC3B,YAAY,aAAE,OAAO;AAAA,EACrB,UAAU,aAAE,OAAO;AAAA,EACnB,MAAM,aAAE,OAAO,aAAE,QAAQ,CAAC;AAAA,EAC1B,QAAQ,aAAE,QAAQ,EAAE,SAAS;AAAA,EAC7B,SAAS,aAAE,QAAQ,EAAE,SAAS;AAChC,CAAC;AAGD,IAAM,wBAAwB,aAAE,OAAO;AAAA,EACrC,MAAM,aAAE,QAAQ,MAAM;AAAA,EACtB,SAAS,aACN;AAAA,IACC,aAAE,mBAAmB,QAAQ;AAAA,MAC3B;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH,EACC,IAAI,CAAC;AACV,CAAC;AAED,IAAM,6BAA6B,aAAE,OAAO;AAAA,EAC1C,MAAM,aAAE,QAAQ,WAAW;AAAA,EAC3B,SAAS,aACN;AAAA,IACC,aAAE,mBAAmB,QAAQ;AAAA,MAC3B;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH,EACC,IAAI,CAAC;AACV,CAAC;AAED,IAAM,0BAA0B,aAAE,OAAO;AAAA,EACvC,MAAM,aAAE,QAAQ,QAAQ;AAAA,EACxB,SAAS,aAAE,MAAM,CAAC,qBAAqB,CAAC;AAC1C,CAAC;AAED,IAAM,oBAAoB,aAAE,mBAAmB,QAAQ;AAAA,EACrD;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAEM,IAAM,kCAAkC,aAC5C,OAAO;AAAA,EACN,QAAQ,aAAE,OAAO,EAAE,SAAS;AAAA,EAC5B,UAAU,aAAE,MAAM,iBAAiB,EAAE,IAAI,CAAC;AAAA,EAC1C,OAAO,aAAE,MAAM,iCAAiC,EAAE,SAAS;AAAA,EAC3D,6BAA6B,aAAE,OAAO,EAAE,SAAS;AACnD,CAAC,EACA,MAAM,yDAAiC,EACvC,MAAM,iDAAyB;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../src/runtimes/edge/EdgeRuntimeRequestOptions.ts"],"sourcesContent":["import { JSONSchema7 } from \"json-schema\";\nimport {\n LanguageModelConfigSchema,\n LanguageModelV1CallSettingsSchema,\n} from \"../../types/ModelConfigTypes\";\nimport { z } from \"zod\";\n\nconst LanguageModelV1FunctionToolSchema = z.object({\n type: z.literal(\"function\"),\n name: z.string(),\n description: z.string().optional(),\n parameters: z.custom<JSONSchema7>(\n (val) => typeof val === \"object\" && val !== null,\n ),\n});\n\nconst TextContentPartSchema = z.object({\n type: z.literal(\"text\"),\n text: z.string(),\n});\n\nconst ImageContentPartSchema = z.object({\n type: z.literal(\"image\"),\n image: z.string(),\n});\n\nconst Unstable_AudioContentPart = z.object({\n type: z.literal(\"audio\"),\n audio: z.object({\n data: z.string(),\n format: z.union([z.literal(\"mp3\"), z.literal(\"wav\")]),\n }),\n});\n\nconst CoreToolCallContentPartSchema = z.object({\n type: z.literal(\"tool-call\"),\n toolCallId: z.string(),\n toolName: z.string(),\n args: z.record(z.unknown()),\n result: z.unknown().optional(),\n isError: z.boolean().optional(),\n});\n// args is required but unknown;\n\nconst CoreUserMessageSchema = z.object({\n role: z.literal(\"user\"),\n content: z\n .array(\n z.discriminatedUnion(\"type\", [\n TextContentPartSchema,\n ImageContentPartSchema,\n Unstable_AudioContentPart,\n ]),\n )\n .min(1),\n});\n\nconst CoreAssistantMessageSchema = z.object({\n role: z.literal(\"assistant\"),\n content: z\n .array(\n z.discriminatedUnion(\"type\", [\n TextContentPartSchema,\n CoreToolCallContentPartSchema,\n ]),\n )\n .min(1),\n});\n\nconst CoreSystemMessageSchema = z.object({\n role: z.literal(\"system\"),\n content: z.tuple([TextContentPartSchema]),\n});\n\nconst CoreMessageSchema = z.discriminatedUnion(\"role\", [\n CoreSystemMessageSchema,\n CoreUserMessageSchema,\n CoreAssistantMessageSchema,\n]);\n\nexport const EdgeRuntimeRequestOptionsSchema = z\n .object({\n system: z.string().optional(),\n messages: z.array(CoreMessageSchema).min(1),\n runConfig: z\n .object({\n custom: z.record(z.unknown()).optional(),\n })\n .optional(),\n tools: z.array(LanguageModelV1FunctionToolSchema).optional(),\n unstable_assistantMessageId: z.string().optional(),\n })\n .merge(LanguageModelV1CallSettingsSchema)\n .merge(LanguageModelConfigSchema);\n\nexport type EdgeRuntimeRequestOptions = z.infer<\n typeof EdgeRuntimeRequestOptionsSchema\n>;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,8BAGO;AACP,iBAAkB;AAElB,IAAM,oCAAoC,aAAE,OAAO;AAAA,EACjD,MAAM,aAAE,QAAQ,UAAU;AAAA,EAC1B,MAAM,aAAE,OAAO;AAAA,EACf,aAAa,aAAE,OAAO,EAAE,SAAS;AAAA,EACjC,YAAY,aAAE;AAAA,IACZ,CAAC,QAAQ,OAAO,QAAQ,YAAY,QAAQ;AAAA,EAC9C;AACF,CAAC;AAED,IAAM,wBAAwB,aAAE,OAAO;AAAA,EACrC,MAAM,aAAE,QAAQ,MAAM;AAAA,EACtB,MAAM,aAAE,OAAO;AACjB,CAAC;AAED,IAAM,yBAAyB,aAAE,OAAO;AAAA,EACtC,MAAM,aAAE,QAAQ,OAAO;AAAA,EACvB,OAAO,aAAE,OAAO;AAClB,CAAC;AAED,IAAM,4BAA4B,aAAE,OAAO;AAAA,EACzC,MAAM,aAAE,QAAQ,OAAO;AAAA,EACvB,OAAO,aAAE,OAAO;AAAA,IACd,MAAM,aAAE,OAAO;AAAA,IACf,QAAQ,aAAE,MAAM,CAAC,aAAE,QAAQ,KAAK,GAAG,aAAE,QAAQ,KAAK,CAAC,CAAC;AAAA,EACtD,CAAC;AACH,CAAC;AAED,IAAM,gCAAgC,aAAE,OAAO;AAAA,EAC7C,MAAM,aAAE,QAAQ,WAAW;AAAA,EAC3B,YAAY,aAAE,OAAO;AAAA,EACrB,UAAU,aAAE,OAAO;AAAA,EACnB,MAAM,aAAE,OAAO,aAAE,QAAQ,CAAC;AAAA,EAC1B,QAAQ,aAAE,QAAQ,EAAE,SAAS;AAAA,EAC7B,SAAS,aAAE,QAAQ,EAAE,SAAS;AAChC,CAAC;AAGD,IAAM,wBAAwB,aAAE,OAAO;AAAA,EACrC,MAAM,aAAE,QAAQ,MAAM;AAAA,EACtB,SAAS,aACN;AAAA,IACC,aAAE,mBAAmB,QAAQ;AAAA,MAC3B;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH,EACC,IAAI,CAAC;AACV,CAAC;AAED,IAAM,6BAA6B,aAAE,OAAO;AAAA,EAC1C,MAAM,aAAE,QAAQ,WAAW;AAAA,EAC3B,SAAS,aACN;AAAA,IACC,aAAE,mBAAmB,QAAQ;AAAA,MAC3B;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH,EACC,IAAI,CAAC;AACV,CAAC;AAED,IAAM,0BAA0B,aAAE,OAAO;AAAA,EACvC,MAAM,aAAE,QAAQ,QAAQ;AAAA,EACxB,SAAS,aAAE,MAAM,CAAC,qBAAqB,CAAC;AAC1C,CAAC;AAED,IAAM,oBAAoB,aAAE,mBAAmB,QAAQ;AAAA,EACrD;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAEM,IAAM,kCAAkC,aAC5C,OAAO;AAAA,EACN,QAAQ,aAAE,OAAO,EAAE,SAAS;AAAA,EAC5B,UAAU,aAAE,MAAM,iBAAiB,EAAE,IAAI,CAAC;AAAA,EAC1C,WAAW,aACR,OAAO;AAAA,IACN,QAAQ,aAAE,OAAO,aAAE,QAAQ,CAAC,EAAE,SAAS;AAAA,EACzC,CAAC,EACA,SAAS;AAAA,EACZ,OAAO,aAAE,MAAM,iCAAiC,EAAE,SAAS;AAAA,EAC3D,6BAA6B,aAAE,OAAO,EAAE,SAAS;AACnD,CAAC,EACA,MAAM,yDAAiC,EACvC,MAAM,iDAAyB;","names":[]}
|
|
@@ -66,6 +66,9 @@ var CoreMessageSchema = z.discriminatedUnion("role", [
|
|
|
66
66
|
var EdgeRuntimeRequestOptionsSchema = z.object({
|
|
67
67
|
system: z.string().optional(),
|
|
68
68
|
messages: z.array(CoreMessageSchema).min(1),
|
|
69
|
+
runConfig: z.object({
|
|
70
|
+
custom: z.record(z.unknown()).optional()
|
|
71
|
+
}).optional(),
|
|
69
72
|
tools: z.array(LanguageModelV1FunctionToolSchema).optional(),
|
|
70
73
|
unstable_assistantMessageId: z.string().optional()
|
|
71
74
|
}).merge(LanguageModelV1CallSettingsSchema).merge(LanguageModelConfigSchema);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/runtimes/edge/EdgeRuntimeRequestOptions.ts"],"sourcesContent":["import { JSONSchema7 } from \"json-schema\";\nimport {\n LanguageModelConfigSchema,\n LanguageModelV1CallSettingsSchema,\n} from \"../../types/ModelConfigTypes\";\nimport { z } from \"zod\";\n\nconst LanguageModelV1FunctionToolSchema = z.object({\n type: z.literal(\"function\"),\n name: z.string(),\n description: z.string().optional(),\n parameters: z.custom<JSONSchema7>(\n (val) => typeof val === \"object\" && val !== null,\n ),\n});\n\nconst TextContentPartSchema = z.object({\n type: z.literal(\"text\"),\n text: z.string(),\n});\n\nconst ImageContentPartSchema = z.object({\n type: z.literal(\"image\"),\n image: z.string(),\n});\n\nconst Unstable_AudioContentPart = z.object({\n type: z.literal(\"audio\"),\n audio: z.object({\n data: z.string(),\n format: z.union([z.literal(\"mp3\"), z.literal(\"wav\")]),\n }),\n});\n\nconst CoreToolCallContentPartSchema = z.object({\n type: z.literal(\"tool-call\"),\n toolCallId: z.string(),\n toolName: z.string(),\n args: z.record(z.unknown()),\n result: z.unknown().optional(),\n isError: z.boolean().optional(),\n});\n// args is required but unknown;\n\nconst CoreUserMessageSchema = z.object({\n role: z.literal(\"user\"),\n content: z\n .array(\n z.discriminatedUnion(\"type\", [\n TextContentPartSchema,\n ImageContentPartSchema,\n Unstable_AudioContentPart,\n ]),\n )\n .min(1),\n});\n\nconst CoreAssistantMessageSchema = z.object({\n role: z.literal(\"assistant\"),\n content: z\n .array(\n z.discriminatedUnion(\"type\", [\n TextContentPartSchema,\n CoreToolCallContentPartSchema,\n ]),\n )\n .min(1),\n});\n\nconst CoreSystemMessageSchema = z.object({\n role: z.literal(\"system\"),\n content: z.tuple([TextContentPartSchema]),\n});\n\nconst CoreMessageSchema = z.discriminatedUnion(\"role\", [\n CoreSystemMessageSchema,\n CoreUserMessageSchema,\n CoreAssistantMessageSchema,\n]);\n\nexport const EdgeRuntimeRequestOptionsSchema = z\n .object({\n system: z.string().optional(),\n messages: z.array(CoreMessageSchema).min(1),\n tools: z.array(LanguageModelV1FunctionToolSchema).optional(),\n unstable_assistantMessageId: z.string().optional(),\n })\n .merge(LanguageModelV1CallSettingsSchema)\n .merge(LanguageModelConfigSchema);\n\nexport type EdgeRuntimeRequestOptions = z.infer<\n typeof EdgeRuntimeRequestOptionsSchema\n>;\n"],"mappings":";AACA;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,SAAS;AAElB,IAAM,oCAAoC,EAAE,OAAO;AAAA,EACjD,MAAM,EAAE,QAAQ,UAAU;AAAA,EAC1B,MAAM,EAAE,OAAO;AAAA,EACf,aAAa,EAAE,OAAO,EAAE,SAAS;AAAA,EACjC,YAAY,EAAE;AAAA,IACZ,CAAC,QAAQ,OAAO,QAAQ,YAAY,QAAQ;AAAA,EAC9C;AACF,CAAC;AAED,IAAM,wBAAwB,EAAE,OAAO;AAAA,EACrC,MAAM,EAAE,QAAQ,MAAM;AAAA,EACtB,MAAM,EAAE,OAAO;AACjB,CAAC;AAED,IAAM,yBAAyB,EAAE,OAAO;AAAA,EACtC,MAAM,EAAE,QAAQ,OAAO;AAAA,EACvB,OAAO,EAAE,OAAO;AAClB,CAAC;AAED,IAAM,4BAA4B,EAAE,OAAO;AAAA,EACzC,MAAM,EAAE,QAAQ,OAAO;AAAA,EACvB,OAAO,EAAE,OAAO;AAAA,IACd,MAAM,EAAE,OAAO;AAAA,IACf,QAAQ,EAAE,MAAM,CAAC,EAAE,QAAQ,KAAK,GAAG,EAAE,QAAQ,KAAK,CAAC,CAAC;AAAA,EACtD,CAAC;AACH,CAAC;AAED,IAAM,gCAAgC,EAAE,OAAO;AAAA,EAC7C,MAAM,EAAE,QAAQ,WAAW;AAAA,EAC3B,YAAY,EAAE,OAAO;AAAA,EACrB,UAAU,EAAE,OAAO;AAAA,EACnB,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC;AAAA,EAC1B,QAAQ,EAAE,QAAQ,EAAE,SAAS;AAAA,EAC7B,SAAS,EAAE,QAAQ,EAAE,SAAS;AAChC,CAAC;AAGD,IAAM,wBAAwB,EAAE,OAAO;AAAA,EACrC,MAAM,EAAE,QAAQ,MAAM;AAAA,EACtB,SAAS,EACN;AAAA,IACC,EAAE,mBAAmB,QAAQ;AAAA,MAC3B;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH,EACC,IAAI,CAAC;AACV,CAAC;AAED,IAAM,6BAA6B,EAAE,OAAO;AAAA,EAC1C,MAAM,EAAE,QAAQ,WAAW;AAAA,EAC3B,SAAS,EACN;AAAA,IACC,EAAE,mBAAmB,QAAQ;AAAA,MAC3B;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH,EACC,IAAI,CAAC;AACV,CAAC;AAED,IAAM,0BAA0B,EAAE,OAAO;AAAA,EACvC,MAAM,EAAE,QAAQ,QAAQ;AAAA,EACxB,SAAS,EAAE,MAAM,CAAC,qBAAqB,CAAC;AAC1C,CAAC;AAED,IAAM,oBAAoB,EAAE,mBAAmB,QAAQ;AAAA,EACrD;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAEM,IAAM,kCAAkC,EAC5C,OAAO;AAAA,EACN,QAAQ,EAAE,OAAO,EAAE,SAAS;AAAA,EAC5B,UAAU,EAAE,MAAM,iBAAiB,EAAE,IAAI,CAAC;AAAA,EAC1C,OAAO,EAAE,MAAM,iCAAiC,EAAE,SAAS;AAAA,EAC3D,6BAA6B,EAAE,OAAO,EAAE,SAAS;AACnD,CAAC,EACA,MAAM,iCAAiC,EACvC,MAAM,yBAAyB;","names":[]}
|
|
1
|
+
{"version":3,"sources":["../../../src/runtimes/edge/EdgeRuntimeRequestOptions.ts"],"sourcesContent":["import { JSONSchema7 } from \"json-schema\";\nimport {\n LanguageModelConfigSchema,\n LanguageModelV1CallSettingsSchema,\n} from \"../../types/ModelConfigTypes\";\nimport { z } from \"zod\";\n\nconst LanguageModelV1FunctionToolSchema = z.object({\n type: z.literal(\"function\"),\n name: z.string(),\n description: z.string().optional(),\n parameters: z.custom<JSONSchema7>(\n (val) => typeof val === \"object\" && val !== null,\n ),\n});\n\nconst TextContentPartSchema = z.object({\n type: z.literal(\"text\"),\n text: z.string(),\n});\n\nconst ImageContentPartSchema = z.object({\n type: z.literal(\"image\"),\n image: z.string(),\n});\n\nconst Unstable_AudioContentPart = z.object({\n type: z.literal(\"audio\"),\n audio: z.object({\n data: z.string(),\n format: z.union([z.literal(\"mp3\"), z.literal(\"wav\")]),\n }),\n});\n\nconst CoreToolCallContentPartSchema = z.object({\n type: z.literal(\"tool-call\"),\n toolCallId: z.string(),\n toolName: z.string(),\n args: z.record(z.unknown()),\n result: z.unknown().optional(),\n isError: z.boolean().optional(),\n});\n// args is required but unknown;\n\nconst CoreUserMessageSchema = z.object({\n role: z.literal(\"user\"),\n content: z\n .array(\n z.discriminatedUnion(\"type\", [\n TextContentPartSchema,\n ImageContentPartSchema,\n Unstable_AudioContentPart,\n ]),\n )\n .min(1),\n});\n\nconst CoreAssistantMessageSchema = z.object({\n role: z.literal(\"assistant\"),\n content: z\n .array(\n z.discriminatedUnion(\"type\", [\n TextContentPartSchema,\n CoreToolCallContentPartSchema,\n ]),\n )\n .min(1),\n});\n\nconst CoreSystemMessageSchema = z.object({\n role: z.literal(\"system\"),\n content: z.tuple([TextContentPartSchema]),\n});\n\nconst CoreMessageSchema = z.discriminatedUnion(\"role\", [\n CoreSystemMessageSchema,\n CoreUserMessageSchema,\n CoreAssistantMessageSchema,\n]);\n\nexport const EdgeRuntimeRequestOptionsSchema = z\n .object({\n system: z.string().optional(),\n messages: z.array(CoreMessageSchema).min(1),\n runConfig: z\n .object({\n custom: z.record(z.unknown()).optional(),\n })\n .optional(),\n tools: z.array(LanguageModelV1FunctionToolSchema).optional(),\n unstable_assistantMessageId: z.string().optional(),\n })\n .merge(LanguageModelV1CallSettingsSchema)\n .merge(LanguageModelConfigSchema);\n\nexport type EdgeRuntimeRequestOptions = z.infer<\n typeof EdgeRuntimeRequestOptionsSchema\n>;\n"],"mappings":";AACA;AAAA,EACE;AAAA,EACA;AAAA,OACK;AACP,SAAS,SAAS;AAElB,IAAM,oCAAoC,EAAE,OAAO;AAAA,EACjD,MAAM,EAAE,QAAQ,UAAU;AAAA,EAC1B,MAAM,EAAE,OAAO;AAAA,EACf,aAAa,EAAE,OAAO,EAAE,SAAS;AAAA,EACjC,YAAY,EAAE;AAAA,IACZ,CAAC,QAAQ,OAAO,QAAQ,YAAY,QAAQ;AAAA,EAC9C;AACF,CAAC;AAED,IAAM,wBAAwB,EAAE,OAAO;AAAA,EACrC,MAAM,EAAE,QAAQ,MAAM;AAAA,EACtB,MAAM,EAAE,OAAO;AACjB,CAAC;AAED,IAAM,yBAAyB,EAAE,OAAO;AAAA,EACtC,MAAM,EAAE,QAAQ,OAAO;AAAA,EACvB,OAAO,EAAE,OAAO;AAClB,CAAC;AAED,IAAM,4BAA4B,EAAE,OAAO;AAAA,EACzC,MAAM,EAAE,QAAQ,OAAO;AAAA,EACvB,OAAO,EAAE,OAAO;AAAA,IACd,MAAM,EAAE,OAAO;AAAA,IACf,QAAQ,EAAE,MAAM,CAAC,EAAE,QAAQ,KAAK,GAAG,EAAE,QAAQ,KAAK,CAAC,CAAC;AAAA,EACtD,CAAC;AACH,CAAC;AAED,IAAM,gCAAgC,EAAE,OAAO;AAAA,EAC7C,MAAM,EAAE,QAAQ,WAAW;AAAA,EAC3B,YAAY,EAAE,OAAO;AAAA,EACrB,UAAU,EAAE,OAAO;AAAA,EACnB,MAAM,EAAE,OAAO,EAAE,QAAQ,CAAC;AAAA,EAC1B,QAAQ,EAAE,QAAQ,EAAE,SAAS;AAAA,EAC7B,SAAS,EAAE,QAAQ,EAAE,SAAS;AAChC,CAAC;AAGD,IAAM,wBAAwB,EAAE,OAAO;AAAA,EACrC,MAAM,EAAE,QAAQ,MAAM;AAAA,EACtB,SAAS,EACN;AAAA,IACC,EAAE,mBAAmB,QAAQ;AAAA,MAC3B;AAAA,MACA;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH,EACC,IAAI,CAAC;AACV,CAAC;AAED,IAAM,6BAA6B,EAAE,OAAO;AAAA,EAC1C,MAAM,EAAE,QAAQ,WAAW;AAAA,EAC3B,SAAS,EACN;AAAA,IACC,EAAE,mBAAmB,QAAQ;AAAA,MAC3B;AAAA,MACA;AAAA,IACF,CAAC;AAAA,EACH,EACC,IAAI,CAAC;AACV,CAAC;AAED,IAAM,0BAA0B,EAAE,OAAO;AAAA,EACvC,MAAM,EAAE,QAAQ,QAAQ;AAAA,EACxB,SAAS,EAAE,MAAM,CAAC,qBAAqB,CAAC;AAC1C,CAAC;AAED,IAAM,oBAAoB,EAAE,mBAAmB,QAAQ;AAAA,EACrD;AAAA,EACA;AAAA,EACA;AACF,CAAC;AAEM,IAAM,kCAAkC,EAC5C,OAAO;AAAA,EACN,QAAQ,EAAE,OAAO,EAAE,SAAS;AAAA,EAC5B,UAAU,EAAE,MAAM,iBAAiB,EAAE,IAAI,CAAC;AAAA,EAC1C,WAAW,EACR,OAAO;AAAA,IACN,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,SAAS;AAAA,EACzC,CAAC,EACA,SAAS;AAAA,EACZ,OAAO,EAAE,MAAM,iCAAiC,EAAE,SAAS;AAAA,EAC3D,6BAA6B,EAAE,OAAO,EAAE,SAAS;AACnD,CAAC,EACA,MAAM,iCAAiC,EACvC,MAAM,yBAAyB;","names":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AssistantTypes.d.ts","sourceRoot":"","sources":["../../src/types/AssistantTypes.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"AssistantTypes.d.ts","sourceRoot":"","sources":["../../src/types/AssistantTypes.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/types/AssistantTypes.ts"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { CompleteAttachment } from \"./AttachmentTypes\";\n\nexport type MessageRole = \"user\" | \"assistant\" | \"system\";\n\nexport type TextContentPart = {\n readonly type: \"text\";\n readonly text: string;\n};\n\nexport type ImageContentPart = {\n readonly type: \"image\";\n readonly image: string;\n};\n\nexport type Unstable_AudioContentPart = {\n readonly type: \"audio\";\n readonly audio: {\n readonly data: string;\n readonly format: \"mp3\" | \"wav\";\n };\n};\n\nexport type UIContentPart = {\n readonly type: \"ui\";\n readonly display: ReactNode;\n};\n\nexport type CoreToolCallContentPart<\n TArgs extends Record<string, unknown> = Record<string | number, unknown>,\n TResult = unknown,\n> = {\n readonly type: \"tool-call\";\n readonly toolCallId: string;\n readonly toolName: string;\n readonly args: TArgs;\n readonly result?: TResult | undefined;\n readonly isError?: boolean | undefined;\n};\n\nexport type ToolCallContentPart<\n TArgs extends Record<string, unknown> = Record<string | number, unknown>,\n TResult = unknown,\n> = CoreToolCallContentPart<TArgs, TResult> & {\n readonly argsText: string;\n};\n\nexport type ThreadUserContentPart =\n | TextContentPart\n | ImageContentPart\n | Unstable_AudioContentPart\n | UIContentPart;\n\nexport type ThreadAssistantContentPart =\n | TextContentPart\n | ToolCallContentPart\n | UIContentPart;\n\ntype MessageCommonProps = {\n readonly id: string;\n readonly createdAt: Date;\n};\n\nexport type ThreadStep = {\n readonly usage?:\n | {\n readonly promptTokens: number;\n readonly completionTokens: number;\n }\n | undefined;\n};\n\nexport type ContentPartStatus =\n | {\n readonly type: \"running\";\n }\n | {\n readonly type: \"complete\";\n }\n | {\n readonly type: \"incomplete\";\n readonly reason:\n | \"cancelled\"\n | \"length\"\n | \"content-filter\"\n | \"other\"\n | \"error\";\n readonly error?: unknown;\n };\n\nexport type ToolCallContentPartStatus =\n | {\n readonly type: \"requires-action\";\n readonly reason: \"tool-calls\";\n }\n | ContentPartStatus;\n\nexport type MessageStatus =\n | {\n readonly type: \"running\";\n }\n | {\n readonly type: \"requires-action\";\n readonly reason: \"tool-calls\";\n }\n | {\n readonly type: \"complete\";\n readonly reason: \"stop\" | \"unknown\";\n }\n | {\n readonly type: \"incomplete\";\n readonly reason:\n | \"cancelled\"\n | \"tool-calls\"\n | \"length\"\n | \"content-filter\"\n | \"other\"\n | \"error\";\n readonly error?: unknown;\n };\n\nexport type ThreadSystemMessage = MessageCommonProps & {\n readonly role: \"system\";\n readonly content: [TextContentPart];\n readonly metadata: {\n readonly custom: Record<string, unknown>;\n };\n};\n\nexport type ThreadUserMessage = MessageCommonProps & {\n readonly role: \"user\";\n readonly content: ThreadUserContentPart[];\n readonly attachments: readonly CompleteAttachment[];\n readonly metadata: {\n readonly custom: Record<string, unknown>;\n };\n};\n\nexport type ThreadAssistantMessage = MessageCommonProps & {\n readonly role: \"assistant\";\n readonly content: ThreadAssistantContentPart[];\n readonly status: MessageStatus;\n readonly metadata: {\n readonly steps: ThreadStep[];\n readonly custom: Record<string, unknown>;\n };\n};\n\nexport type RunConfig = {\n // TODO allow user customization via global type overrides\n custom?: unknown
|
|
1
|
+
{"version":3,"sources":["../../src/types/AssistantTypes.ts"],"sourcesContent":["import type { ReactNode } from \"react\";\nimport { CompleteAttachment } from \"./AttachmentTypes\";\n\nexport type MessageRole = \"user\" | \"assistant\" | \"system\";\n\nexport type TextContentPart = {\n readonly type: \"text\";\n readonly text: string;\n};\n\nexport type ImageContentPart = {\n readonly type: \"image\";\n readonly image: string;\n};\n\nexport type Unstable_AudioContentPart = {\n readonly type: \"audio\";\n readonly audio: {\n readonly data: string;\n readonly format: \"mp3\" | \"wav\";\n };\n};\n\nexport type UIContentPart = {\n readonly type: \"ui\";\n readonly display: ReactNode;\n};\n\nexport type CoreToolCallContentPart<\n TArgs extends Record<string, unknown> = Record<string | number, unknown>,\n TResult = unknown,\n> = {\n readonly type: \"tool-call\";\n readonly toolCallId: string;\n readonly toolName: string;\n readonly args: TArgs;\n readonly result?: TResult | undefined;\n readonly isError?: boolean | undefined;\n};\n\nexport type ToolCallContentPart<\n TArgs extends Record<string, unknown> = Record<string | number, unknown>,\n TResult = unknown,\n> = CoreToolCallContentPart<TArgs, TResult> & {\n readonly argsText: string;\n};\n\nexport type ThreadUserContentPart =\n | TextContentPart\n | ImageContentPart\n | Unstable_AudioContentPart\n | UIContentPart;\n\nexport type ThreadAssistantContentPart =\n | TextContentPart\n | ToolCallContentPart\n | UIContentPart;\n\ntype MessageCommonProps = {\n readonly id: string;\n readonly createdAt: Date;\n};\n\nexport type ThreadStep = {\n readonly usage?:\n | {\n readonly promptTokens: number;\n readonly completionTokens: number;\n }\n | undefined;\n};\n\nexport type ContentPartStatus =\n | {\n readonly type: \"running\";\n }\n | {\n readonly type: \"complete\";\n }\n | {\n readonly type: \"incomplete\";\n readonly reason:\n | \"cancelled\"\n | \"length\"\n | \"content-filter\"\n | \"other\"\n | \"error\";\n readonly error?: unknown;\n };\n\nexport type ToolCallContentPartStatus =\n | {\n readonly type: \"requires-action\";\n readonly reason: \"tool-calls\";\n }\n | ContentPartStatus;\n\nexport type MessageStatus =\n | {\n readonly type: \"running\";\n }\n | {\n readonly type: \"requires-action\";\n readonly reason: \"tool-calls\";\n }\n | {\n readonly type: \"complete\";\n readonly reason: \"stop\" | \"unknown\";\n }\n | {\n readonly type: \"incomplete\";\n readonly reason:\n | \"cancelled\"\n | \"tool-calls\"\n | \"length\"\n | \"content-filter\"\n | \"other\"\n | \"error\";\n readonly error?: unknown;\n };\n\nexport type ThreadSystemMessage = MessageCommonProps & {\n readonly role: \"system\";\n readonly content: [TextContentPart];\n readonly metadata: {\n readonly custom: Record<string, unknown>;\n };\n};\n\nexport type ThreadUserMessage = MessageCommonProps & {\n readonly role: \"user\";\n readonly content: ThreadUserContentPart[];\n readonly attachments: readonly CompleteAttachment[];\n readonly metadata: {\n readonly custom: Record<string, unknown>;\n };\n};\n\nexport type ThreadAssistantMessage = MessageCommonProps & {\n readonly role: \"assistant\";\n readonly content: ThreadAssistantContentPart[];\n readonly status: MessageStatus;\n readonly metadata: {\n readonly steps: ThreadStep[];\n readonly custom: Record<string, unknown>;\n };\n};\n\nexport type RunConfig = {\n // TODO allow user customization via global type overrides\n readonly custom?: Record<string, unknown>;\n};\n\nexport type AppendMessage = CoreMessage & {\n parentId: string | null;\n attachments: readonly CompleteAttachment[];\n startRun?: boolean | undefined;\n /** TODO: make required in 0.8.0 */\n runConfig?: RunConfig | undefined;\n};\n\ntype BaseThreadMessage = {\n readonly status?: ThreadAssistantMessage[\"status\"];\n readonly metadata: {\n readonly steps?: ThreadStep[];\n readonly custom: Record<string, unknown>;\n };\n readonly attachments?: ThreadUserMessage[\"attachments\"];\n};\n\nexport type ThreadMessage = BaseThreadMessage &\n (ThreadSystemMessage | ThreadUserMessage | ThreadAssistantMessage);\n\n/** Core Message Types (without UI content parts) */\n\nexport type CoreUserContentPart =\n | TextContentPart\n | ImageContentPart\n | Unstable_AudioContentPart;\nexport type CoreAssistantContentPart =\n | TextContentPart\n | CoreToolCallContentPart;\n\nexport type CoreSystemMessage = {\n role: \"system\";\n content: [TextContentPart];\n};\n\nexport type CoreUserMessage = {\n role: \"user\";\n content: CoreUserContentPart[];\n};\n\nexport type CoreAssistantMessage = {\n role: \"assistant\";\n content: CoreAssistantContentPart[];\n};\n\nexport type CoreMessage =\n | CoreSystemMessage\n | CoreUserMessage\n | CoreAssistantMessage;\n"],"mappings":";;;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}
|
package/package.json
CHANGED
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"conversational-ui",
|
|
30
30
|
"conversational-ai"
|
|
31
31
|
],
|
|
32
|
-
"version": "0.7.
|
|
32
|
+
"version": "0.7.24",
|
|
33
33
|
"license": "MIT",
|
|
34
34
|
"exports": {
|
|
35
35
|
".": {
|
|
@@ -121,8 +121,8 @@
|
|
|
121
121
|
"tsup": "8.3.5",
|
|
122
122
|
"tsx": "^4.19.2",
|
|
123
123
|
"@assistant-ui/tailwindcss-transformer": "0.1.0",
|
|
124
|
-
"@assistant-ui/
|
|
125
|
-
"@assistant-ui/
|
|
124
|
+
"@assistant-ui/tsbuildutils": "^0.0.1",
|
|
125
|
+
"@assistant-ui/tsconfig": "0.0.0"
|
|
126
126
|
},
|
|
127
127
|
"publishConfig": {
|
|
128
128
|
"access": "public",
|
|
@@ -78,17 +78,32 @@ export abstract class BaseComposerRuntimeCore implements ComposerRuntimeCore {
|
|
|
78
78
|
this.notifySubscribers();
|
|
79
79
|
}
|
|
80
80
|
|
|
81
|
-
private
|
|
82
|
-
// TODO attachmentAdapter.remove should be called here
|
|
81
|
+
private _sendOrReset() {
|
|
83
82
|
this._attachments = [];
|
|
84
83
|
this._text = "";
|
|
85
|
-
this._role = "user";
|
|
86
|
-
this._runConfig = {};
|
|
87
84
|
this.notifySubscribers();
|
|
88
85
|
}
|
|
89
86
|
|
|
90
87
|
public async reset() {
|
|
91
|
-
|
|
88
|
+
if (
|
|
89
|
+
this._attachments.length === 0 &&
|
|
90
|
+
this._text === "" &&
|
|
91
|
+
this._role === "user" &&
|
|
92
|
+
Object.keys(this._runConfig).length === 0
|
|
93
|
+
) {
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
const attachments = this._attachments;
|
|
98
|
+
this._role = "user";
|
|
99
|
+
this._runConfig = {};
|
|
100
|
+
|
|
101
|
+
this._sendOrReset();
|
|
102
|
+
|
|
103
|
+
const adapter = this.getAttachmentAdapter();
|
|
104
|
+
if (adapter) {
|
|
105
|
+
await Promise.all(attachments.map((a) => adapter.remove(a)));
|
|
106
|
+
}
|
|
92
107
|
}
|
|
93
108
|
|
|
94
109
|
public async send() {
|
|
@@ -110,7 +125,7 @@ export abstract class BaseComposerRuntimeCore implements ComposerRuntimeCore {
|
|
|
110
125
|
attachments,
|
|
111
126
|
runConfig: this.runConfig,
|
|
112
127
|
};
|
|
113
|
-
this.
|
|
128
|
+
this._sendOrReset();
|
|
114
129
|
|
|
115
130
|
this.handleSend(message);
|
|
116
131
|
this._notifyEventSubscribers("send");
|
|
@@ -53,6 +53,7 @@ export class EdgeChatAdapter implements ChatModelAdapter {
|
|
|
53
53
|
|
|
54
54
|
async *run({
|
|
55
55
|
messages,
|
|
56
|
+
runConfig,
|
|
56
57
|
abortSignal,
|
|
57
58
|
config,
|
|
58
59
|
unstable_assistantMessageId,
|
|
@@ -75,6 +76,7 @@ export class EdgeChatAdapter implements ChatModelAdapter {
|
|
|
75
76
|
}),
|
|
76
77
|
tools: config.tools ? toLanguageModelTools(config.tools) : [],
|
|
77
78
|
unstable_assistantMessageId,
|
|
79
|
+
runConfig,
|
|
78
80
|
...config.callSettings,
|
|
79
81
|
...config.config,
|
|
80
82
|
|
|
@@ -82,6 +82,11 @@ export const EdgeRuntimeRequestOptionsSchema = z
|
|
|
82
82
|
.object({
|
|
83
83
|
system: z.string().optional(),
|
|
84
84
|
messages: z.array(CoreMessageSchema).min(1),
|
|
85
|
+
runConfig: z
|
|
86
|
+
.object({
|
|
87
|
+
custom: z.record(z.unknown()).optional(),
|
|
88
|
+
})
|
|
89
|
+
.optional(),
|
|
85
90
|
tools: z.array(LanguageModelV1FunctionToolSchema).optional(),
|
|
86
91
|
unstable_assistantMessageId: z.string().optional(),
|
|
87
92
|
})
|
|
@@ -148,7 +148,7 @@ export type ThreadAssistantMessage = MessageCommonProps & {
|
|
|
148
148
|
|
|
149
149
|
export type RunConfig = {
|
|
150
150
|
// TODO allow user customization via global type overrides
|
|
151
|
-
custom?: unknown
|
|
151
|
+
readonly custom?: Record<string, unknown>;
|
|
152
152
|
};
|
|
153
153
|
|
|
154
154
|
export type AppendMessage = CoreMessage & {
|