@dxos/assistant 0.7.4 → 0.7.5-labs.071a3e2
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/lib/browser/chunk-AXUUNA7O.mjs +565 -0
- package/dist/lib/browser/chunk-AXUUNA7O.mjs.map +7 -0
- package/dist/lib/browser/index.mjs +1212 -47
- package/dist/lib/browser/index.mjs.map +4 -4
- package/dist/lib/browser/meta.json +1 -1
- package/dist/lib/browser/testing/index.mjs +15 -9
- package/dist/lib/browser/testing/index.mjs.map +4 -4
- package/dist/lib/node/chunk-QPHGQINW.cjs +577 -0
- package/dist/lib/node/chunk-QPHGQINW.cjs.map +7 -0
- package/dist/lib/node/index.cjs +1212 -54
- package/dist/lib/node/index.cjs.map +4 -4
- package/dist/lib/node/meta.json +1 -1
- package/dist/lib/node/testing/index.cjs +21 -14
- package/dist/lib/node/testing/index.cjs.map +4 -4
- package/dist/lib/node-esm/chunk-GOVFOBIB.mjs +567 -0
- package/dist/lib/node-esm/chunk-GOVFOBIB.mjs.map +7 -0
- package/dist/lib/node-esm/index.mjs +1212 -47
- package/dist/lib/node-esm/index.mjs.map +4 -4
- package/dist/lib/node-esm/meta.json +1 -1
- package/dist/lib/node-esm/testing/index.mjs +15 -9
- package/dist/lib/node-esm/testing/index.mjs.map +4 -4
- package/dist/types/src/ai-service/client.d.ts +16 -32
- package/dist/types/src/ai-service/client.d.ts.map +1 -1
- package/dist/types/src/ai-service/index.d.ts +4 -1
- package/dist/types/src/ai-service/index.d.ts.map +1 -1
- package/dist/types/src/ai-service/parser.d.ts +136 -0
- package/dist/types/src/ai-service/parser.d.ts.map +1 -0
- package/dist/types/src/ai-service/stream.d.ts +39 -0
- package/dist/types/src/ai-service/stream.d.ts.map +1 -0
- package/dist/types/src/ai-service/stream.test.d.ts +2 -0
- package/dist/types/src/ai-service/stream.test.d.ts.map +1 -0
- package/dist/types/src/ai-service/testing.d.ts +7 -0
- package/dist/types/src/ai-service/testing.d.ts.map +1 -0
- package/dist/types/src/ai-service/transform.d.ts +27 -0
- package/dist/types/src/ai-service/transform.d.ts.map +1 -0
- package/dist/types/src/ai-service/types.d.ts +150 -0
- package/dist/types/src/ai-service/types.d.ts.map +1 -0
- package/dist/types/src/ai-service/util/index.d.ts +2 -0
- package/dist/types/src/ai-service/util/index.d.ts.map +1 -0
- package/dist/types/src/ai-service/{sse.d.ts → util/sse.d.ts} +5 -0
- package/dist/types/src/ai-service/util/sse.d.ts.map +1 -0
- package/dist/types/src/conversation/conversation.d.ts +61 -6
- package/dist/types/src/conversation/conversation.d.ts.map +1 -1
- package/dist/types/src/conversation/index.d.ts +0 -1
- package/dist/types/src/conversation/index.d.ts.map +1 -1
- package/dist/types/src/conversation/types.d.ts +44 -13
- package/dist/types/src/conversation/types.d.ts.map +1 -1
- package/dist/types/src/cypher/combinators.d.ts.map +1 -1
- package/dist/types/src/cypher/parjs.d.ts +1 -1
- package/dist/types/src/cypher/parjs.d.ts.map +1 -1
- package/dist/types/src/cypher/schema.d.ts.map +1 -1
- package/dist/types/src/testing/artifacts.test.d.ts +1 -0
- package/dist/types/src/testing/artifacts.test.d.ts.map +1 -0
- package/dist/types/src/testing/data.d.ts +2 -0
- package/dist/types/src/testing/data.d.ts.map +1 -0
- package/dist/types/src/testing/defs.d.ts +5 -0
- package/dist/types/src/testing/defs.d.ts.map +1 -0
- package/dist/types/src/testing/index.d.ts +1 -0
- package/dist/types/src/testing/index.d.ts.map +1 -1
- package/dist/types/src/testing/logger.d.ts +1 -1
- package/dist/types/src/testing/logger.d.ts.map +1 -1
- package/dist/types/src/testing/query-promts.d.ts +1 -1
- package/dist/types/src/testing/query-promts.d.ts.map +1 -1
- package/dist/types/src/testing/test-data.d.ts +1 -1
- package/dist/types/src/testing/test-data.d.ts.map +1 -1
- package/dist/types/src/testing/test-schema.d.ts +4 -4
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +22 -18
- package/src/ai-service/client.test.ts +69 -54
- package/src/ai-service/client.ts +29 -184
- package/src/ai-service/index.ts +4 -1
- package/src/ai-service/parser.ts +338 -0
- package/src/ai-service/stream.test.ts +101 -0
- package/src/ai-service/stream.ts +116 -0
- package/src/ai-service/testing.ts +93 -0
- package/src/ai-service/transform.ts +121 -0
- package/src/ai-service/types.ts +107 -0
- package/src/ai-service/util/index.ts +5 -0
- package/src/ai-service/{sse.ts → util/sse.ts} +5 -0
- package/src/bin/chat.ts +10 -11
- package/src/conversation/conversation.test.ts +16 -17
- package/src/conversation/conversation.ts +126 -20
- package/src/conversation/index.ts +0 -1
- package/src/conversation/types.ts +55 -16
- package/src/cypher/combinators.test.ts +4 -4
- package/src/cypher/combinators.ts +0 -1
- package/src/cypher/execution-plan.test.ts +5 -3
- package/src/cypher/parjs-shims.d.ts +4 -0
- package/src/cypher/parjs.ts +2 -2
- package/src/cypher/query-executor.test.ts +1 -1
- package/src/cypher/schema.ts +6 -2
- package/src/index.ts +1 -1
- package/src/testing/artifacts.test.ts +182 -0
- package/src/testing/data.ts +13 -0
- package/src/testing/defs.ts +8 -0
- package/src/testing/index.ts +1 -0
- package/src/testing/logger.ts +3 -2
- package/src/testing/query-promts.ts +3 -3
- package/src/testing/query.test.ts +11 -10
- package/src/testing/test-data.ts +8 -2
- package/vendor/parjs-browser.mjs +4 -0
- package/vendor/parjs-default.mjs +8 -0
- package/dist/lib/browser/chunk-AKP45LQH.mjs +0 -1394
- package/dist/lib/browser/chunk-AKP45LQH.mjs.map +0 -7
- package/dist/lib/node/chunk-G6CGWEMO.cjs +0 -1418
- package/dist/lib/node/chunk-G6CGWEMO.cjs.map +0 -7
- package/dist/lib/node-esm/chunk-WUPUPEFB.mjs +0 -1396
- package/dist/lib/node-esm/chunk-WUPUPEFB.mjs.map +0 -7
- package/dist/types/src/ai-service/schema.d.ts +0 -296
- package/dist/types/src/ai-service/schema.d.ts.map +0 -1
- package/dist/types/src/ai-service/sse.d.ts.map +0 -1
- package/dist/types/src/sanity.test.d.ts +0 -2
- package/dist/types/src/sanity.test.d.ts.map +0 -1
- package/src/ai-service/schema.ts +0 -260
- package/src/sanity.test.ts +0 -9
|
@@ -1,48 +1,32 @@
|
|
|
1
|
-
import type
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
};
|
|
1
|
+
import { Message, type Space, type Thread } from '@dxos/artifact';
|
|
2
|
+
import { type SpaceId } from '@dxos/keys';
|
|
3
|
+
import { type GenerationStream } from './stream';
|
|
4
|
+
import { type GenerateRequest } from './types';
|
|
6
5
|
export interface AIServiceClient {
|
|
7
6
|
getSpace(spaceId: SpaceId): Promise<Space>;
|
|
8
7
|
getThread(spaceId: SpaceId, threadId: string): Promise<Thread>;
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
getMessages(spaceId: SpaceId, threadId: string): Promise<Message[]>;
|
|
9
|
+
appendMessages(messages: Message[]): Promise<void>;
|
|
11
10
|
updateMessage(spaceId: SpaceId, threadId: string, messageId: string, message: Message): Promise<void>;
|
|
12
11
|
generate(request: GenerateRequest): Promise<GenerationStream>;
|
|
13
12
|
}
|
|
13
|
+
export type AIServiceClientParams = {
|
|
14
|
+
endpoint: string;
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Edge GPT client.
|
|
18
|
+
*/
|
|
14
19
|
export declare class AIServiceClientImpl implements AIServiceClient {
|
|
15
20
|
private readonly _endpoint;
|
|
16
21
|
constructor({ endpoint }: AIServiceClientParams);
|
|
17
22
|
getSpace(spaceId: SpaceId): Promise<Space>;
|
|
18
23
|
getThread(spaceId: SpaceId, threadId: string): Promise<Thread>;
|
|
19
|
-
|
|
20
|
-
|
|
24
|
+
getMessages(spaceId: SpaceId, threadId: string): Promise<Message[]>;
|
|
25
|
+
appendMessages(messages: Message[]): Promise<void>;
|
|
21
26
|
updateMessage(spaceId: SpaceId, threadId: string, messageId: string, message: Message): Promise<void>;
|
|
22
|
-
generate(request: GenerateRequest): Promise<GenerationStream>;
|
|
23
|
-
}
|
|
24
|
-
type GenerationParams = {
|
|
25
|
-
spaceId: SpaceId;
|
|
26
|
-
threadId: ObjectId;
|
|
27
|
-
};
|
|
28
|
-
export declare class GenerationStream implements AsyncIterable<ResultStreamEvent> {
|
|
29
|
-
private readonly _params;
|
|
30
|
-
private readonly _getIterator;
|
|
31
|
-
static fromSSEResponse(params: GenerationParams, response: Response): GenerationStream;
|
|
32
|
-
private _previousMessages;
|
|
33
|
-
private _accumulatedMessage?;
|
|
34
|
-
private _done;
|
|
35
|
-
private _iterator?;
|
|
36
|
-
constructor(_params: GenerationParams, _getIterator: () => AsyncIterableIterator<ResultStreamEvent>);
|
|
37
|
-
[Symbol.asyncIterator](): AsyncIterator<ResultStreamEvent>;
|
|
38
|
-
cancel(): void;
|
|
39
|
-
get accumulatedMessages(): Message[];
|
|
40
27
|
/**
|
|
41
|
-
*
|
|
28
|
+
* Open message stream.
|
|
42
29
|
*/
|
|
43
|
-
|
|
44
|
-
private _createIterator;
|
|
45
|
-
private _processEvent;
|
|
30
|
+
generate(request: GenerateRequest): Promise<GenerationStream>;
|
|
46
31
|
}
|
|
47
|
-
export {};
|
|
48
32
|
//# sourceMappingURL=client.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/client.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAE,KAAK,KAAK,EAAE,KAAK,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAElE,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,YAAY,CAAC;AAE1C,OAAO,EAA0B,KAAK,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACzE,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,SAAS,CAAC;AAG/C,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAC3C,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/D,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;IACpE,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtG,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAC/D;AAED,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF;;GAEG;AAEH,qBAAa,mBAAoB,YAAW,eAAe;IACzD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEvB,EAAE,QAAQ,EAAE,EAAE,qBAAqB;IAKzC,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC;IAI1C,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI9D,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAKnE,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAgBlD,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAI3G;;OAEG;IACG,QAAQ,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC;CAYpE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/index.ts"],"names":[],"mappings":"AAIA,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/index.ts"],"names":[],"mappings":"AAIA,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC"}
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
import { type MessageContentBlock } from '@dxos/artifact';
|
|
2
|
+
import { Event } from '@dxos/async';
|
|
3
|
+
import { type GenerationStream } from './stream';
|
|
4
|
+
import { type StreamBlock } from './transform';
|
|
5
|
+
/**
|
|
6
|
+
* Parse mixed content of plain text, XML fragments, and JSON blocks.
|
|
7
|
+
*/
|
|
8
|
+
export declare class MixedStreamParser {
|
|
9
|
+
/**
|
|
10
|
+
* New message.
|
|
11
|
+
*/
|
|
12
|
+
message: Event<{
|
|
13
|
+
readonly id: string;
|
|
14
|
+
spaceId?: import("packages/common/keys/dist/types/src").SpaceId | undefined;
|
|
15
|
+
content: ({
|
|
16
|
+
pending?: boolean | undefined;
|
|
17
|
+
type: "text";
|
|
18
|
+
text: string;
|
|
19
|
+
disposition?: string | undefined;
|
|
20
|
+
} | {
|
|
21
|
+
pending?: boolean | undefined;
|
|
22
|
+
type: "json";
|
|
23
|
+
disposition?: string | undefined;
|
|
24
|
+
json: string;
|
|
25
|
+
} | {
|
|
26
|
+
pending?: boolean | undefined;
|
|
27
|
+
id?: string | undefined;
|
|
28
|
+
type: "image";
|
|
29
|
+
source?: {
|
|
30
|
+
type: "base64";
|
|
31
|
+
mediaType: string;
|
|
32
|
+
data: string;
|
|
33
|
+
} | undefined;
|
|
34
|
+
} | {
|
|
35
|
+
pending?: boolean | undefined;
|
|
36
|
+
id: string;
|
|
37
|
+
type: "tool_use";
|
|
38
|
+
name: string;
|
|
39
|
+
input: unknown;
|
|
40
|
+
} | {
|
|
41
|
+
pending?: boolean | undefined;
|
|
42
|
+
type: "tool_result";
|
|
43
|
+
toolUseId: string;
|
|
44
|
+
content: string;
|
|
45
|
+
isError?: boolean | undefined;
|
|
46
|
+
})[];
|
|
47
|
+
threadId?: string | undefined;
|
|
48
|
+
foreignId?: string | undefined;
|
|
49
|
+
role: "user" | "assistant";
|
|
50
|
+
}>;
|
|
51
|
+
/**
|
|
52
|
+
* Complete block added to Message.
|
|
53
|
+
*/
|
|
54
|
+
block: Event<{
|
|
55
|
+
pending?: boolean | undefined;
|
|
56
|
+
type: "text";
|
|
57
|
+
disposition?: string | undefined;
|
|
58
|
+
text: string;
|
|
59
|
+
} | {
|
|
60
|
+
pending?: boolean | undefined;
|
|
61
|
+
type: "json";
|
|
62
|
+
disposition?: string | undefined;
|
|
63
|
+
json: string;
|
|
64
|
+
} | {
|
|
65
|
+
pending?: boolean | undefined;
|
|
66
|
+
type: "image";
|
|
67
|
+
id?: string | undefined;
|
|
68
|
+
source?: {
|
|
69
|
+
type: "base64";
|
|
70
|
+
mediaType: string;
|
|
71
|
+
data: string;
|
|
72
|
+
} | undefined;
|
|
73
|
+
} | {
|
|
74
|
+
pending?: boolean | undefined;
|
|
75
|
+
name: string;
|
|
76
|
+
type: "tool_use";
|
|
77
|
+
id: string;
|
|
78
|
+
input: unknown;
|
|
79
|
+
} | {
|
|
80
|
+
pending?: boolean | undefined;
|
|
81
|
+
type: "tool_result";
|
|
82
|
+
content: string;
|
|
83
|
+
toolUseId: string;
|
|
84
|
+
isError?: boolean | undefined;
|
|
85
|
+
}>;
|
|
86
|
+
/**
|
|
87
|
+
* Update partial block (while streaming).
|
|
88
|
+
*/
|
|
89
|
+
update: Event<{
|
|
90
|
+
pending?: boolean | undefined;
|
|
91
|
+
type: "text";
|
|
92
|
+
disposition?: string | undefined;
|
|
93
|
+
text: string;
|
|
94
|
+
} | {
|
|
95
|
+
pending?: boolean | undefined;
|
|
96
|
+
type: "json";
|
|
97
|
+
disposition?: string | undefined;
|
|
98
|
+
json: string;
|
|
99
|
+
} | {
|
|
100
|
+
pending?: boolean | undefined;
|
|
101
|
+
type: "image";
|
|
102
|
+
id?: string | undefined;
|
|
103
|
+
source?: {
|
|
104
|
+
type: "base64";
|
|
105
|
+
mediaType: string;
|
|
106
|
+
data: string;
|
|
107
|
+
} | undefined;
|
|
108
|
+
} | {
|
|
109
|
+
pending?: boolean | undefined;
|
|
110
|
+
name: string;
|
|
111
|
+
type: "tool_use";
|
|
112
|
+
id: string;
|
|
113
|
+
input: unknown;
|
|
114
|
+
} | {
|
|
115
|
+
pending?: boolean | undefined;
|
|
116
|
+
type: "tool_result";
|
|
117
|
+
content: string;
|
|
118
|
+
toolUseId: string;
|
|
119
|
+
isError?: boolean | undefined;
|
|
120
|
+
}>;
|
|
121
|
+
/**
|
|
122
|
+
* Current message.
|
|
123
|
+
*/
|
|
124
|
+
private _message?;
|
|
125
|
+
private _emitBlock;
|
|
126
|
+
private _emitUpdate;
|
|
127
|
+
/**
|
|
128
|
+
* Parse stream until end.
|
|
129
|
+
*/
|
|
130
|
+
parse(stream: GenerationStream): Promise<void>;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Convert stream block to message content block.
|
|
134
|
+
*/
|
|
135
|
+
export declare const mergeMessageBlock: (contentBlock: MessageContentBlock, streamBlock: StreamBlock) => MessageContentBlock | undefined;
|
|
136
|
+
//# sourceMappingURL=parser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/parser.ts"],"names":[],"mappings":"AAIA,OAAO,EAAW,KAAK,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACnE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAMpC,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,aAAa,CAAC;AAEhE;;GAEG;AACH,qBAAa,iBAAiB;IAC5B;;OAEG;IACI,OAAO;;;;mBA8IM,CAAH;;;uBACwB,CAAC;;mBAEpB,CAApB;;uBACoB,CAApB;;;mBAC4B,CAAC;cACP,CAAX;;kBACS,CAAN;;;;;;mBAIE,CAAN;;;;;;mBAOI,CAAX;;;;mBAEsC,CAAC;;;;;OAlKN;IAEtC;;OAEG;IACI,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAoC;IAEhD;;OAEG;IACI,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAAoC;IAEjD;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,CAAsB;IAEvC,OAAO,CAAC,UAAU;IAalB,OAAO,CAAC,WAAW;IAQnB;;OAEG;IACG,KAAK,CAAC,MAAM,EAAE,gBAAgB;CA4LrC;AAED;;GAEG;AACH,eAAO,MAAM,iBAAiB,iBACd,mBAAmB,eACpB,WAAW,KACvB,mBAAmB,GAAG,SA+ExB,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { type GenerationStreamEvent } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Creates a stream from an SSE response.
|
|
4
|
+
*/
|
|
5
|
+
export declare const createGenerationStream: (response: Response, controller?: AbortController) => GenerationStream;
|
|
6
|
+
/**
|
|
7
|
+
* Server-Sent Events (SSE) stream from the AI service.
|
|
8
|
+
* https://html.spec.whatwg.org/multipage/server-sent-events.html#server-sent-events
|
|
9
|
+
*/
|
|
10
|
+
export declare class GenerationStream implements AsyncIterable<GenerationStreamEvent> {
|
|
11
|
+
private readonly _controller;
|
|
12
|
+
private readonly _getIterator;
|
|
13
|
+
/**
|
|
14
|
+
* Trigger event when the stream is done.
|
|
15
|
+
*/
|
|
16
|
+
private readonly _done;
|
|
17
|
+
/**
|
|
18
|
+
* Iterator over the stream.
|
|
19
|
+
*/
|
|
20
|
+
private _iterator?;
|
|
21
|
+
constructor(_controller: AbortController, _getIterator: () => AsyncIterableIterator<GenerationStreamEvent>);
|
|
22
|
+
/**
|
|
23
|
+
* Returns an iterator over the stream.
|
|
24
|
+
*/
|
|
25
|
+
[Symbol.asyncIterator](): AsyncIterator<GenerationStreamEvent>;
|
|
26
|
+
/**
|
|
27
|
+
* Aborts the stream.
|
|
28
|
+
*/
|
|
29
|
+
abort(): void;
|
|
30
|
+
/**
|
|
31
|
+
* Returns the complete message list generated by the AI service.
|
|
32
|
+
*/
|
|
33
|
+
complete(): Promise<void>;
|
|
34
|
+
/**
|
|
35
|
+
* Creates an iterator over the stream.
|
|
36
|
+
*/
|
|
37
|
+
private _createIterator;
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=stream.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/stream.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAGrD;;GAEG;AACH,eAAO,MAAM,sBAAsB,aAAc,QAAQ,mDAuCxD,CAAC;AAEF;;;GAGG;AACH,qBAAa,gBAAiB,YAAW,aAAa,CAAC,qBAAqB,CAAC;IAYzE,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAZ/B;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiB;IAEvC;;OAEG;IACH,OAAO,CAAC,SAAS,CAAC,CAAmD;gBAGlD,WAAW,EAAE,eAAe,EAC5B,YAAY,EAAE,MAAM,qBAAqB,CAAC,qBAAqB,CAAC;IAGnF;;OAEG;IACH,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,aAAa,CAAC,qBAAqB,CAAC;IAI9D;;OAEG;IACH,KAAK;IAIL;;OAEG;IACG,QAAQ;IAId;;OAEG;IACH,OAAO,CAAC,eAAe;CAiBxB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stream.test.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/stream.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"testing.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/testing.ts"],"names":[],"mappings":"AAQA;;GAEG;AACH,eAAO,MAAM,mBAAmB,SACxB,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,gBACH;IAAE,OAAO,CAAC,EAAE,MAAM,GAAG,WAAW,CAAA;CAAE,KACvD,cA8EF,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Parsed block.
|
|
3
|
+
*/
|
|
4
|
+
export type StreamBlock = {
|
|
5
|
+
type: 'tag';
|
|
6
|
+
tag: string;
|
|
7
|
+
attributes?: Record<string, string>;
|
|
8
|
+
content: StreamBlock[];
|
|
9
|
+
closing?: boolean;
|
|
10
|
+
selfClosing?: boolean;
|
|
11
|
+
} | {
|
|
12
|
+
type: 'text';
|
|
13
|
+
content: string;
|
|
14
|
+
} | {
|
|
15
|
+
type: 'json';
|
|
16
|
+
disposition?: string;
|
|
17
|
+
content: string;
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Permissive streaming transformer that processes mixed content (plain text and XML fragments) from the AI service.
|
|
21
|
+
*/
|
|
22
|
+
export declare class StreamTransform {
|
|
23
|
+
private _buffer;
|
|
24
|
+
transform(chunk: string): StreamBlock[];
|
|
25
|
+
flush(): StreamBlock[];
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=transform.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transform.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/transform.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,MAAM,MAAM,WAAW,GACnB;IACE,IAAI,EAAE,KAAK,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACpC,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB,GACD;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAiE5D;;GAEG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,OAAO,CAAM;IAErB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,WAAW,EAAE;IAkBvC,KAAK,IAAI,WAAW,EAAE;CAYvB"}
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
import { Schema as S } from '@effect/schema';
|
|
2
|
+
import { Message, type MessageContentBlock } from '@dxos/artifact';
|
|
3
|
+
import { ObjectId } from '@dxos/echo-schema';
|
|
4
|
+
export declare const createArtifactElement: (id: ObjectId) => string;
|
|
5
|
+
export declare const LLMModel: S.Literal<["@anthropic/claude-3-5-haiku-20241022", "@anthropic/claude-3-5-sonnet-20241022", "@cf/deepseek-ai/deepseek-r1-distill-qwen-32b", "@hf/nousresearch/hermes-2-pro-mistral-7b", "@ollama/llama-3-2-3b", "@ollama/llama-3-1-nemotron-70b-instruct", "@ollama/llama-3-1-nemotron-mini-4b-instruct"]>;
|
|
6
|
+
export type LLMModel = S.Schema.Type<typeof LLMModel>;
|
|
7
|
+
export declare const ToolTypes: Readonly<{
|
|
8
|
+
TextToImage: "text_to_image";
|
|
9
|
+
}>;
|
|
10
|
+
/**
|
|
11
|
+
* Client GPT request.
|
|
12
|
+
*/
|
|
13
|
+
export declare const GenerateRequest: S.Struct<{
|
|
14
|
+
spaceId: S.optional<S.Schema<import("packages/common/keys/dist/types/src").SpaceId, string, never>>;
|
|
15
|
+
threadId: S.optional<import("@dxos/echo-schema").ObjectIdClass>;
|
|
16
|
+
model: S.Literal<["@anthropic/claude-3-5-haiku-20241022", "@anthropic/claude-3-5-sonnet-20241022", "@cf/deepseek-ai/deepseek-r1-distill-qwen-32b", "@hf/nousresearch/hermes-2-pro-mistral-7b", "@ollama/llama-3-2-3b", "@ollama/llama-3-1-nemotron-70b-instruct", "@ollama/llama-3-1-nemotron-mini-4b-instruct"]>;
|
|
17
|
+
/**
|
|
18
|
+
* Current request.
|
|
19
|
+
*/
|
|
20
|
+
/**
|
|
21
|
+
* System instructions to the LLM.
|
|
22
|
+
*/
|
|
23
|
+
systemPrompt: S.optional<typeof S.String>;
|
|
24
|
+
/**
|
|
25
|
+
* History of messages to include in the context window.
|
|
26
|
+
*/
|
|
27
|
+
history: S.optional<S.Array$<S.Schema<{
|
|
28
|
+
readonly id: string;
|
|
29
|
+
spaceId?: import("packages/common/keys/dist/types/src").SpaceId | undefined;
|
|
30
|
+
content: ({
|
|
31
|
+
pending?: boolean | undefined;
|
|
32
|
+
type: "text";
|
|
33
|
+
text: string;
|
|
34
|
+
disposition?: string | undefined;
|
|
35
|
+
} | {
|
|
36
|
+
pending?: boolean | undefined;
|
|
37
|
+
type: "json";
|
|
38
|
+
disposition?: string | undefined;
|
|
39
|
+
json: string;
|
|
40
|
+
} | {
|
|
41
|
+
pending?: boolean | undefined;
|
|
42
|
+
id?: string | undefined;
|
|
43
|
+
type: "image";
|
|
44
|
+
source?: {
|
|
45
|
+
type: "base64";
|
|
46
|
+
mediaType: string;
|
|
47
|
+
data: string;
|
|
48
|
+
} | undefined;
|
|
49
|
+
} | {
|
|
50
|
+
pending?: boolean | undefined;
|
|
51
|
+
id: string;
|
|
52
|
+
type: "tool_use";
|
|
53
|
+
name: string;
|
|
54
|
+
input: unknown;
|
|
55
|
+
} | {
|
|
56
|
+
pending?: boolean | undefined;
|
|
57
|
+
type: "tool_result";
|
|
58
|
+
toolUseId: string;
|
|
59
|
+
content: string;
|
|
60
|
+
isError?: boolean | undefined;
|
|
61
|
+
})[];
|
|
62
|
+
threadId?: string | undefined;
|
|
63
|
+
foreignId?: string | undefined;
|
|
64
|
+
role: "user" | "assistant";
|
|
65
|
+
}, {
|
|
66
|
+
readonly id: string;
|
|
67
|
+
spaceId?: import("packages/common/keys/dist/types/src").SpaceId | undefined;
|
|
68
|
+
content: ({
|
|
69
|
+
pending?: boolean | undefined;
|
|
70
|
+
type: "text";
|
|
71
|
+
text: string;
|
|
72
|
+
disposition?: string | undefined;
|
|
73
|
+
} | {
|
|
74
|
+
pending?: boolean | undefined;
|
|
75
|
+
type: "json";
|
|
76
|
+
disposition?: string | undefined;
|
|
77
|
+
json: string;
|
|
78
|
+
} | {
|
|
79
|
+
pending?: boolean | undefined;
|
|
80
|
+
id?: string | undefined;
|
|
81
|
+
type: "image";
|
|
82
|
+
source?: {
|
|
83
|
+
type: "base64";
|
|
84
|
+
mediaType: string;
|
|
85
|
+
data: string;
|
|
86
|
+
} | undefined;
|
|
87
|
+
} | {
|
|
88
|
+
pending?: boolean | undefined;
|
|
89
|
+
id: string;
|
|
90
|
+
type: "tool_use";
|
|
91
|
+
name: string;
|
|
92
|
+
input: unknown;
|
|
93
|
+
} | {
|
|
94
|
+
pending?: boolean | undefined;
|
|
95
|
+
type: "tool_result";
|
|
96
|
+
toolUseId: string;
|
|
97
|
+
content: string;
|
|
98
|
+
isError?: boolean | undefined;
|
|
99
|
+
})[];
|
|
100
|
+
threadId?: string | undefined;
|
|
101
|
+
foreignId?: string | undefined;
|
|
102
|
+
role: "user" | "assistant";
|
|
103
|
+
}, never>>>;
|
|
104
|
+
/**
|
|
105
|
+
* Tools available for the LLM.
|
|
106
|
+
*/
|
|
107
|
+
tools: S.optional<S.mutable<S.Array$<S.Struct<{
|
|
108
|
+
name: typeof S.String;
|
|
109
|
+
type: S.optional<typeof S.String>;
|
|
110
|
+
description: S.optional<typeof S.String>;
|
|
111
|
+
parameters: S.optional<S.Schema<import("@dxos/echo-schema").JsonSchemaType, import("@dxos/echo-schema").JsonSchemaType, never>>;
|
|
112
|
+
options: S.optional<typeof S.Any>;
|
|
113
|
+
}>>>>;
|
|
114
|
+
}>;
|
|
115
|
+
export type GenerateRequest = S.Schema.Type<typeof GenerateRequest>;
|
|
116
|
+
/**
|
|
117
|
+
* Server-Sent Events (SSE) stream from the AI service.
|
|
118
|
+
* https://docs.anthropic.com/en/api/streaming
|
|
119
|
+
* https://platform.openai.com/docs/api-reference/streaming
|
|
120
|
+
* https://html.spec.whatwg.org/multipage/server-sent-events.html#server-sent-events
|
|
121
|
+
*/
|
|
122
|
+
export type GenerationStreamEvent = {
|
|
123
|
+
type: 'message_start';
|
|
124
|
+
message: Omit<Message, 'spaceId' | 'threadId'>;
|
|
125
|
+
} | {
|
|
126
|
+
type: 'message_delta';
|
|
127
|
+
delta: {
|
|
128
|
+
stopReason: 'tool_use' | 'end_turn';
|
|
129
|
+
};
|
|
130
|
+
} | {
|
|
131
|
+
type: 'message_stop';
|
|
132
|
+
} | {
|
|
133
|
+
type: 'content_block_start';
|
|
134
|
+
index: number;
|
|
135
|
+
content: MessageContentBlock;
|
|
136
|
+
} | {
|
|
137
|
+
type: 'content_block_delta';
|
|
138
|
+
index: number;
|
|
139
|
+
delta: {
|
|
140
|
+
type: 'text_delta';
|
|
141
|
+
text: string;
|
|
142
|
+
} | {
|
|
143
|
+
type: 'input_json_delta';
|
|
144
|
+
partial_json: string;
|
|
145
|
+
};
|
|
146
|
+
} | {
|
|
147
|
+
type: 'content_block_stop';
|
|
148
|
+
index: number;
|
|
149
|
+
};
|
|
150
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/ai-service/types.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,IAAI,CAAC,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAQ,OAAO,EAAE,KAAK,mBAAmB,EAAiB,MAAM,gBAAgB,CAAC;AACxF,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,eAAO,MAAM,qBAAqB,OAAQ,QAAQ,WAA4B,CAAC;AAE/E,eAAO,MAAM,QAAQ,4SAQpB,CAAC;AAEF,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,QAAQ,CAAC,CAAC;AAEtD,eAAO,MAAM,SAAS;;EAIpB,CAAC;AAEH;;GAEG;AACH,eAAO,MAAM,eAAe;;;;IAO1B;;OAEG;IAIH;;OAEG;;IAGH;;OAEG;;;;;mBAuDoiE,CAAC;;;uBAAsF,CAAC;;mBAA+C,CAAC;;uBAAgE,CAAC;;;mBAAqE,CAAC;cAAiC,CAAC;;kBAA2D,CAAC;;;;;;mBAAyI,CAAC;;;;;;mBAA4I,CAAC;;;;mBAAuH,CAAC;;;;;;;;;mBAAwO,CAAC;;;uBAAsF,CAAC;;mBAA+C,CAAC;;uBAAgE,CAAC;;;mBAAqE,CAAC;cAAiC,CAAC;;kBAA2D,CAAC;;;;;;mBAAyI,CAAC;;;;;;mBAA4I,CAAC;;;;mBAAuH,CAAC;;;;;;IApDvwH;;OAEG;;qBAQmB,EAAG,MAAM;cAS3B,EAAG,QAAQ,QAAO,EAAG,MAAM;qBAKzB,EAAA,QAAK,QAAO,EAAG,MAAM;oBASvB,EAAE,QAAQ,CAAC,EAAE,MAAM;iBAQb,EAAA,QAAA,QAAO,EAAG,GAAG;;EArCvB,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,eAAe,CAAC,CAAC;AAEpE;;;;;GAKG;AAEH,MAAM,MAAM,qBAAqB,GAC7B;IAEE,IAAI,EAAE,eAAe,CAAC;IACtB,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,GAAG,UAAU,CAAC,CAAC;CAChD,GACD;IACE,IAAI,EAAE,eAAe,CAAC;IACtB,KAAK,EAAE;QACL,UAAU,EAAE,UAAU,GAAG,UAAU,CAAC;KACrC,CAAC;CACH,GACD;IACE,IAAI,EAAE,cAAc,CAAC;CACtB,GACD;IACE,IAAI,EAAE,qBAAqB,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,mBAAmB,CAAC;CAC9B,GACD;IACE,IAAI,EAAE,qBAAqB,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EACD;QACE,IAAI,EAAE,YAAY,CAAC;QACnB,IAAI,EAAE,MAAM,CAAC;KACd,GACD;QACE,IAAI,EAAE,kBAAkB,CAAC;QACzB,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;CACP,GACD;IACE,IAAI,EAAE,oBAAoB,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;CACf,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/util/index.ts"],"names":[],"mappings":"AAIA,cAAc,OAAO,CAAC"}
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Server sent events (SSE) iterator.
|
|
3
|
+
* @param response
|
|
4
|
+
* @param controller
|
|
5
|
+
*/
|
|
1
6
|
export declare function iterSSEMessages(response: Response, controller: AbortController): AsyncGenerator<ServerSentEvent, void, unknown>;
|
|
2
7
|
export type ServerSentEvent = {
|
|
3
8
|
event: string | null;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sse.d.ts","sourceRoot":"","sources":["../../../../../src/ai-service/util/sse.ts"],"names":[],"mappings":"AAKA;;;;GAIG;AACH,wBAAuB,eAAe,CACpC,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,eAAe,GAC1B,cAAc,CAAC,eAAe,EAAE,IAAI,EAAE,OAAO,CAAC,CAyBhD;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,EAAE,CAAC;CACf,CAAC;AA8HF,uEAAuE;AACvE,eAAO,MAAM,aAAa,WAAY,MAAM,EAAE,KAAG,MAAM,EAQtD,CAAC;AAWF;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,GAAG,qBAAqB,CAAC,CAAC,CAAC,CA6BpF;AAED,MAAM,MAAM,KAAK,GAAG,MAAM,GAAG,WAAW,GAAG,UAAU,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;AAElF;;;;;GAKG;AACH,qBAAa,WAAW;IAEtB,MAAM,CAAC,aAAa,cAAyB;IAC7C,MAAM,CAAC,cAAc,SAAkB;IAEvC,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,EAAE,GAAG,CAAC;;IAOjB,MAAM,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,EAAE;IA0C9B,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;IAuChC,KAAK,IAAI,MAAM,EAAE;CAUlB"}
|
|
@@ -1,23 +1,78 @@
|
|
|
1
|
+
import { type Tool, Message } from '@dxos/artifact';
|
|
2
|
+
import { ObjectId } from '@dxos/echo-schema';
|
|
1
3
|
import { type SpaceId } from '@dxos/keys';
|
|
2
|
-
import {
|
|
3
|
-
import { type AIServiceClient, type Message, type ResultStreamEvent, type LLMModel } from '../ai-service';
|
|
4
|
+
import { type AIServiceClient, type GenerationStreamEvent, type LLMModel } from '../ai-service';
|
|
4
5
|
export type CreateLLMConversationParams = {
|
|
5
6
|
model: LLMModel;
|
|
7
|
+
spaceId?: SpaceId;
|
|
8
|
+
threadId?: ObjectId;
|
|
6
9
|
/**
|
|
7
10
|
* System prompt that specifies instructions for the LLM.
|
|
8
11
|
*/
|
|
9
12
|
system?: string;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
tools: LLMTool[];
|
|
13
|
+
tools: Tool[];
|
|
14
|
+
history?: Message[];
|
|
13
15
|
client: AIServiceClient;
|
|
14
16
|
logger?: (event: ConversationEvent) => void;
|
|
15
17
|
};
|
|
16
18
|
export type ConversationEvent = {
|
|
17
19
|
type: 'message';
|
|
18
20
|
message: Message;
|
|
19
|
-
} |
|
|
21
|
+
} | GenerationStreamEvent;
|
|
20
22
|
export declare const runLLM: (params: CreateLLMConversationParams) => Promise<{
|
|
21
23
|
result: any;
|
|
24
|
+
history: {
|
|
25
|
+
readonly id: string;
|
|
26
|
+
spaceId?: SpaceId | undefined;
|
|
27
|
+
content: ({
|
|
28
|
+
pending?: boolean | undefined;
|
|
29
|
+
type: "text";
|
|
30
|
+
text: string;
|
|
31
|
+
disposition?: string | undefined;
|
|
32
|
+
} | {
|
|
33
|
+
pending?: boolean | undefined;
|
|
34
|
+
type: "json";
|
|
35
|
+
disposition?: string | undefined;
|
|
36
|
+
json: string;
|
|
37
|
+
} | {
|
|
38
|
+
pending?: boolean | undefined;
|
|
39
|
+
id?: string | undefined;
|
|
40
|
+
type: "image";
|
|
41
|
+
source?: {
|
|
42
|
+
type: "base64";
|
|
43
|
+
mediaType: string;
|
|
44
|
+
data: string;
|
|
45
|
+
} | undefined;
|
|
46
|
+
} | {
|
|
47
|
+
pending?: boolean | undefined;
|
|
48
|
+
id: string;
|
|
49
|
+
type: "tool_use";
|
|
50
|
+
name: string;
|
|
51
|
+
input: unknown;
|
|
52
|
+
} | {
|
|
53
|
+
pending?: boolean | undefined;
|
|
54
|
+
type: "tool_result";
|
|
55
|
+
toolUseId: string;
|
|
56
|
+
content: string;
|
|
57
|
+
isError?: boolean | undefined;
|
|
58
|
+
})[];
|
|
59
|
+
threadId?: string | undefined;
|
|
60
|
+
foreignId?: string | undefined;
|
|
61
|
+
role: "user" | "assistant";
|
|
62
|
+
}[];
|
|
22
63
|
}>;
|
|
64
|
+
export declare const isToolUse: (message: Message) => boolean;
|
|
65
|
+
export type RunToolsOptions = {
|
|
66
|
+
message: Message;
|
|
67
|
+
tools: Tool[];
|
|
68
|
+
extensions?: ToolContextExtensions;
|
|
69
|
+
};
|
|
70
|
+
export type RunToolsResult = {
|
|
71
|
+
type: 'continue';
|
|
72
|
+
message: Message;
|
|
73
|
+
} | {
|
|
74
|
+
type: 'break';
|
|
75
|
+
result: unknown;
|
|
76
|
+
};
|
|
77
|
+
export declare const runTools: ({ message, tools, extensions }: RunToolsOptions) => Promise<RunToolsResult>;
|
|
23
78
|
//# sourceMappingURL=conversation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../../../../src/conversation/conversation.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"conversation.d.ts","sourceRoot":"","sources":["../../../../src/conversation/conversation.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,IAAI,EAAc,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAChE,OAAO,EAAgB,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE3D,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,YAAY,CAAC;AAG1C,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,qBAAqB,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEhG,MAAM,MAAM,2BAA2B,GAAG;IACxC,KAAK,EAAE,QAAQ,CAAC;IAEhB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAEpB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC;IACpB,MAAM,EAAE,eAAe,CAAC;IAExB,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;CAC7C,CAAC;AAEF,MAAM,MAAM,iBAAiB,GACzB;IACE,IAAI,EAAE,SAAS,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;CAClB,GACD,qBAAqB,CAAC;AAG1B,eAAO,MAAM,MAAM,WAAkB,2BAA2B;;;;;;mBAsIY,CAAC;;;uBAGlE,CAAC;;mBAA+C,CAAC;;uBAEjB,CAAC;;;mBAK/B,CAAC;cACI,CAAC;;kBACT,CAAA;;;;;;mBAMN,CAAC;;;;;;mBAGU,CAAC;;;;mBAKH,CAAC;;;;;;EAnDb,CAAC;AAEF,eAAO,MAAM,SAAS,YAAa,OAAO,YAIzC,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,UAAU,CAAC,EAAE,qBAAqB,CAAC;CACpC,CAAC;AAEF,MAAM,MAAM,cAAc,GACtB;IACE,IAAI,EAAE,UAAU,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CAClB,GACD;IACE,IAAI,EAAE,OAAO,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;CACjB,CAAC;AAEN,eAAO,MAAM,QAAQ,mCAA0C,eAAe,KAAG,OAAO,CAAC,cAAc,CAoEtG,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/conversation/index.ts"],"names":[],"mappings":"AAIA,cAAc,gBAAgB,CAAC
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/conversation/index.ts"],"names":[],"mappings":"AAIA,cAAc,gBAAgB,CAAC"}
|