@convex-dev/agent 0.0.1-alpha.0 → 0.0.1-alpha.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/dist/commonjs/client/index.d.ts +76 -41
- package/dist/commonjs/client/index.d.ts.map +1 -1
- package/dist/commonjs/client/index.js +104 -68
- package/dist/commonjs/client/index.js.map +1 -1
- package/dist/commonjs/component/messages.d.ts +12 -8
- package/dist/commonjs/component/messages.d.ts.map +1 -1
- package/dist/commonjs/component/messages.js +23 -6
- package/dist/commonjs/component/messages.js.map +1 -1
- package/dist/commonjs/component/schema.d.ts +6 -6
- package/dist/commonjs/component/schema.d.ts.map +1 -1
- package/dist/commonjs/component/schema.js +1 -1
- package/dist/commonjs/component/schema.js.map +1 -1
- package/dist/commonjs/component/vector/index.d.ts +41 -0
- package/dist/commonjs/component/vector/index.d.ts.map +1 -0
- package/dist/commonjs/component/vector/index.js +120 -0
- package/dist/commonjs/component/vector/index.js.map +1 -0
- package/dist/commonjs/component/vector/tables.d.ts.map +1 -1
- package/dist/commonjs/component/vector/tables.js +4 -2
- package/dist/commonjs/component/vector/tables.js.map +1 -1
- package/dist/esm/client/index.d.ts +76 -41
- package/dist/esm/client/index.d.ts.map +1 -1
- package/dist/esm/client/index.js +104 -68
- package/dist/esm/client/index.js.map +1 -1
- package/dist/esm/component/messages.d.ts +12 -8
- package/dist/esm/component/messages.d.ts.map +1 -1
- package/dist/esm/component/messages.js +23 -6
- package/dist/esm/component/messages.js.map +1 -1
- package/dist/esm/component/schema.d.ts +6 -6
- package/dist/esm/component/schema.d.ts.map +1 -1
- package/dist/esm/component/schema.js +1 -1
- package/dist/esm/component/schema.js.map +1 -1
- package/dist/esm/component/vector/index.d.ts +41 -0
- package/dist/esm/component/vector/index.d.ts.map +1 -0
- package/dist/esm/component/vector/index.js +120 -0
- package/dist/esm/component/vector/index.js.map +1 -0
- package/dist/esm/component/vector/tables.d.ts.map +1 -1
- package/dist/esm/component/vector/tables.js +4 -2
- package/dist/esm/component/vector/tables.js.map +1 -1
- package/package.json +1 -1
- package/src/client/index.ts +248 -154
- package/src/component/_generated/api.d.ts +131 -5
- package/src/component/messages.ts +30 -8
- package/src/component/schema.ts +1 -1
- package/src/component/vector/index.ts +144 -0
- package/src/component/vector/tables.ts +7 -5
|
@@ -1,10 +1,14 @@
|
|
|
1
|
+
import type { EmbeddingModelV1, LanguageModelV1 } from "@ai-sdk/provider";
|
|
2
|
+
import type { CoreMessage, DeepPartial, GenerateObjectResult, GenerateTextResult, StepResult, StreamObjectResult, StreamTextResult, Tool, ToolChoice, ToolExecutionOptions, ToolSet, Message as UIMessage } from "ai";
|
|
3
|
+
import { generateObject, generateText, streamObject, streamText } from "ai";
|
|
4
|
+
import type { ZodType } from "zod";
|
|
1
5
|
import { api } from "../component/_generated/api";
|
|
6
|
+
import { Message, MessageStatus, SearchOptions } from "../validators";
|
|
2
7
|
import { RunActionCtx, RunMutationCtx, RunQueryCtx, UseApi } from "./types";
|
|
3
|
-
import
|
|
4
|
-
import {
|
|
5
|
-
import type { StreamTextResult, Tool, ToolSet, StepResult, Message as UIMessage, CoreMessage, GenerateObjectResult, StreamObjectResult, DeepPartial, GenerateTextResult } from "ai";
|
|
6
|
-
import { generateText, generateObject, streamText, streamObject } from "ai";
|
|
8
|
+
import { GenericActionCtx, GenericDataModel } from "convex/server";
|
|
9
|
+
import { Infer, Validator } from "convex/values";
|
|
7
10
|
export type ContextOptions = {
|
|
11
|
+
parentMessageId?: string;
|
|
8
12
|
includeToolMessages?: boolean;
|
|
9
13
|
recentMessages?: number;
|
|
10
14
|
searchOptions?: {
|
|
@@ -18,24 +22,31 @@ export type ContextOptions = {
|
|
|
18
22
|
};
|
|
19
23
|
searchOtherChats?: boolean;
|
|
20
24
|
};
|
|
25
|
+
export type StorageOptions = {
|
|
26
|
+
saveAllInputMessages?: boolean;
|
|
27
|
+
saveOutputMessages?: boolean;
|
|
28
|
+
};
|
|
29
|
+
export type GenerationOutputMetadata = {
|
|
30
|
+
messageId: string;
|
|
31
|
+
};
|
|
21
32
|
type CoreMessageMaybeWithId = CoreMessage & {
|
|
22
33
|
id?: string | undefined;
|
|
23
34
|
};
|
|
24
|
-
export declare class Agent {
|
|
35
|
+
export declare class Agent<AgentTools extends ToolSet> {
|
|
25
36
|
component: UseApi<typeof api>;
|
|
26
37
|
options: {
|
|
27
38
|
name?: string;
|
|
28
39
|
chat: LanguageModelV1;
|
|
29
40
|
textEmbedding?: EmbeddingModelV1<string>;
|
|
30
41
|
defaultSystemPrompt?: string;
|
|
31
|
-
tools?:
|
|
42
|
+
tools?: AgentTools;
|
|
32
43
|
};
|
|
33
44
|
constructor(component: UseApi<typeof api>, options: {
|
|
34
45
|
name?: string;
|
|
35
46
|
chat: LanguageModelV1;
|
|
36
47
|
textEmbedding?: EmbeddingModelV1<string>;
|
|
37
48
|
defaultSystemPrompt?: string;
|
|
38
|
-
tools?:
|
|
49
|
+
tools?: AgentTools;
|
|
39
50
|
});
|
|
40
51
|
/**
|
|
41
52
|
* Start a new chat with the agent. This will have a fresh history, though if
|
|
@@ -69,7 +80,7 @@ export declare class Agent {
|
|
|
69
80
|
summary?: string;
|
|
70
81
|
}): Promise<{
|
|
71
82
|
chatId: string;
|
|
72
|
-
chat: Chat
|
|
83
|
+
chat: Chat<AgentTools>;
|
|
73
84
|
}>;
|
|
74
85
|
/**
|
|
75
86
|
* Start a new chat with the agent. This will have a fresh history, though if
|
|
@@ -92,7 +103,7 @@ export declare class Agent {
|
|
|
92
103
|
chatId: string;
|
|
93
104
|
userId?: string;
|
|
94
105
|
}): Promise<{
|
|
95
|
-
chat: Chat
|
|
106
|
+
chat: Chat<AgentTools>;
|
|
96
107
|
}>;
|
|
97
108
|
fetchContextMessages(ctx: RunQueryCtx | RunActionCtx, args: {
|
|
98
109
|
userId?: string;
|
|
@@ -102,15 +113,12 @@ export declare class Agent {
|
|
|
102
113
|
saveMessages(ctx: RunMutationCtx, args: {
|
|
103
114
|
chatId: string;
|
|
104
115
|
messages: CoreMessageMaybeWithId[];
|
|
105
|
-
steps?: StepResult<ToolSet>[];
|
|
106
116
|
pending?: boolean;
|
|
117
|
+
parentMessageId?: string;
|
|
107
118
|
}): Promise<{
|
|
108
119
|
lastMessageId: string;
|
|
120
|
+
messageIds: string[];
|
|
109
121
|
}>;
|
|
110
|
-
replaceMessages(ctx: RunMutationCtx, args: {
|
|
111
|
-
chatId: string;
|
|
112
|
-
messages: Message[];
|
|
113
|
-
}): Promise<void>;
|
|
114
122
|
saveStep<TOOLS extends ToolSet>(ctx: RunMutationCtx, args: {
|
|
115
123
|
chatId: string;
|
|
116
124
|
messageId: string;
|
|
@@ -140,25 +148,25 @@ export declare class Agent {
|
|
|
140
148
|
*/
|
|
141
149
|
generateText<TOOLS extends ToolSet, OUTPUT = never, OUTPUT_PARTIAL = never>(ctx: RunActionCtx, { userId, chatId, }: {
|
|
142
150
|
userId?: string;
|
|
143
|
-
chatId
|
|
144
|
-
}, args:
|
|
145
|
-
streamText<TOOLS extends ToolSet, OUTPUT = never, PARTIAL_OUTPUT = never>(ctx:
|
|
151
|
+
chatId: string;
|
|
152
|
+
}, args: TextArgs<AgentTools, TOOLS, Parameters<typeof generateText<TOOLS, OUTPUT, OUTPUT_PARTIAL>>[0]>): Promise<GenerateTextResult<TOOLS & AgentTools, OUTPUT> & GenerationOutputMetadata>;
|
|
153
|
+
streamText<TOOLS extends ToolSet, OUTPUT = never, PARTIAL_OUTPUT = never>(ctx: RunActionCtx, { userId, chatId }: {
|
|
146
154
|
userId?: string;
|
|
147
|
-
chatId
|
|
148
|
-
}, args: Partial<Parameters<typeof streamText<TOOLS, OUTPUT, PARTIAL_OUTPUT>>[0]> & ContextOptions): Promise<StreamTextResult<TOOLS, PARTIAL_OUTPUT
|
|
149
|
-
generateObject<
|
|
155
|
+
chatId: string;
|
|
156
|
+
}, args: Partial<Parameters<typeof streamText<TOOLS, OUTPUT, PARTIAL_OUTPUT>>[0]> & ContextOptions & StorageOptions): Promise<StreamTextResult<TOOLS, PARTIAL_OUTPUT> & GenerationOutputMetadata>;
|
|
157
|
+
generateObject<T>(ctx: RunActionCtx, { userId, chatId }: {
|
|
150
158
|
userId?: string;
|
|
151
|
-
chatId
|
|
152
|
-
}, args: Omit<Parameters<typeof generateObject
|
|
159
|
+
chatId: string;
|
|
160
|
+
}, args: Omit<Parameters<typeof generateObject>[0], "model"> & {
|
|
153
161
|
model?: LanguageModelV1;
|
|
154
|
-
} & ContextOptions): Promise<GenerateObjectResult<
|
|
162
|
+
} & ContextOptions & StorageOptions): Promise<GenerateObjectResult<T> & GenerationOutputMetadata>;
|
|
155
163
|
streamObject<T>(ctx: RunMutationCtx, { userId, chatId }: {
|
|
156
164
|
userId?: string;
|
|
157
|
-
chatId
|
|
165
|
+
chatId: string;
|
|
158
166
|
}, args: Omit<Parameters<typeof streamObject<T>>[0], "model"> & {
|
|
159
167
|
model?: LanguageModelV1;
|
|
160
|
-
} & ContextOptions): Promise<StreamObjectResult<DeepPartial<T>, T, never
|
|
161
|
-
|
|
168
|
+
} & ContextOptions & StorageOptions): Promise<StreamObjectResult<DeepPartial<T>, T, never> & GenerationOutputMetadata>;
|
|
169
|
+
searchOptionsWithDefaults(searchArgs: ContextOptions, messages: CoreMessage[]): Promise<SearchOptions>;
|
|
162
170
|
getChatMessages(ctx: RunQueryCtx, args: {
|
|
163
171
|
chatId: string;
|
|
164
172
|
limit?: number;
|
|
@@ -173,26 +181,53 @@ export declare class Agent {
|
|
|
173
181
|
continueCursor?: string;
|
|
174
182
|
isDone: boolean;
|
|
175
183
|
}>;
|
|
176
|
-
getSteps(ctx: RunQueryCtx, args: {
|
|
177
|
-
messageId: string;
|
|
178
|
-
}): Promise<{
|
|
179
|
-
steps: Step[];
|
|
180
|
-
}>;
|
|
181
|
-
}
|
|
182
|
-
interface Chat {
|
|
183
|
-
generateText<TOOLS extends ToolSet, OUTPUT = never, OUTPUT_PARTIAL = never>(args: Partial<Parameters<typeof generateText<TOOLS, OUTPUT, OUTPUT_PARTIAL>>[0]>): Promise<GenerateTextResult<TOOLS, OUTPUT>>;
|
|
184
|
-
streamText<TOOLS extends ToolSet, OUTPUT = never, PARTIAL_OUTPUT = never>(args: Partial<Parameters<typeof streamText<TOOLS, OUTPUT, PARTIAL_OUTPUT>>[0]>): Promise<StreamTextResult<TOOLS, PARTIAL_OUTPUT>>;
|
|
185
|
-
generateObject<OBJECT extends string>(args: Omit<Parameters<typeof generateObject<OBJECT>>[0], "model"> & {
|
|
186
|
-
model?: LanguageModelV1;
|
|
187
|
-
}): Promise<GenerateObjectResult<OBJECT>>;
|
|
188
|
-
streamObject<T>(args: Omit<Parameters<typeof streamObject<T>>[0], "model"> & {
|
|
189
|
-
model?: LanguageModelV1;
|
|
190
|
-
}): Promise<StreamObjectResult<DeepPartial<T>, T, never>>;
|
|
191
184
|
}
|
|
192
185
|
export declare function promptOrMessagesToCoreMessages(args: {
|
|
193
186
|
system?: string;
|
|
194
187
|
prompt?: string;
|
|
195
188
|
messages?: CoreMessage[] | Omit<UIMessage, "id">[];
|
|
196
189
|
}): CoreMessage[];
|
|
190
|
+
type TextArgs<AgentTools extends ToolSet, TOOLS extends ToolSet, T extends {
|
|
191
|
+
toolChoice?: ToolChoice<TOOLS & AgentTools>;
|
|
192
|
+
tools?: TOOLS;
|
|
193
|
+
model: LanguageModelV1;
|
|
194
|
+
}> = Omit<T, "toolChoice" | "tools" | "model"> & {
|
|
195
|
+
model?: LanguageModelV1;
|
|
196
|
+
} & {
|
|
197
|
+
tools?: TOOLS;
|
|
198
|
+
toolChoice?: ToolChoice<{
|
|
199
|
+
[key in keyof TOOLS | keyof AgentTools]: unknown;
|
|
200
|
+
}>;
|
|
201
|
+
} & ContextOptions & StorageOptions;
|
|
202
|
+
type ObjectArgs<T extends {
|
|
203
|
+
model: LanguageModelV1;
|
|
204
|
+
}> = Omit<T, "model"> & {
|
|
205
|
+
model?: LanguageModelV1;
|
|
206
|
+
} & ContextOptions & StorageOptions;
|
|
207
|
+
interface Chat<AgentTools extends ToolSet> {
|
|
208
|
+
generateText<TOOLS extends ToolSet, OUTPUT = never, OUTPUT_PARTIAL = never>(args: TextArgs<AgentTools, TOOLS, Parameters<typeof generateText<TOOLS, OUTPUT, OUTPUT_PARTIAL>>[0]>): Promise<GenerateTextResult<TOOLS & AgentTools, OUTPUT> & GenerationOutputMetadata>;
|
|
209
|
+
streamText<TOOLS extends ToolSet, OUTPUT = never, PARTIAL_OUTPUT = never>(args: TextArgs<AgentTools, TOOLS, Parameters<typeof streamText<TOOLS, OUTPUT, PARTIAL_OUTPUT>>[0]>): Promise<StreamTextResult<TOOLS & AgentTools, PARTIAL_OUTPUT> & GenerationOutputMetadata>;
|
|
210
|
+
generateObject<T>(args: ObjectArgs<Parameters<typeof generateObject>[0]>): Promise<GenerateObjectResult<T> & GenerationOutputMetadata>;
|
|
211
|
+
streamObject<T>(args: ObjectArgs<Parameters<typeof streamObject<T>>[0]>): Promise<StreamObjectResult<DeepPartial<T>, T, never> & GenerationOutputMetadata>;
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* This is a wrapper around the ai.tool function that adds support for
|
|
215
|
+
* userId and chatId to the tool, if they're called within a chat from an agent.
|
|
216
|
+
* @param tool The AI tool. See https://sdk.vercel.ai/docs/ai-sdk-core/tools-and-tool-calling
|
|
217
|
+
* @returns The same tool, but with userId and chatId args support added.
|
|
218
|
+
*/
|
|
219
|
+
export declare function tool<V extends Validator<any, any, any>, RESULT>(convexTool: {
|
|
220
|
+
args: V;
|
|
221
|
+
description?: string;
|
|
222
|
+
handler: (ctx: GenericActionCtx<GenericDataModel> & {
|
|
223
|
+
userId?: string;
|
|
224
|
+
chatId?: string;
|
|
225
|
+
}, args: Infer<V>, options: ToolExecutionOptions) => PromiseLike<RESULT>;
|
|
226
|
+
ctx?: GenericActionCtx<GenericDataModel> & {
|
|
227
|
+
userId?: string;
|
|
228
|
+
chatId?: string;
|
|
229
|
+
};
|
|
230
|
+
}): Tool<ZodType<Infer<V>>, RESULT>;
|
|
231
|
+
export declare function wrapTools(actionCtx: RunActionCtx, chatId: string, userId?: string, ...toolSets: (ToolSet | undefined)[]): ToolSet;
|
|
197
232
|
export {};
|
|
198
233
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { convertToCoreMessages, coreMessageSchema, generateObject, generateText, streamObject, streamText, } from "ai";
|
|
2
2
|
// TODO: is this the only dependency that needs helpers in client?
|
|
3
3
|
import { assert } from "convex-helpers";
|
|
4
|
-
import {
|
|
4
|
+
import { convexToZod } from "convex-helpers/server/zod";
|
|
5
5
|
import { serializeMessageWithId, serializeNewMessagesInStep, serializeStep, } from "../mapping";
|
|
6
|
+
import { DEFAULT_MESSAGE_RANGE, extractText } from "../shared";
|
|
6
7
|
export class Agent {
|
|
7
8
|
component;
|
|
8
9
|
options;
|
|
@@ -52,8 +53,10 @@ export class Agent {
|
|
|
52
53
|
const searchMessages = await ctx.runAction(this.component.messages.searchMessages, {
|
|
53
54
|
userId: args.searchOtherChats ? args.userId : undefined,
|
|
54
55
|
chatId: args.chatId,
|
|
55
|
-
|
|
56
|
+
parentMessageId: args.parentMessageId,
|
|
57
|
+
...(await this.searchOptionsWithDefaults(args, args.messages)),
|
|
56
58
|
});
|
|
59
|
+
// TODO: track what messages we used for context
|
|
57
60
|
contextMessages.push(...searchMessages.map((m) => m.message));
|
|
58
61
|
}
|
|
59
62
|
if (args.chatId) {
|
|
@@ -61,6 +64,7 @@ export class Agent {
|
|
|
61
64
|
chatId: args.chatId,
|
|
62
65
|
isTool: args.includeToolMessages ?? false,
|
|
63
66
|
limit: args.recentMessages,
|
|
67
|
+
parentMessageId: args.parentMessageId,
|
|
64
68
|
order: "desc",
|
|
65
69
|
statuses: ["success"],
|
|
66
70
|
});
|
|
@@ -76,14 +80,13 @@ export class Agent {
|
|
|
76
80
|
messages: args.messages.map(serializeMessageWithId),
|
|
77
81
|
failPendingSteps: true,
|
|
78
82
|
pending: args.pending ?? false,
|
|
83
|
+
parentMessageId: args.parentMessageId,
|
|
79
84
|
});
|
|
80
85
|
return {
|
|
81
|
-
lastMessageId: result.messages.at(-1)
|
|
86
|
+
lastMessageId: result.messages.at(-1)._id,
|
|
87
|
+
messageIds: result.messages.map((m) => m._id),
|
|
82
88
|
};
|
|
83
89
|
}
|
|
84
|
-
async replaceMessages(ctx, args) {
|
|
85
|
-
throw new Error("Not implemented");
|
|
86
|
-
}
|
|
87
90
|
async saveStep(ctx, args) {
|
|
88
91
|
const step = serializeStep(args.step);
|
|
89
92
|
const messages = serializeNewMessagesInStep(args.step);
|
|
@@ -94,6 +97,7 @@ export class Agent {
|
|
|
94
97
|
failPendingSteps: false,
|
|
95
98
|
});
|
|
96
99
|
}
|
|
100
|
+
// If you manually create a message, call this to either commit or reset it.
|
|
97
101
|
async completeMessage(ctx, args) {
|
|
98
102
|
const result = args.result;
|
|
99
103
|
if (result.kind === "success") {
|
|
@@ -128,24 +132,25 @@ export class Agent {
|
|
|
128
132
|
chatId,
|
|
129
133
|
messages,
|
|
130
134
|
});
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
messageId = lastMessageId;
|
|
140
|
-
}
|
|
135
|
+
const { lastMessageId: messageId } = await this.saveMessages(ctx, {
|
|
136
|
+
chatId,
|
|
137
|
+
messages: args.saveAllInputMessages ? messages : messages.slice(-1),
|
|
138
|
+
pending: true,
|
|
139
|
+
parentMessageId: args.parentMessageId,
|
|
140
|
+
});
|
|
141
|
+
const defaults = this.options.tools;
|
|
142
|
+
const tools = wrapTools(ctx, chatId, userId, defaults, args.tools);
|
|
141
143
|
try {
|
|
142
144
|
const result = await generateText({
|
|
143
145
|
model: this.options.chat,
|
|
144
146
|
messages: [...contextMessages, ...messages],
|
|
145
147
|
system: this.options.defaultSystemPrompt,
|
|
148
|
+
tools,
|
|
149
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
150
|
+
toolChoice: args.toolChoice,
|
|
146
151
|
...rest,
|
|
147
152
|
onStepFinish: async (step) => {
|
|
148
|
-
if (chatId && messageId) {
|
|
153
|
+
if (chatId && messageId && args.saveOutputMessages) {
|
|
149
154
|
await this.saveStep(ctx, {
|
|
150
155
|
chatId,
|
|
151
156
|
messageId,
|
|
@@ -155,7 +160,7 @@ export class Agent {
|
|
|
155
160
|
return args.onStepFinish?.(step);
|
|
156
161
|
},
|
|
157
162
|
});
|
|
158
|
-
return result;
|
|
163
|
+
return { ...result, messageId };
|
|
159
164
|
}
|
|
160
165
|
catch (error) {
|
|
161
166
|
if (chatId && messageId) {
|
|
@@ -176,20 +181,21 @@ export class Agent {
|
|
|
176
181
|
chatId,
|
|
177
182
|
messages,
|
|
178
183
|
});
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
}
|
|
189
|
-
return streamText({
|
|
184
|
+
const { lastMessageId: messageId } = await this.saveMessages(ctx, {
|
|
185
|
+
chatId,
|
|
186
|
+
messages: args.saveAllInputMessages ? messages : messages.slice(-1),
|
|
187
|
+
pending: true,
|
|
188
|
+
parentMessageId: args.parentMessageId,
|
|
189
|
+
});
|
|
190
|
+
const defaults = this.options.tools;
|
|
191
|
+
const tools = wrapTools(ctx, chatId, userId, defaults, args.tools);
|
|
192
|
+
const result = streamText({
|
|
190
193
|
model: this.options.chat,
|
|
191
194
|
messages: [...contextMessages, ...messages],
|
|
192
195
|
system: this.options.defaultSystemPrompt,
|
|
196
|
+
tools,
|
|
197
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
198
|
+
toolChoice: args.toolChoice,
|
|
193
199
|
...rest,
|
|
194
200
|
onChunk: async (chunk) => {
|
|
195
201
|
console.log("onChunk", chunk);
|
|
@@ -223,8 +229,9 @@ export class Agent {
|
|
|
223
229
|
return args.onStepFinish?.(step);
|
|
224
230
|
},
|
|
225
231
|
});
|
|
232
|
+
return { ...result, messageId };
|
|
226
233
|
}
|
|
227
|
-
// TODO:
|
|
234
|
+
// TODO: add the crazy number of overloads to get types through
|
|
228
235
|
async generateObject(ctx, { userId, chatId }, args) {
|
|
229
236
|
const { prompt, messages: raw, ...rest } = args;
|
|
230
237
|
const messages = promptOrMessagesToCoreMessages({ prompt, messages: raw });
|
|
@@ -234,11 +241,17 @@ export class Agent {
|
|
|
234
241
|
chatId,
|
|
235
242
|
messages,
|
|
236
243
|
});
|
|
237
|
-
|
|
244
|
+
const { lastMessageId: messageId } = await this.saveMessages(ctx, {
|
|
245
|
+
chatId,
|
|
246
|
+
messages: args.saveAllInputMessages ? messages : messages.slice(-1),
|
|
247
|
+
pending: true,
|
|
248
|
+
});
|
|
249
|
+
const result = (await generateObject({
|
|
238
250
|
model: this.options.chat,
|
|
239
251
|
messages: [...contextMessages, ...messages],
|
|
240
252
|
...rest,
|
|
241
|
-
});
|
|
253
|
+
}));
|
|
254
|
+
return { ...result, messageId };
|
|
242
255
|
}
|
|
243
256
|
async streamObject(ctx, { userId, chatId }, args) {
|
|
244
257
|
const { prompt, messages: raw, ...rest } = args;
|
|
@@ -249,7 +262,12 @@ export class Agent {
|
|
|
249
262
|
chatId,
|
|
250
263
|
messages,
|
|
251
264
|
});
|
|
252
|
-
|
|
265
|
+
const { lastMessageId: messageId } = await this.saveMessages(ctx, {
|
|
266
|
+
chatId,
|
|
267
|
+
messages: args.saveAllInputMessages ? messages : messages.slice(-1),
|
|
268
|
+
pending: true,
|
|
269
|
+
});
|
|
270
|
+
const result = streamObject({
|
|
253
271
|
model: this.options.chat,
|
|
254
272
|
messages: [...contextMessages, ...messages],
|
|
255
273
|
...rest,
|
|
@@ -261,8 +279,9 @@ export class Agent {
|
|
|
261
279
|
console.log("onFinish", result);
|
|
262
280
|
},
|
|
263
281
|
});
|
|
282
|
+
return { ...result, messageId };
|
|
264
283
|
}
|
|
265
|
-
async
|
|
284
|
+
async searchOptionsWithDefaults(searchArgs, messages) {
|
|
266
285
|
assert(searchArgs.searchOptions?.textSearch ||
|
|
267
286
|
searchArgs.searchOptions?.vectorSearch, "searchOptions is required");
|
|
268
287
|
assert(messages.length > 0, "Core messages cannot be empty");
|
|
@@ -302,40 +321,7 @@ export class Agent {
|
|
|
302
321
|
isDone: messages.isDone,
|
|
303
322
|
};
|
|
304
323
|
}
|
|
305
|
-
async getSteps(ctx, args) {
|
|
306
|
-
return { steps: [] };
|
|
307
|
-
}
|
|
308
324
|
}
|
|
309
|
-
// type ToolParameters = ZodTypeAny | Schema<unknown>; // TODO: support convex validator
|
|
310
|
-
// type inferParameters<PARAMETERS extends ToolParameters> =
|
|
311
|
-
// PARAMETERS extends Schema<unknown>
|
|
312
|
-
// ? PARAMETERS["_type"]
|
|
313
|
-
// : PARAMETERS extends z.ZodTypeAny
|
|
314
|
-
// ? z.infer<PARAMETERS>
|
|
315
|
-
// : never;
|
|
316
|
-
// /**
|
|
317
|
-
// * This is a wrapper around the ai.tool function that adds support for
|
|
318
|
-
// * userId and chatId to the tool, if they're called within a chat from an agent.
|
|
319
|
-
// * @param tool The AI tool. See https://sdk.vercel.ai/docs/ai-sdk-core/tools-and-tool-calling
|
|
320
|
-
// * @returns The same tool, but with userId and chatId args support added.
|
|
321
|
-
// */
|
|
322
|
-
// export function tool<PARAMETERS extends ToolParameters, RESULT>(
|
|
323
|
-
// tool: Tool<PARAMETERS, RESULT> & {
|
|
324
|
-
// execute: (
|
|
325
|
-
// args: inferParameters<PARAMETERS> & { userId?: string; chatId?: string },
|
|
326
|
-
// options: ToolExecutionOptions
|
|
327
|
-
// ) => PromiseLike<RESULT>;
|
|
328
|
-
// }
|
|
329
|
-
// ): Tool<PARAMETERS, RESULT> & {
|
|
330
|
-
// execute: (
|
|
331
|
-
// args: inferParameters<PARAMETERS>,
|
|
332
|
-
// options: ToolExecutionOptions
|
|
333
|
-
// ) => PromiseLike<RESULT>;
|
|
334
|
-
// } {
|
|
335
|
-
// // eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
336
|
-
// (tool as any).__acceptUserIdAndChatId = true;
|
|
337
|
-
// return tool;
|
|
338
|
-
// }
|
|
339
325
|
export function promptOrMessagesToCoreMessages(args) {
|
|
340
326
|
const messages = [];
|
|
341
327
|
if (args.system) {
|
|
@@ -359,6 +345,56 @@ export function promptOrMessagesToCoreMessages(args) {
|
|
|
359
345
|
assert(messages.length > 0, "Messages must contain at least one message");
|
|
360
346
|
return messages;
|
|
361
347
|
}
|
|
348
|
+
// type ToolParameters = ZodTypeAny | Schema<unknown>; // TODO: support convex validator
|
|
349
|
+
// type inferParameters<PARAMETERS extends ToolParameters> =
|
|
350
|
+
// PARAMETERS extends Schema<unknown>
|
|
351
|
+
// ? PARAMETERS["_type"]
|
|
352
|
+
// : PARAMETERS extends z.ZodTypeAny
|
|
353
|
+
// ? z.infer<PARAMETERS>
|
|
354
|
+
// : never;
|
|
355
|
+
/**
|
|
356
|
+
* This is a wrapper around the ai.tool function that adds support for
|
|
357
|
+
* userId and chatId to the tool, if they're called within a chat from an agent.
|
|
358
|
+
* @param tool The AI tool. See https://sdk.vercel.ai/docs/ai-sdk-core/tools-and-tool-calling
|
|
359
|
+
* @returns The same tool, but with userId and chatId args support added.
|
|
360
|
+
*/
|
|
361
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
362
|
+
export function tool(convexTool) {
|
|
363
|
+
const tool = {
|
|
364
|
+
__acceptUserIdAndChatId: true,
|
|
365
|
+
description: convexTool.description,
|
|
366
|
+
parameters: convexToZod(convexTool.args),
|
|
367
|
+
execute: async (args, options) => {
|
|
368
|
+
if (!convexTool.ctx) {
|
|
369
|
+
throw new Error("To use a Convex tool, you must either provide the ctx" +
|
|
370
|
+
" at definition time (dynamically in an action), or use the Agent to" +
|
|
371
|
+
" call it (which injects the ctx, userId and chatId)");
|
|
372
|
+
}
|
|
373
|
+
return convexTool.handler(convexTool.ctx, args, options);
|
|
374
|
+
},
|
|
375
|
+
};
|
|
376
|
+
return tool;
|
|
377
|
+
}
|
|
378
|
+
export function wrapTools(actionCtx, chatId, userId, ...toolSets) {
|
|
379
|
+
const ctx = { ...actionCtx, chatId, userId };
|
|
380
|
+
const output = {};
|
|
381
|
+
for (const toolSet of toolSets) {
|
|
382
|
+
if (!toolSet) {
|
|
383
|
+
continue;
|
|
384
|
+
}
|
|
385
|
+
for (const [name, tool] of Object.entries(toolSet)) {
|
|
386
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
387
|
+
if (!tool.__acceptUserIdAndChatId) {
|
|
388
|
+
output[name] = tool;
|
|
389
|
+
}
|
|
390
|
+
else {
|
|
391
|
+
const out = { ...tool, ctx };
|
|
392
|
+
output[name] = out;
|
|
393
|
+
}
|
|
394
|
+
}
|
|
395
|
+
}
|
|
396
|
+
return output;
|
|
397
|
+
}
|
|
362
398
|
// export function convexValidatorSchema<T>(validator: Validator<unknown>) {
|
|
363
399
|
// return ai.jsonSchema(convexToJsonSchema(validator));
|
|
364
400
|
// }
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/client/index.ts"],"names":[],"mappings":"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"}
|