@effect/ai 0.10.2 → 0.10.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.
@@ -0,0 +1,6 @@
1
+ {
2
+ "main": "../dist/cjs/AiModel.js",
3
+ "module": "../dist/esm/AiModel.js",
4
+ "types": "../dist/dts/AiModel.d.ts",
5
+ "sideEffects": []
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "main": "../dist/cjs/AiModels.js",
3
+ "module": "../dist/esm/AiModels.js",
4
+ "types": "../dist/dts/AiModels.d.ts",
5
+ "sideEffects": []
6
+ }
@@ -0,0 +1,6 @@
1
+ {
2
+ "main": "../dist/cjs/AiPlan.js",
3
+ "module": "../dist/esm/AiPlan.js",
4
+ "types": "../dist/dts/AiPlan.d.ts",
5
+ "sideEffects": []
6
+ }
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.make = exports.TypeId = exports.PlanTypeId = void 0;
7
+ var Option = _interopRequireWildcard(require("effect/Option"));
8
+ var InternalAiPlan = _interopRequireWildcard(require("./internal/aiPlan.js"));
9
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
10
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
11
+ /**
12
+ * @since 1.0.0
13
+ * @category type ids
14
+ */
15
+ const TypeId = exports.TypeId = /*#__PURE__*/Symbol.for("@effect/ai/AiModel");
16
+ /**
17
+ * @since 1.0.0
18
+ * @category type ids
19
+ */
20
+ const PlanTypeId = exports.PlanTypeId = /*#__PURE__*/Symbol.for("@effect/ai/Plan");
21
+ const AiModelProto = {
22
+ ...InternalAiPlan.PlanPrototype,
23
+ [TypeId]: TypeId
24
+ };
25
+ /**
26
+ * @since 1.0.0
27
+ * @category constructors
28
+ */
29
+ const make = options => {
30
+ const self = Object.create(AiModelProto);
31
+ self.cacheKey = options.cacheKey;
32
+ self.model = options.model;
33
+ self.provides = options.provides;
34
+ self.requires = options.requires;
35
+ self.updateContext = options.updateContext;
36
+ self.steps = [{
37
+ model: self,
38
+ check: Option.none(),
39
+ schedule: Option.none()
40
+ }];
41
+ return self;
42
+ };
43
+ exports.make = make;
44
+ //# sourceMappingURL=AiModel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AiModel.js","names":["Option","_interopRequireWildcard","require","InternalAiPlan","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","TypeId","exports","Symbol","for","PlanTypeId","AiModelProto","PlanPrototype","make","options","self","create","cacheKey","model","provides","requires","updateContext","steps","check","none","schedule"],"sources":["../../src/AiModel.ts"],"sourcesContent":[null],"mappings":";;;;;;AAKA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AAGA,IAAAC,cAAA,GAAAF,uBAAA,CAAAC,OAAA;AAAsD,SAAAE,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAJ,wBAAAI,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAEtD;;;;AAIO,MAAMW,MAAM,GAAAC,OAAA,CAAAD,MAAA,gBAAkBE,MAAM,CAACC,GAAG,CAAC,oBAAoB,CAAC;AAQrE;;;;AAIO,MAAMC,UAAU,GAAAH,OAAA,CAAAG,UAAA,gBAAkBF,MAAM,CAACC,GAAG,CAAC,iBAAiB,CAAC;AAoCtE,MAAME,YAAY,GAAG;EACnB,GAAG1B,cAAc,CAAC2B,aAAa;EAC/B,CAACN,MAAM,GAAGA;CACX;AAED;;;;AAIO,MAAMO,IAAI,GAAwBC,OAMxC,IAAiC;EAChC,MAAMC,IAAI,GAAGjB,MAAM,CAACkB,MAAM,CAACL,YAAY,CAAC;EACxCI,IAAI,CAACE,QAAQ,GAAGH,OAAO,CAACG,QAAQ;EAChCF,IAAI,CAACG,KAAK,GAAGJ,OAAO,CAACI,KAAK;EAC1BH,IAAI,CAACI,QAAQ,GAAGL,OAAO,CAACK,QAAQ;EAChCJ,IAAI,CAACK,QAAQ,GAAGN,OAAO,CAACM,QAAQ;EAChCL,IAAI,CAACM,aAAa,GAAGP,OAAO,CAACO,aAAa;EAC1CN,IAAI,CAACO,KAAK,GAAG,CAAC;IACZJ,KAAK,EAAEH,IAAI;IACXQ,KAAK,EAAEzC,MAAM,CAAC0C,IAAI,EAAE;IACpBC,QAAQ,EAAE3C,MAAM,CAAC0C,IAAI;GACtB,CAAC;EACF,OAAOT,IAAI;AACb,CAAC;AAAAR,OAAA,CAAAM,IAAA,GAAAA,IAAA","ignoreList":[]}
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.layer = exports.AiModels = void 0;
7
+ var Context = _interopRequireWildcard(require("effect/Context"));
8
+ var Effect = _interopRequireWildcard(require("effect/Effect"));
9
+ var Equal = _interopRequireWildcard(require("effect/Equal"));
10
+ var Hash = _interopRequireWildcard(require("effect/Hash"));
11
+ var Layer = _interopRequireWildcard(require("effect/Layer"));
12
+ var RcMap = _interopRequireWildcard(require("effect/RcMap"));
13
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
14
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
15
+ /**
16
+ * @since 1.0.0
17
+ */
18
+
19
+ /**
20
+ * @since 1.0.0
21
+ * @category tags
22
+ */
23
+ class AiModels extends /*#__PURE__*/Context.Tag("@effect/ai/AiModels")() {}
24
+ exports.AiModels = AiModels;
25
+ class AiModelsKey {
26
+ model;
27
+ service;
28
+ constructor(model, service) {
29
+ this.model = model;
30
+ this.service = service;
31
+ }
32
+ [Equal.symbol](that) {
33
+ return this.service === that.service && this.model.cacheKey === that.model.cacheKey;
34
+ }
35
+ [Hash.symbol]() {
36
+ return Hash.combine(Hash.hash(this.service))(Hash.hash(this.model.cacheKey));
37
+ }
38
+ }
39
+ const make = /*#__PURE__*/Effect.gen(function* () {
40
+ const services = yield* RcMap.make({
41
+ idleTimeToLive: "1 minute",
42
+ lookup: key => Effect.provideService(key.model.provides, key.model.requires, key.service)
43
+ });
44
+ const build = (model, context) => Effect.map(RcMap.get(services, new AiModelsKey(model, Context.get(context, model.requires))), context => model.updateContext(context));
45
+ return {
46
+ build
47
+ };
48
+ });
49
+ /**
50
+ * @since 1.0.0
51
+ * @category layers
52
+ */
53
+ const layer = exports.layer = /*#__PURE__*/Layer.scoped(AiModels, make);
54
+ //# sourceMappingURL=AiModels.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AiModels.js","names":["Context","_interopRequireWildcard","require","Effect","Equal","Hash","Layer","RcMap","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","AiModels","Tag","exports","AiModelsKey","model","service","constructor","symbol","that","cacheKey","combine","hash","make","gen","services","idleTimeToLive","lookup","key","provideService","provides","requires","build","context","map","updateContext","layer","scoped"],"sources":["../../src/AiModels.ts"],"sourcesContent":[null],"mappings":";;;;;;AAGA,IAAAA,OAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAF,uBAAA,CAAAC,OAAA;AACA,IAAAE,KAAA,GAAAH,uBAAA,CAAAC,OAAA;AACA,IAAAG,IAAA,GAAAJ,uBAAA,CAAAC,OAAA;AACA,IAAAI,KAAA,GAAAL,uBAAA,CAAAC,OAAA;AACA,IAAAK,KAAA,GAAAN,uBAAA,CAAAC,OAAA;AAAqC,SAAAM,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAR,wBAAAQ,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AARrC;;;;AAYA;;;;AAIM,MAAOW,QAAS,sBAAQ5B,OAAO,CAAC6B,GAAG,CAAC,qBAAqB,CAAC,EAG7D;AAAAC,OAAA,CAAAF,QAAA,GAAAA,QAAA;AAkBH,MAAMG,WAAW;EAEJC,KAAA;EACAC,OAAA;EAFXC,YACWF,KAAwB,EACxBC,OAAgB;IADhB,KAAAD,KAAK,GAALA,KAAK;IACL,KAAAC,OAAO,GAAPA,OAAO;EACf;EAEH,CAAC7B,KAAK,CAAC+B,MAAM,EAAEC,IAAiB;IAC9B,OAAO,IAAI,CAACH,OAAO,KAAKG,IAAI,CAACH,OAAO,IAAI,IAAI,CAACD,KAAK,CAACK,QAAQ,KAAKD,IAAI,CAACJ,KAAK,CAACK,QAAQ;EACrF;EACA,CAAChC,IAAI,CAAC8B,MAAM,IAAC;IACX,OAAO9B,IAAI,CAACiC,OAAO,CAACjC,IAAI,CAACkC,IAAI,CAAC,IAAI,CAACN,OAAO,CAAC,CAAC,CAAC5B,IAAI,CAACkC,IAAI,CAAC,IAAI,CAACP,KAAK,CAACK,QAAQ,CAAC,CAAC;EAC9E;;AAGF,MAAMG,IAAI,gBAAGrC,MAAM,CAACsC,GAAG,CAAC,aAAS;EAC/B,MAAMC,QAAQ,GAAG,OAAOnC,KAAK,CAACiC,IAAI,CAAC;IACjCG,cAAc,EAAE,UAAU;IAC1BC,MAAM,EAAGC,GAAgB,IAAK1C,MAAM,CAAC2C,cAAc,CAACD,GAAG,CAACb,KAAK,CAACe,QAAQ,EAAEF,GAAG,CAACb,KAAK,CAACgB,QAAQ,EAAEH,GAAG,CAACZ,OAAO;GACxG,CAAC;EAEF,MAAMgB,KAAK,GAAGA,CACZjB,KAAkC,EAClCkB,OAAkC,KAElC/C,MAAM,CAACgD,GAAG,CACR5C,KAAK,CAACS,GAAG,CACP0B,QAAQ,EACR,IAAIX,WAAW,CAACC,KAAK,EAAEhC,OAAO,CAACgB,GAAG,CAACkC,OAAO,EAAElB,KAAK,CAACgB,QAAe,CAAC,CAAC,CACpE,EACAE,OAAO,IAAKlB,KAAK,CAACoB,aAAa,CAACF,OAAO,CAAC,CAC1C;EAEH,OAAO;IAAED;EAAK,CAAW;AAC3B,CAAC,CAAC;AAEF;;;;AAIO,MAAMI,KAAK,GAAAvB,OAAA,CAAAuB,KAAA,gBAA0B/C,KAAK,CAACgD,MAAM,CAAC1B,QAAQ,EAAEY,IAAI,CAAC","ignoreList":[]}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.withFallback = exports.fromModel = exports.concatSteps = exports.TypeId = void 0;
7
+ var Internal = _interopRequireWildcard(require("./internal/aiPlan.js"));
8
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
9
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
10
+ /**
11
+ * @since 1.0.0
12
+ * @category type ids
13
+ */
14
+ const TypeId = exports.TypeId = Internal.TypeId;
15
+ /**
16
+ * @since 1.0.0
17
+ * @category constructors
18
+ */
19
+ const fromModel = exports.fromModel = Internal.fromModel;
20
+ /**
21
+ * @since 1.0.0
22
+ * @category error handling
23
+ */
24
+ const withFallback = exports.withFallback = Internal.withFallback;
25
+ /**
26
+ * @since 1.0.0
27
+ * @category combination
28
+ */
29
+ const concatSteps = exports.concatSteps = Internal.concatSteps;
30
+ //# sourceMappingURL=AiPlan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AiPlan.js","names":["Internal","_interopRequireWildcard","require","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","TypeId","exports","fromModel","withFallback","concatSteps"],"sources":["../../src/AiPlan.ts"],"sourcesContent":[null],"mappings":";;;;;;AAWA,IAAAA,QAAA,GAAAC,uBAAA,CAAAC,OAAA;AAAgD,SAAAC,yBAAAC,CAAA,6BAAAC,OAAA,mBAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAF,wBAAA,YAAAA,CAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAH,wBAAAG,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,WAAAK,OAAA,EAAAL,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAG,GAAA,CAAAN,CAAA,UAAAG,CAAA,CAAAI,GAAA,CAAAP,CAAA,OAAAQ,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,MAAA,CAAAC,cAAA,IAAAD,MAAA,CAAAE,wBAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,OAAAC,cAAA,CAAAC,IAAA,CAAAhB,CAAA,EAAAc,CAAA,SAAAG,CAAA,GAAAP,CAAA,GAAAC,MAAA,CAAAE,wBAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAG,CAAA,KAAAA,CAAA,CAAAV,GAAA,IAAAU,CAAA,CAAAC,GAAA,IAAAP,MAAA,CAAAC,cAAA,CAAAJ,CAAA,EAAAM,CAAA,EAAAG,CAAA,IAAAT,CAAA,CAAAM,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAN,CAAA,CAAAH,OAAA,GAAAL,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAe,GAAA,CAAAlB,CAAA,EAAAQ,CAAA,GAAAA,CAAA;AAEhD;;;;AAIO,MAAMW,MAAM,GAAAC,OAAA,CAAAD,MAAA,GAAkBvB,QAAQ,CAACuB,MAAM;AAmEpD;;;;AAIO,MAAME,SAAS,GAAAD,OAAA,CAAAC,SAAA,GAO+BzB,QAAQ,CAACyB,SAAS;AAEvE;;;;AAIO,MAAMC,YAAY,GAAAF,OAAA,CAAAE,YAAA,GA4BrB1B,QAAQ,CAAC0B,YAAY;AAEzB;;;;AAIO,MAAMC,WAAW,GAAAH,OAAA,CAAAG,WAAA,GAgBpB3B,QAAQ,CAAC2B,WAAW","ignoreList":[]}
package/dist/cjs/index.js CHANGED
@@ -3,13 +3,19 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.Tokenizer = exports.Embeddings = exports.Completions = exports.AiToolkit = exports.AiTelemetry = exports.AiRole = exports.AiResponse = exports.AiInput = exports.AiError = exports.AiChat = void 0;
6
+ exports.Tokenizer = exports.Embeddings = exports.Completions = exports.AiToolkit = exports.AiTelemetry = exports.AiRole = exports.AiResponse = exports.AiPlan = exports.AiModels = exports.AiModel = exports.AiInput = exports.AiError = exports.AiChat = void 0;
7
7
  var _AiChat = _interopRequireWildcard(require("./AiChat.js"));
8
8
  exports.AiChat = _AiChat;
9
9
  var _AiError = _interopRequireWildcard(require("./AiError.js"));
10
10
  exports.AiError = _AiError;
11
11
  var _AiInput = _interopRequireWildcard(require("./AiInput.js"));
12
12
  exports.AiInput = _AiInput;
13
+ var _AiModel = _interopRequireWildcard(require("./AiModel.js"));
14
+ exports.AiModel = _AiModel;
15
+ var _AiModels = _interopRequireWildcard(require("./AiModels.js"));
16
+ exports.AiModels = _AiModels;
17
+ var _AiPlan = _interopRequireWildcard(require("./AiPlan.js"));
18
+ exports.AiPlan = _AiPlan;
13
19
  var _AiResponse = _interopRequireWildcard(require("./AiResponse.js"));
14
20
  exports.AiResponse = _AiResponse;
15
21
  var _AiRole = _interopRequireWildcard(require("./AiRole.js"));
@@ -0,0 +1,91 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.withFallback = exports.fromModel = exports.concatSteps = exports.TypeId = exports.PlanPrototype = void 0;
7
+ var Cause = _interopRequireWildcard(require("effect/Cause"));
8
+ var Context = _interopRequireWildcard(require("effect/Context"));
9
+ var Effect = _interopRequireWildcard(require("effect/Effect"));
10
+ var _Effectable = require("effect/Effectable");
11
+ var Exit = _interopRequireWildcard(require("effect/Exit"));
12
+ var _Function = require("effect/Function");
13
+ var Option = _interopRequireWildcard(require("effect/Option"));
14
+ var _Pipeable = require("effect/Pipeable");
15
+ var Predicate = _interopRequireWildcard(require("effect/Predicate"));
16
+ var Schedule = _interopRequireWildcard(require("effect/Schedule"));
17
+ var Scope = _interopRequireWildcard(require("effect/Scope"));
18
+ var _AiModels = require("../AiModels.js");
19
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
20
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
21
+ /** @internal */
22
+ const TypeId = exports.TypeId = /*#__PURE__*/Symbol.for("@effect/ai/AiPlan");
23
+ /** @internal */
24
+ const PlanPrototype = exports.PlanPrototype = {
25
+ ..._Effectable.CommitPrototype,
26
+ [TypeId]: TypeId,
27
+ commit() {
28
+ return buildPlan(this);
29
+ },
30
+ pipe() {
31
+ return (0, _Pipeable.pipeArguments)(this, arguments);
32
+ }
33
+ };
34
+ const makePlan = steps => {
35
+ const self = Object.create(PlanPrototype);
36
+ self.steps = steps;
37
+ return self;
38
+ };
39
+ const buildPlan = plan => Effect.map(Effect.context(), context => {
40
+ const models = Context.get(context, _AiModels.AiModels);
41
+ return Effect.fnUntraced(function* (effect) {
42
+ let exit = undefined;
43
+ for (const step of plan.steps) {
44
+ if (exit !== undefined && Exit.isFailure(exit) && Option.isSome(step.check)) {
45
+ const check = step.check.value(Cause.squash(exit.cause));
46
+ const isFatalError = !(Effect.isEffect(check) ? yield* check : check);
47
+ if (isFatalError) break;
48
+ }
49
+ const retryOptions = getRetryOptions(step);
50
+ exit = yield* Effect.scopedWith(scope => models.build(step.model, context).pipe(Scope.extend(scope), Effect.flatMap(context => effect.pipe(Option.isSome(retryOptions) ? Effect.retry(retryOptions.value) : _Function.identity, Effect.provide(context))), Effect.exit));
51
+ if (Exit.isSuccess(exit)) break;
52
+ }
53
+ return yield* exit;
54
+ });
55
+ });
56
+ const getRetryOptions = step => {
57
+ if (Option.isNone(step.schedule) && Option.isNone(step.check)) {
58
+ return Option.none();
59
+ }
60
+ return Option.some({
61
+ schedule: Option.getOrUndefined(step.schedule),
62
+ while: Option.getOrUndefined(step.check)
63
+ });
64
+ };
65
+ /** @internal */
66
+ const fromModel = (model, options) => makePlan([{
67
+ model,
68
+ check: Option.fromNullable(options?.while),
69
+ schedule: resolveSchedule(options ?? {})
70
+ }]);
71
+ /** @internal */
72
+ exports.fromModel = fromModel;
73
+ const withFallback = exports.withFallback = /*#__PURE__*/(0, _Function.dual)(2, (self, options) => makePlan([...self.steps, {
74
+ model: options.model,
75
+ check: Option.fromNullable(options.while),
76
+ schedule: resolveSchedule(options)
77
+ }]));
78
+ const resolveSchedule = options => {
79
+ if (Predicate.isUndefined(options.attempts) && Predicate.isUndefined(options.schedule)) return Option.none();
80
+ let schedule = options.schedule ?? Schedule.forever;
81
+ if (Predicate.isNotUndefined(options.attempts)) {
82
+ // In an `AiPlan`, the `attempts` represents the total number of times to
83
+ // attempt the call, not the number of retries, thus we subtract one from
84
+ // the total number of recurrences
85
+ schedule = Schedule.intersect(schedule, Schedule.recurs(options.attempts - 1));
86
+ }
87
+ return Option.some(schedule);
88
+ };
89
+ /** @internal */
90
+ const concatSteps = exports.concatSteps = /*#__PURE__*/(0, _Function.dual)(2, (self, other) => makePlan([...self.steps, ...other.steps]));
91
+ //# sourceMappingURL=aiPlan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aiPlan.js","names":["Cause","_interopRequireWildcard","require","Context","Effect","_Effectable","Exit","_Function","Option","_Pipeable","Predicate","Schedule","Scope","_AiModels","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","TypeId","exports","Symbol","for","PlanPrototype","CommitPrototype","commit","buildPlan","pipe","pipeArguments","arguments","makePlan","steps","self","create","plan","map","context","models","AiModels","fnUntraced","effect","exit","undefined","step","isFailure","isSome","check","value","squash","cause","isFatalError","isEffect","retryOptions","getRetryOptions","scopedWith","scope","build","model","extend","flatMap","retry","identity","provide","isSuccess","isNone","schedule","none","some","getOrUndefined","while","fromModel","options","fromNullable","resolveSchedule","withFallback","dual","isUndefined","attempts","forever","isNotUndefined","intersect","recurs","concatSteps","other"],"sources":["../../../src/internal/aiPlan.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -18,7 +18,7 @@ declare const AiError_base: Schema.TaggedErrorClass<AiError, "AiError", {
18
18
  module: typeof Schema.String;
19
19
  method: typeof Schema.String;
20
20
  description: typeof Schema.String;
21
- cause: Schema.optional<Schema.Defect>;
21
+ cause: Schema.optional<typeof Schema.Defect>;
22
22
  }>;
23
23
  /**
24
24
  * @since 1.0.0
@@ -0,0 +1,61 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import type * as Context from "effect/Context";
5
+ import type * as Effect from "effect/Effect";
6
+ import type * as Scope from "effect/Scope";
7
+ import type * as AiPlan from "./AiPlan.js";
8
+ /**
9
+ * @since 1.0.0
10
+ * @category type ids
11
+ */
12
+ export declare const TypeId: unique symbol;
13
+ /**
14
+ * @since 1.0.0
15
+ * @category type ids
16
+ */
17
+ export type TypeId = typeof TypeId;
18
+ /**
19
+ * @since 1.0.0
20
+ * @category type ids
21
+ */
22
+ export declare const PlanTypeId: unique symbol;
23
+ /**
24
+ * @since 1.0.0
25
+ * @category type ids
26
+ */
27
+ export type PlanTypeId = typeof TypeId;
28
+ /**
29
+ * @since 1.0.0
30
+ * @category models
31
+ */
32
+ export interface AiModel<in out Provides, in out Requires> extends AiPlan.AiPlan<unknown, Provides, Requires> {
33
+ readonly [TypeId]: TypeId;
34
+ readonly model: string;
35
+ readonly cacheKey: symbol;
36
+ readonly requires: Context.Tag<Requires, any>;
37
+ readonly provides: AiModel.ContextBuilder<Provides, Requires>;
38
+ readonly updateContext: (context: Context.Context<Provides>) => Context.Context<Provides>;
39
+ }
40
+ /**
41
+ * @since 1.0.0
42
+ */
43
+ export declare namespace AiModel {
44
+ /**
45
+ * @since 1.0.0
46
+ * @category AiModel
47
+ */
48
+ type ContextBuilder<Provides, Requires> = Effect.Effect<Context.Context<Provides>, never, Requires | Scope.Scope>;
49
+ }
50
+ /**
51
+ * @since 1.0.0
52
+ * @category constructors
53
+ */
54
+ export declare const make: <Provides, Requires>(options: {
55
+ readonly model: string;
56
+ readonly cacheKey: symbol;
57
+ readonly requires: Context.Tag<Requires, any>;
58
+ readonly provides: AiModel.ContextBuilder<Provides, Requires>;
59
+ readonly updateContext: (context: Context.Context<Provides>) => Context.Context<Provides>;
60
+ }) => AiModel<Provides, Requires>;
61
+ //# sourceMappingURL=AiModel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AiModel.d.ts","sourceRoot":"","sources":["../../src/AiModel.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,OAAO,MAAM,gBAAgB,CAAA;AAC9C,OAAO,KAAK,KAAK,MAAM,MAAM,eAAe,CAAA;AAE5C,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,KAAK,MAAM,MAAM,aAAa,CAAA;AAG1C;;;GAGG;AACH,eAAO,MAAM,MAAM,EAAE,OAAO,MAAyC,CAAA;AAErE;;;GAGG;AACH,MAAM,MAAM,MAAM,GAAG,OAAO,MAAM,CAAA;AAElC;;;GAGG;AACH,eAAO,MAAM,UAAU,EAAE,OAAO,MAAsC,CAAA;AAEtE;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,OAAO,MAAM,CAAA;AAEtC;;;GAGG;AACH,MAAM,WAAW,OAAO,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAE,SAAQ,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,CAAC;IAC3G,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;IAC7C,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAC7D,QAAQ,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;CAC1F;AAED;;GAEG;AACH,MAAM,CAAC,OAAO,WAAW,OAAO,CAAC;IAC/B;;;OAGG;IACH,KAAY,cAAc,CAAC,QAAQ,EAAE,QAAQ,IAAI,MAAM,CAAC,MAAM,CAC5D,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EACzB,KAAK,EACL,QAAQ,GAAG,KAAK,CAAC,KAAK,CACvB,CAAA;CACF;AAOD;;;GAGG;AACH,eAAO,MAAM,IAAI,GAAI,QAAQ,EAAE,QAAQ,WAAW;IAChD,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAA;IAC7C,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;IAC7D,QAAQ,CAAC,aAAa,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;CAC1F,KAAG,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAa7B,CAAA"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import * as Context from "effect/Context";
5
+ import * as Effect from "effect/Effect";
6
+ import * as Layer from "effect/Layer";
7
+ import type * as Scope from "effect/Scope";
8
+ import type { AiModel } from "./AiModel.js";
9
+ declare const AiModels_base: Context.TagClass<AiModels, "@effect/ai/AiModels", AiModels.Service>;
10
+ /**
11
+ * @since 1.0.0
12
+ * @category tags
13
+ */
14
+ export declare class AiModels extends AiModels_base {
15
+ }
16
+ /**
17
+ * @since 1.0.0
18
+ */
19
+ export declare namespace AiModels {
20
+ /**
21
+ * @since 1.0.0
22
+ * @category models
23
+ */
24
+ interface Service {
25
+ readonly build: <Provides, Requires>(model: AiModel<Provides, Requires>, context: Context.Context<Requires>) => Effect.Effect<Context.Context<Provides>, never, Scope.Scope>;
26
+ }
27
+ }
28
+ /**
29
+ * @since 1.0.0
30
+ * @category layers
31
+ */
32
+ export declare const layer: Layer.Layer<AiModels>;
33
+ export {};
34
+ //# sourceMappingURL=AiModels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AiModels.d.ts","sourceRoot":"","sources":["../../src/AiModels.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,OAAO,MAAM,gBAAgB,CAAA;AACzC,OAAO,KAAK,MAAM,MAAM,eAAe,CAAA;AAGvC,OAAO,KAAK,KAAK,MAAM,cAAc,CAAA;AAErC,OAAO,KAAK,KAAK,KAAK,MAAM,cAAc,CAAA;AAC1C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAA;;AAE3C;;;GAGG;AACH,qBAAa,QAAS,SAAQ,aAG3B;CAAG;AAEN;;GAEG;AACH,MAAM,CAAC,OAAO,WAAW,QAAQ,CAAC;IAChC;;;OAGG;IACH,UAAiB,OAAO;QACtB,QAAQ,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,QAAQ,EACjC,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,EAClC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,KAC/B,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;KAClE;CACF;AAqCD;;;GAGG;AACH,eAAO,MAAM,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAgC,CAAA"}
@@ -0,0 +1,126 @@
1
+ /**
2
+ * @since 1.0.0
3
+ */
4
+ import type { NonEmptyReadonlyArray } from "effect/Array";
5
+ import type * as Effect from "effect/Effect";
6
+ import type * as Option from "effect/Option";
7
+ import type { Pipeable } from "effect/Pipeable";
8
+ import type * as Schedule from "effect/Schedule";
9
+ import type * as Unify from "effect/Unify";
10
+ import type * as AiModel from "./AiModel.js";
11
+ import type { AiModels } from "./AiModels.js";
12
+ /**
13
+ * @since 1.0.0
14
+ * @category type ids
15
+ */
16
+ export declare const TypeId: unique symbol;
17
+ /**
18
+ * @since 1.0.0
19
+ * @category type ids
20
+ */
21
+ export type TypeId = typeof TypeId;
22
+ /**
23
+ * @since 1.0.0
24
+ * @category AiPlan
25
+ */
26
+ export interface AiPlan<in Error, in out Provides, in out Requires> extends Pipeable, AiPlan.Builder<Provides, Requires> {
27
+ readonly [TypeId]: TypeId;
28
+ readonly [Unify.typeSymbol]?: unknown;
29
+ readonly [Unify.unifySymbol]?: AiPlanUnify<this>;
30
+ readonly [Unify.ignoreSymbol]?: AiPlanUnifyIgnore;
31
+ readonly steps: NonEmptyReadonlyArray<AiPlan.Step<Error, Provides, Requires>>;
32
+ }
33
+ /**
34
+ * @since 1.0.0
35
+ * @category Plan
36
+ */
37
+ export interface AiPlanUnify<A extends {
38
+ [Unify.typeSymbol]?: any;
39
+ }> extends Effect.EffectUnify<A> {
40
+ AiPlan?: () => Extract<A[Unify.typeSymbol], AiPlan<any, any, any>>;
41
+ }
42
+ /**
43
+ * @since 1.0.0
44
+ * @category Plan
45
+ */
46
+ export interface AiPlanUnifyIgnore extends Effect.EffectUnifyIgnore {
47
+ Effect?: true;
48
+ }
49
+ /**
50
+ * @since 1.0.0
51
+ */
52
+ export declare namespace AiPlan {
53
+ /**
54
+ * @since 1.0.0
55
+ * @category AiPlan
56
+ */
57
+ type Builder<Provides, Requires> = Effect.Effect<Provider<Provides>, never, AiModels | Requires>;
58
+ /**
59
+ * @since 1.0.0
60
+ * @category AiPlan
61
+ */
62
+ interface Provider<Provides> {
63
+ readonly provide: <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, Exclude<R, Provides>>;
64
+ }
65
+ /**
66
+ * @since 1.0.0
67
+ * @category AiPlan
68
+ */
69
+ interface Step<Error, Provides, Requires> {
70
+ readonly model: AiModel.AiModel<Provides, Requires>;
71
+ readonly check: Option.Option<(error: Error) => boolean | Effect.Effect<boolean>>;
72
+ readonly schedule: Option.Option<Schedule.Schedule<any, Error, Requires>>;
73
+ }
74
+ }
75
+ /**
76
+ * @since 1.0.0
77
+ * @category constructors
78
+ */
79
+ export declare const fromModel: <Provides, Requires, EW, Out, ES, RW = never, RS = never>(model: AiModel.AiModel<Provides, Requires>, options?: {
80
+ readonly attempts?: number | undefined;
81
+ readonly while?: ((error: EW) => boolean | Effect.Effect<boolean, never, RW>) | undefined;
82
+ readonly schedule?: Schedule.Schedule<Out, ES, RS> | undefined;
83
+ }) => AiPlan<EW & ES, Provides, RW | RS | Requires>;
84
+ /**
85
+ * @since 1.0.0
86
+ * @category error handling
87
+ */
88
+ export declare const withFallback: {
89
+ /**
90
+ * @since 1.0.0
91
+ * @category error handling
92
+ */
93
+ <Provides, Provides2 extends Provides, Requires2, Out, EW, ES, RW = never, RS = never>(options: {
94
+ readonly model: AiModel.AiModel<Provides2, Requires2>;
95
+ readonly attempts?: number | undefined;
96
+ readonly while?: ((error: EW) => boolean | Effect.Effect<boolean, never, RW>) | undefined;
97
+ readonly schedule?: Schedule.Schedule<Out, ES, RS> | undefined;
98
+ }): <E, Requires>(self: AiPlan<E, Provides, Requires>) => AiPlan<E & EW & ES, Provides & Provides2, Requires | Requires2 | RW | RS>;
99
+ /**
100
+ * @since 1.0.0
101
+ * @category error handling
102
+ */
103
+ <E, Provides, Requires, Provides2 extends Provides, Requires2, Out, EW, ES, RW = never, RS = never>(self: AiPlan<E, Provides, Requires>, options: {
104
+ readonly model: AiModel.AiModel<Provides2, Requires2>;
105
+ readonly attempts?: number | undefined;
106
+ readonly while?: ((error: EW) => boolean | Effect.Effect<boolean, never, RW>) | undefined;
107
+ readonly schedule?: Schedule.Schedule<Out, ES, RS> | undefined;
108
+ }): AiPlan<E & EW & ES, Provides & Provides2, Requires | Requires2 | RW | RS>;
109
+ };
110
+ /**
111
+ * @since 1.0.0
112
+ * @category combination
113
+ */
114
+ export declare const concatSteps: {
115
+ /**
116
+ * @since 1.0.0
117
+ * @category combination
118
+ */
119
+ <Error2, Provides2, Requires2>(other: AiPlan<Error2, Provides2, Requires2>): <Error, Provides, Requires>(self: AiPlan<Error, Provides, Requires>) => AiPlan<Error & Error2, Provides & Provides2, Requires | Requires2>;
120
+ /**
121
+ * @since 1.0.0
122
+ * @category combination
123
+ */
124
+ <Error, Provides, Requires, Error2, Provides2, Requires2>(self: AiPlan<Error, Provides, Requires>, other: AiPlan<Error2, Provides2, Requires2>): AiPlan<Error & Error2, Provides & Provides2, Requires | Requires2>;
125
+ };
126
+ //# sourceMappingURL=AiPlan.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AiPlan.d.ts","sourceRoot":"","sources":["../../src/AiPlan.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,18 @@ export * as AiError from "./AiError.js";
10
10
  * @since 1.0.0
11
11
  */
12
12
  export * as AiInput from "./AiInput.js";
13
+ /**
14
+ * @since 1.0.0
15
+ */
16
+ export * as AiModel from "./AiModel.js";
17
+ /**
18
+ * @since 1.0.0
19
+ */
20
+ export * as AiModels from "./AiModels.js";
21
+ /**
22
+ * @since 1.0.0
23
+ */
24
+ export * as AiPlan from "./AiPlan.js";
13
25
  /**
14
26
  * @since 1.0.0
15
27
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC;;GAEG;AACH,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AAEvC;;GAEG;AACH,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AAEvC;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC;;GAEG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C;;GAEG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C;;GAEG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC;;GAEG;AACH,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AAEvC;;GAEG;AACH,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AAEvC;;GAEG;AACH,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AAEvC;;GAEG;AACH,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAEzC;;GAEG;AACH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC;;GAEG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C;;GAEG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C;;GAEG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C;;GAEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA;AAE7C;;GAEG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=aiPlan.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aiPlan.d.ts","sourceRoot":"","sources":["../../../src/internal/aiPlan.ts"],"names":[],"mappings":""}
@@ -0,0 +1,35 @@
1
+ import * as Option from "effect/Option";
2
+ import * as InternalAiPlan from "./internal/aiPlan.js";
3
+ /**
4
+ * @since 1.0.0
5
+ * @category type ids
6
+ */
7
+ export const TypeId = /*#__PURE__*/Symbol.for("@effect/ai/AiModel");
8
+ /**
9
+ * @since 1.0.0
10
+ * @category type ids
11
+ */
12
+ export const PlanTypeId = /*#__PURE__*/Symbol.for("@effect/ai/Plan");
13
+ const AiModelProto = {
14
+ ...InternalAiPlan.PlanPrototype,
15
+ [TypeId]: TypeId
16
+ };
17
+ /**
18
+ * @since 1.0.0
19
+ * @category constructors
20
+ */
21
+ export const make = options => {
22
+ const self = Object.create(AiModelProto);
23
+ self.cacheKey = options.cacheKey;
24
+ self.model = options.model;
25
+ self.provides = options.provides;
26
+ self.requires = options.requires;
27
+ self.updateContext = options.updateContext;
28
+ self.steps = [{
29
+ model: self,
30
+ check: Option.none(),
31
+ schedule: Option.none()
32
+ }];
33
+ return self;
34
+ };
35
+ //# sourceMappingURL=AiModel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AiModel.js","names":["Option","InternalAiPlan","TypeId","Symbol","for","PlanTypeId","AiModelProto","PlanPrototype","make","options","self","Object","create","cacheKey","model","provides","requires","updateContext","steps","check","none","schedule"],"sources":["../../src/AiModel.ts"],"sourcesContent":[null],"mappings":"AAKA,OAAO,KAAKA,MAAM,MAAM,eAAe;AAGvC,OAAO,KAAKC,cAAc,MAAM,sBAAsB;AAEtD;;;;AAIA,OAAO,MAAMC,MAAM,gBAAkBC,MAAM,CAACC,GAAG,CAAC,oBAAoB,CAAC;AAQrE;;;;AAIA,OAAO,MAAMC,UAAU,gBAAkBF,MAAM,CAACC,GAAG,CAAC,iBAAiB,CAAC;AAoCtE,MAAME,YAAY,GAAG;EACnB,GAAGL,cAAc,CAACM,aAAa;EAC/B,CAACL,MAAM,GAAGA;CACX;AAED;;;;AAIA,OAAO,MAAMM,IAAI,GAAwBC,OAMxC,IAAiC;EAChC,MAAMC,IAAI,GAAGC,MAAM,CAACC,MAAM,CAACN,YAAY,CAAC;EACxCI,IAAI,CAACG,QAAQ,GAAGJ,OAAO,CAACI,QAAQ;EAChCH,IAAI,CAACI,KAAK,GAAGL,OAAO,CAACK,KAAK;EAC1BJ,IAAI,CAACK,QAAQ,GAAGN,OAAO,CAACM,QAAQ;EAChCL,IAAI,CAACM,QAAQ,GAAGP,OAAO,CAACO,QAAQ;EAChCN,IAAI,CAACO,aAAa,GAAGR,OAAO,CAACQ,aAAa;EAC1CP,IAAI,CAACQ,KAAK,GAAG,CAAC;IACZJ,KAAK,EAAEJ,IAAI;IACXS,KAAK,EAAEnB,MAAM,CAACoB,IAAI,EAAE;IACpBC,QAAQ,EAAErB,MAAM,CAACoB,IAAI;GACtB,CAAC;EACF,OAAOV,IAAI;AACb,CAAC","ignoreList":[]}