@effect/ai 0.28.2 → 0.28.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.
@@ -51,6 +51,7 @@
51
51
  *
52
52
  * @since 1.0.0
53
53
  */
54
+ import * as Arbitrary from "effect/Arbitrary";
54
55
  import * as Arr from "effect/Array";
55
56
  import { constFalse, dual } from "effect/Function";
56
57
  import * as ParseResult from "effect/ParseResult";
@@ -369,7 +370,8 @@ export const isPrompt = u => Predicate.hasProperty(u, TypeId);
369
370
  */
370
371
  export class PromptFromSelf extends /*#__PURE__*/Schema.declare(u => isPrompt(u), {
371
372
  identifier: "PromptFromSelf",
372
- description: "a Prompt instance"
373
+ description: "a Prompt instance",
374
+ arbitrary: () => fc => fc.array(Arbitrary.makeLazy(Message)(fc)).map(makePrompt)
373
375
  }) {}
374
376
  /**
375
377
  * Schema for validation and encoding of prompts.
@@ -567,13 +569,14 @@ export const fromResponseParts = parts => {
567
569
  if (parts.length === 0) {
568
570
  return empty;
569
571
  }
570
- const content = [];
572
+ const assistantParts = [];
573
+ const toolParts = [];
571
574
  const textDeltas = [];
572
575
  function flushTextDeltas() {
573
576
  if (textDeltas.length > 0) {
574
577
  const text = textDeltas.join("");
575
578
  if (text.length > 0) {
576
- content.push(makePart("text", {
579
+ assistantParts.push(makePart("text", {
577
580
  text
578
581
  }));
579
582
  }
@@ -585,7 +588,7 @@ export const fromResponseParts = parts => {
585
588
  if (reasoningDeltas.length > 0) {
586
589
  const text = reasoningDeltas.join("");
587
590
  if (text.length > 0) {
588
- content.push(makePart("reasoning", {
591
+ assistantParts.push(makePart("reasoning", {
589
592
  text
590
593
  }));
591
594
  }
@@ -602,7 +605,7 @@ export const fromResponseParts = parts => {
602
605
  case "text":
603
606
  {
604
607
  flushDeltas();
605
- content.push(makePart("text", {
608
+ assistantParts.push(makePart("text", {
606
609
  text: part.text
607
610
  }));
608
611
  break;
@@ -616,7 +619,7 @@ export const fromResponseParts = parts => {
616
619
  case "reasoning":
617
620
  {
618
621
  flushDeltas();
619
- content.push(makePart("reasoning", {
622
+ assistantParts.push(makePart("reasoning", {
620
623
  text: part.text
621
624
  }));
622
625
  break;
@@ -630,7 +633,7 @@ export const fromResponseParts = parts => {
630
633
  case "tool-call":
631
634
  {
632
635
  flushDeltas();
633
- content.push(makePart("tool-call", {
636
+ assistantParts.push(makePart("tool-call", {
634
637
  id: part.id,
635
638
  name: part.providerName ?? part.name,
636
639
  params: part.params,
@@ -641,7 +644,7 @@ export const fromResponseParts = parts => {
641
644
  case "tool-result":
642
645
  {
643
646
  flushDeltas();
644
- content.push(makePart("tool-result", {
647
+ toolParts.push(makePart("tool-result", {
645
648
  id: part.id,
646
649
  name: part.providerName ?? part.name,
647
650
  result: part.encodedResult
@@ -652,10 +655,21 @@ export const fromResponseParts = parts => {
652
655
  }
653
656
  }
654
657
  flushDeltas();
655
- const message = makeMessage("assistant", {
656
- content
657
- });
658
- return makePrompt([message]);
658
+ if (assistantParts.length === 0 && toolParts.length === 0) {
659
+ return empty;
660
+ }
661
+ const messages = [];
662
+ if (assistantParts.length > 0) {
663
+ messages.push(makeMessage("assistant", {
664
+ content: assistantParts
665
+ }));
666
+ }
667
+ if (toolParts.length > 0) {
668
+ messages.push(makeMessage("tool", {
669
+ content: toolParts
670
+ }));
671
+ }
672
+ return makePrompt(messages);
659
673
  };
660
674
  // =============================================================================
661
675
  // Merging Prompts
@@ -681,7 +695,16 @@ export const fromResponseParts = parts => {
681
695
  * @since 1.0.0
682
696
  * @category Combinators
683
697
  */
684
- export const merge = /*#__PURE__*/dual(2, (self, other) => fromMessages([...self.content, ...make(other).content]));
698
+ export const merge = /*#__PURE__*/dual(2, (self, input) => {
699
+ const other = make(input);
700
+ if (self.content.length === 0) {
701
+ return other;
702
+ }
703
+ if (other.content.length === 0) {
704
+ return self;
705
+ }
706
+ return fromMessages([...self.content, ...other.content]);
707
+ });
685
708
  // =============================================================================
686
709
  // Manipulating Prompts
687
710
  // =============================================================================
@@ -1 +1 @@
1
- {"version":3,"file":"Prompt.js","names":["Arr","constFalse","dual","ParseResult","pipeArguments","Predicate","Schema","constEmptyObject","ProviderOptions","Record","key","String","value","UndefinedOr","Unknown","PartTypeId","isPart","u","hasProperty","makePart","type","params","options","TextPart","Struct","Literal","text","optionalWith","default","pipe","attachPropertySignature","annotations","identifier","ReasoningPart","FilePart","mediaType","fileName","optional","data","Union","Uint8ArrayFromSelf","URLFromSelf","ToolCallPart","id","name","providerExecuted","Boolean","ToolResultPart","result","MessageTypeId","isMessage","makeMessage","role","MessageContentFromString","transform","NonEmptyArray","typeSchema","strict","decode","of","encode","content","SystemMessage","UserMessage","Array","AssistantMessage","ToolMessage","Message","TypeId","isPrompt","PromptFromSelf","declare","description","Prompt","transformOrFail","encodedSchema","i","_","ast","decodePrompt","a","encodePrompt","decodeMessages","decodeEither","encodeMessages","encodeEither","input","mapBoth","onFailure","Type","JSON","stringify","onSuccess","makePrompt","messages","FromJson","parseJson","Proto","arguments","Object","assign","create","decodeMessagesSync","decodeSync","empty","make","isString","part","message","isIterable","fromIterable","errors","fromMessages","VALID_RESPONSE_PART_MAP","isValidPart","fromResponseParts","parts","length","textDeltas","flushTextDeltas","join","push","reasoningDeltas","flushReasoningDeltas","flushDeltas","delta","providerName","encodedResult","merge","self","other","setSystem","prependSystem","system","appendSystem"],"sources":["../../src/Prompt.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqDA,OAAO,KAAKA,GAAG,MAAM,cAAc;AACnC,SAASC,UAAU,EAAEC,IAAI,QAAQ,iBAAiB;AAClD,OAAO,KAAKC,WAAW,MAAM,oBAAoB;AACjD,SAAwBC,aAAa,QAAQ,iBAAiB;AAC9D,OAAO,KAAKC,SAAS,MAAM,kBAAkB;AAC7C,OAAO,KAAKC,MAAM,MAAM,eAAe;AAIvC,MAAMC,gBAAgB,GAAGA,CAAA,MAAO,EAAE,CAAC;AAEnC;AACA;AACA;AAEA;;;;;;;;;;;;;;;;;AAiBA,OAAO,MAAMC,eAAe,gBAAGF,MAAM,CAACG,MAAM,CAAC;EAC3CC,GAAG,EAAEJ,MAAM,CAACK,MAAM;EAClBC,KAAK,eAAEN,MAAM,CAACO,WAAW,cACvBP,MAAM,CAACG,MAAM,CAAC;IACZC,GAAG,EAAEJ,MAAM,CAACK,MAAM;IAClBC,KAAK,EAAEN,MAAM,CAACQ;GACf,CAAC;CAEL,CAAC;AAQF;AACA;AACA;AAEA;;;;;;AAMA,OAAO,MAAMC,UAAU,GAAG,wBAAwB;AAUlD;;;;;;AAMA,OAAO,MAAMC,MAAM,GAAIC,CAAU,IAAgBZ,SAAS,CAACa,WAAW,CAACD,CAAC,EAAEF,UAAU,CAAC;AA+DrF;;;;;;;;;;;;;;;;;;;;;AAqBA,OAAO,MAAMI,QAAQ,GAAGA;AACtB;;;AAGAC,IAAU;AACV;;;AAGAC,MAKC,MAEC;EACD,GAAGA,MAAM;EACT,CAACN,UAAU,GAAGA,UAAU;EACxBK,IAAI;EACJE,OAAO,EAAED,MAAM,CAACC,OAAO,IAAI;CAC3B,CAAS;AAoDZ;;;;;;AAMA,OAAO,MAAMC,QAAQ,gBAA6CjB,MAAM,CAACkB,MAAM,CAAC;EAC9EJ,IAAI,EAAEd,MAAM,CAACmB,OAAO,CAAC,MAAM,CAAC;EAC5BC,IAAI,EAAEpB,MAAM,CAACK,MAAM;EACnBW,OAAO,EAAEhB,MAAM,CAACqB,YAAY,CAACnB,eAAe,EAAE;IAAEoB,OAAO,EAAErB;EAAgB,CAAE;CAC5E,CAAC,CAACsB,IAAI,cACLvB,MAAM,CAACwB,uBAAuB,CAACf,UAAU,EAAEA,UAAU,CAAC,eACtDT,MAAM,CAACyB,WAAW,CAAC;EAAEC,UAAU,EAAE;AAAU,CAAE,CAAC,CAC/C;AAkDD;;;;;;AAMA,OAAO,MAAMC,aAAa,gBAAuD3B,MAAM,CAACkB,MAAM,CAAC;EAC7FJ,IAAI,EAAEd,MAAM,CAACmB,OAAO,CAAC,WAAW,CAAC;EACjCC,IAAI,EAAEpB,MAAM,CAACK,MAAM;EACnBW,OAAO,EAAEhB,MAAM,CAACqB,YAAY,CAACnB,eAAe,EAAE;IAAEoB,OAAO,EAAErB;EAAgB,CAAE;CAC5E,CAAC,CAACsB,IAAI,cACLvB,MAAM,CAACwB,uBAAuB,CAACf,UAAU,EAAEA,UAAU,CAAC,eACtDT,MAAM,CAACyB,WAAW,CAAC;EAAEC,UAAU,EAAE;AAAe,CAAE,CAAC,CACpD;AA6ED;;;;;;AAMA,OAAO,MAAME,QAAQ,gBAA6C5B,MAAM,CAACkB,MAAM,CAAC;EAC9EJ,IAAI,EAAEd,MAAM,CAACmB,OAAO,CAAC,MAAM,CAAC;EAC5BU,SAAS,EAAE7B,MAAM,CAACK,MAAM;EACxByB,QAAQ,EAAE9B,MAAM,CAAC+B,QAAQ,CAAC/B,MAAM,CAACK,MAAM,CAAC;EACxC2B,IAAI,EAAEhC,MAAM,CAACiC,KAAK,CAACjC,MAAM,CAACK,MAAM,EAAEL,MAAM,CAACkC,kBAAkB,EAAElC,MAAM,CAACmC,WAAW,CAAC;EAChFnB,OAAO,EAAEhB,MAAM,CAACqB,YAAY,CAACnB,eAAe,EAAE;IAAEoB,OAAO,EAAErB;EAAgB,CAAE;CAC5E,CAAC,CAACsB,IAAI,cACLvB,MAAM,CAACwB,uBAAuB,CAACf,UAAU,EAAEA,UAAU,CAAC,eACtDT,MAAM,CAACyB,WAAW,CAAC;EAAEC,UAAU,EAAE;AAAU,CAAE,CAAC,CAC/C;AA6ED;;;;;;AAMA,OAAO,MAAMU,YAAY,gBAAqDpC,MAAM,CAACkB,MAAM,CAAC;EAC1FJ,IAAI,EAAEd,MAAM,CAACmB,OAAO,CAAC,WAAW,CAAC;EACjCkB,EAAE,EAAErC,MAAM,CAACK,MAAM;EACjBiC,IAAI,EAAEtC,MAAM,CAACK,MAAM;EACnBU,MAAM,EAAEf,MAAM,CAACQ,OAAO;EACtB+B,gBAAgB,EAAEvC,MAAM,CAACqB,YAAY,CAACrB,MAAM,CAACwC,OAAO,EAAE;IAAElB,OAAO,EAAE3B;EAAU,CAAE,CAAC;EAC9EqB,OAAO,EAAEhB,MAAM,CAACqB,YAAY,CAACnB,eAAe,EAAE;IAAEoB,OAAO,EAAErB;EAAgB,CAAE;CAC5E,CAAC,CAACsB,IAAI,cACLvB,MAAM,CAACwB,uBAAuB,CAACf,UAAU,EAAEA,UAAU,CAAC,eACtDT,MAAM,CAACyB,WAAW,CAAC;EAAEC,UAAU,EAAE;AAAc,CAAE,CAAC,CACnD;AAwED;;;;;;AAMA,OAAO,MAAMe,cAAc,gBAAyDzC,MAAM,CAACkB,MAAM,CAAC;EAChGJ,IAAI,EAAEd,MAAM,CAACmB,OAAO,CAAC,aAAa,CAAC;EACnCkB,EAAE,EAAErC,MAAM,CAACK,MAAM;EACjBiC,IAAI,EAAEtC,MAAM,CAACK,MAAM;EACnBqC,MAAM,EAAE1C,MAAM,CAACQ,OAAO;EACtBQ,OAAO,EAAEhB,MAAM,CAACqB,YAAY,CAACnB,eAAe,EAAE;IAAEoB,OAAO,EAAErB;EAAgB,CAAE;CAC5E,CAAC,CAACsB,IAAI,cACLvB,MAAM,CAACwB,uBAAuB,CAACf,UAAU,EAAEA,UAAU,CAAC,eACtDT,MAAM,CAACyB,WAAW,CAAC;EAAEC,UAAU,EAAE;AAAgB,CAAE,CAAC,CACrD;AAED;AACA;AACA;AAEA;;;;;;AAMA,OAAO,MAAMiB,aAAa,GAAG,2BAA2B;AAUxD;;;;;;AAMA,OAAO,MAAMC,SAAS,GAAIjC,CAAU,IAAmBZ,SAAS,CAACa,WAAW,CAACD,CAAC,EAAEgC,aAAa,CAAC;AAyC9F;;;;;;;;;;;;;;;;;;;AAmBA,OAAO,MAAME,WAAW,GAAGA,CACzBC,IAAU,EACV/B,MAEC,MAEC;EACD,GAAGA,MAAM;EACT,CAAC4B,aAAa,GAAGA,aAAa;EAC9BG,IAAI;EACJ9B,OAAO,EAAED,MAAM,CAACC,OAAO,IAAI;CAC3B,CAAS;AAEZ;;;;;;;AAOA,OAAO,MAAM+B,wBAAwB,gBAGjC/C,MAAM,CAACgD,SAAS,CAAChD,MAAM,CAACK,MAAM,eAAEL,MAAM,CAACiD,aAAa,cAACjD,MAAM,CAACkD,UAAU,CAACjC,QAAQ,CAAC,CAAC,EAAE;EACrFkC,MAAM,EAAE,IAAI;EACZC,MAAM,EAAGhC,IAAI,IAAK1B,GAAG,CAAC2D,EAAE,CAACxC,QAAQ,CAAC,MAAM,EAAE;IAAEO;EAAI,CAAE,CAAC,CAAC;EACpDkC,MAAM,EAAGC,OAAO,IAAKA,OAAO,CAAC,CAAC,CAAC,CAACnC;CACjC,CAAC;AAmDF;;;;;;AAMA,OAAO,MAAMoC,aAAa,gBAAuDxD,MAAM,CAACkB,MAAM,CAAC;EAC7F4B,IAAI,EAAE9C,MAAM,CAACmB,OAAO,CAAC,QAAQ,CAAC;EAC9BoC,OAAO,EAAEvD,MAAM,CAACK,MAAM;EACtBW,OAAO,EAAEhB,MAAM,CAACqB,YAAY,CAACnB,eAAe,EAAE;IAAEoB,OAAO,EAAErB;EAAgB,CAAE;CAC5E,CAAC,CAACsB,IAAI,cACLvB,MAAM,CAACwB,uBAAuB,CAACmB,aAAa,EAAEA,aAAa,CAAC,eAC5D3C,MAAM,CAACyB,WAAW,CAAC;EAAEC,UAAU,EAAE;AAAe,CAAE,CAAC,CACpD;AAmFD;;;;;;AAMA,OAAO,MAAM+B,WAAW,gBAAmDzD,MAAM,CAACkB,MAAM,CAAC;EACvF4B,IAAI,EAAE9C,MAAM,CAACmB,OAAO,CAAC,MAAM,CAAC;EAC5BoC,OAAO,EAAEvD,MAAM,CAACiC,KAAK,CACnBc,wBAAwB,EACxB/C,MAAM,CAAC0D,KAAK,CAAC1D,MAAM,CAACiC,KAAK,CAAChB,QAAQ,EAAEW,QAAQ,CAAC,CAAC,CAC/C;EACDZ,OAAO,EAAEhB,MAAM,CAACqB,YAAY,CAACnB,eAAe,EAAE;IAAEoB,OAAO,EAAErB;EAAgB,CAAE;CAC5E,CAAC,CAACsB,IAAI,cACLvB,MAAM,CAACwB,uBAAuB,CAACmB,aAAa,EAAEA,aAAa,CAAC,eAC5D3C,MAAM,CAACyB,WAAW,CAAC;EAAEC,UAAU,EAAE;AAAa,CAAE,CAAC,CAClD;AA2FD;;;;;;AAMA,OAAO,MAAMiC,gBAAgB,gBAA6D3D,MAAM,CAACkB,MAAM,CAAC;EACtG4B,IAAI,EAAE9C,MAAM,CAACmB,OAAO,CAAC,WAAW,CAAC;EACjCoC,OAAO,EAAEvD,MAAM,CAACiC,KAAK,CACnBc,wBAAwB,EACxB/C,MAAM,CAAC0D,KAAK,CAAC1D,MAAM,CAACiC,KAAK,CAAChB,QAAQ,EAAEW,QAAQ,EAAED,aAAa,EAAES,YAAY,EAAEK,cAAc,CAAC,CAAC,CAC5F;EACDzB,OAAO,EAAEhB,MAAM,CAACqB,YAAY,CAACnB,eAAe,EAAE;IAAEoB,OAAO,EAAErB;EAAgB,CAAE;CAC5E,CAAC,CAACsB,IAAI,cACLvB,MAAM,CAACwB,uBAAuB,CAACmB,aAAa,EAAEA,aAAa,CAAC,eAC5D3C,MAAM,CAACyB,WAAW,CAAC;EAAEC,UAAU,EAAE;AAAkB,CAAE,CAAC,CACvD;AA8ED;;;;;;AAMA,OAAO,MAAMkC,WAAW,gBAAmD5D,MAAM,CAACkB,MAAM,CAAC;EACvF4B,IAAI,EAAE9C,MAAM,CAACmB,OAAO,CAAC,MAAM,CAAC;EAC5BoC,OAAO,EAAEvD,MAAM,CAAC0D,KAAK,CAACjB,cAAc,CAAC;EACrCzB,OAAO,EAAEhB,MAAM,CAACqB,YAAY,CAACnB,eAAe,EAAE;IAAEoB,OAAO,EAAErB;EAAgB,CAAE;CAC5E,CAAC,CAACsB,IAAI,cACLvB,MAAM,CAACwB,uBAAuB,CAACmB,aAAa,EAAEA,aAAa,CAAC,eAC5D3C,MAAM,CAACyB,WAAW,CAAC;EAAEC,UAAU,EAAE;AAAa,CAAE,CAAC,CAClD;AA8BD;;;;;;AAMA,OAAO,MAAMmC,OAAO,gBAA2C7D,MAAM,CAACiC,KAAK,CACzEuB,aAAa,EACbC,WAAW,EACXE,gBAAgB,EAChBC,WAAW,CACZ;AAED;AACA;AACA;AAEA;;;;;;AAMA,OAAO,MAAME,MAAM,GAAG,oBAAoB;AAU1C;;;;;;AAMA,OAAO,MAAMC,QAAQ,GAAIpD,CAAU,IAAkBZ,SAAS,CAACa,WAAW,CAACD,CAAC,EAAEmD,MAAM,CAAC;AA8BrF;;;;;;AAMA,OAAM,MAAOE,cAAe,sBAAQhE,MAAM,CAACiE,OAAO,CAC/CtD,CAAC,IAAKoD,QAAQ,CAACpD,CAAC,CAAC,EAClB;EACEe,UAAU,EAAE,gBAAgB;EAC5BwC,WAAW,EAAE;CACd,CACF;AAED;;;;;;AAMA,OAAO,MAAMC,MAAM,gBAAyCnE,MAAM,CAACoE,eAAe,CAChFpE,MAAM,CAACkB,MAAM,CAAC;EAAEqC,OAAO,EAAEvD,MAAM,CAAC0D,KAAK,CAAC1D,MAAM,CAACqE,aAAa,CAACR,OAAO,CAAC;AAAC,CAAE,CAAC,EACvEG,cAAc,EACd;EACEb,MAAM,EAAE,IAAI;EACZC,MAAM,EAAEA,CAACkB,CAAC,EAAEC,CAAC,EAAEC,GAAG,KAAKC,YAAY,CAACH,CAAC,EAAEE,GAAG,CAAC;EAC3ClB,MAAM,EAAEA,CAACoB,CAAC,EAAEH,CAAC,EAAEC,GAAG,KAAKG,YAAY,CAACD,CAAC,EAAEF,GAAG;CAC3C,CACF,CAAC/C,WAAW,CAAC;EAAEC,UAAU,EAAE;AAAQ,CAAE,CAAC;AAEvC,MAAMkD,cAAc,gBAAG/E,WAAW,CAACgF,YAAY,cAAC7E,MAAM,CAAC0D,KAAK,CAACG,OAAO,CAAC,CAAC;AACtE,MAAMiB,cAAc,gBAAGjF,WAAW,CAACkF,YAAY,cAAC/E,MAAM,CAAC0D,KAAK,CAACG,OAAO,CAAC,CAAC;AAEtE,MAAMY,YAAY,GAAGA,CAACO,KAAoB,EAAER,GAAY,KACtD3E,WAAW,CAACoF,OAAO,CAACL,cAAc,CAACI,KAAK,CAACzB,OAAO,CAAC,EAAE;EACjD2B,SAAS,EAAEA,CAAA,KAAM,IAAIrF,WAAW,CAACsF,IAAI,CAACX,GAAG,EAAEQ,KAAK,EAAE,oBAAoBI,IAAI,CAACC,SAAS,CAACL,KAAK,CAAC,gBAAgB,CAAC;EAC5GM,SAAS,EAAEC;CACZ,CAAC;AAEJ,MAAMZ,YAAY,GAAGA,CAACK,KAAa,EAAER,GAAY,KAC/C3E,WAAW,CAACoF,OAAO,CAACH,cAAc,CAACE,KAAK,CAACzB,OAAO,CAAC,EAAE;EACjD2B,SAAS,EAAEA,CAAA,KAAM,IAAIrF,WAAW,CAACsF,IAAI,CAACX,GAAG,EAAEQ,KAAK,EAAE,yBAAyB,CAAC;EAC5EM,SAAS,EAAGE,QAAQ,KAAM;IAAEjC,OAAO,EAAEiC;EAAQ,CAAE;CAChD,CAAC;AAEJ;AACA;AACA;AACA;AACA;AACA;AAEA;;;;;;AAMA,OAAO,MAAMC,QAAQ,gBAAGzF,MAAM,CAAC0F,SAAS,CAACvB,MAAM,CAAC;AAkChD,MAAMwB,KAAK,GAAG;EACZ,CAAC7B,MAAM,GAAGA,MAAM;EAChBvC,IAAIA,CAAA;IACF,OAAOzB,aAAa,CAAC,IAAI,EAAE8F,SAAS,CAAC;EACvC;CACD;AAED,MAAML,UAAU,GAAIhC,OAA+B,IACjDsC,MAAM,CAACC,MAAM,CAACD,MAAM,CAACE,MAAM,CAACJ,KAAK,CAAC,EAAE;EAClCpC;CACD,CAAC;AAEJ,MAAMyC,kBAAkB,gBAAGhG,MAAM,CAACiG,UAAU,cAACjG,MAAM,CAAC0D,KAAK,CAACG,OAAO,CAAC,CAAC;AAEnE;;;;;;;;;;;;;;AAcA,OAAO,MAAMqC,KAAK,gBAAWX,UAAU,CAAC,EAAE,CAAC;AAE3C;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BA,OAAO,MAAMY,IAAI,GAAInB,KAAe,IAAY;EAC9C,IAAIjF,SAAS,CAACqG,QAAQ,CAACpB,KAAK,CAAC,EAAE;IAC7B,MAAMqB,IAAI,GAAGxF,QAAQ,CAAC,MAAM,EAAE;MAAEO,IAAI,EAAE4D;IAAK,CAAE,CAAC;IAC9C,MAAMsB,OAAO,GAAGzD,WAAW,CAAC,MAAM,EAAE;MAAEU,OAAO,EAAE,CAAC8C,IAAI;IAAC,CAAE,CAAC;IACxD,OAAOd,UAAU,CAAC,CAACe,OAAO,CAAC,CAAC;EAC9B;EAEA,IAAIvG,SAAS,CAACwG,UAAU,CAACvB,KAAK,CAAC,EAAE;IAC/B,OAAOO,UAAU,CAACS,kBAAkB,CAACtG,GAAG,CAAC8G,YAAY,CAACxB,KAAK,CAAC,EAAE;MAC5DyB,MAAM,EAAE;KACT,CAAC,CAAC;EACL;EAEA,OAAOzB,KAAK;AACd,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;AAsBA,OAAO,MAAM0B,YAAY,GAAIlB,QAAgC,IAAaD,UAAU,CAACC,QAAQ,CAAC;AAE9F,MAAMmB,uBAAuB,GAAG;EAC9B,mBAAmB,EAAE,KAAK;EAC1B,MAAM,EAAE,IAAI;EACZ,YAAY,EAAE,KAAK;EACnB,YAAY,EAAE,IAAI;EAClB,UAAU,EAAE,KAAK;EACjB,WAAW,EAAE,IAAI;EACjB,iBAAiB,EAAE,KAAK;EACxB,iBAAiB,EAAE,IAAI;EACvB,eAAe,EAAE,KAAK;EACtB,MAAM,EAAE,KAAK;EACb,QAAQ,EAAE,KAAK;EACf,mBAAmB,EAAE,KAAK;EAC1B,mBAAmB,EAAE,KAAK;EAC1B,iBAAiB,EAAE,KAAK;EACxB,WAAW,EAAE,IAAI;EACjB,aAAa,EAAE,IAAI;EACnB,QAAQ,EAAE,KAAK;EACf,OAAO,EAAE;CACmD;AAS9D,MAAMC,WAAW,GAAIP,IAAsB,IAA+B;EACxE,OAAOM,uBAAuB,CAACN,IAAI,CAACvF,IAAI,CAAC;AAC3C,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqCA,OAAO,MAAM+F,iBAAiB,GAAIC,KAAsC,IAAY;EAClF,IAAIA,KAAK,CAACC,MAAM,KAAK,CAAC,EAAE;IACtB,OAAOb,KAAK;EACd;EAEA,MAAM3C,OAAO,GAAgC,EAAE;EAE/C,MAAMyD,UAAU,GAAkB,EAAE;EACpC,SAASC,eAAeA,CAAA;IACtB,IAAID,UAAU,CAACD,MAAM,GAAG,CAAC,EAAE;MACzB,MAAM3F,IAAI,GAAG4F,UAAU,CAACE,IAAI,CAAC,EAAE,CAAC;MAChC,IAAI9F,IAAI,CAAC2F,MAAM,GAAG,CAAC,EAAE;QACnBxD,OAAO,CAAC4D,IAAI,CAACtG,QAAQ,CAAC,MAAM,EAAE;UAAEO;QAAI,CAAE,CAAC,CAAC;MAC1C;MACA4F,UAAU,CAACD,MAAM,GAAG,CAAC;IACvB;EACF;EAEA,MAAMK,eAAe,GAAkB,EAAE;EACzC,SAASC,oBAAoBA,CAAA;IAC3B,IAAID,eAAe,CAACL,MAAM,GAAG,CAAC,EAAE;MAC9B,MAAM3F,IAAI,GAAGgG,eAAe,CAACF,IAAI,CAAC,EAAE,CAAC;MACrC,IAAI9F,IAAI,CAAC2F,MAAM,GAAG,CAAC,EAAE;QACnBxD,OAAO,CAAC4D,IAAI,CAACtG,QAAQ,CAAC,WAAW,EAAE;UAAEO;QAAI,CAAE,CAAC,CAAC;MAC/C;MACAgG,eAAe,CAACL,MAAM,GAAG,CAAC;IAC5B;EACF;EAEA,SAASO,WAAWA,CAAA;IAClBL,eAAe,EAAE;IACjBI,oBAAoB,EAAE;EACxB;EAEA,KAAK,MAAMhB,IAAI,IAAIS,KAAK,EAAE;IACxB,IAAIF,WAAW,CAACP,IAAI,CAAC,EAAE;MACrB,QAAQA,IAAI,CAACvF,IAAI;QACf,KAAK,MAAM;UAAE;YACXwG,WAAW,EAAE;YACb/D,OAAO,CAAC4D,IAAI,CAACtG,QAAQ,CAAC,MAAM,EAAE;cAAEO,IAAI,EAAEiF,IAAI,CAACjF;YAAI,CAAE,CAAC,CAAC;YACnD;UACF;QACA,KAAK,YAAY;UAAE;YACjBiG,oBAAoB,EAAE;YACtBL,UAAU,CAACG,IAAI,CAACd,IAAI,CAACkB,KAAK,CAAC;YAC3B;UACF;QACA,KAAK,WAAW;UAAE;YAChBD,WAAW,EAAE;YACb/D,OAAO,CAAC4D,IAAI,CAACtG,QAAQ,CAAC,WAAW,EAAE;cAAEO,IAAI,EAAEiF,IAAI,CAACjF;YAAI,CAAE,CAAC,CAAC;YACxD;UACF;QACA,KAAK,iBAAiB;UAAE;YACtB6F,eAAe,EAAE;YACjBG,eAAe,CAACD,IAAI,CAACd,IAAI,CAACkB,KAAK,CAAC;YAChC;UACF;QACA,KAAK,WAAW;UAAE;YAChBD,WAAW,EAAE;YACb/D,OAAO,CAAC4D,IAAI,CAACtG,QAAQ,CAAC,WAAW,EAAE;cACjCwB,EAAE,EAAEgE,IAAI,CAAChE,EAAE;cACXC,IAAI,EAAE+D,IAAI,CAACmB,YAAY,IAAInB,IAAI,CAAC/D,IAAI;cACpCvB,MAAM,EAAEsF,IAAI,CAACtF,MAAM;cACnBwB,gBAAgB,EAAE8D,IAAI,CAAC9D,gBAAgB,IAAI;aAC5C,CAAC,CAAC;YACH;UACF;QACA,KAAK,aAAa;UAAE;YAClB+E,WAAW,EAAE;YACb/D,OAAO,CAAC4D,IAAI,CAACtG,QAAQ,CAAC,aAAa,EAAE;cACnCwB,EAAE,EAAEgE,IAAI,CAAChE,EAAE;cACXC,IAAI,EAAE+D,IAAI,CAACmB,YAAY,IAAInB,IAAI,CAAC/D,IAAI;cACpCI,MAAM,EAAE2D,IAAI,CAACoB;aACd,CAAC,CAAC;YACH;UACF;MACF;IACF;EACF;EAEAH,WAAW,EAAE;EAEb,MAAMhB,OAAO,GAAGzD,WAAW,CAAC,WAAW,EAAE;IAAEU;EAAO,CAAE,CAAC;EAErD,OAAOgC,UAAU,CAAC,CAACe,OAAO,CAAC,CAAC;AAC9B,CAAC;AAED;AACA;AACA;AAEA;;;;;;;;;;;;;;;;;;;;;AAqBA,OAAO,MAAMoB,KAAK,gBAqDd9H,IAAI,CAAC,CAAC,EAAE,CAAC+H,IAAY,EAAEC,KAAe,KACxClB,YAAY,CAAC,CACX,GAAGiB,IAAI,CAACpE,OAAO,EACf,GAAG4C,IAAI,CAACyB,KAAK,CAAC,CAACrE,OAAO,CACvB,CAAC,CAAC;AAEL;AACA;AACA;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6BA,OAAO,MAAMsE,SAAS,gBAqElBjI,IAAI,CAAC,CAAC,EAAE,CAAC+H,IAAY,EAAEpE,OAAe,KAAY;EACpD,MAAMiC,QAAQ,GAAmB,CAAC3C,WAAW,CAAC,QAAQ,EAAE;IAAEU;EAAO,CAAE,CAAC,CAAC;EACrE,KAAK,MAAM+C,OAAO,IAAIqB,IAAI,CAACpE,OAAO,EAAE;IAClC,IAAI+C,OAAO,CAACxD,IAAI,KAAK,QAAQ,EAAE;MAC7B0C,QAAQ,CAAC2B,IAAI,CAACb,OAAO,CAAC;IACxB;EACF;EACA,OAAOf,UAAU,CAACC,QAAQ,CAAC;AAC7B,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6BA,OAAO,MAAMsC,aAAa,gBA6DtBlI,IAAI,CAAC,CAAC,EAAE,CAAC+H,IAAY,EAAEpE,OAAe,KAAY;EACpD,MAAMiC,QAAQ,GAAmB,EAAE;EACnC,KAAK,MAAMc,OAAO,IAAIqB,IAAI,CAACpE,OAAO,EAAE;IAClC,IAAI+C,OAAO,CAACxD,IAAI,KAAK,QAAQ,EAAE;MAC7B,MAAMiF,MAAM,GAAGlF,WAAW,CAAC,QAAQ,EAAE;QACnCU,OAAO,EAAEA,OAAO,GAAG+C,OAAO,CAAC/C;OAC5B,CAAC;MACFiC,QAAQ,CAAC2B,IAAI,CAACY,MAAM,CAAC;IACvB,CAAC,MAAM;MACLvC,QAAQ,CAAC2B,IAAI,CAACb,OAAO,CAAC;IACxB;EACF;EACA,OAAOf,UAAU,CAACC,QAAQ,CAAC;AAC7B,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6BA,OAAO,MAAMwC,YAAY,gBA6DrBpI,IAAI,CAAC,CAAC,EAAE,CAAC+H,IAAY,EAAEpE,OAAe,KAAY;EACpD,MAAMiC,QAAQ,GAAmB,EAAE;EACnC,KAAK,MAAMc,OAAO,IAAIqB,IAAI,CAACpE,OAAO,EAAE;IAClC,IAAI+C,OAAO,CAACxD,IAAI,KAAK,QAAQ,EAAE;MAC7B,MAAMiF,MAAM,GAAGlF,WAAW,CAAC,QAAQ,EAAE;QACnCU,OAAO,EAAE+C,OAAO,CAAC/C,OAAO,GAAGA;OAC5B,CAAC;MACFiC,QAAQ,CAAC2B,IAAI,CAACY,MAAM,CAAC;IACvB,CAAC,MAAM;MACLvC,QAAQ,CAAC2B,IAAI,CAACb,OAAO,CAAC;IACxB;EACF;EACA,OAAOf,UAAU,CAACC,QAAQ,CAAC;AAC7B,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"Prompt.js","names":["Arbitrary","Arr","constFalse","dual","ParseResult","pipeArguments","Predicate","Schema","constEmptyObject","ProviderOptions","Record","key","String","value","UndefinedOr","Unknown","PartTypeId","isPart","u","hasProperty","makePart","type","params","options","TextPart","Struct","Literal","text","optionalWith","default","pipe","attachPropertySignature","annotations","identifier","ReasoningPart","FilePart","mediaType","fileName","optional","data","Union","Uint8ArrayFromSelf","URLFromSelf","ToolCallPart","id","name","providerExecuted","Boolean","ToolResultPart","result","MessageTypeId","isMessage","makeMessage","role","MessageContentFromString","transform","NonEmptyArray","typeSchema","strict","decode","of","encode","content","SystemMessage","UserMessage","Array","AssistantMessage","ToolMessage","Message","TypeId","isPrompt","PromptFromSelf","declare","description","arbitrary","fc","array","makeLazy","map","makePrompt","Prompt","transformOrFail","encodedSchema","i","_","ast","decodePrompt","a","encodePrompt","decodeMessages","decodeEither","encodeMessages","encodeEither","input","mapBoth","onFailure","Type","JSON","stringify","onSuccess","messages","FromJson","parseJson","Proto","arguments","Object","assign","create","decodeMessagesSync","decodeSync","empty","make","isString","part","message","isIterable","fromIterable","errors","fromMessages","VALID_RESPONSE_PART_MAP","isValidPart","fromResponseParts","parts","length","assistantParts","toolParts","textDeltas","flushTextDeltas","join","push","reasoningDeltas","flushReasoningDeltas","flushDeltas","delta","providerName","encodedResult","merge","self","other","setSystem","prependSystem","system","appendSystem"],"sources":["../../src/Prompt.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -172,7 +172,7 @@ params) => ({
172
172
  ...params,
173
173
  [PartTypeId]: PartTypeId,
174
174
  type,
175
- metadata: params.metadata
175
+ metadata: params.metadata ?? {}
176
176
  });
177
177
  /**
178
178
  * Schema for validation and encoding of text parts.
@@ -1 +1 @@
1
- {"version":3,"file":"Response.js","names":["ParseResult","Effect","constFalse","Predicate","Schema","constEmptyObject","PartTypeId","isPart","u","hasProperty","AllParts","toolkit","toolCalls","toolCallResults","tool","Object","values","tools","push","ToolCallPart","name","parametersSchema","ToolResultPart","successSchema","Union","TextPart","TextStartPart","TextDeltaPart","TextEndPart","ReasoningPart","ReasoningStartPart","ReasoningDeltaPart","ReasoningEndPart","ToolParamsStartPart","ToolParamsDeltaPart","ToolParamsEndPart","FilePart","DocumentSourcePart","UrlSourcePart","ResponseMetadataPart","FinishPart","ErrorPart","Part","StreamPart","ProviderMetadata","Record","key","String","value","UndefinedOr","Unknown","makePart","type","params","metadata","Struct","Literal","text","optionalWith","default","pipe","attachPropertySignature","annotations","identifier","id","delta","providerName","optional","providerExecuted","Boolean","result","Base","Encoded","fields","encodedSchema","Decoded","typeSchema","encodedResult","decodeParams","decode","encodeParams","encode","transformOrFail","strict","fnUntraced","encoded","decoded","mediaType","data","Uint8ArrayFromBase64","sourceType","title","fileName","url","URL","as","modelId","timestamp","DateTimeUtc","FinishReason","Usage","Class","inputTokens","Number","outputTokens","totalTokens","reasoningTokens","cachedInputTokens","reason","usage","error"],"sources":["../../src/Response.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Response.js","names":["ParseResult","Effect","constFalse","Predicate","Schema","constEmptyObject","PartTypeId","isPart","u","hasProperty","AllParts","toolkit","toolCalls","toolCallResults","tool","Object","values","tools","push","ToolCallPart","name","parametersSchema","ToolResultPart","successSchema","Union","TextPart","TextStartPart","TextDeltaPart","TextEndPart","ReasoningPart","ReasoningStartPart","ReasoningDeltaPart","ReasoningEndPart","ToolParamsStartPart","ToolParamsDeltaPart","ToolParamsEndPart","FilePart","DocumentSourcePart","UrlSourcePart","ResponseMetadataPart","FinishPart","ErrorPart","Part","StreamPart","ProviderMetadata","Record","key","String","value","UndefinedOr","Unknown","makePart","type","params","metadata","Struct","Literal","text","optionalWith","default","pipe","attachPropertySignature","annotations","identifier","id","delta","providerName","optional","providerExecuted","Boolean","result","Base","Encoded","fields","encodedSchema","Decoded","typeSchema","encodedResult","decodeParams","decode","encodeParams","encode","transformOrFail","strict","fnUntraced","encoded","decoded","mediaType","data","Uint8ArrayFromBase64","sourceType","title","fileName","url","URL","as","modelId","timestamp","DateTimeUtc","FinishReason","Usage","Class","inputTokens","Number","outputTokens","totalTokens","reasoningTokens","cachedInputTokens","reason","usage","error"],"sources":["../../src/Response.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/dist/esm/index.js CHANGED
@@ -54,7 +54,7 @@
54
54
  * url: "https://api.openai.com/v1/completions",
55
55
  * urlParams: [],
56
56
  * hash: Option.none(),
57
- * headers: { "Authorization": "Bearer ***" }
57
+ * headers: { "Content-Type": "application/json" }
58
58
  * }
59
59
  * })
60
60
  * })
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@effect/ai",
3
- "version": "0.28.2",
3
+ "version": "0.28.4",
4
4
  "description": "Effect modules for working with AI apis",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -14,9 +14,9 @@
14
14
  "find-my-way-ts": "^0.1.6"
15
15
  },
16
16
  "peerDependencies": {
17
- "@effect/platform": "^0.91.1",
18
17
  "@effect/experimental": "^0.55.0",
19
18
  "effect": "^3.17.14",
19
+ "@effect/platform": "^0.91.1",
20
20
  "@effect/rpc": "^0.70.0"
21
21
  },
22
22
  "publishConfig": {
package/src/AiError.ts CHANGED
@@ -54,7 +54,7 @@
54
54
  * url: "https://api.openai.com/v1/completions",
55
55
  * urlParams: [],
56
56
  * hash: Option.none(),
57
- * headers: { "Authorization": "Bearer ***" }
57
+ * headers: { "Content-Type": "application/json" }
58
58
  * }
59
59
  * })
60
60
  * })
@@ -137,10 +137,7 @@ export const isAiError = (u: unknown): u is AiError => Predicate.hasProperty(u,
137
137
  * url: "https://api.openai.com/v1/completions",
138
138
  * urlParams: [["model", "gpt-4"], ["stream", "false"]],
139
139
  * hash: Option.some("#section1"),
140
- * headers: {
141
- * "Content-Type": "application/json",
142
- * "Authorization": "Bearer sk-..."
143
- * }
140
+ * headers: { "Content-Type": "application/json" }
144
141
  * }
145
142
  * ```
146
143
  *
@@ -238,7 +235,7 @@ export class HttpRequestError extends Schema.TaggedError<HttpRequestError>(
238
235
  reason: error.reason,
239
236
  request: {
240
237
  hash: error.request.hash,
241
- headers: error.request.headers,
238
+ headers: Inspectable.redact(error.request.headers) as any,
242
239
  method: error.request.method,
243
240
  url: error.request.url,
244
241
  urlParams: error.request.urlParams
@@ -333,7 +330,7 @@ export const HttpResponseDetails = Schema.Struct({
333
330
  * url: "https://api.openai.com/v1/completions",
334
331
  * urlParams: [],
335
332
  * hash: Option.none(),
336
- * headers: { "Authorization": "Bearer sk-..." }
333
+ * headers: { "Content-Type": "application/json" }
337
334
  * },
338
335
  * response: {
339
336
  * status: 429,
@@ -405,13 +402,13 @@ export class HttpResponseError extends Schema.TaggedError<HttpResponseError>(
405
402
  reason: error.reason,
406
403
  request: {
407
404
  hash: error.request.hash,
408
- headers: error.request.headers,
405
+ headers: Inspectable.redact(error.request.headers) as any,
409
406
  method: error.request.method,
410
407
  url: error.request.url,
411
408
  urlParams: error.request.urlParams
412
409
  },
413
410
  response: {
414
- headers: error.response.headers,
411
+ headers: Inspectable.redact(error.response.headers) as any,
415
412
  status: error.response.status
416
413
  },
417
414
  body: Inspectable.format(body)
package/src/Chat.ts CHANGED
@@ -50,15 +50,18 @@ import type { PersistenceBackingError } from "@effect/experimental/Persistence"
50
50
  import { BackingPersistence } from "@effect/experimental/Persistence"
51
51
  import * as Channel from "effect/Channel"
52
52
  import * as Context from "effect/Context"
53
+ import * as Duration from "effect/Duration"
53
54
  import * as Effect from "effect/Effect"
54
55
  import * as Layer from "effect/Layer"
55
56
  import * as Option from "effect/Option"
56
57
  import type { ParseError } from "effect/ParseResult"
58
+ import * as Predicate from "effect/Predicate"
57
59
  import * as Ref from "effect/Ref"
58
60
  import * as Schema from "effect/Schema"
59
61
  import * as Stream from "effect/Stream"
60
62
  import type { NoExcessProperties } from "effect/Types"
61
63
  import * as AiError from "./AiError.js"
64
+ import * as IdGenerator from "./IdGenerator.js"
62
65
  import * as LanguageModel from "./LanguageModel.js"
63
66
  import * as Prompt from "./Prompt.js"
64
67
  import type * as Response from "./Response.js"
@@ -618,7 +621,9 @@ export declare namespace Persistence {
618
621
  * store with the specified chat identifer. If the chat does not exist in
619
622
  * the persistence store, a `ChatNotFoundError` will be returned.
620
623
  */
621
- readonly get: (chatId: string) => Effect.Effect<
624
+ readonly get: (chatId: string, options?: {
625
+ readonly timeToLive?: Duration.DurationInput | undefined
626
+ }) => Effect.Effect<
622
627
  Persisted,
623
628
  ChatNotFoundError | PersistenceBackingError
624
629
  >
@@ -629,7 +634,9 @@ export declare namespace Persistence {
629
634
  * the persistence store, an empty chat will be created, saved, and
630
635
  * returned.
631
636
  */
632
- readonly getOrCreate: (chatId: string) => Effect.Effect<
637
+ readonly getOrCreate: (chatId: string, options?: {
638
+ readonly timeToLive?: Duration.DurationInput | undefined
639
+ }) => Effect.Effect<
633
640
  Persisted,
634
641
  AiError.MalformedOutput | PersistenceBackingError
635
642
  >
@@ -651,6 +658,11 @@ export interface Persisted extends Service {
651
658
  * The identifier for the chat in the backing persistence store.
652
659
  */
653
660
  readonly id: string
661
+
662
+ /**
663
+ * Saves the current chat history into the backing persistence store.
664
+ */
665
+ readonly save: Effect.Effect<void, AiError.MalformedOutput | PersistenceBackingError>
654
666
  }
655
667
 
656
668
  /**
@@ -668,40 +680,91 @@ export const makePersisted = Effect.fnUntraced(function*(options: {
668
680
  const persistence = yield* BackingPersistence
669
681
  const store = yield* persistence.make(options.storeId)
670
682
 
671
- const toPersisted = (chatId: string, chat: Service): Persisted => {
672
- const persistChat = chat.exportJson.pipe(
673
- Effect.flatMap((history) => store.set(chatId, history, Option.none())),
674
- Effect.orDie
675
- )
676
- return {
677
- ...chat,
678
- id: chatId,
679
- generateText: (options) =>
680
- chat.generateText(options).pipe(
681
- Effect.ensuring(persistChat)
682
- ),
683
- generateObject: (options) =>
684
- chat.generateObject(options).pipe(
685
- Effect.ensuring(persistChat)
686
- ),
687
- streamText: (options) =>
688
- chat.streamText(options).pipe(
689
- Stream.ensuring(persistChat)
690
- )
683
+ const toPersisted = Effect.fnUntraced(
684
+ function*(chatId: string, chat: Service, ttl: Option.Option<Duration.Duration>) {
685
+ const idGenerator = yield* Effect.serviceOption(IdGenerator.IdGenerator).pipe(
686
+ Effect.map(Option.getOrElse(() => IdGenerator.defaultIdGenerator))
687
+ )
688
+
689
+ const saveChat = Effect.fnUntraced(
690
+ function*(prevHistory: Prompt.Prompt) {
691
+ // Get the current chat history
692
+ const history = yield* Ref.get(chat.history)
693
+ // Get the most recent message stored in the previous chat history
694
+ const lastMessage = prevHistory.content[prevHistory.content.length - 1]
695
+ // Determine the correct message identifier to use:
696
+ let messageId: string | undefined = undefined
697
+ // If the most recent message in the chat history is an assistant message,
698
+ // use the message identifer stored in that message
699
+ if (Predicate.isNotUndefined(lastMessage) && lastMessage.role === "assistant") {
700
+ messageId = lastMessage.options[Persistence.key]?.messageId as string | undefined
701
+ }
702
+ // If the chat history is empty or a message identifier did not exist on
703
+ // the most recent message in the chat history, generate a new identifier
704
+ if (Predicate.isUndefined(messageId)) {
705
+ messageId = yield* idGenerator.generateId()
706
+ }
707
+ // Mutate the new messages to add the generated message identifier
708
+ for (let i = prevHistory.content.length; i < history.content.length; i++) {
709
+ const message = history.content[i]
710
+ ;(message.options as any)[Persistence.key] = { messageId }
711
+ }
712
+ // Save the mutated history back to the ref
713
+ yield* Ref.set(chat.history, history)
714
+ // Export the chat to JSON
715
+ const json = yield* chat.exportJson
716
+ // Save the chat to the backing store
717
+ yield* store.set(chatId, json, ttl)
718
+ },
719
+ Effect.catchTag("PersistenceError", (error) => {
720
+ // Should never happen because we are using the backing persistence
721
+ // store directly, and parse errors can only occur when using result
722
+ // persistence
723
+ if (error.reason === "ParseError") return Effect.die(error)
724
+ return Effect.fail(error)
725
+ })
726
+ )
727
+
728
+ const persisted: Persisted = {
729
+ ...chat,
730
+ id: chatId,
731
+ save: Effect.flatMap(Ref.get(chat.history), saveChat),
732
+ generateText: Effect.fnUntraced(function*(options) {
733
+ const history = yield* Ref.get(chat.history)
734
+ return yield* chat.generateText(options).pipe(
735
+ Effect.ensuring(Effect.orDie(saveChat(history)))
736
+ )
737
+ }),
738
+ generateObject: Effect.fnUntraced(function*(options) {
739
+ const history = yield* Ref.get(chat.history)
740
+ return yield* chat.generateObject(options).pipe(
741
+ Effect.ensuring(Effect.orDie(saveChat(history)))
742
+ )
743
+ }),
744
+ streamText: Effect.fnUntraced(function*(options) {
745
+ const history = yield* Ref.get(chat.history)
746
+ const stream = chat.streamText(options).pipe(
747
+ Stream.ensuring(Effect.orDie(saveChat(history)))
748
+ )
749
+ return stream
750
+ }, Stream.unwrap)
751
+ }
752
+
753
+ return persisted
691
754
  }
692
- }
755
+ )
693
756
 
694
757
  const createChat = Effect.fnUntraced(
695
- function*(chatId: string) {
758
+ function*(chatId: string, ttl: Option.Option<Duration.Duration>) {
696
759
  // Create an empty chat
697
760
  const chat = yield* empty
698
761
 
699
762
  // Save the history for the newly created chat
700
763
  const history = yield* chat.exportJson
701
- yield* store.set(chatId, history, Option.none())
764
+ yield* store.set(chatId, history, ttl)
702
765
 
703
766
  // Convert the chat to a persisted chat
704
- return toPersisted(chatId, chat)
767
+ return yield* toPersisted(chatId, chat, ttl)
705
768
  },
706
769
  Effect.catchTag("PersistenceError", (error) => {
707
770
  // Should never happen because we are using the backing persistence
@@ -713,7 +776,7 @@ export const makePersisted = Effect.fnUntraced(function*(options: {
713
776
  )
714
777
 
715
778
  const getChat = Effect.fnUntraced(
716
- function*(chatId: string) {
779
+ function*(chatId: string, ttl: Option.Option<Duration.Duration>) {
717
780
  // Create an empty chat
718
781
  const chat = yield* empty
719
782
 
@@ -726,7 +789,7 @@ export const makePersisted = Effect.fnUntraced(function*(options: {
726
789
  )
727
790
 
728
791
  // Convert the chat to a persisted chat
729
- return toPersisted(chatId, chat)
792
+ return yield* toPersisted(chatId, chat, ttl)
730
793
  },
731
794
  Effect.catchTags({
732
795
  ParseError: (error) => Effect.die(error),
@@ -740,15 +803,32 @@ export const makePersisted = Effect.fnUntraced(function*(options: {
740
803
  })
741
804
  )
742
805
 
743
- const get = Effect.fn("PersistedChat.get")(function*(chatId: string) {
744
- return yield* getChat(chatId)
745
- })
746
-
747
- const getOrCreate = Effect.fn("PersistedChat.getOrCreate")(function*(chatId: string) {
748
- return yield* getChat(chatId).pipe(
749
- Effect.catchTag("ChatNotFoundError", () => createChat(chatId))
806
+ const makeTTL = (
807
+ timeToLive?: Duration.DurationInput | undefined
808
+ ): Option.Option<Duration.Duration> =>
809
+ Option.fromNullable(timeToLive).pipe(
810
+ Option.map(Duration.decode)
750
811
  )
751
- })
812
+
813
+ const get = Effect.fn("PersistedChat.get")(
814
+ function*(chatId: string, options?: {
815
+ readonly timeToLive?: Duration.DurationInput | undefined
816
+ }) {
817
+ const ttl = makeTTL(options?.timeToLive)
818
+ return yield* getChat(chatId, ttl)
819
+ }
820
+ )
821
+
822
+ const getOrCreate = Effect.fn("PersistedChat.getOrCreate")(
823
+ function*(chatId: string, options?: {
824
+ readonly timeToLive?: Duration.DurationInput | undefined
825
+ }) {
826
+ const ttl = makeTTL(options?.timeToLive)
827
+ return yield* getChat(chatId, ttl).pipe(
828
+ Effect.catchTag("ChatNotFoundError", () => createChat(chatId, ttl))
829
+ )
830
+ }
831
+ )
752
832
 
753
833
  return Persistence.of({
754
834
  get,