agentlang 0.9.10 → 0.10.0
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/out/extension/main.cjs +38 -38
- package/out/extension/main.cjs.map +2 -2
- package/out/language/generated/ast.d.ts +1 -1
- package/out/language/generated/ast.js +1 -1
- package/out/language/generated/grammar.d.ts +1 -1
- package/out/language/generated/grammar.js +1 -1
- package/out/language/generated/module.d.ts +1 -1
- package/out/language/generated/module.js +1 -1
- package/out/language/main.cjs +850 -2388
- package/out/language/main.cjs.map +4 -4
- package/out/language/parser.d.ts.map +1 -1
- package/out/language/parser.js +10 -0
- package/out/language/parser.js.map +1 -1
- package/out/language/syntax.d.ts +8 -0
- package/out/language/syntax.d.ts.map +1 -1
- package/out/language/syntax.js +11 -2
- package/out/language/syntax.js.map +1 -1
- package/out/runtime/agents/common.d.ts +3 -1
- package/out/runtime/agents/common.d.ts.map +1 -1
- package/out/runtime/agents/common.js +35 -31
- package/out/runtime/agents/common.js.map +1 -1
- package/out/runtime/docs.d.ts +1 -0
- package/out/runtime/docs.d.ts.map +1 -1
- package/out/runtime/docs.js +16 -1
- package/out/runtime/docs.js.map +1 -1
- package/out/runtime/interpreter.d.ts +1 -0
- package/out/runtime/interpreter.d.ts.map +1 -1
- package/out/runtime/interpreter.js +123 -74
- package/out/runtime/interpreter.js.map +1 -1
- package/out/runtime/jsmodules.d.ts +2 -1
- package/out/runtime/jsmodules.d.ts.map +1 -1
- package/out/runtime/jsmodules.js +2 -1
- package/out/runtime/jsmodules.js.map +1 -1
- package/out/runtime/loader.d.ts.map +1 -1
- package/out/runtime/loader.js +3 -2
- package/out/runtime/loader.js.map +1 -1
- package/out/runtime/module.d.ts +1 -0
- package/out/runtime/module.d.ts.map +1 -1
- package/out/runtime/module.js +3 -0
- package/out/runtime/module.js.map +1 -1
- package/out/runtime/modules/ai.d.ts +11 -0
- package/out/runtime/modules/ai.d.ts.map +1 -1
- package/out/runtime/modules/ai.js +164 -11
- package/out/runtime/modules/ai.js.map +1 -1
- package/out/runtime/modules/core.d.ts.map +1 -1
- package/out/runtime/modules/core.js +7 -1
- package/out/runtime/modules/core.js.map +1 -1
- package/out/runtime/services/documentFetcher.d.ts +22 -14
- package/out/runtime/services/documentFetcher.d.ts.map +1 -1
- package/out/runtime/services/documentFetcher.js +348 -153
- package/out/runtime/services/documentFetcher.js.map +1 -1
- package/package.json +1 -1
- package/src/language/generated/ast.ts +1 -1
- package/src/language/generated/grammar.ts +1 -1
- package/src/language/generated/module.ts +1 -1
- package/src/language/parser.ts +12 -0
- package/src/language/syntax.ts +21 -2
- package/src/runtime/agents/common.ts +37 -31
- package/src/runtime/docs.ts +17 -1
- package/src/runtime/interpreter.ts +122 -69
- package/src/runtime/jsmodules.ts +3 -1
- package/src/runtime/loader.ts +3 -2
- package/src/runtime/module.ts +4 -0
- package/src/runtime/modules/ai.ts +196 -10
- package/src/runtime/modules/core.ts +7 -1
- package/src/runtime/services/documentFetcher.ts +372 -149
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"documentFetcher.js","sourceRoot":"","sources":["../../../src/runtime/services/documentFetcher.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"documentFetcher.js","sourceRoot":"","sources":["../../../src/runtime/services/documentFetcher.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agentlang",
|
|
3
3
|
"description": "The easiest way to build the most reliable AI agents - enterprise-grade teams of AI agents that collaborate with each other and humans",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.10.0",
|
|
5
5
|
"license": "Sustainable Use License",
|
|
6
6
|
"author": "agentlang-ai",
|
|
7
7
|
"homepage": "https://github.com/agentlang-ai/agentlang#readme",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/******************************************************************************
|
|
2
|
-
* This file was generated by langium-cli 4.
|
|
2
|
+
* This file was generated by langium-cli 4.2.0.
|
|
3
3
|
* DO NOT EDIT MANUALLY!
|
|
4
4
|
******************************************************************************/
|
|
5
5
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/******************************************************************************
|
|
2
|
-
* This file was generated by langium-cli 4.
|
|
2
|
+
* This file was generated by langium-cli 4.2.0.
|
|
3
3
|
* DO NOT EDIT MANUALLY!
|
|
4
4
|
******************************************************************************/
|
|
5
5
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/******************************************************************************
|
|
2
|
-
* This file was generated by langium-cli 4.
|
|
2
|
+
* This file was generated by langium-cli 4.2.0.
|
|
3
3
|
* DO NOT EDIT MANUALLY!
|
|
4
4
|
******************************************************************************/
|
|
5
5
|
|
package/src/language/parser.ts
CHANGED
|
@@ -17,6 +17,7 @@ import {
|
|
|
17
17
|
isNotExpr,
|
|
18
18
|
isPrimExpr,
|
|
19
19
|
isWorkflowDefinition,
|
|
20
|
+
JoinSpec,
|
|
20
21
|
Literal,
|
|
21
22
|
MapEntry,
|
|
22
23
|
MapLiteral,
|
|
@@ -44,6 +45,7 @@ import {
|
|
|
44
45
|
FunctionCallPattern,
|
|
45
46
|
GroupExpressionPattern,
|
|
46
47
|
IfPattern,
|
|
48
|
+
JoinPattern,
|
|
47
49
|
LiteralPattern,
|
|
48
50
|
NegExpressionPattern,
|
|
49
51
|
NotExpressionPattern,
|
|
@@ -361,6 +363,16 @@ function introspectQueryPattern(crudMap: CrudMap): CrudPattern {
|
|
|
361
363
|
crudMap.relationships.forEach((rp: RelationshipPattern) => {
|
|
362
364
|
cp.addRelationship(rp.name, introspectPattern(rp.pattern) as CrudPattern | CrudPattern[]);
|
|
363
365
|
});
|
|
366
|
+
crudMap.joins.forEach((js: JoinSpec) => {
|
|
367
|
+
const jp: JoinPattern = {
|
|
368
|
+
type: js.type,
|
|
369
|
+
targetEntity: js.name,
|
|
370
|
+
conditionLhs: js.lhs,
|
|
371
|
+
conditionOperator: js.op ? js.op : '=',
|
|
372
|
+
conditionRhs: js.rhs,
|
|
373
|
+
};
|
|
374
|
+
cp.joins.push(jp);
|
|
375
|
+
});
|
|
364
376
|
cp.isCreate = false;
|
|
365
377
|
cp.isQueryUpdate = false;
|
|
366
378
|
cp.isQuery = true;
|
package/src/language/syntax.ts
CHANGED
|
@@ -373,10 +373,24 @@ export type AttributePattern = {
|
|
|
373
373
|
value: BasePattern;
|
|
374
374
|
};
|
|
375
375
|
|
|
376
|
+
export type JoinPattern = {
|
|
377
|
+
type: '@join' | '@inner_join' | '@left_join' | '@right_join' | '@full_join';
|
|
378
|
+
targetEntity: string;
|
|
379
|
+
conditionLhs: string;
|
|
380
|
+
conditionOperator: string;
|
|
381
|
+
conditionRhs: string;
|
|
382
|
+
};
|
|
383
|
+
|
|
384
|
+
function joinPatternToString(jp: JoinPattern): string {
|
|
385
|
+
const opr = jp.conditionOperator === '=' ? '' : jp.conditionOperator;
|
|
386
|
+
return `${jp.type} ${jp.targetEntity} {${jp.conditionLhs}${opr} ${jp.conditionRhs}}`;
|
|
387
|
+
}
|
|
388
|
+
|
|
376
389
|
export class CrudPattern extends BasePattern {
|
|
377
390
|
recordName: string;
|
|
378
391
|
attributes: Array<AttributePattern>;
|
|
379
392
|
relationships: Map<string, CrudPattern[] | CrudPattern> | undefined;
|
|
393
|
+
joins: JoinPattern[];
|
|
380
394
|
into: Map<string, string> | undefined;
|
|
381
395
|
isQuery: boolean = false;
|
|
382
396
|
isQueryUpdate: boolean = false;
|
|
@@ -391,6 +405,7 @@ export class CrudPattern extends BasePattern {
|
|
|
391
405
|
} else {
|
|
392
406
|
this.isCreate = true;
|
|
393
407
|
}
|
|
408
|
+
this.joins = new Array<JoinPattern>();
|
|
394
409
|
}
|
|
395
410
|
|
|
396
411
|
addAttribute(n: string, p: BasePattern, op?: string): CrudPattern {
|
|
@@ -521,11 +536,15 @@ export class CrudPattern extends BasePattern {
|
|
|
521
536
|
let s = `{${this.recordName} ${this.attributesAsString()}`;
|
|
522
537
|
const rs = this.relationshipsAsString();
|
|
523
538
|
if (rs) {
|
|
524
|
-
s = s.concat(
|
|
539
|
+
s = s.concat(`,\n${rs}`);
|
|
540
|
+
}
|
|
541
|
+
if (this.joins.length > 0) {
|
|
542
|
+
const js = this.joins.map(joinPatternToString);
|
|
543
|
+
s = s.concat(`,\n${js.join(',\n')}`);
|
|
525
544
|
}
|
|
526
545
|
const ins = this.intoAsString();
|
|
527
546
|
if (ins) {
|
|
528
|
-
s = s.concat(
|
|
547
|
+
s = s.concat(`,\n${ins}`);
|
|
529
548
|
}
|
|
530
549
|
return s.concat('}', this.hintsAsString());
|
|
531
550
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { IfPattern, LiteralPattern } from '../../language/syntax.js';
|
|
2
2
|
import { trimQuotes } from '../util.js';
|
|
3
3
|
|
|
4
|
-
export const
|
|
4
|
+
export const PlannerDataModelInstructions = `Agentlang is a very-high-level declarative language that makes it easy to define business applications as 'models'.
|
|
5
5
|
The model of a business application consists of entity definitions and workflows defined in "modules".
|
|
6
6
|
A module is be encoded in a syntax inspired by JavaScript and JSON. Example of a simple module follows:
|
|
7
7
|
|
|
@@ -29,6 +29,36 @@ record EmailMessage {
|
|
|
29
29
|
body String
|
|
30
30
|
}
|
|
31
31
|
|
|
32
|
+
Entities in a module can be connected together in relationships. There are two types of relationships - 'contains' and 'between'.
|
|
33
|
+
'Contains' relationship is for hierarchical data, as in a Library entity containing Books. 'Between' relationship is for graph-like data,
|
|
34
|
+
like two Profiles in a social media app is connected as friends. A 'between' relationship can be one of the following three types - 'one_one' (one-to-one),
|
|
35
|
+
'one_many' (one-to-many) and 'many_many' (many-to-many), which is the default.
|
|
36
|
+
|
|
37
|
+
The following example shows how additional profile data for an employee could be defined as a new entity and attached to the Employee entity as a between-relationship:
|
|
38
|
+
|
|
39
|
+
entity Profile {
|
|
40
|
+
id UUID @id @default(uuid()),
|
|
41
|
+
address String @optional,
|
|
42
|
+
photo URL @optional,
|
|
43
|
+
dateOfBirth DateTime @optional
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
relationship EmployeeProfile between (Erp/Employee, Erp/Profile) @one_one
|
|
47
|
+
|
|
48
|
+
The '@one_one' annotation means exactly one Employee and Profile can be related to each other via 'EmployeeProfile'.
|
|
49
|
+
|
|
50
|
+
As an example of 'contains' relaionships, consider modelling task-assignments for an Employee as folllows:
|
|
51
|
+
|
|
52
|
+
entity TaskAssignment {
|
|
53
|
+
id UUID @id @default(uuid()),
|
|
54
|
+
description String,
|
|
55
|
+
assignmentDate DateTime @default(now())
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
relationship EmployeeTaskAssignment contains (Erp/Employee, Erp/TaskAssignment)
|
|
59
|
+
`;
|
|
60
|
+
|
|
61
|
+
export const PlannerWorkflowInstructions = `
|
|
32
62
|
Another major construct in Agentlang is the 'workflow'. Workflows contains JSON "patterns" that perform CRUD operations on entities.
|
|
33
63
|
For example, here's is a workflow that creates a new instance of the Employee entity:
|
|
34
64
|
|
|
@@ -179,25 +209,7 @@ A pattern may execute asynchronously and its eventual result can be handled by p
|
|
|
179
209
|
If you are instructed that a particular event will be called asynchronously, always provide the patterns that follows in its '@then' clause. You must add the
|
|
180
210
|
'@then' clause only if an event's documentation or instruction explicitly requires to do so.
|
|
181
211
|
|
|
182
|
-
|
|
183
|
-
'Contains' relationship is for hierarchical data, as in a Library entity containing Books. 'Between' relationship is for graph-like data,
|
|
184
|
-
like two Profiles in a social media app is connected as friends. A 'between' relationship can be one of the following three types - 'one_one' (one-to-one),
|
|
185
|
-
'one_many' (one-to-many) and 'many_many' (many-to-many), which is the default.
|
|
186
|
-
|
|
187
|
-
The following example shows how additional profile data for an employee could be defined as a new entity and attached to the Employee entity as a between-relationship:
|
|
188
|
-
|
|
189
|
-
entity Profile {
|
|
190
|
-
id UUID @id @default(uuid()),
|
|
191
|
-
address String @optional,
|
|
192
|
-
photo URL @optional,
|
|
193
|
-
dateOfBirth DateTime @optional
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
relationship EmployeeProfile between (Erp/Employee, Erp/Profile) @one_one
|
|
197
|
-
|
|
198
|
-
The '@one_one' annotation means exactly one Employee and Profile can be related to each other via 'EmployeeProfile'.
|
|
199
|
-
|
|
200
|
-
Here's the 'CreateEmployee' workflow updated to create the Employee with the his/her Profile attached:
|
|
212
|
+
Earlier we discussed teh concept of 'between' relationship. Here's the 'CreateEmployee' workflow updated to create the Employee with the his/her Profile attached:
|
|
201
213
|
|
|
202
214
|
workflow CreateEmployee {
|
|
203
215
|
{Erp/Employee {firstName CreateEmployee.firstName,
|
|
@@ -214,17 +226,7 @@ The following pattern can be user to query an Employee along with his Profile:
|
|
|
214
226
|
{Erp/Employee {employeeId? "56392e13-0d9a-42f7-b556-0d7cd9468a24"},
|
|
215
227
|
Erp/EmployeeProfile {Erp/Profile? {}}}
|
|
216
228
|
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
entity TaskAssignment {
|
|
220
|
-
id UUID @id @default(uuid()),
|
|
221
|
-
description String,
|
|
222
|
-
assignmentDate DateTime @default(now())
|
|
223
|
-
}
|
|
224
|
-
|
|
225
|
-
relationship EmployeeTaskAssignment contains (Erp/Employee, Erp/TaskAssignment)
|
|
226
|
-
|
|
227
|
-
The following workflow shows how to assign a new task to an Employee:
|
|
229
|
+
We also discussed the concept of 'contains' relationship and showed an example of modelling employee-task-assignment using it. The following workflow shows how to assign a new task to an Employee:
|
|
228
230
|
|
|
229
231
|
workflow AssignNewTask {
|
|
230
232
|
{Erp/Employee {employeeId? AssignNewTask.employeeId},
|
|
@@ -264,6 +266,10 @@ As an example, if the user request is "send an email to employee 101 with this m
|
|
|
264
266
|
{email {to emp.email, body "please call me as soon as possible"}}]
|
|
265
267
|
|
|
266
268
|
You MUST separate each pattern in the array with a semi-colon (;) and never use a comma (,) for this purpose.
|
|
269
|
+
`;
|
|
270
|
+
|
|
271
|
+
export const PlannerInstructions = `${PlannerDataModelInstructions}
|
|
272
|
+
${PlannerWorkflowInstructions}
|
|
267
273
|
|
|
268
274
|
Now consider the following module definition and generate appropriate patterns in response to the user instructions. You must return only valid patterns or workflows,
|
|
269
275
|
no other descriptive text or comments are needed.
|
package/src/runtime/docs.ts
CHANGED
|
@@ -44,7 +44,7 @@ async function getPDFParse() {
|
|
|
44
44
|
return PDFParse;
|
|
45
45
|
}
|
|
46
46
|
|
|
47
|
-
async function parsePdfBuffer(buffer: Uint8Array): Promise<string> {
|
|
47
|
+
export async function parsePdfBuffer(buffer: Uint8Array): Promise<string> {
|
|
48
48
|
try {
|
|
49
49
|
const PDFParseClass = await getPDFParse();
|
|
50
50
|
const parser = new PDFParseClass({
|
|
@@ -166,3 +166,19 @@ async function fetchTextFile(path: string): Promise<string> {
|
|
|
166
166
|
registerDocFetcher('http', httpFetcher);
|
|
167
167
|
registerDocFetcher('https', httpFetcher);
|
|
168
168
|
registerDocFetcher('file', fetchFile);
|
|
169
|
+
|
|
170
|
+
async function documentServiceFetcher(url: string): Promise<string | undefined> {
|
|
171
|
+
try {
|
|
172
|
+
const { documentFetcher } = await import('./services/documentFetcher.js');
|
|
173
|
+
const result = await documentFetcher.fetchDocument({
|
|
174
|
+
title: 'temp', // Title will be updated by handleDocEvent
|
|
175
|
+
url: url,
|
|
176
|
+
});
|
|
177
|
+
return result?.content;
|
|
178
|
+
} catch (error: any) {
|
|
179
|
+
logger.error(`Failed to fetch from document service ${url}: ${error.message}`);
|
|
180
|
+
return undefined;
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
registerDocFetcher('document-service', documentServiceFetcher);
|
|
@@ -32,6 +32,7 @@ import {
|
|
|
32
32
|
WhereSpec,
|
|
33
33
|
} from '../language/generated/ast.js';
|
|
34
34
|
import {
|
|
35
|
+
Agent,
|
|
35
36
|
defineAgentEvent,
|
|
36
37
|
Event,
|
|
37
38
|
getOneOfRef,
|
|
@@ -87,6 +88,7 @@ import {
|
|
|
87
88
|
AgentInstance,
|
|
88
89
|
findAgentByName,
|
|
89
90
|
normalizeGeneratedCode,
|
|
91
|
+
saveFlowStepResult,
|
|
90
92
|
} from './modules/ai.js';
|
|
91
93
|
import { logger } from './logger.js';
|
|
92
94
|
import {
|
|
@@ -103,7 +105,7 @@ import {
|
|
|
103
105
|
flushMonitoringData,
|
|
104
106
|
triggerTimer,
|
|
105
107
|
} from './modules/core.js';
|
|
106
|
-
import { invokeModuleFn } from './jsmodules.js';
|
|
108
|
+
import { getModuleDef, invokeModuleFn } from './jsmodules.js';
|
|
107
109
|
import { invokeOpenApiEvent, isOpenApiEventInstance } from './openapi.js';
|
|
108
110
|
import { fetchDoc } from './docs.js';
|
|
109
111
|
import { FlowSpec, FlowStep, getAgentFlow } from './agents/flows.js';
|
|
@@ -442,6 +444,11 @@ export class Environment extends Instance {
|
|
|
442
444
|
}
|
|
443
445
|
}
|
|
444
446
|
|
|
447
|
+
softSuspend(): string {
|
|
448
|
+
this.suspensionId = this.preGeneratedSuspensionId;
|
|
449
|
+
return this.suspensionId;
|
|
450
|
+
}
|
|
451
|
+
|
|
445
452
|
releaseSuspension(): Environment {
|
|
446
453
|
this.suspensionId = undefined;
|
|
447
454
|
this.preGeneratedSuspensionId = crypto.randomUUID();
|
|
@@ -1771,6 +1778,20 @@ async function handleDocEvent(inst: Instance, env: Environment): Promise<void> {
|
|
|
1771
1778
|
return;
|
|
1772
1779
|
}
|
|
1773
1780
|
|
|
1781
|
+
if (typeof url === 'string' && url.startsWith('document-service://')) {
|
|
1782
|
+
const title = inst.lookup('title');
|
|
1783
|
+
const retrievalConfig = inst.lookup('retrievalConfig');
|
|
1784
|
+
const embeddingConfig = inst.lookup('embeddingConfig');
|
|
1785
|
+
const { documentFetcher } = await import('./services/documentFetcher.js');
|
|
1786
|
+
await documentFetcher.fetchDocument({
|
|
1787
|
+
title,
|
|
1788
|
+
url,
|
|
1789
|
+
retrievalConfig,
|
|
1790
|
+
embeddingConfig,
|
|
1791
|
+
});
|
|
1792
|
+
return;
|
|
1793
|
+
}
|
|
1794
|
+
|
|
1774
1795
|
const s = await fetchDoc(url);
|
|
1775
1796
|
if (s) {
|
|
1776
1797
|
const title = inst.lookup('title');
|
|
@@ -2017,7 +2038,7 @@ async function agentInvoke(agent: AgentInstance, msg: string, env: Environment):
|
|
|
2017
2038
|
isWf = true;
|
|
2018
2039
|
}
|
|
2019
2040
|
if (isWf) {
|
|
2020
|
-
const wf = await parseWorkflow(rs);
|
|
2041
|
+
const wf = await parseWorkflow(normalizeGeneratedCode(rs));
|
|
2021
2042
|
if (stmtsExec) {
|
|
2022
2043
|
await stmtsExec(wf.statements, env);
|
|
2023
2044
|
} else {
|
|
@@ -2029,7 +2050,9 @@ async function agentInvoke(agent: AgentInstance, msg: string, env: Environment):
|
|
|
2029
2050
|
const r = await stmtsExec([stmt], env);
|
|
2030
2051
|
env.setLastResult(r);
|
|
2031
2052
|
} else {
|
|
2032
|
-
env.setLastResult(
|
|
2053
|
+
env.setLastResult(
|
|
2054
|
+
await parseAndEvaluateStatement(normalizeGeneratedCode(rs), undefined, env)
|
|
2055
|
+
);
|
|
2033
2056
|
}
|
|
2034
2057
|
}
|
|
2035
2058
|
agent.maybeAddScratchData(env);
|
|
@@ -2059,7 +2082,7 @@ async function agentInvoke(agent: AgentInstance, msg: string, env: Environment):
|
|
|
2059
2082
|
const obj = agent.maybeValidateJsonResponse(result);
|
|
2060
2083
|
if (obj !== undefined) {
|
|
2061
2084
|
env.setLastResult(obj);
|
|
2062
|
-
env.addToScratchPad(agent.getFqName(), obj);
|
|
2085
|
+
env.addToScratchPad(Agent.NormalizeName(agent.getFqName()), obj);
|
|
2063
2086
|
}
|
|
2064
2087
|
break;
|
|
2065
2088
|
} catch (err: any) {
|
|
@@ -2158,13 +2181,14 @@ export async function restartFlow(
|
|
|
2158
2181
|
const rootAgent: AgentInstance = await findAgentByName(agentName, env);
|
|
2159
2182
|
const flow = getAgentFlow(agentName, rootAgent.moduleName);
|
|
2160
2183
|
if (flow) {
|
|
2161
|
-
const newCtx = `${ctx}\
|
|
2184
|
+
const newCtx = `${ctx}\nRestart the flow at ${step} using the following user-input as additional guidance:\n${userData}\n`;
|
|
2162
2185
|
env.setScratchPad(JSON.parse(spad));
|
|
2163
2186
|
await iterateOnFlow(flow, rootAgent, newCtx, env);
|
|
2164
2187
|
}
|
|
2165
2188
|
}
|
|
2166
2189
|
|
|
2167
2190
|
const MaxFlowSteps = 25;
|
|
2191
|
+
const MaxFlowRetries = 10;
|
|
2168
2192
|
|
|
2169
2193
|
async function iterateOnFlow(
|
|
2170
2194
|
flow: FlowSpec,
|
|
@@ -2173,81 +2197,101 @@ async function iterateOnFlow(
|
|
|
2173
2197
|
env: Environment
|
|
2174
2198
|
): Promise<void> {
|
|
2175
2199
|
rootAgent.disableSession();
|
|
2176
|
-
const
|
|
2177
|
-
const
|
|
2200
|
+
const chatId = env.getActiveEventInstance()?.lookup('chatId');
|
|
2201
|
+
const iterId = chatId || crypto.randomUUID();
|
|
2202
|
+
let step = '';
|
|
2203
|
+
let fullFlowRetries = 0;
|
|
2204
|
+
while (true) {
|
|
2205
|
+
try {
|
|
2206
|
+
const initContext = msg;
|
|
2207
|
+
const s = `Now consider the following flowchart and return the next step:\n${flow}\n
|
|
2178
2208
|
If you understand from the context that a step with no further possible steps has been evaluated,
|
|
2179
2209
|
terminate the flowchart by returning DONE. Never return to the top or root step of the flowchart, instead return DONE.
|
|
2180
2210
|
Important: Return only the next flow-step or DONE. Do not return any additional description, like your thinking process.\n`;
|
|
2181
|
-
|
|
2182
|
-
|
|
2183
|
-
|
|
2184
|
-
|
|
2185
|
-
|
|
2186
|
-
|
|
2187
|
-
|
|
2188
|
-
|
|
2189
|
-
|
|
2190
|
-
|
|
2191
|
-
|
|
2192
|
-
|
|
2193
|
-
|
|
2194
|
-
|
|
2195
|
-
}
|
|
2196
|
-
let isfxc = false;
|
|
2197
|
-
try {
|
|
2198
|
-
while (step != 'DONE' && !executedSteps.has(step)) {
|
|
2199
|
-
if (stepc > MaxFlowSteps) {
|
|
2200
|
-
throw new Error(`Flow execution exceeded maximum steps limit`);
|
|
2211
|
+
env.setFlowContext(initContext);
|
|
2212
|
+
await agentInvoke(rootAgent, s, env);
|
|
2213
|
+
const rootModuleName = rootAgent.moduleName;
|
|
2214
|
+
let preprocResult = await preprocessStep(env.getLastResult(), rootModuleName, env);
|
|
2215
|
+
step = preprocResult.step;
|
|
2216
|
+
let needAgentProcessing = preprocResult.needAgentProcessing;
|
|
2217
|
+
let context = initContext;
|
|
2218
|
+
let stepc = 0;
|
|
2219
|
+
console.debug(`Starting iteration ${iterId} on flow: ${flow}`);
|
|
2220
|
+
const executedSteps = new Set<string>();
|
|
2221
|
+
const monitoringEnabled = isMonitoringEnabled();
|
|
2222
|
+
let isfxc = false;
|
|
2223
|
+
if (monitoringEnabled) {
|
|
2224
|
+
env.flagMonitorEntryAsFlow().incrementMonitor();
|
|
2201
2225
|
}
|
|
2202
|
-
executedSteps.
|
|
2203
|
-
|
|
2204
|
-
|
|
2205
|
-
|
|
2206
|
-
|
|
2207
|
-
|
|
2208
|
-
|
|
2226
|
+
while (step != 'DONE' && !executedSteps.has(step)) {
|
|
2227
|
+
if (stepc > MaxFlowSteps) {
|
|
2228
|
+
throw new Error(`Flow execution exceeded maximum steps limit`);
|
|
2229
|
+
}
|
|
2230
|
+
executedSteps.add(step);
|
|
2231
|
+
++stepc;
|
|
2232
|
+
const agent = needAgentProcessing
|
|
2233
|
+
? AgentInstance.FromFlowStep(step, rootAgent, context)
|
|
2234
|
+
: undefined;
|
|
2235
|
+
if (agent) {
|
|
2236
|
+
console.debug(
|
|
2237
|
+
`Starting to execute flow step ${step} with agent ${agent.name} with iteration ID ${iterId} and context: \n${context}`
|
|
2238
|
+
);
|
|
2239
|
+
isfxc = agent.isFlowExecutor();
|
|
2240
|
+
const isdec = agent.isDecisionExecutor();
|
|
2241
|
+
if (isfxc || isdec) env.setFlowContext(context);
|
|
2242
|
+
else env.setFlowContext(initContext);
|
|
2243
|
+
if (monitoringEnabled) {
|
|
2244
|
+
env.appendEntryToMonitor(step);
|
|
2245
|
+
}
|
|
2246
|
+
const inst = agent.swapInstruction('');
|
|
2247
|
+
await agentInvoke(agent, inst, env);
|
|
2248
|
+
} else {
|
|
2249
|
+
rootAgent.maybeAddScratchData(env);
|
|
2250
|
+
}
|
|
2251
|
+
if (monitoringEnabled) env.setMonitorEntryResult(env.getLastResult());
|
|
2252
|
+
if (env.isSuspended()) {
|
|
2253
|
+
console.debug(`${iterId} suspending iteration on step ${step}`);
|
|
2254
|
+
await saveFlowSuspension(rootAgent, context, step, env);
|
|
2255
|
+
env.releaseSuspension();
|
|
2256
|
+
return;
|
|
2257
|
+
}
|
|
2258
|
+
const r = env.getLastResult();
|
|
2259
|
+
const rs = maybeInstanceAsString(r);
|
|
2209
2260
|
console.debug(
|
|
2210
|
-
|
|
2261
|
+
`\n----> Completed execution of step ${step}, iteration id ${iterId} with result:\n${rs}`
|
|
2211
2262
|
);
|
|
2212
|
-
|
|
2213
|
-
|
|
2214
|
-
|
|
2215
|
-
|
|
2216
|
-
|
|
2217
|
-
|
|
2263
|
+
context = `${context}\n${step} --> ${rs}\n`;
|
|
2264
|
+
if (chatId) {
|
|
2265
|
+
const suspEnv = new Environment(env.name, env);
|
|
2266
|
+
suspEnv.softSuspend();
|
|
2267
|
+
await saveFlowSuspension(rootAgent, context, step, suspEnv);
|
|
2268
|
+
await saveFlowStepResult(chatId, step, rs, suspEnv.getSuspensionId(), env);
|
|
2218
2269
|
}
|
|
2219
|
-
|
|
2220
|
-
|
|
2221
|
-
|
|
2222
|
-
|
|
2223
|
-
|
|
2224
|
-
|
|
2225
|
-
|
|
2226
|
-
|
|
2227
|
-
|
|
2228
|
-
env.releaseSuspension();
|
|
2229
|
-
return;
|
|
2270
|
+
if (isfxc) {
|
|
2271
|
+
preprocResult = await preprocessStep(rs, rootModuleName, env);
|
|
2272
|
+
} else {
|
|
2273
|
+
env.setFlowContext(context);
|
|
2274
|
+
await agentInvoke(rootAgent, `${s}\n${context}`, env);
|
|
2275
|
+
preprocResult = await preprocessStep(env.getLastResult(), rootModuleName, env);
|
|
2276
|
+
}
|
|
2277
|
+
step = preprocResult.step;
|
|
2278
|
+
needAgentProcessing = preprocResult.needAgentProcessing;
|
|
2230
2279
|
}
|
|
2231
|
-
|
|
2232
|
-
|
|
2233
|
-
|
|
2234
|
-
|
|
2235
|
-
|
|
2236
|
-
|
|
2237
|
-
if (isfxc) {
|
|
2238
|
-
preprocResult = await preprocessStep(rs, rootModuleName, env);
|
|
2280
|
+
} catch (reason: any) {
|
|
2281
|
+
if (fullFlowRetries < MaxFlowRetries) {
|
|
2282
|
+
msg = `The previous attempt failed at step ${step} with the error ${reason}. Restart the flow the appropriate step
|
|
2283
|
+
(maybe even from the first step) and try to fix the issue.`;
|
|
2284
|
+
++fullFlowRetries;
|
|
2285
|
+
continue;
|
|
2239
2286
|
} else {
|
|
2240
|
-
|
|
2241
|
-
await agentInvoke(rootAgent, `${s}\n${context}`, env);
|
|
2242
|
-
preprocResult = await preprocessStep(env.getLastResult(), rootModuleName, env);
|
|
2287
|
+
throw new Error(reason);
|
|
2243
2288
|
}
|
|
2244
|
-
|
|
2245
|
-
|
|
2289
|
+
} finally {
|
|
2290
|
+
env.decrementMonitor().revokeLastResult().setMonitorFlowResult();
|
|
2246
2291
|
}
|
|
2247
|
-
|
|
2248
|
-
|
|
2292
|
+
console.debug(`No more flow steps, completed iteration ${iterId} on flow:\n${flow}`);
|
|
2293
|
+
break;
|
|
2249
2294
|
}
|
|
2250
|
-
console.debug(`No more flow steps, completed iteration ${iterId} on flow:\n${flow}`);
|
|
2251
2295
|
}
|
|
2252
2296
|
|
|
2253
2297
|
type PreprocStepResult = {
|
|
@@ -2481,10 +2525,19 @@ async function followReference(env: Environment, s: string): Promise<Result> {
|
|
|
2481
2525
|
for (let i = 0; i < refs.length; ++i) {
|
|
2482
2526
|
const r: string = refs[i];
|
|
2483
2527
|
const v: Result | undefined = await getRef(r, src, env);
|
|
2484
|
-
if (v === undefined)
|
|
2528
|
+
if (v === undefined || v === null) {
|
|
2529
|
+
result = EmptyResult;
|
|
2530
|
+
break;
|
|
2531
|
+
}
|
|
2485
2532
|
result = v;
|
|
2486
2533
|
src = result;
|
|
2487
2534
|
}
|
|
2535
|
+
if (result === EmptyResult) {
|
|
2536
|
+
result = getModuleDef(s);
|
|
2537
|
+
if (result === undefined) {
|
|
2538
|
+
result = EmptyResult;
|
|
2539
|
+
}
|
|
2540
|
+
}
|
|
2488
2541
|
return result;
|
|
2489
2542
|
}
|
|
2490
2543
|
|
package/src/runtime/jsmodules.ts
CHANGED
|
@@ -303,7 +303,7 @@ export async function invokeModuleFn(
|
|
|
303
303
|
}
|
|
304
304
|
}
|
|
305
305
|
|
|
306
|
-
export function
|
|
306
|
+
export function getModuleDef(fqFnName: string): any {
|
|
307
307
|
const refs: string[] = splitRefs(fqFnName);
|
|
308
308
|
const m = importedModules.get(refs[0]);
|
|
309
309
|
if (m !== undefined) {
|
|
@@ -311,4 +311,6 @@ export function getModuleFn(fqFnName: string): Function | undefined {
|
|
|
311
311
|
} else return undefined;
|
|
312
312
|
}
|
|
313
313
|
|
|
314
|
+
export const getModuleFn = getModuleDef;
|
|
315
|
+
|
|
314
316
|
setModuleFnFetcher(getModuleFn);
|
package/src/runtime/loader.ts
CHANGED
|
@@ -819,7 +819,8 @@ async function addAgentDefinition(
|
|
|
819
819
|
}
|
|
820
820
|
const ov = v;
|
|
821
821
|
if (apdef.value.id || apdef.value.ref || apdef.value.array) {
|
|
822
|
-
|
|
822
|
+
if (!(apdef.name === 'instruction' || apdef.name === 'role' || apdef.name === 'llm'))
|
|
823
|
+
v = `"${v}"`;
|
|
823
824
|
} else if (apdef.value.str) {
|
|
824
825
|
v = `"${escapeSpecialChars(v)}"`;
|
|
825
826
|
}
|
|
@@ -837,7 +838,7 @@ async function addAgentDefinition(
|
|
|
837
838
|
// Create a copy of attrsStrs for the database operation
|
|
838
839
|
const dbAttrsStrs = [...attrsStrs];
|
|
839
840
|
// Only add llm to database attributes if we have one
|
|
840
|
-
if (llmName) {
|
|
841
|
+
if (llmName && createDefaultLLM) {
|
|
841
842
|
dbAttrsStrs.push(`llm "${llmName}"`);
|
|
842
843
|
}
|
|
843
844
|
|