@agentica/core 0.43.3 → 0.44.0-dev.20260313-2
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/LICENSE +21 -21
- package/README.md +218 -218
- package/lib/constants/AgenticaSystemPrompt.js +1 -1
- package/lib/constants/AgenticaSystemPrompt.js.map +1 -1
- package/lib/context/AgenticaOperation.d.ts +3 -2
- package/lib/context/internal/AgenticaOperationComposer.js.map +1 -1
- package/lib/context/internal/AgenticaTokenUsageAggregator.js.map +1 -1
- package/lib/context/internal/__IChatInitialApplication.d.ts +1 -1
- package/lib/errors/AgenticaJsonParseError.d.ts +5 -8
- package/lib/errors/AgenticaJsonParseError.js +11 -6
- package/lib/errors/AgenticaJsonParseError.js.map +1 -1
- package/lib/errors/AgenticaValidationError.d.ts +1 -1
- package/lib/events/AgenticaExecuteEvent.d.ts +1 -1
- package/lib/events/AgenticaJsonParseErrorEvent.d.ts +2 -2
- package/lib/factory/events.d.ts +2 -3
- package/lib/factory/events.js +1 -2
- package/lib/factory/events.js.map +1 -1
- package/lib/functional/assertHttpController.d.ts +2 -3
- package/lib/functional/assertHttpController.js +3939 -2656
- package/lib/functional/assertHttpController.js.map +1 -1
- package/lib/functional/assertHttpLlmApplication.d.ts +3 -3
- package/lib/functional/assertHttpLlmApplication.js +3939 -2656
- package/lib/functional/assertHttpLlmApplication.js.map +1 -1
- package/lib/functional/assertMcpController.d.ts +2 -2
- package/lib/functional/assertMcpController.js +202 -629
- package/lib/functional/assertMcpController.js.map +1 -1
- package/lib/functional/createMcpLlmApplication.d.ts +6 -0
- package/lib/functional/createMcpLlmApplication.js +56 -0
- package/lib/functional/createMcpLlmApplication.js.map +1 -0
- package/lib/functional/validateHttpController.d.ts +3 -3
- package/lib/functional/validateHttpController.js +3367 -2268
- package/lib/functional/validateHttpController.js.map +1 -1
- package/lib/functional/validateHttpLlmApplication.d.ts +3 -4
- package/lib/functional/validateHttpLlmApplication.js +3367 -2268
- package/lib/functional/validateHttpLlmApplication.js.map +1 -1
- package/lib/functional/validateMcpController.d.ts +2 -2
- package/lib/functional/validateMcpController.js +388 -1161
- package/lib/functional/validateMcpController.js.map +1 -1
- package/lib/histories/AgenticaExecuteHistory.d.ts +1 -1
- package/lib/index.mjs +21256 -18946
- package/lib/index.mjs.map +1 -1
- package/lib/orchestrate/call.js +43 -56
- package/lib/orchestrate/call.js.map +1 -1
- package/lib/orchestrate/cancel.js +9 -66
- package/lib/orchestrate/cancel.js.map +1 -1
- package/lib/orchestrate/initialize.js +4 -947
- package/lib/orchestrate/initialize.js.map +1 -1
- package/lib/orchestrate/select.js +11 -68
- package/lib/orchestrate/select.js.map +1 -1
- package/lib/structures/IAgenticaController.d.ts +143 -151
- package/lib/structures/IMcpTool.d.ts +52 -0
- package/lib/structures/IMcpTool.js +3 -0
- package/lib/structures/IMcpTool.js.map +1 -0
- package/lib/utils/ChatGptCompletionMessageUtil.js +16 -5
- package/lib/utils/ChatGptCompletionMessageUtil.js.map +1 -1
- package/lib/utils/ChatGptCompletionMessageUtil.spec.js +0 -5
- package/lib/utils/ChatGptCompletionMessageUtil.spec.js.map +1 -1
- package/package.json +7 -9
- package/prompts/cancel.md +5 -5
- package/prompts/common.md +3 -3
- package/prompts/describe.md +7 -7
- package/prompts/execute.md +122 -122
- package/prompts/initialize.md +3 -3
- package/prompts/json_parse_error.md +35 -33
- package/prompts/select.md +7 -7
- package/prompts/validate.md +123 -123
- package/prompts/validate_repeated.md +31 -31
- package/src/Agentica.ts +367 -367
- package/src/MicroAgentica.ts +357 -357
- package/src/constants/AgenticaConstant.ts +4 -4
- package/src/constants/AgenticaDefaultPrompt.ts +44 -44
- package/src/constants/AgenticaSystemPrompt.ts +1 -1
- package/src/constants/index.ts +2 -2
- package/src/context/AgenticaContext.ts +136 -136
- package/src/context/AgenticaContextRequestResult.ts +14 -14
- package/src/context/AgenticaOperation.ts +73 -72
- package/src/context/AgenticaOperationCollection.ts +49 -49
- package/src/context/AgenticaOperationSelection.ts +9 -9
- package/src/context/AgenticaTokenUsage.ts +186 -186
- package/src/context/MicroAgenticaContext.ts +99 -99
- package/src/context/index.ts +5 -5
- package/src/context/internal/AgenticaOperationComposer.ts +177 -177
- package/src/context/internal/AgenticaTokenUsageAggregator.ts +66 -66
- package/src/context/internal/__IChatCancelFunctionsApplication.ts +23 -23
- package/src/context/internal/__IChatFunctionReference.ts +21 -21
- package/src/context/internal/__IChatInitialApplication.ts +15 -15
- package/src/context/internal/__IChatSelectFunctionsApplication.ts +24 -24
- package/src/context/internal/isAgenticaContext.ts +11 -11
- package/src/errors/AgenticaJsonParseError.ts +52 -47
- package/src/errors/AgenticaValidationError.ts +49 -49
- package/src/errors/index.ts +2 -2
- package/src/events/AgenticaAssistantMessageEvent.ts +12 -12
- package/src/events/AgenticaCallEvent.ts +27 -27
- package/src/events/AgenticaCancelEvent.ts +9 -9
- package/src/events/AgenticaDescribeEvent.ts +14 -14
- package/src/events/AgenticaEvent.ts +59 -59
- package/src/events/AgenticaEvent.type.ts +19 -19
- package/src/events/AgenticaEventBase.ts +18 -18
- package/src/events/AgenticaEventSource.ts +6 -6
- package/src/events/AgenticaExecuteEvent.ts +45 -45
- package/src/events/AgenticaInitializeEvent.ts +7 -7
- package/src/events/AgenticaJsonParseErrorEvent.ts +16 -15
- package/src/events/AgenticaRequestEvent.ts +27 -27
- package/src/events/AgenticaResponseEvent.ts +32 -32
- package/src/events/AgenticaSelectEvent.ts +11 -11
- package/src/events/AgenticaUserMessageEvent.ts +12 -12
- package/src/events/AgenticaValidateEvent.ts +32 -32
- package/src/events/MicroAgenticaEvent.ts +45 -45
- package/src/events/index.ts +15 -15
- package/src/factory/events.ts +357 -359
- package/src/factory/histories.ts +348 -348
- package/src/factory/index.ts +3 -3
- package/src/factory/operations.ts +16 -16
- package/src/functional/assertHttpController.ts +106 -104
- package/src/functional/assertHttpLlmApplication.ts +52 -57
- package/src/functional/assertMcpController.ts +47 -44
- package/src/functional/createMcpLlmApplication.ts +72 -0
- package/src/functional/index.ts +7 -7
- package/src/functional/validateHttpController.ts +113 -110
- package/src/functional/validateHttpLlmApplication.ts +65 -70
- package/src/functional/validateMcpController.ts +53 -50
- package/src/histories/AgenticaAssistantMessageHistory.ts +10 -10
- package/src/histories/AgenticaCancelHistory.ts +8 -8
- package/src/histories/AgenticaDescribeHistory.ts +18 -18
- package/src/histories/AgenticaExecuteHistory.ts +64 -64
- package/src/histories/AgenticaHistory.ts +28 -28
- package/src/histories/AgenticaHistoryBase.ts +35 -35
- package/src/histories/AgenticaSelectHistory.ts +8 -8
- package/src/histories/AgenticaSystemMessageHistory.ts +10 -10
- package/src/histories/AgenticaUserMessageHistory.ts +11 -11
- package/src/histories/MicroAgenticaHistory.ts +19 -19
- package/src/histories/contents/AgenticaUserMessageAudioContent.ts +21 -21
- package/src/histories/contents/AgenticaUserMessageContent.ts +19 -19
- package/src/histories/contents/AgenticaUserMessageContentBase.ts +6 -6
- package/src/histories/contents/AgenticaUserMessageFileContent.ts +25 -25
- package/src/histories/contents/AgenticaUserMessageImageContent.ts +33 -33
- package/src/histories/contents/AgenticaUserMessageTextContent.ts +15 -15
- package/src/histories/contents/index.ts +5 -5
- package/src/histories/index.ts +10 -10
- package/src/index.ts +15 -15
- package/src/json/IAgenticaEventJson.ts +265 -265
- package/src/json/IAgenticaEventJson.type.ts +19 -19
- package/src/json/IAgenticaHistoryJson.ts +165 -165
- package/src/json/IAgenticaHistoryJson.type.ts +19 -19
- package/src/json/IAgenticaOperationJson.ts +36 -36
- package/src/json/IAgenticaOperationSelectionJson.ts +26 -26
- package/src/json/IAgenticaTokenUsageJson.ts +107 -107
- package/src/json/IMicroAgenticaEventJson.ts +22 -22
- package/src/json/IMicroAgenticaHistoryJson.ts +25 -25
- package/src/json/index.ts +7 -7
- package/src/orchestrate/call.ts +542 -558
- package/src/orchestrate/cancel.ts +265 -269
- package/src/orchestrate/describe.ts +66 -66
- package/src/orchestrate/execute.ts +61 -61
- package/src/orchestrate/index.ts +6 -6
- package/src/orchestrate/initialize.ts +102 -102
- package/src/orchestrate/internal/cancelFunctionFromContext.ts +33 -33
- package/src/orchestrate/internal/selectFunctionFromContext.ts +34 -34
- package/src/orchestrate/select.ts +320 -322
- package/src/structures/IAgenticaConfig.ts +83 -83
- package/src/structures/IAgenticaConfigBase.ts +87 -87
- package/src/structures/IAgenticaController.ts +143 -151
- package/src/structures/IAgenticaExecutor.ts +167 -167
- package/src/structures/IAgenticaProps.ts +78 -78
- package/src/structures/IAgenticaSystemPrompt.ts +236 -236
- package/src/structures/IAgenticaVendor.ts +54 -54
- package/src/structures/IMcpTool.ts +60 -0
- package/src/structures/IMicroAgenticaConfig.ts +56 -56
- package/src/structures/IMicroAgenticaExecutor.ts +67 -67
- package/src/structures/IMicroAgenticaProps.ts +77 -77
- package/src/structures/IMicroAgenticaSystemPrompt.ts +169 -169
- package/src/structures/index.ts +10 -10
- package/src/transformers/transformHistory.ts +172 -172
- package/src/utils/AssistantMessageEmptyError.ts +20 -20
- package/src/utils/AsyncQueue.spec.ts +355 -355
- package/src/utils/AsyncQueue.ts +95 -95
- package/src/utils/ByteArrayUtil.ts +5 -5
- package/src/utils/ChatGptCompletionMessageUtil.spec.ts +314 -320
- package/src/utils/ChatGptCompletionMessageUtil.ts +210 -195
- package/src/utils/ChatGptCompletionStreamingUtil.spec.ts +909 -909
- package/src/utils/ChatGptCompletionStreamingUtil.ts +91 -91
- package/src/utils/ChatGptTokenUsageAggregator.spec.ts +226 -226
- package/src/utils/ChatGptTokenUsageAggregator.ts +57 -57
- package/src/utils/MPSC.spec.ts +276 -276
- package/src/utils/MPSC.ts +42 -42
- package/src/utils/Singleton.spec.ts +138 -138
- package/src/utils/Singleton.ts +42 -42
- package/src/utils/StreamUtil.spec.ts +512 -512
- package/src/utils/StreamUtil.ts +87 -87
- package/src/utils/__map_take.spec.ts +140 -140
- package/src/utils/__map_take.ts +13 -13
- package/src/utils/__retry.spec.ts +198 -198
- package/src/utils/__retry.ts +18 -18
- package/src/utils/assertExecuteFailure.ts +16 -16
- package/src/utils/index.ts +4 -4
- package/src/utils/request.ts +140 -140
- package/src/utils/types.ts +50 -50
- package/lib/context/internal/AgenticaOperationComposer.spec.d.ts +0 -1
- package/lib/context/internal/AgenticaOperationComposer.spec.js +0 -353
- package/lib/context/internal/AgenticaOperationComposer.spec.js.map +0 -1
- package/lib/utils/JsonUtil.d.ts +0 -8
- package/lib/utils/JsonUtil.js +0 -349
- package/lib/utils/JsonUtil.js.map +0 -1
- package/src/context/internal/AgenticaOperationComposer.spec.ts +0 -401
- package/src/utils/JsonUtil.ts +0 -460
package/src/index.ts
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
export * from "./Agentica";
|
|
2
|
-
|
|
3
|
-
export * from "./constants";
|
|
4
|
-
export * from "./context";
|
|
5
|
-
export * from "./errors";
|
|
6
|
-
export * from "./events";
|
|
7
|
-
export * as factory from "./factory";
|
|
8
|
-
export * from "./functional";
|
|
9
|
-
export * from "./histories";
|
|
10
|
-
export * from "./json";
|
|
11
|
-
export * from "./MicroAgentica";
|
|
12
|
-
export * as orchestrate from "./orchestrate";
|
|
13
|
-
export * from "./structures";
|
|
14
|
-
|
|
15
|
-
export * as utils from "./utils";
|
|
1
|
+
export * from "./Agentica";
|
|
2
|
+
|
|
3
|
+
export * from "./constants";
|
|
4
|
+
export * from "./context";
|
|
5
|
+
export * from "./errors";
|
|
6
|
+
export * from "./events";
|
|
7
|
+
export * as factory from "./factory";
|
|
8
|
+
export * from "./functional";
|
|
9
|
+
export * from "./histories";
|
|
10
|
+
export * from "./json";
|
|
11
|
+
export * from "./MicroAgentica";
|
|
12
|
+
export * as orchestrate from "./orchestrate";
|
|
13
|
+
export * from "./structures";
|
|
14
|
+
|
|
15
|
+
export * as utils from "./utils";
|
|
@@ -1,265 +1,265 @@
|
|
|
1
|
-
import type OpenAI from "openai";
|
|
2
|
-
import type { IValidation, tags } from "typia";
|
|
3
|
-
|
|
4
|
-
import type { AgenticaEventSource } from "../events/AgenticaEventSource";
|
|
5
|
-
import type { AgenticaUserMessageContent } from "../histories";
|
|
6
|
-
|
|
7
|
-
import type { IAgenticaHistoryJson } from "./IAgenticaHistoryJson";
|
|
8
|
-
import type { IAgenticaOperationJson } from "./IAgenticaOperationJson";
|
|
9
|
-
import type { IAgenticaOperationSelectionJson } from "./IAgenticaOperationSelectionJson";
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* Agentic AI agent event.
|
|
13
|
-
*
|
|
14
|
-
* `IAgenticaEventJson` is an union type of all possible events that can
|
|
15
|
-
* be emitted by the A.I. chatbot of the {@link Agentica} class.
|
|
16
|
-
*
|
|
17
|
-
* You can discriminate the subtype by checking the {@link type} property.
|
|
18
|
-
*
|
|
19
|
-
* @author Samchon
|
|
20
|
-
*/
|
|
21
|
-
export type IAgenticaEventJson
|
|
22
|
-
| IAgenticaEventJson.ICall
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
export namespace IAgenticaEventJson {
|
|
36
|
-
export type Type = IAgenticaEventJson["type"];
|
|
37
|
-
export interface Mapper {
|
|
38
|
-
userMessage: IUserMessage;
|
|
39
|
-
assistantMessage: IAssistantMessage;
|
|
40
|
-
initialize: IInitialize;
|
|
41
|
-
select: ISelect;
|
|
42
|
-
cancel: ICancel;
|
|
43
|
-
call: ICall;
|
|
44
|
-
execute: IExecute;
|
|
45
|
-
describe: IDescribe;
|
|
46
|
-
request: IRequest;
|
|
47
|
-
response: IResponse;
|
|
48
|
-
validate: IValidate;
|
|
49
|
-
jsonParseError: IJsonParseError;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
/**
|
|
53
|
-
* Event of assistant message.
|
|
54
|
-
*/
|
|
55
|
-
export interface IAssistantMessage extends IBase<"assistantMessage"> {
|
|
56
|
-
/**
|
|
57
|
-
* Conversation text.
|
|
58
|
-
*/
|
|
59
|
-
text: string;
|
|
60
|
-
}
|
|
61
|
-
|
|
62
|
-
/**
|
|
63
|
-
* Event of user message.
|
|
64
|
-
*/
|
|
65
|
-
export interface IUserMessage extends IBase<"userMessage"> {
|
|
66
|
-
contents: Array<AgenticaUserMessageContent>;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
/**
|
|
70
|
-
* Event of initializing the chatbot.
|
|
71
|
-
*/
|
|
72
|
-
export interface IInitialize extends IBase<"initialize"> {}
|
|
73
|
-
|
|
74
|
-
/**
|
|
75
|
-
* Event of selecting a function to call.
|
|
76
|
-
*/
|
|
77
|
-
export interface ISelect extends IBase<"select"> {
|
|
78
|
-
selection: IAgenticaOperationSelectionJson;
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
/**
|
|
82
|
-
* Event of canceling a function calling.
|
|
83
|
-
*/
|
|
84
|
-
export interface ICancel extends IBase<"cancel"> {
|
|
85
|
-
selection: IAgenticaOperationSelectionJson;
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
/**
|
|
89
|
-
* Event of calling a function.
|
|
90
|
-
*/
|
|
91
|
-
export interface ICall extends IBase<"call"> {
|
|
92
|
-
/**
|
|
93
|
-
* Target operation to call.
|
|
94
|
-
*/
|
|
95
|
-
operation: IAgenticaOperationJson;
|
|
96
|
-
|
|
97
|
-
/**
|
|
98
|
-
* Arguments of the function calling.
|
|
99
|
-
*
|
|
100
|
-
* If you modify this {@link arguments} property, it actually modifies
|
|
101
|
-
* the backend server's request. Therefore, be careful when you're
|
|
102
|
-
* trying to modify this property.
|
|
103
|
-
*/
|
|
104
|
-
arguments: Record<string, any>;
|
|
105
|
-
}
|
|
106
|
-
|
|
107
|
-
export interface IValidate extends IBase<"validate"> {
|
|
108
|
-
/**
|
|
109
|
-
* ID of the tool calling.
|
|
110
|
-
*/
|
|
111
|
-
call_id: string;
|
|
112
|
-
|
|
113
|
-
/**
|
|
114
|
-
* Target operation to call.
|
|
115
|
-
*/
|
|
116
|
-
operation: IAgenticaOperationJson;
|
|
117
|
-
|
|
118
|
-
/**
|
|
119
|
-
* Validation result as a failure.
|
|
120
|
-
*/
|
|
121
|
-
result: IValidation.IFailure;
|
|
122
|
-
|
|
123
|
-
life: number;
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
export interface IJsonParseError extends IBase<"jsonParseError"> {
|
|
127
|
-
/**
|
|
128
|
-
* ID of the tool calling.
|
|
129
|
-
*/
|
|
130
|
-
call_id: string;
|
|
131
|
-
|
|
132
|
-
/**
|
|
133
|
-
* Target operation to call.
|
|
134
|
-
*/
|
|
135
|
-
operation: IAgenticaOperationJson;
|
|
136
|
-
|
|
137
|
-
/**
|
|
138
|
-
* Arguments of the function calling.
|
|
139
|
-
*
|
|
140
|
-
* The value represents the JSON string that failed to parse.
|
|
141
|
-
*/
|
|
142
|
-
arguments: string;
|
|
143
|
-
|
|
144
|
-
/**
|
|
145
|
-
* Error message of the JSON parse error.
|
|
146
|
-
*/
|
|
147
|
-
errorMessage: string;
|
|
148
|
-
|
|
149
|
-
life: number;
|
|
150
|
-
}
|
|
151
|
-
|
|
152
|
-
/**
|
|
153
|
-
* Event of function calling execution.
|
|
154
|
-
*/
|
|
155
|
-
export interface IExecute extends IBase<"execute"> {
|
|
156
|
-
/**
|
|
157
|
-
* ID of the tool calling.
|
|
158
|
-
*/
|
|
159
|
-
call_id: string;
|
|
160
|
-
|
|
161
|
-
/**
|
|
162
|
-
* Target operation had called.
|
|
163
|
-
*/
|
|
164
|
-
operation: IAgenticaOperationJson;
|
|
165
|
-
|
|
166
|
-
/**
|
|
167
|
-
* Arguments of the function calling.
|
|
168
|
-
*/
|
|
169
|
-
arguments: Record<string, unknown>;
|
|
170
|
-
|
|
171
|
-
/**
|
|
172
|
-
* Return value.
|
|
173
|
-
*/
|
|
174
|
-
value: any;
|
|
175
|
-
|
|
176
|
-
/**
|
|
177
|
-
* Whether the execution was successful or not.
|
|
178
|
-
*
|
|
179
|
-
* If the success value is false, it means that an error has
|
|
180
|
-
* occurred during the execution.
|
|
181
|
-
*/
|
|
182
|
-
success: boolean;
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
/**
|
|
186
|
-
* Event of description.
|
|
187
|
-
*
|
|
188
|
-
* Event describing return values of LLM function callings.
|
|
189
|
-
*/
|
|
190
|
-
export interface IDescribe extends IBase<"describe"> {
|
|
191
|
-
/**
|
|
192
|
-
* Executions of the LLM function calling.
|
|
193
|
-
*
|
|
194
|
-
* This prompt describes the return value of them.
|
|
195
|
-
*/
|
|
196
|
-
executes: IAgenticaHistoryJson.IExecute[];
|
|
197
|
-
|
|
198
|
-
/**
|
|
199
|
-
* Description text.
|
|
200
|
-
*/
|
|
201
|
-
text: string;
|
|
202
|
-
|
|
203
|
-
/**
|
|
204
|
-
* Whether the streaming is completed or not.
|
|
205
|
-
*/
|
|
206
|
-
done: boolean;
|
|
207
|
-
}
|
|
208
|
-
|
|
209
|
-
/**
|
|
210
|
-
* Request event of LLM vendor API.
|
|
211
|
-
*/
|
|
212
|
-
export interface IRequest extends IBase<"request"> {
|
|
213
|
-
/**
|
|
214
|
-
* The source agent of the request.
|
|
215
|
-
*/
|
|
216
|
-
source: AgenticaEventSource;
|
|
217
|
-
|
|
218
|
-
/**
|
|
219
|
-
* Request body.
|
|
220
|
-
*/
|
|
221
|
-
body: OpenAI.ChatCompletionCreateParamsStreaming;
|
|
222
|
-
|
|
223
|
-
/**
|
|
224
|
-
* Options for the request.
|
|
225
|
-
*/
|
|
226
|
-
options?: OpenAI.RequestOptions | undefined;
|
|
227
|
-
}
|
|
228
|
-
|
|
229
|
-
/**
|
|
230
|
-
* Response event of LLM vendor API.
|
|
231
|
-
*/
|
|
232
|
-
export interface IResponse extends IBase<"response"> {
|
|
233
|
-
/**
|
|
234
|
-
* The source agent of the response.
|
|
235
|
-
*/
|
|
236
|
-
source: AgenticaEventSource;
|
|
237
|
-
|
|
238
|
-
/**
|
|
239
|
-
* Response body.
|
|
240
|
-
*/
|
|
241
|
-
body: OpenAI.ChatCompletion;
|
|
242
|
-
|
|
243
|
-
/**
|
|
244
|
-
* Options for the request.
|
|
245
|
-
*/
|
|
246
|
-
options?: OpenAI.RequestOptions | undefined;
|
|
247
|
-
}
|
|
248
|
-
|
|
249
|
-
interface IBase<Type extends string> {
|
|
250
|
-
/**
|
|
251
|
-
* Primary key of the event.
|
|
252
|
-
*/
|
|
253
|
-
id: string;
|
|
254
|
-
|
|
255
|
-
/**
|
|
256
|
-
* Discriminator type.
|
|
257
|
-
*/
|
|
258
|
-
type: Type;
|
|
259
|
-
|
|
260
|
-
/**
|
|
261
|
-
* Creation timestamp of the event.
|
|
262
|
-
*/
|
|
263
|
-
created_at: string & tags.Format<"date-time">;
|
|
264
|
-
}
|
|
265
|
-
}
|
|
1
|
+
import type OpenAI from "openai";
|
|
2
|
+
import type { IValidation, tags } from "typia";
|
|
3
|
+
|
|
4
|
+
import type { AgenticaEventSource } from "../events/AgenticaEventSource";
|
|
5
|
+
import type { AgenticaUserMessageContent } from "../histories";
|
|
6
|
+
|
|
7
|
+
import type { IAgenticaHistoryJson } from "./IAgenticaHistoryJson";
|
|
8
|
+
import type { IAgenticaOperationJson } from "./IAgenticaOperationJson";
|
|
9
|
+
import type { IAgenticaOperationSelectionJson } from "./IAgenticaOperationSelectionJson";
|
|
10
|
+
|
|
11
|
+
/**
|
|
12
|
+
* Agentic AI agent event.
|
|
13
|
+
*
|
|
14
|
+
* `IAgenticaEventJson` is an union type of all possible events that can
|
|
15
|
+
* be emitted by the A.I. chatbot of the {@link Agentica} class.
|
|
16
|
+
*
|
|
17
|
+
* You can discriminate the subtype by checking the {@link type} property.
|
|
18
|
+
*
|
|
19
|
+
* @author Samchon
|
|
20
|
+
*/
|
|
21
|
+
export type IAgenticaEventJson
|
|
22
|
+
= | IAgenticaEventJson.ICall
|
|
23
|
+
| IAgenticaEventJson.ICancel
|
|
24
|
+
| IAgenticaEventJson.IDescribe
|
|
25
|
+
| IAgenticaEventJson.IExecute
|
|
26
|
+
| IAgenticaEventJson.IInitialize
|
|
27
|
+
| IAgenticaEventJson.IRequest
|
|
28
|
+
| IAgenticaEventJson.IResponse
|
|
29
|
+
| IAgenticaEventJson.ISelect
|
|
30
|
+
| IAgenticaEventJson.IValidate
|
|
31
|
+
| IAgenticaEventJson.IJsonParseError
|
|
32
|
+
| IAgenticaEventJson.IAssistantMessage
|
|
33
|
+
| IAgenticaEventJson.IUserMessage;
|
|
34
|
+
|
|
35
|
+
export namespace IAgenticaEventJson {
|
|
36
|
+
export type Type = IAgenticaEventJson["type"];
|
|
37
|
+
export interface Mapper {
|
|
38
|
+
userMessage: IUserMessage;
|
|
39
|
+
assistantMessage: IAssistantMessage;
|
|
40
|
+
initialize: IInitialize;
|
|
41
|
+
select: ISelect;
|
|
42
|
+
cancel: ICancel;
|
|
43
|
+
call: ICall;
|
|
44
|
+
execute: IExecute;
|
|
45
|
+
describe: IDescribe;
|
|
46
|
+
request: IRequest;
|
|
47
|
+
response: IResponse;
|
|
48
|
+
validate: IValidate;
|
|
49
|
+
jsonParseError: IJsonParseError;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Event of assistant message.
|
|
54
|
+
*/
|
|
55
|
+
export interface IAssistantMessage extends IBase<"assistantMessage"> {
|
|
56
|
+
/**
|
|
57
|
+
* Conversation text.
|
|
58
|
+
*/
|
|
59
|
+
text: string;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Event of user message.
|
|
64
|
+
*/
|
|
65
|
+
export interface IUserMessage extends IBase<"userMessage"> {
|
|
66
|
+
contents: Array<AgenticaUserMessageContent>;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Event of initializing the chatbot.
|
|
71
|
+
*/
|
|
72
|
+
export interface IInitialize extends IBase<"initialize"> {}
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Event of selecting a function to call.
|
|
76
|
+
*/
|
|
77
|
+
export interface ISelect extends IBase<"select"> {
|
|
78
|
+
selection: IAgenticaOperationSelectionJson;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* Event of canceling a function calling.
|
|
83
|
+
*/
|
|
84
|
+
export interface ICancel extends IBase<"cancel"> {
|
|
85
|
+
selection: IAgenticaOperationSelectionJson;
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
/**
|
|
89
|
+
* Event of calling a function.
|
|
90
|
+
*/
|
|
91
|
+
export interface ICall extends IBase<"call"> {
|
|
92
|
+
/**
|
|
93
|
+
* Target operation to call.
|
|
94
|
+
*/
|
|
95
|
+
operation: IAgenticaOperationJson;
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Arguments of the function calling.
|
|
99
|
+
*
|
|
100
|
+
* If you modify this {@link arguments} property, it actually modifies
|
|
101
|
+
* the backend server's request. Therefore, be careful when you're
|
|
102
|
+
* trying to modify this property.
|
|
103
|
+
*/
|
|
104
|
+
arguments: Record<string, any>;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
export interface IValidate extends IBase<"validate"> {
|
|
108
|
+
/**
|
|
109
|
+
* ID of the tool calling.
|
|
110
|
+
*/
|
|
111
|
+
call_id: string;
|
|
112
|
+
|
|
113
|
+
/**
|
|
114
|
+
* Target operation to call.
|
|
115
|
+
*/
|
|
116
|
+
operation: IAgenticaOperationJson;
|
|
117
|
+
|
|
118
|
+
/**
|
|
119
|
+
* Validation result as a failure.
|
|
120
|
+
*/
|
|
121
|
+
result: IValidation.IFailure;
|
|
122
|
+
|
|
123
|
+
life: number;
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
export interface IJsonParseError extends IBase<"jsonParseError"> {
|
|
127
|
+
/**
|
|
128
|
+
* ID of the tool calling.
|
|
129
|
+
*/
|
|
130
|
+
call_id: string;
|
|
131
|
+
|
|
132
|
+
/**
|
|
133
|
+
* Target operation to call.
|
|
134
|
+
*/
|
|
135
|
+
operation: IAgenticaOperationJson;
|
|
136
|
+
|
|
137
|
+
/**
|
|
138
|
+
* Arguments of the function calling.
|
|
139
|
+
*
|
|
140
|
+
* The value represents the JSON string that failed to parse.
|
|
141
|
+
*/
|
|
142
|
+
arguments: string;
|
|
143
|
+
|
|
144
|
+
/**
|
|
145
|
+
* Error message of the JSON parse error.
|
|
146
|
+
*/
|
|
147
|
+
errorMessage: string;
|
|
148
|
+
|
|
149
|
+
life: number;
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
/**
|
|
153
|
+
* Event of function calling execution.
|
|
154
|
+
*/
|
|
155
|
+
export interface IExecute extends IBase<"execute"> {
|
|
156
|
+
/**
|
|
157
|
+
* ID of the tool calling.
|
|
158
|
+
*/
|
|
159
|
+
call_id: string;
|
|
160
|
+
|
|
161
|
+
/**
|
|
162
|
+
* Target operation had called.
|
|
163
|
+
*/
|
|
164
|
+
operation: IAgenticaOperationJson;
|
|
165
|
+
|
|
166
|
+
/**
|
|
167
|
+
* Arguments of the function calling.
|
|
168
|
+
*/
|
|
169
|
+
arguments: Record<string, unknown>;
|
|
170
|
+
|
|
171
|
+
/**
|
|
172
|
+
* Return value.
|
|
173
|
+
*/
|
|
174
|
+
value: any;
|
|
175
|
+
|
|
176
|
+
/**
|
|
177
|
+
* Whether the execution was successful or not.
|
|
178
|
+
*
|
|
179
|
+
* If the success value is false, it means that an error has
|
|
180
|
+
* occurred during the execution.
|
|
181
|
+
*/
|
|
182
|
+
success: boolean;
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
/**
|
|
186
|
+
* Event of description.
|
|
187
|
+
*
|
|
188
|
+
* Event describing return values of LLM function callings.
|
|
189
|
+
*/
|
|
190
|
+
export interface IDescribe extends IBase<"describe"> {
|
|
191
|
+
/**
|
|
192
|
+
* Executions of the LLM function calling.
|
|
193
|
+
*
|
|
194
|
+
* This prompt describes the return value of them.
|
|
195
|
+
*/
|
|
196
|
+
executes: IAgenticaHistoryJson.IExecute[];
|
|
197
|
+
|
|
198
|
+
/**
|
|
199
|
+
* Description text.
|
|
200
|
+
*/
|
|
201
|
+
text: string;
|
|
202
|
+
|
|
203
|
+
/**
|
|
204
|
+
* Whether the streaming is completed or not.
|
|
205
|
+
*/
|
|
206
|
+
done: boolean;
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
/**
|
|
210
|
+
* Request event of LLM vendor API.
|
|
211
|
+
*/
|
|
212
|
+
export interface IRequest extends IBase<"request"> {
|
|
213
|
+
/**
|
|
214
|
+
* The source agent of the request.
|
|
215
|
+
*/
|
|
216
|
+
source: AgenticaEventSource;
|
|
217
|
+
|
|
218
|
+
/**
|
|
219
|
+
* Request body.
|
|
220
|
+
*/
|
|
221
|
+
body: OpenAI.ChatCompletionCreateParamsStreaming;
|
|
222
|
+
|
|
223
|
+
/**
|
|
224
|
+
* Options for the request.
|
|
225
|
+
*/
|
|
226
|
+
options?: OpenAI.RequestOptions | undefined;
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
/**
|
|
230
|
+
* Response event of LLM vendor API.
|
|
231
|
+
*/
|
|
232
|
+
export interface IResponse extends IBase<"response"> {
|
|
233
|
+
/**
|
|
234
|
+
* The source agent of the response.
|
|
235
|
+
*/
|
|
236
|
+
source: AgenticaEventSource;
|
|
237
|
+
|
|
238
|
+
/**
|
|
239
|
+
* Response body.
|
|
240
|
+
*/
|
|
241
|
+
body: OpenAI.ChatCompletion;
|
|
242
|
+
|
|
243
|
+
/**
|
|
244
|
+
* Options for the request.
|
|
245
|
+
*/
|
|
246
|
+
options?: OpenAI.RequestOptions | undefined;
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
interface IBase<Type extends string> {
|
|
250
|
+
/**
|
|
251
|
+
* Primary key of the event.
|
|
252
|
+
*/
|
|
253
|
+
id: string;
|
|
254
|
+
|
|
255
|
+
/**
|
|
256
|
+
* Discriminator type.
|
|
257
|
+
*/
|
|
258
|
+
type: Type;
|
|
259
|
+
|
|
260
|
+
/**
|
|
261
|
+
* Creation timestamp of the event.
|
|
262
|
+
*/
|
|
263
|
+
created_at: string & tags.Format<"date-time">;
|
|
264
|
+
}
|
|
265
|
+
}
|
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import type { AgenticaEvent } from "../events";
|
|
2
|
-
import type { Pass } from "../utils/types";
|
|
3
|
-
|
|
4
|
-
import { check, checks } from "../utils/types";
|
|
5
|
-
|
|
6
|
-
import type { IAgenticaEventJson } from "./IAgenticaEventJson";
|
|
7
|
-
|
|
8
|
-
checks([
|
|
9
|
-
check<
|
|
10
|
-
AgenticaEvent.Type,
|
|
11
|
-
IAgenticaEventJson.Type,
|
|
12
|
-
Pass
|
|
13
|
-
>(),
|
|
14
|
-
check<
|
|
15
|
-
AgenticaEvent.Type,
|
|
16
|
-
keyof IAgenticaEventJson.Mapper,
|
|
17
|
-
Pass
|
|
18
|
-
>(),
|
|
19
|
-
]);
|
|
1
|
+
import type { AgenticaEvent } from "../events";
|
|
2
|
+
import type { Pass } from "../utils/types";
|
|
3
|
+
|
|
4
|
+
import { check, checks } from "../utils/types";
|
|
5
|
+
|
|
6
|
+
import type { IAgenticaEventJson } from "./IAgenticaEventJson";
|
|
7
|
+
|
|
8
|
+
checks([
|
|
9
|
+
check<
|
|
10
|
+
AgenticaEvent.Type,
|
|
11
|
+
IAgenticaEventJson.Type,
|
|
12
|
+
Pass
|
|
13
|
+
>(),
|
|
14
|
+
check<
|
|
15
|
+
AgenticaEvent.Type,
|
|
16
|
+
keyof IAgenticaEventJson.Mapper,
|
|
17
|
+
Pass
|
|
18
|
+
>(),
|
|
19
|
+
]);
|