llm-exe 0.0.3 → 0.0.4

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.
Files changed (141) hide show
  1. package/dist/embedding/base.js +1 -5
  2. package/dist/embedding/base.js.map +1 -1
  3. package/dist/embedding/openai.js +10 -13
  4. package/dist/embedding/openai.js.map +1 -1
  5. package/dist/executor/_base.d.ts +17 -6
  6. package/dist/executor/_base.js +74 -36
  7. package/dist/executor/_base.js.map +1 -1
  8. package/dist/executor/_functions.d.ts +2 -2
  9. package/dist/executor/_functions.js +6 -11
  10. package/dist/executor/_functions.js.map +1 -1
  11. package/dist/executor/_metadata.js +3 -18
  12. package/dist/executor/_metadata.js.map +1 -1
  13. package/dist/executor/core.js +4 -8
  14. package/dist/executor/core.js.map +1 -1
  15. package/dist/executor/index.js +4 -12
  16. package/dist/executor/index.js.map +1 -1
  17. package/dist/executor/llm.d.ts +3 -3
  18. package/dist/executor/llm.js +4 -8
  19. package/dist/executor/llm.js.map +1 -1
  20. package/dist/index.js +35 -61
  21. package/dist/index.js.map +1 -1
  22. package/dist/interfaces/chat.d.ts +7 -0
  23. package/dist/interfaces/chat.js +1 -2
  24. package/dist/interfaces/functions.d.ts +14 -24
  25. package/dist/interfaces/functions.js +1 -2
  26. package/dist/interfaces/functions.js.map +1 -1
  27. package/dist/interfaces/index.js +6 -22
  28. package/dist/interfaces/index.js.map +1 -1
  29. package/dist/interfaces/openai.js +1 -2
  30. package/dist/interfaces/parser.d.ts +1 -4
  31. package/dist/interfaces/parser.js +1 -2
  32. package/dist/interfaces/prompt.js +1 -2
  33. package/dist/interfaces/utils.js +1 -2
  34. package/dist/llm/_base.js +6 -10
  35. package/dist/llm/_base.js.map +1 -1
  36. package/dist/llm/index.js +2 -8
  37. package/dist/llm/index.js.map +1 -1
  38. package/dist/llm/openai.d.ts +3 -3
  39. package/dist/llm/openai.js +17 -20
  40. package/dist/llm/openai.js.map +1 -1
  41. package/dist/llm/output/base.js +3 -7
  42. package/dist/llm/output/base.js.map +1 -1
  43. package/dist/llm/output/index.js +6 -12
  44. package/dist/llm/output/index.js.map +1 -1
  45. package/dist/llm/output/openai.js +3 -8
  46. package/dist/llm/output/openai.js.map +1 -1
  47. package/dist/parser/_base.js +5 -10
  48. package/dist/parser/_base.js.map +1 -1
  49. package/dist/parser/_functions.d.ts +24 -15
  50. package/dist/parser/_functions.js +27 -29
  51. package/dist/parser/_functions.js.map +1 -1
  52. package/dist/parser/index.js +14 -30
  53. package/dist/parser/index.js.map +1 -1
  54. package/dist/parser/parsers/BooleanParser.js +4 -8
  55. package/dist/parser/parsers/BooleanParser.js.map +1 -1
  56. package/dist/parser/parsers/CustomParser.d.ts +7 -6
  57. package/dist/parser/parsers/CustomParser.js +5 -8
  58. package/dist/parser/parsers/CustomParser.js.map +1 -1
  59. package/dist/parser/parsers/JsonParser.js +4 -8
  60. package/dist/parser/parsers/JsonParser.js.map +1 -1
  61. package/dist/parser/parsers/ListToArrayParser.js +2 -6
  62. package/dist/parser/parsers/ListToArrayParser.js.map +1 -1
  63. package/dist/parser/parsers/ListToJsonParser.js +4 -7
  64. package/dist/parser/parsers/ListToJsonParser.js.map +1 -1
  65. package/dist/parser/parsers/ListToKeyValueParser.js +2 -6
  66. package/dist/parser/parsers/ListToKeyValueParser.js.map +1 -1
  67. package/dist/parser/parsers/MarkdownCodeBlock.js +4 -8
  68. package/dist/parser/parsers/MarkdownCodeBlock.js.map +1 -1
  69. package/dist/parser/parsers/MarkdownCodeBlocks.js +2 -6
  70. package/dist/parser/parsers/MarkdownCodeBlocks.js.map +1 -1
  71. package/dist/parser/parsers/NumberParser.js +4 -8
  72. package/dist/parser/parsers/NumberParser.js.map +1 -1
  73. package/dist/parser/parsers/ReplaceStringTemplateParser.js +4 -8
  74. package/dist/parser/parsers/ReplaceStringTemplateParser.js.map +1 -1
  75. package/dist/parser/parsers/StringExtractParser.d.ts +12 -0
  76. package/dist/parser/parsers/StringExtractParser.js +36 -0
  77. package/dist/parser/parsers/StringExtractParser.js.map +1 -0
  78. package/dist/parser/parsers/StringParser.js +4 -8
  79. package/dist/parser/parsers/StringParser.js.map +1 -1
  80. package/dist/plugins/callable/callable.d.ts +12 -0
  81. package/dist/plugins/callable/callable.js +30 -16
  82. package/dist/plugins/callable/callable.js.map +1 -1
  83. package/dist/plugins/callable/index.d.ts +4 -0
  84. package/dist/plugins/callable/index.js +6 -11
  85. package/dist/plugins/callable/index.js.map +1 -1
  86. package/dist/prompt/_base.d.ts +2 -2
  87. package/dist/prompt/_base.js +3 -7
  88. package/dist/prompt/_base.js.map +1 -1
  89. package/dist/prompt/_functions.js +7 -12
  90. package/dist/prompt/_functions.js.map +1 -1
  91. package/dist/prompt/chat.d.ts +10 -1
  92. package/dist/prompt/chat.js +80 -20
  93. package/dist/prompt/chat.js.map +1 -1
  94. package/dist/prompt/index.js +4 -12
  95. package/dist/prompt/index.js.map +1 -1
  96. package/dist/prompt/text.js +2 -6
  97. package/dist/prompt/text.js.map +1 -1
  98. package/dist/state/_base.js +11 -16
  99. package/dist/state/_base.js.map +1 -1
  100. package/dist/state/_functions.js +9 -15
  101. package/dist/state/_functions.js.map +1 -1
  102. package/dist/state/dialogue.d.ts +1 -0
  103. package/dist/state/dialogue.js +18 -6
  104. package/dist/state/dialogue.js.map +1 -1
  105. package/dist/state/index.js +4 -15
  106. package/dist/state/index.js.map +1 -1
  107. package/dist/state/item.js +4 -9
  108. package/dist/state/item.js.map +1 -1
  109. package/dist/types/index.js +1 -17
  110. package/dist/types/index.js.map +1 -1
  111. package/dist/utils/const.d.ts +3 -0
  112. package/dist/utils/const.js +4 -0
  113. package/dist/utils/const.js.map +1 -0
  114. package/dist/utils/index.js +1 -17
  115. package/dist/utils/index.js.map +1 -1
  116. package/dist/utils/modules/asyncCallWithTimeout.js +1 -5
  117. package/dist/utils/modules/asyncCallWithTimeout.js.map +1 -1
  118. package/dist/utils/modules/handlebars/helpers/index.d.ts +1 -0
  119. package/dist/utils/modules/handlebars/helpers/index.js +12 -19
  120. package/dist/utils/modules/handlebars/helpers/index.js.map +1 -1
  121. package/dist/utils/modules/handlebars/index.js +12 -38
  122. package/dist/utils/modules/handlebars/index.js.map +1 -1
  123. package/dist/utils/modules/handlebars/templates/index.js +7 -10
  124. package/dist/utils/modules/handlebars/templates/index.js.map +1 -1
  125. package/dist/utils/modules/index.d.ts +10 -1
  126. package/dist/utils/modules/index.js +48 -50
  127. package/dist/utils/modules/index.js.map +1 -1
  128. package/dist/utils/modules/json-schema-filter.js +1 -5
  129. package/dist/utils/modules/json-schema-filter.js.map +1 -1
  130. package/dist/utils/modules/json.js +3 -9
  131. package/dist/utils/modules/json.js.map +1 -1
  132. package/dist/utils/modules/replaceTemplateString.js +3 -7
  133. package/dist/utils/modules/replaceTemplateString.js.map +1 -1
  134. package/dist/vector/base.js +1 -5
  135. package/dist/vector/base.js.map +1 -1
  136. package/dist/vector/index.js +2 -7
  137. package/dist/vector/index.js.map +1 -1
  138. package/dist/vector/pinecone.js +5 -8
  139. package/dist/vector/pinecone.js.map +1 -1
  140. package/package.json +22 -12
  141. package/readme.md +2 -0
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BaseEmbedding = void 0;
4
- class BaseEmbedding {
1
+ export class BaseEmbedding {
5
2
  constructor(options) {
6
3
  Object.defineProperty(this, "client", {
7
4
  enumerable: true,
@@ -39,5 +36,4 @@ class BaseEmbedding {
39
36
  this.numOfAttempts = options.numOfAttempts || 3;
40
37
  }
41
38
  }
42
- exports.BaseEmbedding = BaseEmbedding;
43
39
  //# sourceMappingURL=base.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"src/","sources":["embedding/base.ts"],"names":[],"mappings":";;;AAAA,MAAa,aAAa;IAOxB,YAAY,OAAY;QANxB;;;;;WAAsB;QACtB;;;;;WAA0B;QAE1B;;;;;WAA2B;QAC3B;;;;;WAAgC;QAChC;;;;;WAAkC;QAEhC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC;QAExC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC;QACzC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,CAAC,CAAC;IAClD,CAAC;CACF;AAdD,sCAcC"}
1
+ {"version":3,"file":"base.js","sourceRoot":"src/","sources":["embedding/base.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,aAAa;IAOxB,YAAY,OAAY;QANxB;;;;;WAAsB;QACtB;;;;;WAA0B;QAE1B;;;;;WAA2B;QAC3B;;;;;WAAgC;QAChC;;;;;WAAkC;QAEhC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC;QAExC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,MAAM,CAAC;QACvC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,IAAI,CAAC;QACzC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,CAAC,CAAC;IAClD,CAAC;CACF"}
@@ -1,11 +1,8 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EmbeddingOpenAI = void 0;
4
- const openai_1 = require("openai");
5
- const utils_1 = require("../utils");
6
- const base_1 = require("./base");
7
- const exponential_backoff_1 = require("exponential-backoff");
8
- class EmbeddingOpenAI extends base_1.BaseEmbedding {
1
+ import { Configuration, OpenAIApi } from "openai";
2
+ import { asyncCallWithTimeout, chunkArray, getEnvironmentVariable } from "../utils";
3
+ import { BaseEmbedding } from "./base";
4
+ import { backOff } from "exponential-backoff";
5
+ export class EmbeddingOpenAI extends BaseEmbedding {
9
6
  constructor(options) {
10
7
  super(options);
11
8
  Object.defineProperty(this, "model", {
@@ -29,12 +26,13 @@ class EmbeddingOpenAI extends base_1.BaseEmbedding {
29
26
  this.model = options.modelName || "text-embedding-ada-002";
30
27
  this.batchSize = options.temperature || 0;
31
28
  this.stripNewLines = !!options.stripNewLines;
32
- this.client = new openai_1.OpenAIApi(new openai_1.Configuration({
33
- apiKey: options.openAIApiKey,
29
+ const apiKey = options.openAIApiKey || getEnvironmentVariable("OPENAI_API_KEY");
30
+ this.client = new OpenAIApi(new Configuration({
31
+ apiKey,
34
32
  }));
35
33
  }
36
34
  async embedDocuments(texts) {
37
- const subPrompts = (0, utils_1.chunkArray)(this.stripNewLines ? texts.map((t) => t.replace(/\n/g, " ")) : texts, this.batchSize);
35
+ const subPrompts = chunkArray(this.stripNewLines ? texts.map((t) => t.replace(/\n/g, " ")) : texts, this.batchSize);
38
36
  const embeddings = [];
39
37
  for (let i = 0; i < subPrompts.length; i += 1) {
40
38
  const input = subPrompts[i];
@@ -50,7 +48,7 @@ class EmbeddingOpenAI extends base_1.BaseEmbedding {
50
48
  return data[0].embedding;
51
49
  }
52
50
  async embeddingWithRetry(input) {
53
- const response = await (0, exponential_backoff_1.backOff)(() => (0, utils_1.asyncCallWithTimeout)(this.client.createEmbedding({
51
+ const response = await backOff(() => asyncCallWithTimeout(this.client.createEmbedding({
54
52
  model: this.model,
55
53
  input: input,
56
54
  user: "",
@@ -68,5 +66,4 @@ class EmbeddingOpenAI extends base_1.BaseEmbedding {
68
66
  return data;
69
67
  }
70
68
  }
71
- exports.EmbeddingOpenAI = EmbeddingOpenAI;
72
69
  //# sourceMappingURL=openai.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"openai.js","sourceRoot":"src/","sources":["embedding/openai.ts"],"names":[],"mappings":";;;AAAA,mCAAkD;AAClD,mCAA2D;AAC3D,iCAAuC;AACvC,6DAA8C;AAG9C,MAAa,eAAgB,SAAQ,oBAAa;IAKhD,YAAY,OAA2B;QACrC,KAAK,CAAC,OAAO,CAAC,CAAC;QALjB;;;;;WAAsB;QAEtB;;;;;WAAyB;QACzB;;;;;WAA8B;QAI5B,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,SAAS,IAAI,wBAAwB,CAAC;QAC3D,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,WAAW,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,aAAa,GAAG,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;QAE7C,IAAI,CAAC,MAAM,GAAG,IAAI,kBAAS,CACzB,IAAI,sBAAa,CAAC;YAChB,MAAM,EAAE,OAAO,CAAC,YAAY;SAC7B,CAAC,CACH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,KAAe;QAClC,MAAM,UAAU,GAAG,IAAA,kBAAU,EAC3B,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,EACpE,IAAI,CAAC,SAAS,CACf,CAAC;QACF,MAAM,UAAU,GAAG,EAAE,CAAC;QACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;YAC7C,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;YAC5B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;YACtD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;gBACxC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;aACpC;SACF;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,KAAK,CAAC,UAAU,CAAC,IAAY;QAC3B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAC5C,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CACrD,CAAC;QACF,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC3B,CAAC;IACD,KAAK,CAAC,kBAAkB,CAAC,KAAa;QACpC,MAAM,QAAQ,GAAG,MAAM,IAAA,6BAAO,EAC5B,GAAG,EAAE,CACH,IAAA,4BAAoB,EAClB,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC;YAC1B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,KAAK,EAAE,KAAK;YACZ,IAAI,EAAE,EAAE;SACT,CAAC,EACF,IAAI,CAAC,OAAO,CACb,EACH;YACE,aAAa,EAAE,CAAC;YAChB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,aAAa,EAAE,IAAI,CAAC,aAAa;YACjC,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE,GAAG,EAAE;gBACV,OAAO,CAAC,GAAG,CAAC,wBAAwB,IAAI,CAAC,OAAO,eAAe,CAAC,CAAC;gBACjE,OAAO,IAAI,CAAC;YACd,CAAC;SACF,CACF,CAAC;QAEF,MAAM,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AAlED,0CAkEC"}
1
+ {"version":3,"file":"openai.js","sourceRoot":"src/","sources":["embedding/openai.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,11 @@
1
- import { PlainObject, ExecutorMetadata, CoreExecutorHooks, CoreExecutorHookInput, ExecutorExecutionMetadata, CoreExecutorExecuteOptions } from "../types";
2
- export declare abstract class BaseExecutor<I extends PlainObject, O = any> {
1
+ import { PlainObject, ExecutorMetadata, ListenerFunction, CoreExecutorHookInput, ExecutorExecutionMetadata, CoreExecutorExecuteOptions, BaseExecutorHooks } from "../types";
2
+ /**
3
+ * BaseExecutor
4
+ * @template I - Input type.
5
+ * @template O - Output type.
6
+ * @template H - Hooks type.
7
+ */
8
+ export declare abstract class BaseExecutor<I extends PlainObject, O = any, H extends BaseExecutorHooks = BaseExecutorHooks> {
3
9
  /**
4
10
  * @property id - internal id of the executor
5
11
  */
@@ -23,8 +29,9 @@ export declare abstract class BaseExecutor<I extends PlainObject, O = any> {
23
29
  /**
24
30
  * @property hooks - hooks to be ran during execution
25
31
  */
26
- hooks: CoreExecutorHooks;
27
- constructor(name: string, type: string, options?: CoreExecutorExecuteOptions);
32
+ hooks: any;
33
+ allowedHooks: any[];
34
+ constructor(name: string, type: string, options?: CoreExecutorExecuteOptions<H>);
28
35
  abstract handler(input: I): Promise<any>;
29
36
  /**
30
37
  *
@@ -49,6 +56,10 @@ export declare abstract class BaseExecutor<I extends PlainObject, O = any> {
49
56
  execute(_input: I): Promise<O>;
50
57
  metadata(): Record<string, any>;
51
58
  getMetadata(metadata?: Record<string, any>): ExecutorMetadata;
52
- runHook(hook: keyof CoreExecutorHooks, _metadata: ExecutorExecutionMetadata): void;
53
- setHooks(hooks?: CoreExecutorHookInput): void;
59
+ runHook(hook: keyof H, _metadata: ExecutorExecutionMetadata): void;
60
+ setHooks(hooks?: CoreExecutorHookInput<H>): this;
61
+ removeHook(eventName: keyof H, fn: ListenerFunction): this;
62
+ on(eventName: keyof H, fn: ListenerFunction): this;
63
+ off(eventName: keyof H, fn: ListenerFunction): this;
64
+ once(eventName: keyof H, fn: ListenerFunction): this;
54
65
  }
@@ -1,14 +1,13 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.BaseExecutor = void 0;
4
- const utils_1 = require("../utils");
5
- const _metadata_1 = require("./_metadata");
6
- const hookNames = [
7
- "onComplete",
8
- "onError",
9
- "filterResult",
10
- ];
11
- class BaseExecutor {
1
+ import { ensureInputIsObject, pick, uuid } from "../utils";
2
+ import { createMetadataState } from "./_metadata";
3
+ import { hookOnComplete, hookOnError, hookOnSuccess } from "../utils/const";
4
+ /**
5
+ * BaseExecutor
6
+ * @template I - Input type.
7
+ * @template O - Output type.
8
+ * @template H - Hooks type.
9
+ */
10
+ export class BaseExecutor {
12
11
  constructor(name, type, options) {
13
12
  /**
14
13
  * @property id - internal id of the executor
@@ -64,12 +63,22 @@ class BaseExecutor {
64
63
  writable: true,
65
64
  value: void 0
66
65
  });
67
- this.id = (0, utils_1.uuid)();
66
+ Object.defineProperty(this, "allowedHooks", {
67
+ enumerable: true,
68
+ configurable: true,
69
+ writable: true,
70
+ value: [hookOnComplete, hookOnError, hookOnSuccess]
71
+ });
72
+ this.id = uuid();
68
73
  this.type = type;
69
74
  this.name = name;
70
75
  this.created = new Date().getTime();
71
76
  this.executions = 0;
72
- this.hooks = {};
77
+ this.hooks = {
78
+ onSuccess: [],
79
+ onError: [],
80
+ onComplete: [],
81
+ };
73
82
  if (options?.hooks) {
74
83
  this.setHooks(options.hooks);
75
84
  }
@@ -81,7 +90,7 @@ class BaseExecutor {
81
90
  * @returns original input formatted for handler
82
91
  */
83
92
  getHandlerInput(_input, _metadata) {
84
- return (0, utils_1.ensureInputIsObject)(_input);
93
+ return ensureInputIsObject(_input);
85
94
  }
86
95
  /**
87
96
  *
@@ -100,7 +109,7 @@ class BaseExecutor {
100
109
  */
101
110
  async execute(_input) {
102
111
  this.executions++;
103
- const _metadata = (0, _metadata_1.createMetadataState)({
112
+ const _metadata = createMetadataState({
104
113
  start: new Date().getTime(),
105
114
  input: _input,
106
115
  });
@@ -109,17 +118,9 @@ class BaseExecutor {
109
118
  _metadata.setItem({ handlerInput: input });
110
119
  let result = await this.handler(input);
111
120
  _metadata.setItem({ handlerOutput: result });
112
- if (this.hooks.filterResult) {
113
- for (const filter of this.hooks.filterResult) {
114
- if (filter) {
115
- const filterResult = filter(result, _metadata.asPlainObject(), this.getMetadata());
116
- result = filterResult;
117
- _metadata.setItem({ handlerOutput: filterResult });
118
- }
119
- }
120
- }
121
121
  const output = this.getHandlerOutput(result, _metadata.asPlainObject());
122
122
  _metadata.setItem({ output });
123
+ this.runHook("onSuccess", _metadata.asPlainObject());
123
124
  return output;
124
125
  }
125
126
  catch (error) {
@@ -146,28 +147,65 @@ class BaseExecutor {
146
147
  });
147
148
  }
148
149
  runHook(hook, _metadata) {
149
- const { [hook]: hooks = [] } = this.hooks;
150
- for (const hookFn of hooks) {
151
- /* istanbul ignore next */
150
+ /* istanbul ignore next */
151
+ const { [hook]: hooks = [] } = pick(this.hooks, this.allowedHooks);
152
+ for (const hookFn of [...hooks] /** clone hooks */) {
152
153
  if (typeof hookFn === "function") {
153
- hookFn(_metadata, this.getMetadata());
154
+ try {
155
+ hookFn(_metadata, this.getMetadata());
156
+ }
157
+ catch (error) {
158
+ /** We should call an error handler */
159
+ }
154
160
  }
155
161
  }
156
162
  }
157
163
  setHooks(hooks = {}) {
158
164
  const hookKeys = Object.keys(hooks);
159
- for (const hookKey of hookKeys.filter((k) => hookNames.includes(k))) {
165
+ for (const hookKey of hookKeys.filter((k) => this.allowedHooks.includes(k))) {
160
166
  const hookInput = hooks[hookKey];
161
167
  if (hookInput) {
162
- const hook = Array.isArray(hookInput) ? hookInput : [hookInput];
163
- const cleanHooks = hook.filter((h) => h && typeof h === "function");
164
- if (!this.hooks[hookKey])
165
- this.hooks[hookKey] = [];
166
- /* istanbul ignore next */
167
- this.hooks[hookKey]?.push(...cleanHooks);
168
+ const _hooks = Array.isArray(hookInput) ? hookInput : [hookInput];
169
+ for (const hook of _hooks) {
170
+ if (hook &&
171
+ typeof hook === "function" &&
172
+ !this.hooks[hookKey].find((h) => h === hook)) {
173
+ this.hooks[hookKey].push(hook);
174
+ }
175
+ }
176
+ }
177
+ }
178
+ return this;
179
+ }
180
+ removeHook(eventName, fn) {
181
+ if (typeof fn !== "function")
182
+ return this;
183
+ const lis = this.hooks[eventName];
184
+ if (!lis)
185
+ return this;
186
+ for (let i = lis.length; i >= 0; i--) {
187
+ if (lis[i] === fn) {
188
+ lis.splice(i, 1);
189
+ break;
168
190
  }
169
191
  }
192
+ return this;
193
+ }
194
+ on(eventName, fn) {
195
+ return this.setHooks({ [eventName]: fn });
196
+ }
197
+ off(eventName, fn) {
198
+ return this.removeHook(eventName, fn);
199
+ }
200
+ once(eventName, fn) {
201
+ if (typeof fn !== "function")
202
+ return this;
203
+ const onceWrapper = (...args) => {
204
+ fn(...args);
205
+ this.off(eventName, onceWrapper);
206
+ };
207
+ this.hooks[eventName].push(onceWrapper);
208
+ return this;
170
209
  }
171
210
  }
172
- exports.BaseExecutor = BaseExecutor;
173
211
  //# sourceMappingURL=_base.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_base.js","sourceRoot":"src/","sources":["executor/_base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_base.js","sourceRoot":"src/","sources":["executor/_base.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { PlainObject, ExecutorWithLlmOptions, CoreExecutorExecuteOptions } from "../types";
1
+ import { PlainObject, ExecutorWithLlmOptions, CoreExecutorExecuteOptions, LlmExecutorHooks } from "../types";
2
2
  import { BaseLlm } from "../llm";
3
3
  import { BaseParser } from "../parser";
4
4
  import { BasePrompt } from "../prompt";
@@ -22,4 +22,4 @@ export declare function createCoreExecutor<I extends PlainObject, O>(handler: (i
22
22
  * @param options - Options for BaseExecutorV3.
23
23
  * @returns - A new LlmExecutor instance.
24
24
  */
25
- export declare function createLlmExecutor<Llm extends BaseLlm<any>, Prompt extends BasePrompt<any>, Parser extends BaseParser, State extends BaseState>(llmConfiguration: ExecutorWithLlmOptions<Llm, Prompt, Parser, State>, options?: CoreExecutorExecuteOptions): LlmExecutor<Llm, Prompt, Parser, State>;
25
+ export declare function createLlmExecutor<Llm extends BaseLlm<any>, Prompt extends BasePrompt<any>, Parser extends BaseParser, State extends BaseState>(llmConfiguration: ExecutorWithLlmOptions<Llm, Prompt, Parser, State>, options?: CoreExecutorExecuteOptions<LlmExecutorHooks>): LlmExecutor<Llm, Prompt, Parser, State>;
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createLlmExecutor = exports.createCoreExecutor = void 0;
4
- const core_1 = require("./core");
5
- const llm_1 = require("./llm");
1
+ import { CoreExecutor } from "./core";
2
+ import { LlmExecutor } from "./llm";
6
3
  /**
7
4
  * Function to create a core executor.
8
5
  * @template I - Input type.
@@ -10,10 +7,9 @@ const llm_1 = require("./llm");
10
7
  * @param handler - The handler function.
11
8
  * @returns - A new CoreExecutor instance.
12
9
  */
13
- function createCoreExecutor(handler, options) {
14
- return new core_1.CoreExecutor({ handler }, options);
10
+ export function createCoreExecutor(handler, options) {
11
+ return new CoreExecutor({ handler }, options);
15
12
  }
16
- exports.createCoreExecutor = createCoreExecutor;
17
13
  /**
18
14
  * Function to create a core executor with Llm.
19
15
  * @template Llm - Llm type.
@@ -23,8 +19,7 @@ exports.createCoreExecutor = createCoreExecutor;
23
19
  * @param options - Options for BaseExecutorV3.
24
20
  * @returns - A new LlmExecutor instance.
25
21
  */
26
- function createLlmExecutor(llmConfiguration, options) {
27
- return new llm_1.LlmExecutor(llmConfiguration, options);
22
+ export function createLlmExecutor(llmConfiguration, options) {
23
+ return new LlmExecutor(llmConfiguration, options);
28
24
  }
29
- exports.createLlmExecutor = createLlmExecutor;
30
25
  //# sourceMappingURL=_functions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_functions.js","sourceRoot":"src/","sources":["executor/_functions.ts"],"names":[],"mappings":";;;AASA,iCAAsC;AACtC,+BAAoC;AAEpC;;;;;;GAMG;AACH,SAAgB,kBAAkB,CAChC,OAAqC,EACrC,OAAoC;IAEpC,OAAO,IAAI,mBAAY,CAAO,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;AACtD,CAAC;AALD,gDAKC;AAED;;;;;;;;GAQG;AACH,SAAgB,iBAAiB,CAM/B,gBAAoE,EACpE,OAAoC;IAEpC,OAAO,IAAI,iBAAW,CAA6B,gBAAgB,EAAE,OAAO,CAAC,CAAC;AAChF,CAAC;AAVD,8CAUC"}
1
+ {"version":3,"file":"_functions.js","sourceRoot":"src/","sources":["executor/_functions.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAEpC;;;;;;GAMG;AACH,MAAM,UAAU,kBAAkB,CAChC,OAAqC,EACrC,OAAoC;IAEpC,OAAO,IAAI,YAAY,CAAO,EAAE,OAAO,EAAE,EAAE,OAAO,CAAC,CAAC;AACtD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,iBAAiB,CAM/B,gBAAoE,EACpE,OAAsD;IAEtD,OAAO,IAAI,WAAW,CAA6B,gBAAgB,EAAE,OAAO,CAAC,CAAC;AAChF,CAAC"}
@@ -1,13 +1,10 @@
1
- "use strict";
2
1
  var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
3
2
  if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
4
3
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
5
4
  return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
6
5
  };
7
6
  var _ExecutorExecutionMetadataState_state;
8
- Object.defineProperty(exports, "__esModule", { value: true });
9
- exports.createMetadataState = exports.ExecutorExecutionMetadataState = void 0;
10
- class ExecutorExecutionMetadataState {
7
+ export class ExecutorExecutionMetadataState {
11
8
  constructor(items) {
12
9
  _ExecutorExecutionMetadataState_state.set(this, {
13
10
  start: null,
@@ -16,8 +13,6 @@ class ExecutorExecutionMetadataState {
16
13
  handlerInput: undefined,
17
14
  handlerOutput: undefined,
18
15
  output: undefined,
19
- _handlerOutput: [],
20
- _output: [],
21
16
  errorMessage: undefined,
22
17
  error: undefined,
23
18
  metadata: null,
@@ -34,13 +29,7 @@ class ExecutorExecutionMetadataState {
34
29
  const keys = Object.keys(items);
35
30
  for (const key of keys) {
36
31
  const value = items[key];
37
- if (Array.isArray(__classPrivateFieldGet(this, _ExecutorExecutionMetadataState_state, "f")[key])) {
38
- const asArr = Array.isArray(value) ? value : [value];
39
- __classPrivateFieldGet(this, _ExecutorExecutionMetadataState_state, "f")[key].push(...asArr);
40
- }
41
- else {
42
- __classPrivateFieldGet(this, _ExecutorExecutionMetadataState_state, "f")[key] = value;
43
- }
32
+ __classPrivateFieldGet(this, _ExecutorExecutionMetadataState_state, "f")[key] = value;
44
33
  }
45
34
  return this;
46
35
  }
@@ -52,18 +41,14 @@ class ExecutorExecutionMetadataState {
52
41
  handlerInput: __classPrivateFieldGet(this, _ExecutorExecutionMetadataState_state, "f").handlerInput,
53
42
  handlerOutput: __classPrivateFieldGet(this, _ExecutorExecutionMetadataState_state, "f").handlerOutput,
54
43
  output: __classPrivateFieldGet(this, _ExecutorExecutionMetadataState_state, "f").output,
55
- _handlerOutput: __classPrivateFieldGet(this, _ExecutorExecutionMetadataState_state, "f")._handlerOutput,
56
- _output: __classPrivateFieldGet(this, _ExecutorExecutionMetadataState_state, "f")._output,
57
44
  errorMessage: __classPrivateFieldGet(this, _ExecutorExecutionMetadataState_state, "f").errorMessage,
58
45
  error: __classPrivateFieldGet(this, _ExecutorExecutionMetadataState_state, "f").error,
59
46
  metadata: __classPrivateFieldGet(this, _ExecutorExecutionMetadataState_state, "f").metadata,
60
47
  });
61
48
  }
62
49
  }
63
- exports.ExecutorExecutionMetadataState = ExecutorExecutionMetadataState;
64
50
  _ExecutorExecutionMetadataState_state = new WeakMap();
65
- function createMetadataState(items) {
51
+ export function createMetadataState(items) {
66
52
  return new ExecutorExecutionMetadataState(items);
67
53
  }
68
- exports.createMetadataState = createMetadataState;
69
54
  //# sourceMappingURL=_metadata.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_metadata.js","sourceRoot":"src/","sources":["executor/_metadata.ts"],"names":[],"mappings":";;;;;;;;;AAKA,MAAa,8BAA8B;IAezC,YACE,KAC8C;QAhBhD,gDAAoC;YAClC,KAAK,EAAE,IAAI;YACX,GAAG,EAAE,IAAI;YACT,KAAK,EAAE,SAAS;YAChB,YAAY,EAAE,SAAS;YACvB,aAAa,EAAE,SAAS;YACxB,MAAM,EAAE,SAAS;YACjB,cAAc,EAAE,EAAE;YAClB,OAAO,EAAE,EAAE;YACX,YAAY,EAAE,SAAS;YACvB,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,IAAI;SACf,EAAC;QAMA,IAAI,KAAK,EAAE;YACT,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SACrB;IACH,CAAC;IAED,OAAO,CAAC,KAAmD;QACzD,yBAAyB;QACzB,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAC/D,OAAO,IAAI,CAAC;SACb;QAED,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAA2B,CAAC;QAC1D,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;YACtB,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;YACzB,IAAI,KAAK,CAAC,OAAO,CAAC,uBAAA,IAAI,6CAAO,CAAC,GAAG,CAAC,CAAC,EAAE;gBACnC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;gBACrD,uBAAA,IAAI,6CAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC;aACjC;iBAAM;gBACL,uBAAA,IAAI,6CAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;aAC1B;SACF;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,aAAa;QACX,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,KAAK,EAAE,uBAAA,IAAI,6CAAO,CAAC,KAAK;YACxB,GAAG,EAAE,uBAAA,IAAI,6CAAO,CAAC,GAAG;YACpB,KAAK,EAAE,uBAAA,IAAI,6CAAO,CAAC,KAAK;YACxB,YAAY,EAAE,uBAAA,IAAI,6CAAO,CAAC,YAAY;YACtC,aAAa,EAAE,uBAAA,IAAI,6CAAO,CAAC,aAAa;YACxC,MAAM,EAAE,uBAAA,IAAI,6CAAO,CAAC,MAAM;YAC1B,cAAc,EAAE,uBAAA,IAAI,6CAAO,CAAC,cAAc;YAC1C,OAAO,EAAE,uBAAA,IAAI,6CAAO,CAAC,OAAO;YAC5B,YAAY,EAAE,uBAAA,IAAI,6CAAO,CAAC,YAAY;YACtC,KAAK,EAAE,uBAAA,IAAI,6CAAO,CAAC,KAAK;YACxB,QAAQ,EAAE,uBAAA,IAAI,6CAAO,CAAC,QAAQ;SAC/B,CAAC,CAAC;IACL,CAAC;CACF;AAzDD,wEAyDC;;AAED,SAAgB,mBAAmB,CACjC,KAC8C;IAE9C,OAAO,IAAI,8BAA8B,CAAC,KAAK,CAAC,CAAC;AACnD,CAAC;AALD,kDAKC"}
1
+ {"version":3,"file":"_metadata.js","sourceRoot":"src/","sources":["executor/_metadata.ts"],"names":[],"mappings":";;;;;;AAKA,MAAM,OAAO,8BAA8B;IAazC,YACE,KAC8C;QAdhD,gDAAoC;YAClC,KAAK,EAAE,IAAI;YACX,GAAG,EAAE,IAAI;YACT,KAAK,EAAE,SAAS;YAChB,YAAY,EAAE,SAAS;YACvB,aAAa,EAAE,SAAS;YACxB,MAAM,EAAE,SAAS;YACjB,YAAY,EAAE,SAAS;YACvB,KAAK,EAAE,SAAS;YAChB,QAAQ,EAAE,IAAI;SACf,EAAC;QAMA,IAAI,KAAK,EAAE;YACT,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SACrB;IACH,CAAC;IAED,OAAO,CAAC,KAAmD;QACzD,yBAAyB;QACzB,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAC/D,OAAO,IAAI,CAAC;SACb;QAED,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAA2B,CAAC;QAC1D,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;YACtB,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;YACzB,uBAAA,IAAI,6CAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;SAC1B;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IACD,aAAa;QACX,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,KAAK,EAAE,uBAAA,IAAI,6CAAO,CAAC,KAAK;YACxB,GAAG,EAAE,uBAAA,IAAI,6CAAO,CAAC,GAAG;YACpB,KAAK,EAAE,uBAAA,IAAI,6CAAO,CAAC,KAAK;YACxB,YAAY,EAAE,uBAAA,IAAI,6CAAO,CAAC,YAAY;YACtC,aAAa,EAAE,uBAAA,IAAI,6CAAO,CAAC,aAAa;YACxC,MAAM,EAAE,uBAAA,IAAI,6CAAO,CAAC,MAAM;YAC1B,YAAY,EAAE,uBAAA,IAAI,6CAAO,CAAC,YAAY;YACtC,KAAK,EAAE,uBAAA,IAAI,6CAAO,CAAC,KAAK;YACxB,QAAQ,EAAE,uBAAA,IAAI,6CAAO,CAAC,QAAQ;SAC/B,CAAC,CAAC;IACL,CAAC;CACF;;AAED,MAAM,UAAU,mBAAmB,CACjC,KAC8C;IAE9C,OAAO,IAAI,8BAA8B,CAAC,KAAK,CAAC,CAAC;AACnD,CAAC"}
@@ -1,16 +1,13 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CoreExecutor = void 0;
4
- const _base_1 = require("./_base");
5
- const utils_1 = require("../utils");
1
+ import { BaseExecutor } from "./_base";
2
+ import { inferFunctionName } from "../utils";
6
3
  /**
7
4
  * Core Function Executor
8
5
  */
9
- class CoreExecutor extends _base_1.BaseExecutor {
6
+ export class CoreExecutor extends BaseExecutor {
10
7
  constructor(fn, options) {
11
8
  const name = fn?.name
12
9
  ? fn.name
13
- : (0, utils_1.inferFunctionName)(fn.handler, "anonymous-core-executor");
10
+ : inferFunctionName(fn.handler, "anonymous-core-executor");
14
11
  super(name, "function-executor", options);
15
12
  Object.defineProperty(this, "_handler", {
16
13
  enumerable: true,
@@ -24,5 +21,4 @@ class CoreExecutor extends _base_1.BaseExecutor {
24
21
  return this._handler.call(null, _input);
25
22
  }
26
23
  }
27
- exports.CoreExecutor = CoreExecutor;
28
24
  //# sourceMappingURL=core.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"core.js","sourceRoot":"src/","sources":["executor/core.ts"],"names":[],"mappings":";;;AAKA,mCAAuC;AACvC,mCAA4C;AAE5C;;GAEG;AACH,MAAa,YAAuC,SAAQ,oBAAkB;IAG5E,YACE,EAA2B,EAC3B,OAAoC;QAEpC,MAAM,IAAI,GAAG,EAAE,EAAE,IAAI;YACnB,CAAC,CAAC,EAAE,CAAC,IAAI;YACT,CAAC,CAAC,IAAA,yBAAiB,EAAC,EAAE,CAAC,OAAO,EAAE,yBAAyB,CAAC,CAAC;QAE7D,KAAK,CAAC,IAAI,EAAE,mBAAmB,EAAE,OAAO,CAAC,CAAC;QAV5C;;;;;WAAkD;QAWhD,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,OAAO,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAS;QACrB,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC1C,CAAC;CACF;AAlBD,oCAkBC"}
1
+ {"version":3,"file":"core.js","sourceRoot":"src/","sources":["executor/core.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAE5C;;GAEG;AACH,MAAM,OAAO,YAAuC,SAAQ,YAAkB;IAG5E,YACE,EAA2B,EAC3B,OAAoC;QAEpC,MAAM,IAAI,GAAG,EAAE,EAAE,IAAI;YACnB,CAAC,CAAC,EAAE,CAAC,IAAI;YACT,CAAC,CAAC,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,yBAAyB,CAAC,CAAC;QAE7D,KAAK,CAAC,IAAI,EAAE,mBAAmB,EAAE,OAAO,CAAC,CAAC;QAV5C;;;;;WAAkD;QAWhD,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC,OAAO,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAAS;QACrB,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC1C,CAAC;CACF"}
@@ -1,13 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createLlmExecutor = exports.createCoreExecutor = exports.LlmExecutor = exports.CoreExecutor = exports.BaseExecutor = void 0;
4
- var _base_1 = require("./_base");
5
- Object.defineProperty(exports, "BaseExecutor", { enumerable: true, get: function () { return _base_1.BaseExecutor; } });
6
- var core_1 = require("./core");
7
- Object.defineProperty(exports, "CoreExecutor", { enumerable: true, get: function () { return core_1.CoreExecutor; } });
8
- var llm_1 = require("./llm");
9
- Object.defineProperty(exports, "LlmExecutor", { enumerable: true, get: function () { return llm_1.LlmExecutor; } });
10
- var _functions_1 = require("./_functions");
11
- Object.defineProperty(exports, "createCoreExecutor", { enumerable: true, get: function () { return _functions_1.createCoreExecutor; } });
12
- Object.defineProperty(exports, "createLlmExecutor", { enumerable: true, get: function () { return _functions_1.createLlmExecutor; } });
1
+ export { BaseExecutor } from "./_base";
2
+ export { CoreExecutor } from "./core";
3
+ export { LlmExecutor } from "./llm";
4
+ export { createCoreExecutor, createLlmExecutor } from "./_functions";
13
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"src/","sources":["executor/index.ts"],"names":[],"mappings":";;;AAAA,iCAAuC;AAA9B,qGAAA,YAAY,OAAA;AACrB,+BAAsC;AAA7B,oGAAA,YAAY,OAAA;AACrB,6BAAoC;AAA3B,kGAAA,WAAW,OAAA;AACpB,2CAAqE;AAA5D,gHAAA,kBAAkB,OAAA;AAAE,+GAAA,iBAAiB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"src/","sources":["executor/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AACpC,OAAO,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC"}
@@ -1,4 +1,4 @@
1
- import { PromptInput, ParserOutput, CoreExecutorExecuteOptions, ExecutorWithLlmOptions, ExecutorExecutionMetadata } from "../types";
1
+ import { PromptInput, ParserOutput, CoreExecutorExecuteOptions, ExecutorWithLlmOptions, ExecutorExecutionMetadata, LlmExecutorHooks } from "../types";
2
2
  import { BaseLlm } from "../llm";
3
3
  import { BaseParser, StringParser } from "../parser";
4
4
  import { BasePrompt } from "../prompt";
@@ -7,12 +7,12 @@ import { BaseExecutor } from "./_base";
7
7
  /**
8
8
  * Core Executor With LLM
9
9
  */
10
- export declare class LlmExecutor<Llm extends BaseLlm<any>, Prompt extends BasePrompt<Record<string, any>>, Parser extends BaseParser, State extends BaseState> extends BaseExecutor<PromptInput<Prompt>, ParserOutput<Parser>> {
10
+ export declare class LlmExecutor<Llm extends BaseLlm<any>, Prompt extends BasePrompt<Record<string, any>>, Parser extends BaseParser, State extends BaseState> extends BaseExecutor<PromptInput<Prompt>, ParserOutput<Parser>, LlmExecutorHooks> {
11
11
  llm: Llm;
12
12
  prompt: Prompt | undefined;
13
13
  promptFn: any;
14
14
  parser: StringParser | Parser;
15
- constructor(llmConfiguration: ExecutorWithLlmOptions<Llm, Prompt, Parser, State>, options?: CoreExecutorExecuteOptions);
15
+ constructor(llmConfiguration: ExecutorWithLlmOptions<Llm, Prompt, Parser, State>, options?: CoreExecutorExecuteOptions<LlmExecutorHooks>);
16
16
  handler(_input: PromptInput<Prompt>): Promise<any>;
17
17
  getHandlerInput(_input: PromptInput<Prompt>): any;
18
18
  getHandlerOutput(out: any, _metadata: ExecutorExecutionMetadata<PromptInput<Prompt>, ParserOutput<Parser>>): ParserOutput<Parser>;
@@ -1,12 +1,9 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LlmExecutor = void 0;
4
- const parser_1 = require("../parser");
5
- const _base_1 = require("./_base");
1
+ import { StringParser } from "../parser";
2
+ import { BaseExecutor } from "./_base";
6
3
  /**
7
4
  * Core Executor With LLM
8
5
  */
9
- class LlmExecutor extends _base_1.BaseExecutor {
6
+ export class LlmExecutor extends BaseExecutor {
10
7
  constructor(llmConfiguration, options) {
11
8
  super(llmConfiguration.name || "anonymous-llm-executor", "llm-executor", options);
12
9
  Object.defineProperty(this, "llm", {
@@ -34,7 +31,7 @@ class LlmExecutor extends _base_1.BaseExecutor {
34
31
  value: void 0
35
32
  });
36
33
  this.llm = llmConfiguration.llm;
37
- this.parser = llmConfiguration?.parser || new parser_1.StringParser();
34
+ this.parser = llmConfiguration?.parser || new StringParser();
38
35
  if (typeof llmConfiguration.prompt === "function") {
39
36
  this.prompt = undefined;
40
37
  this.promptFn = llmConfiguration.prompt;
@@ -69,5 +66,4 @@ class LlmExecutor extends _base_1.BaseExecutor {
69
66
  };
70
67
  }
71
68
  }
72
- exports.LlmExecutor = LlmExecutor;
73
69
  //# sourceMappingURL=llm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"llm.js","sourceRoot":"src/","sources":["executor/llm.ts"],"names":[],"mappings":";;;AAQA,qCAAoD;AAIpD,mCAAuC;AAEvC;;GAEG;AACH,MAAa,WAKX,SAAQ,oBAAuD;IAM/D,YACE,gBAAoE,EACpE,OAAoC;QAEpC,KAAK,CACH,gBAAgB,CAAC,IAAI,IAAI,wBAAwB,EACjD,cAAc,EACd,OAAO,CACR,CAAC;QAbJ;;;;;WAAW;QACX;;;;;WAAc;QACd;;;;;WAAqB;QACrB;;;;;WAAc;QAYZ,IAAI,CAAC,GAAG,GAAG,gBAAgB,CAAC,GAAG,CAAC;QAChC,IAAI,CAAC,MAAM,GAAG,gBAAgB,EAAE,MAAM,IAAI,IAAI,qBAAY,EAAE,CAAC;QAE7D,IAAI,OAAO,gBAAgB,CAAC,MAAM,KAAK,UAAU,EAAE;YACjD,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YACxB,IAAI,CAAC,QAAQ,GAAG,gBAAgB,CAAC,MAAM,CAAC;SACzC;aAAM;YACL,IAAI,CAAC,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC;YACtC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;SACtB;IACH,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAA2B;QACvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzC,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACvC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,eAAe,CAAC,MAA2B;QACzC,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;SACnC;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACrC,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC9C,OAAO,eAAe,CAAC;SACxB;QACD,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACpC,CAAC;IAED,gBAAgB,CACd,GAAQ,EACR,SAGC;QAED,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAC3C,CAAC;IAED,QAAQ;QACN,OAAO;YACL,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE;SAC5B,CAAC;IACJ,CAAC;CACF;AAnED,kCAmEC"}
1
+ {"version":3,"file":"llm.js","sourceRoot":"src/","sources":["executor/llm.ts"],"names":[],"mappings":"AASA,OAAO,EAAc,YAAY,EAAE,MAAM,UAAU,CAAC;AAGpD,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC;;GAEG;AACH,MAAM,OAAO,WAKX,SAAQ,YAIT;IAMC,YACE,gBAAoE,EACpE,OAAsD;QAEtD,KAAK,CACH,gBAAgB,CAAC,IAAI,IAAI,wBAAwB,EACjD,cAAc,EACd,OAAO,CACR,CAAC;QAbJ;;;;;WAAW;QACX;;;;;WAAc;QACd;;;;;WAAqB;QACrB;;;;;WAAc;QAYZ,IAAI,CAAC,GAAG,GAAG,gBAAgB,CAAC,GAAG,CAAC;QAChC,IAAI,CAAC,MAAM,GAAG,gBAAgB,EAAE,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;QAE7D,IAAI,OAAO,gBAAgB,CAAC,MAAM,KAAK,UAAU,EAAE;YACjD,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;YACxB,IAAI,CAAC,QAAQ,GAAG,gBAAgB,CAAC,MAAM,CAAC;SACzC;aAAM;YACL,IAAI,CAAC,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC;YACtC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;SACtB;IACH,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,MAA2B;QACvC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzC,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACvC,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,eAAe,CAAC,MAA2B;QACzC,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;SACnC;QAED,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACrC,MAAM,eAAe,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC9C,OAAO,eAAe,CAAC;SACxB;QACD,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACpC,CAAC;IAED,gBAAgB,CACd,GAAQ,EACR,SAGC;QAED,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAC3C,CAAC;IAED,QAAQ;QACN,OAAO;YACL,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE;SAC5B,CAAC;IACJ,CAAC;CACF"}