@effect/ai 0.28.1 → 0.28.3

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.
@@ -1 +1 @@
1
- {"version":3,"file":"AiError.js","names":["Predicate","Schema","TypeId","isAiError","u","hasProperty","HttpRequestDetails","Struct","method","Literal","url","String","urlParams","Array","Tuple","hash","Option","headers","Record","key","value","annotations","identifier","HttpRequestError","TaggedError","module","reason","request","description","optional","cause","Defect","fromRequestError","error","params","message","methodAndUrl","baseMessage","suggestion","HttpResponseDetails","status","Number","HttpResponseError","response","fromResponseError","methodUrlStatus","getStatusCodeSuggestion","MalformedInput","MalformedOutput","fromParseError","UnknownError","moduleMethod","isUndefined","AiError","Union","statusCode"],"sources":["../../src/AiError.ts"],"sourcesContent":[null],"mappings":"AAyEA,OAAO,KAAKA,SAAS,MAAM,kBAAkB;AAC7C,OAAO,KAAKC,MAAM,MAAM,eAAe;AAEvC;;;;;;AAMA,OAAO,MAAMC,MAAM,GAAG,qBAAqB;AAU3C;;;;;;;;;;;;;;;;;;;;;;;AAuBA,OAAO,MAAMC,SAAS,GAAIC,CAAU,IAAmBJ,SAAS,CAACK,WAAW,CAACD,CAAC,EAAEF,MAAM,CAAC;AAEvF;AACA;AACA;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BA,OAAO,MAAMI,kBAAkB,gBAAGL,MAAM,CAACM,MAAM,CAAC;EAC9CC,MAAM,EAAEP,MAAM,CAACQ,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC;EAClFC,GAAG,EAAET,MAAM,CAACU,MAAM;EAClBC,SAAS,EAAEX,MAAM,CAACY,KAAK,CAACZ,MAAM,CAACa,KAAK,CAACb,MAAM,CAACU,MAAM,EAAEV,MAAM,CAACU,MAAM,CAAC,CAAC;EACnEI,IAAI,EAAEd,MAAM,CAACe,MAAM,CAACf,MAAM,CAACU,MAAM,CAAC;EAClCM,OAAO,EAAEhB,MAAM,CAACiB,MAAM,CAAC;IAAEC,GAAG,EAAElB,MAAM,CAACU,MAAM;IAAES,KAAK,EAAEnB,MAAM,CAACU;EAAM,CAAE;CACpE,CAAC,CAACU,WAAW,CAAC;EAAEC,UAAU,EAAE;AAAoB,CAAE,CAAC;AAEpD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmCA,OAAM,MAAOC,gBAAiB,sBAAQtB,MAAM,CAACuB,WAAW,CACtD,qCAAqC,CACtC,CAAC,kBAAkB,EAAE;EACpBC,MAAM,EAAExB,MAAM,CAACU,MAAM;EACrBH,MAAM,EAAEP,MAAM,CAACU,MAAM;EACrBe,MAAM,eAAEzB,MAAM,CAACQ,OAAO,CAAC,WAAW,EAAE,QAAQ,EAAE,YAAY,CAAC;EAC3DkB,OAAO,EAAErB,kBAAkB;EAC3BsB,WAAW,eAAE3B,MAAM,CAAC4B,QAAQ,CAAC5B,MAAM,CAACU,MAAM,CAAC;EAC3CmB,KAAK,eAAE7B,MAAM,CAAC4B,QAAQ,CAAC5B,MAAM,CAAC8B,MAAM;CACrC,CAAC;EACA;;;EAGS,CAAC7B,MAAM,IAAYA,MAAM;EAElC;;;;;;;;;;;;;;;;;;;;;EAqBA,OAAO8B,gBAAgBA,CAAC;IAAEC,KAAK;IAAE,GAAGC;EAAM,CAIzC;IACC,OAAO,IAAIX,gBAAgB,CAAC;MAC1B,GAAGW,MAAM;MACTJ,KAAK,EAAEG,KAAK;MACZL,WAAW,EAAEK,KAAK,CAACL,WAAW;MAC9BF,MAAM,EAAEO,KAAK,CAACP,MAAM;MACpBC,OAAO,EAAE;QACPZ,IAAI,EAAEkB,KAAK,CAACN,OAAO,CAACZ,IAAI;QACxBE,OAAO,EAAEgB,KAAK,CAACN,OAAO,CAACV,OAAO;QAC9BT,MAAM,EAAEyB,KAAK,CAACN,OAAO,CAACnB,MAAM;QAC5BE,GAAG,EAAEuB,KAAK,CAACN,OAAO,CAACjB,GAAG;QACtBE,SAAS,EAAEqB,KAAK,CAACN,OAAO,CAACf;;KAE5B,CAAC;EACJ;EAEA,IAAIuB,OAAOA,CAAA;IACT,MAAMC,YAAY,GAAG,GAAG,IAAI,CAACT,OAAO,CAACnB,MAAM,IAAI,IAAI,CAACmB,OAAO,CAACjB,GAAG,EAAE;IAEjE,IAAI2B,WAAW,GAAG,IAAI,CAACT,WAAW,GAC9B,GAAG,IAAI,CAACF,MAAM,KAAK,IAAI,CAACE,WAAW,EAAE,GACrC,GAAG,IAAI,CAACF,MAAM,mCAAmC;IAErDW,WAAW,IAAI,KAAKD,YAAY,GAAG;IAEnC,IAAIE,UAAU,GAAG,EAAE;IACnB,QAAQ,IAAI,CAACZ,MAAM;MACjB,KAAK,QAAQ;QAAE;UACbY,UAAU,IAAI,+FAA+F;UAC7G;QACF;MAEA,KAAK,YAAY;QAAE;UACjBA,UAAU,IAAI,4FAA4F;UAC1GA,UAAU,IAAI,2DAA2D;UACzE;QACF;MAEA,KAAK,WAAW;QAAE;UAChBA,UAAU,IAAI,gFAAgF;UAC9F;QACF;IACF;IAEAD,WAAW,IAAI,mBAAmBC,UAAU,EAAE;IAE9C,OAAOD,WAAW;EACpB;;AAGF;AACA;AACA;AAEA;;;;;;;;;;;;;;;;;;;;;;;AAuBA,OAAO,MAAME,mBAAmB,gBAAGtC,MAAM,CAACM,MAAM,CAAC;EAC/CiC,MAAM,EAAEvC,MAAM,CAACwC,MAAM;EACrBxB,OAAO,EAAEhB,MAAM,CAACiB,MAAM,CAAC;IAAEC,GAAG,EAAElB,MAAM,CAACU,MAAM;IAAES,KAAK,EAAEnB,MAAM,CAACU;EAAM,CAAE;CACpE,CAAC,CAACU,WAAW,CAAC;EAAEC,UAAU,EAAE;AAAqB,CAAE,CAAC;AAErD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqCA,OAAM,MAAOoB,iBAAkB,sBAAQzC,MAAM,CAACuB,WAAW,CACvD,sCAAsC,CACvC,CAAC,mBAAmB,EAAE;EACrBC,MAAM,EAAExB,MAAM,CAACU,MAAM;EACrBH,MAAM,EAAEP,MAAM,CAACU,MAAM;EACrBgB,OAAO,EAAErB,kBAAkB;EAC3BqC,QAAQ,EAAEJ,mBAAmB;EAC7Bb,MAAM,eAAEzB,MAAM,CAACQ,OAAO,CAAC,YAAY,EAAE,QAAQ,EAAE,WAAW,CAAC;EAC3DmB,WAAW,eAAE3B,MAAM,CAAC4B,QAAQ,CAAC5B,MAAM,CAACU,MAAM,CAAC;EAC3CmB,KAAK,eAAE7B,MAAM,CAAC4B,QAAQ,CAAC5B,MAAM,CAAC8B,MAAM;CACrC,CAAC;EACA;;;EAGS,CAAC7B,MAAM,IAAYA,MAAM;EAElC;;;;;;;;;;;;;;;;;;;;;EAqBA,OAAO0C,iBAAiBA,CAAC;IAAEX,KAAK;IAAE,GAAGC;EAAM,CAI1C;IACC,OAAO,IAAIQ,iBAAiB,CAAC;MAC3B,GAAGR,MAAM;MACTJ,KAAK,EAAEG,KAAK;MACZL,WAAW,EAAEK,KAAK,CAACL,WAAW;MAC9BF,MAAM,EAAEO,KAAK,CAACP,MAAM;MACpBC,OAAO,EAAE;QACPZ,IAAI,EAAEkB,KAAK,CAACN,OAAO,CAACZ,IAAI;QACxBE,OAAO,EAAEgB,KAAK,CAACN,OAAO,CAACV,OAAO;QAC9BT,MAAM,EAAEyB,KAAK,CAACN,OAAO,CAACnB,MAAM;QAC5BE,GAAG,EAAEuB,KAAK,CAACN,OAAO,CAACjB,GAAG;QACtBE,SAAS,EAAEqB,KAAK,CAACN,OAAO,CAACf;OAC1B;MACD+B,QAAQ,EAAE;QACR1B,OAAO,EAAEgB,KAAK,CAACU,QAAQ,CAAC1B,OAAO;QAC/BuB,MAAM,EAAEP,KAAK,CAACU,QAAQ,CAACH;;KAE1B,CAAC;EACJ;EAEA,IAAIL,OAAOA,CAAA;IACT,MAAMU,eAAe,GAAG,GAAG,IAAI,CAACF,QAAQ,CAACH,MAAM,IAAI,IAAI,CAACb,OAAO,CAACnB,MAAM,IAAI,IAAI,CAACmB,OAAO,CAACjB,GAAG,EAAE;IAE5F,IAAI2B,WAAW,GAAG,IAAI,CAACT,WAAW,GAC9B,GAAG,IAAI,CAACF,MAAM,KAAK,IAAI,CAACE,WAAW,EAAE,GACrC,GAAG,IAAI,CAACF,MAAM,oCAAoC;IAEtDW,WAAW,IAAI,KAAKQ,eAAe,GAAG;IAEtC,IAAIP,UAAU,GAAG,EAAE;IACnB,QAAQ,IAAI,CAACZ,MAAM;MACjB,KAAK,QAAQ;QAAE;UACbY,UAAU,IAAI,uDAAuD,GACnE,iEAAiE,GACjE,oDAAoD;UACtD;QACF;MACA,KAAK,WAAW;QAAE;UAChBA,UAAU,IAAI,0DAA0D,GACtE,oFAAoF;UACtF;QACF;MACA,KAAK,YAAY;QAAE;UACjBA,UAAU,IAAIQ,uBAAuB,CAAC,IAAI,CAACH,QAAQ,CAACH,MAAM,CAAC;UAC3D;QACF;IACF;IAEAH,WAAW,IAAI,mBAAmBC,UAAU,EAAE;IAE9C,OAAOD,WAAW;EACpB;;AAGF;AACA;AACA;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BA,OAAM,MAAOU,cAAe,sBAAQ9C,MAAM,CAACuB,WAAW,CACpD,mCAAmC,CACpC,CAAC,gBAAgB,EAAE;EAClBC,MAAM,EAAExB,MAAM,CAACU,MAAM;EACrBH,MAAM,EAAEP,MAAM,CAACU,MAAM;EACrBiB,WAAW,eAAE3B,MAAM,CAAC4B,QAAQ,CAAC5B,MAAM,CAACU,MAAM,CAAC;EAC3CmB,KAAK,eAAE7B,MAAM,CAAC4B,QAAQ,CAAC5B,MAAM,CAAC8B,MAAM;CACrC,CAAC;EACA;;;EAGS,CAAC7B,MAAM,IAAYA,MAAM;;AAGpC;AACA;AACA;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuCA,OAAM,MAAO8C,eAAgB,sBAAQ/C,MAAM,CAACuB,WAAW,CACrD,oCAAoC,CACrC,CAAC,iBAAiB,EAAE;EACnBC,MAAM,EAAExB,MAAM,CAACU,MAAM;EACrBH,MAAM,EAAEP,MAAM,CAACU,MAAM;EACrBiB,WAAW,eAAE3B,MAAM,CAAC4B,QAAQ,CAAC5B,MAAM,CAACU,MAAM,CAAC;EAC3CmB,KAAK,eAAE7B,MAAM,CAAC4B,QAAQ,CAAC5B,MAAM,CAAC8B,MAAM;CACrC,CAAC;EACA;;;EAGS,CAAC7B,MAAM,IAAYA,MAAM;EAElC;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4BA,OAAO+C,cAAcA,CAAC;IAAEhB,KAAK;IAAE,GAAGC;EAAM,CAKvC;IACC;IACA,OAAO,IAAIc,eAAe,CAAC;MACzB,GAAGd,MAAM;MACTJ,KAAK,EAAEG;KACR,CAAC;EACJ;;AAGF;AACA;AACA;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsCA,OAAM,MAAOiB,YAAa,sBAAQjD,MAAM,CAACuB,WAAW,CAClD,yBAAyB,CAC1B,CAAC,cAAc,EAAE;EAChBC,MAAM,EAAExB,MAAM,CAACU,MAAM;EACrBH,MAAM,EAAEP,MAAM,CAACU,MAAM;EACrBiB,WAAW,eAAE3B,MAAM,CAAC4B,QAAQ,CAAC5B,MAAM,CAACU,MAAM,CAAC;EAC3CmB,KAAK,eAAE7B,MAAM,CAAC4B,QAAQ,CAAC5B,MAAM,CAAC8B,MAAM;CACrC,CAAC;EACA;;;EAGS,CAAC7B,MAAM,IAAYA,MAAM;EAElC;;;EAGA,IAAIiC,OAAOA,CAAA;IACT,MAAMgB,YAAY,GAAG,GAAG,IAAI,CAAC1B,MAAM,IAAI,IAAI,CAACjB,MAAM,EAAE;IACpD,OAAOR,SAAS,CAACoD,WAAW,CAAC,IAAI,CAACxB,WAAW,CAAC,GAC1C,GAAGuB,YAAY,qBAAqB,GACpC,GAAGA,YAAY,KAAK,IAAI,CAACvB,WAAW,EAAE;EAC5C;;AA+CF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BA,OAAO,MAAMyB,OAAO,gBAMfpD,MAAM,CAACqD,KAAK,CACf/B,gBAAgB,EAChBmB,iBAAiB,EACjBK,cAAc,EACdC,eAAe,EACfE,YAAY,CACb;AAED;AACA;AACA;AAEA,MAAMJ,uBAAuB,GAAIS,UAAkB,IAAY;EAC7D,IAAIA,UAAU,IAAI,GAAG,IAAIA,UAAU,GAAG,GAAG,EAAE;IACzC,QAAQA,UAAU;MAChB,KAAK,GAAG;QACN,OAAO,6FAA6F;MACtG,KAAK,GAAG;QACN,OAAO,iFAAiF;MAC1F,KAAK,GAAG;QACN,OAAO,6EAA6E;MACtF,KAAK,GAAG;QACN,OAAO,6EAA6E;MACtF,KAAK,GAAG;QACN,OAAO,qFAAqF;MAC9F,KAAK,GAAG;QACN,OAAO,0FAA0F;MACnG,KAAK,GAAG;QACN,OAAO,2EAA2E;MACpF;QACE,OAAO,0EAA0E;IACrF;EACF,CAAC,MAAM,IAAIA,UAAU,IAAI,GAAG,EAAE;IAC5B,OAAO,0FAA0F;EACnG,CAAC,MAAM;IACL,OAAO,+CAA+C;EACxD;AACF,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"AiError.js","names":["Effect","Inspectable","Predicate","Schema","TypeId","isAiError","u","hasProperty","HttpRequestDetails","Struct","method","Literal","url","String","urlParams","Array","Tuple","hash","Option","headers","Record","key","value","annotations","identifier","HttpRequestError","TaggedError","module","reason","request","description","optional","cause","Defect","fromRequestError","error","params","message","methodAndUrl","baseMessage","suggestion","HttpResponseDetails","status","Number","HttpResponseError","response","body","fromResponseError","void","contentType","includes","json","text","flatMap","merge","format","methodUrlStatus","getStatusCodeSuggestion","isNotUndefined","MalformedInput","MalformedOutput","fromParseError","UnknownError","moduleMethod","isUndefined","AiError","Union","statusCode"],"sources":["../../src/AiError.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/dist/esm/Chat.js CHANGED
@@ -4,10 +4,12 @@ import * as Context from "effect/Context";
4
4
  import * as Effect from "effect/Effect";
5
5
  import * as Layer from "effect/Layer";
6
6
  import * as Option from "effect/Option";
7
+ import * as Predicate from "effect/Predicate";
7
8
  import * as Ref from "effect/Ref";
8
9
  import * as Schema from "effect/Schema";
9
10
  import * as Stream from "effect/Stream";
10
11
  import * as AiError from "./AiError.js";
12
+ import * as IdGenerator from "./IdGenerator.js";
11
13
  import * as LanguageModel from "./LanguageModel.js";
12
14
  import * as Prompt from "./Prompt.js";
13
15
  /**
@@ -295,16 +297,65 @@ export class Persistence extends /*#__PURE__*/Context.Tag("@effect/ai/Chat/Persi
295
297
  export const makePersisted = /*#__PURE__*/Effect.fnUntraced(function* (options) {
296
298
  const persistence = yield* BackingPersistence;
297
299
  const store = yield* persistence.make(options.storeId);
298
- const toPersisted = (chatId, chat) => {
299
- const persistChat = chat.exportJson.pipe(Effect.flatMap(history => store.set(chatId, history, Option.none())), Effect.orDie);
300
- return {
300
+ const toPersisted = Effect.fnUntraced(function* (chatId, chat) {
301
+ const idGenerator = yield* Effect.serviceOption(IdGenerator.IdGenerator).pipe(Effect.map(Option.getOrElse(() => IdGenerator.defaultIdGenerator)));
302
+ const saveChat = Effect.fnUntraced(function* (prevHistory) {
303
+ // Get the current chat history
304
+ const history = yield* Ref.get(chat.history);
305
+ // Get the most recent message stored in the previous chat history
306
+ const lastMessage = prevHistory.content[prevHistory.content.length - 1];
307
+ // Determine the correct message identifier to use:
308
+ let messageId = undefined;
309
+ // If the most recent message in the chat history is an assistant message,
310
+ // use the message identifer stored in that message
311
+ if (Predicate.isNotUndefined(lastMessage) && lastMessage.role === "assistant") {
312
+ messageId = lastMessage.options[Persistence.key]?.messageId;
313
+ }
314
+ // If the chat history is empty or a message identifier did not exist on
315
+ // the most recent message in the chat history, generate a new identifier
316
+ if (Predicate.isUndefined(messageId)) {
317
+ messageId = yield* idGenerator.generateId();
318
+ }
319
+ // Mutate the new messages to add the generated message identifier
320
+ for (let i = prevHistory.content.length; i < history.content.length; i++) {
321
+ const message = history.content[i];
322
+ message.options[Persistence.key] = {
323
+ messageId
324
+ };
325
+ }
326
+ // Save the mutated history back to the ref
327
+ yield* Ref.set(chat.history, history);
328
+ // Export the chat to JSON
329
+ const json = yield* chat.exportJson;
330
+ // Save the chat to the backing store
331
+ yield* store.set(chatId, json, Option.none());
332
+ }, Effect.catchTag("PersistenceError", error => {
333
+ // Should never happen because we are using the backing persistence
334
+ // store directly, and parse errors can only occur when using result
335
+ // persistence
336
+ if (error.reason === "ParseError") return Effect.die(error);
337
+ return Effect.fail(error);
338
+ }));
339
+ const persisted = {
301
340
  ...chat,
302
341
  id: chatId,
303
- generateText: options => chat.generateText(options).pipe(Effect.ensuring(persistChat)),
304
- generateObject: options => chat.generateObject(options).pipe(Effect.ensuring(persistChat)),
305
- streamText: options => chat.streamText(options).pipe(Stream.ensuring(persistChat))
342
+ save: Effect.flatMap(Ref.get(chat.history), saveChat),
343
+ generateText: Effect.fnUntraced(function* (options) {
344
+ const history = yield* Ref.get(chat.history);
345
+ return yield* chat.generateText(options).pipe(Effect.ensuring(Effect.orDie(saveChat(history))));
346
+ }),
347
+ generateObject: Effect.fnUntraced(function* (options) {
348
+ const history = yield* Ref.get(chat.history);
349
+ return yield* chat.generateObject(options).pipe(Effect.ensuring(Effect.orDie(saveChat(history))));
350
+ }),
351
+ streamText: Effect.fnUntraced(function* (options) {
352
+ const history = yield* Ref.get(chat.history);
353
+ const stream = chat.streamText(options).pipe(Stream.ensuring(Effect.orDie(saveChat(history))));
354
+ return stream;
355
+ }, Stream.unwrap)
306
356
  };
307
- };
357
+ return persisted;
358
+ });
308
359
  const createChat = Effect.fnUntraced(function* (chatId) {
309
360
  // Create an empty chat
310
361
  const chat = yield* empty;
@@ -312,7 +363,7 @@ export const makePersisted = /*#__PURE__*/Effect.fnUntraced(function* (options)
312
363
  const history = yield* chat.exportJson;
313
364
  yield* store.set(chatId, history, Option.none());
314
365
  // Convert the chat to a persisted chat
315
- return toPersisted(chatId, chat);
366
+ return yield* toPersisted(chatId, chat);
316
367
  }, Effect.catchTag("PersistenceError", error => {
317
368
  // Should never happen because we are using the backing persistence
318
369
  // store directly, and parse errors can only occur when using result
@@ -328,7 +379,7 @@ export const makePersisted = /*#__PURE__*/Effect.fnUntraced(function* (options)
328
379
  chatId
329
380
  })), Effect.flatMap(history => Ref.set(chat.history, history)));
330
381
  // Convert the chat to a persisted chat
331
- return toPersisted(chatId, chat);
382
+ return yield* toPersisted(chatId, chat);
332
383
  }, Effect.catchTags({
333
384
  ParseError: error => Effect.die(error),
334
385
  PersistenceError: error => {
@@ -1 +1 @@
1
- {"version":3,"file":"Chat.js","names":["BackingPersistence","Channel","Context","Effect","Layer","Option","Ref","Schema","Stream","AiError","LanguageModel","Prompt","Chat","Tag","empty","gen","history","make","context","semaphore","makeSemaphore","provideContext","effect","mapInputContext","input","merge","provideContextStream","stream","encodeHistory","encode","encodeHistoryJson","FromJson","of","export","get","pipe","flatMap","catchTag","error","MalformedOutput","fromParseError","module","method","description","withSpan","exportJson","generateText","fnUntraced","options","newPrompt","prompt","oldPrompt","response","newHistory","fromResponseParts","content","set","withPermits","captureStackTrace","streamText","combined","fromChannel","acquireUseRelease","take","zipRight","map","mapChunksEffect","chunk","parts","Array","from","toChannel","release","unwrap","generateObject","attributes","objectName","schema","_tag","identifier","fromPrompt","chat","decodeUnknown","fromExport","data","decodeHistoryJson","fromJson","ChatNotFoundError","TaggedError","chatId","String","Persistence","makePersisted","persistence","store","storeId","toPersisted","persistChat","none","orDie","id","ensuring","createChat","reason","die","fail","getChat","transposeMapOption","flatten","catchTags","ParseError","PersistenceError","fn","getOrCreate","layerPersisted","scoped"],"sources":["../../src/Chat.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Chat.js","names":["BackingPersistence","Channel","Context","Effect","Layer","Option","Predicate","Ref","Schema","Stream","AiError","IdGenerator","LanguageModel","Prompt","Chat","Tag","empty","gen","history","make","context","semaphore","makeSemaphore","provideContext","effect","mapInputContext","input","merge","provideContextStream","stream","encodeHistory","encode","encodeHistoryJson","FromJson","of","export","get","pipe","flatMap","catchTag","error","MalformedOutput","fromParseError","module","method","description","withSpan","exportJson","generateText","fnUntraced","options","newPrompt","prompt","oldPrompt","response","newHistory","fromResponseParts","content","set","withPermits","captureStackTrace","streamText","combined","fromChannel","acquireUseRelease","take","zipRight","map","mapChunksEffect","chunk","parts","Array","from","toChannel","release","unwrap","generateObject","attributes","objectName","schema","_tag","identifier","fromPrompt","chat","decodeUnknown","fromExport","data","decodeHistoryJson","fromJson","ChatNotFoundError","TaggedError","chatId","String","Persistence","makePersisted","persistence","store","storeId","toPersisted","idGenerator","serviceOption","getOrElse","defaultIdGenerator","saveChat","prevHistory","lastMessage","length","messageId","undefined","isNotUndefined","role","key","isUndefined","generateId","i","message","json","none","reason","die","fail","persisted","id","save","ensuring","orDie","createChat","getChat","transposeMapOption","flatten","catchTags","ParseError","PersistenceError","fn","getOrCreate","layerPersisted","scoped"],"sources":["../../src/Chat.ts"],"sourcesContent":[null],"mappings":"AAiDA,SAASA,kBAAkB,QAAQ,kCAAkC;AACrE,OAAO,KAAKC,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,OAAO,MAAM,gBAAgB;AACzC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,KAAK,MAAM,cAAc;AACrC,OAAO,KAAKC,MAAM,MAAM,eAAe;AAEvC,OAAO,KAAKC,SAAS,MAAM,kBAAkB;AAC7C,OAAO,KAAKC,GAAG,MAAM,YAAY;AACjC,OAAO,KAAKC,MAAM,MAAM,eAAe;AACvC,OAAO,KAAKC,MAAM,MAAM,eAAe;AAEvC,OAAO,KAAKC,OAAO,MAAM,cAAc;AACvC,OAAO,KAAKC,WAAW,MAAM,kBAAkB;AAC/C,OAAO,KAAKC,aAAa,MAAM,oBAAoB;AACnD,OAAO,KAAKC,MAAM,MAAM,aAAa;AAIrC;;;;;;;;;;;;;;;;;;;;;;;;AAwBA,OAAM,MAAOC,IAAK,sBAAQZ,OAAO,CAACa,GAAG,CAAC,iBAAiB,CAAC,EAGrD;AAsMH;AACA;AACA;AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BA,OAAO,MAAMC,KAAK,gBAA2Bb,MAAM,CAACc,GAAG,CAAC,aAAS;EAC/D,MAAMC,OAAO,GAAG,OAAOX,GAAG,CAACY,IAAI,CAACN,MAAM,CAACG,KAAK,CAAC;EAC7C,MAAMI,OAAO,GAAG,OAAOjB,MAAM,CAACiB,OAAO,EAAS;EAC9C,MAAMC,SAAS,GAAG,OAAOlB,MAAM,CAACmB,aAAa,CAAC,CAAC,CAAC;EAEhD,MAAMC,cAAc,GAAaC,MAA8B,IAC7DrB,MAAM,CAACsB,eAAe,CAACD,MAAM,EAAGE,KAAK,IAAKxB,OAAO,CAACyB,KAAK,CAACP,OAAO,EAAEM,KAAK,CAAC,CAAC;EAC1E,MAAME,oBAAoB,GAAaC,MAA8B,IACnEpB,MAAM,CAACgB,eAAe,CAACI,MAAM,EAAGH,KAAK,IAAKxB,OAAO,CAACyB,KAAK,CAACP,OAAO,EAAEM,KAAK,CAAC,CAAC;EAE1E,MAAMI,aAAa,GAAGtB,MAAM,CAACuB,MAAM,CAAClB,MAAM,CAACA,MAAM,CAAC;EAClD,MAAMmB,iBAAiB,GAAGxB,MAAM,CAACuB,MAAM,CAAClB,MAAM,CAACoB,QAAQ,CAAC;EAExD,OAAOnB,IAAI,CAACoB,EAAE,CAAC;IACbhB,OAAO;IACPiB,MAAM,EAAE5B,GAAG,CAAC6B,GAAG,CAAClB,OAAO,CAAC,CAACmB,IAAI,CAC3BlC,MAAM,CAACmC,OAAO,CAACR,aAAa,CAAC,EAC7B3B,MAAM,CAACoC,QAAQ,CAAC,YAAY,EAAGC,KAAK,IAClC9B,OAAO,CAAC+B,eAAe,CAACC,cAAc,CAAC;MACrCC,MAAM,EAAE,MAAM;MACdC,MAAM,EAAE,YAAY;MACpBC,WAAW,EAAE,+BAA+B;MAC5CL;KACD,CAAC,CAAC,EACLrC,MAAM,CAAC2C,QAAQ,CAAC,aAAa,CAAC,CAC/B;IACDC,UAAU,EAAExC,GAAG,CAAC6B,GAAG,CAAClB,OAAO,CAAC,CAACmB,IAAI,CAC/BlC,MAAM,CAACmC,OAAO,CAACN,iBAAiB,CAAC,EACjC7B,MAAM,CAACoC,QAAQ,CAAC,YAAY,EAAGC,KAAK,IAClC9B,OAAO,CAAC+B,eAAe,CAACC,cAAc,CAAC;MACrCC,MAAM,EAAE,MAAM;MACdC,MAAM,EAAE,YAAY;MACpBC,WAAW,EAAE,yCAAyC;MACtDL;KACD,CAAC,CAAC,EACLrC,MAAM,CAAC2C,QAAQ,CAAC,iBAAiB,CAAC,CACnC;IACDE,YAAY,EAAE7C,MAAM,CAAC8C,UAAU,CAC7B,WAAUC,OAAO;MACf,MAAMC,SAAS,GAAGtC,MAAM,CAACM,IAAI,CAAC+B,OAAO,CAACE,MAAM,CAAC;MAC7C,MAAMC,SAAS,GAAG,OAAO9C,GAAG,CAAC6B,GAAG,CAAClB,OAAO,CAAC;MACzC,MAAMkC,MAAM,GAAGvC,MAAM,CAACc,KAAK,CAAC0B,SAAS,EAAEF,SAAS,CAAC;MAEjD,MAAMG,QAAQ,GAAG,OAAO1C,aAAa,CAACoC,YAAY,CAAC;QAAE,GAAGE,OAAO;QAAEE;MAAM,CAAE,CAAC;MAE1E,MAAMG,UAAU,GAAG1C,MAAM,CAACc,KAAK,CAACyB,MAAM,EAAEvC,MAAM,CAAC2C,iBAAiB,CAACF,QAAQ,CAACG,OAAO,CAAC,CAAC;MACnF,OAAOlD,GAAG,CAACmD,GAAG,CAACxC,OAAO,EAAEqC,UAAU,CAAC;MAEnC,OAAOD,QAAQ;IACjB,CAAC,EACD/B,cAAc,EACdF,SAAS,CAACsC,WAAW,CAAC,CAAC,CAAC,EACxBxD,MAAM,CAAC2C,QAAQ,CAAC,mBAAmB,EAAE;MAAEc,iBAAiB,EAAE;IAAK,CAAE,CAAC,CACnE;IACDC,UAAU,EAAE1D,MAAM,CAAC8C,UAAU,CAC3B,WAAUC,OAAO;MACf,IAAIY,QAAQ,GAAkBjD,MAAM,CAACG,KAAK;MAC1C,OAAOP,MAAM,CAACsD,WAAW,CAAC9D,OAAO,CAAC+D,iBAAiB,CACjD3C,SAAS,CAAC4C,IAAI,CAAC,CAAC,CAAC,CAAC5B,IAAI,CACpBlC,MAAM,CAAC+D,QAAQ,CAAC3D,GAAG,CAAC6B,GAAG,CAAClB,OAAO,CAAC,CAAC,EACjCf,MAAM,CAACgE,GAAG,CAAEjD,OAAO,IAAKL,MAAM,CAACc,KAAK,CAACT,OAAO,EAAEL,MAAM,CAACM,IAAI,CAAC+B,OAAO,CAACE,MAAM,CAAC,CAAC,CAAC,CAC5E,EACAA,MAAM,IACLxC,aAAa,CAACiD,UAAU,CAAC;QAAE,GAAGX,OAAO;QAAEE;MAAM,CAAE,CAAC,CAACf,IAAI,CACnD5B,MAAM,CAAC2D,eAAe,CAACjE,MAAM,CAAC8C,UAAU,CAAC,WAAUoB,KAAK;QACtD,MAAMC,KAAK,GAAGC,KAAK,CAACC,IAAI,CAACH,KAAK,CAAC;QAC/BP,QAAQ,GAAGjD,MAAM,CAACc,KAAK,CAACmC,QAAQ,EAAEjD,MAAM,CAAC2C,iBAAiB,CAACc,KAAK,CAAC,CAAC;QAClE,OAAOD,KAAK;MACd,CAAC,CAAC,CAAC,EACH5D,MAAM,CAACgE,SAAS,CACjB,EACFH,KAAK,IACJnE,MAAM,CAAC+D,QAAQ,CACb3D,GAAG,CAACmD,GAAG,CAACxC,OAAO,EAAEL,MAAM,CAACc,KAAK,CAAC2C,KAAK,EAAER,QAAQ,CAAC,CAAC,EAC/CzC,SAAS,CAACqD,OAAO,CAAC,CAAC,CAAC,CACrB,CACJ,CAAC,CAACrC,IAAI,CACLT,oBAAoB,EACpBnB,MAAM,CAACqC,QAAQ,CAAC,iBAAiB,EAAE;QACjCc,iBAAiB,EAAE;OACpB,CAAC,CACH;IACH,CAAC,EACDnD,MAAM,CAACkE,MAAM,CACd;IACDC,cAAc,EAAEzE,MAAM,CAAC8C,UAAU,CAC/B,WAAUC,OAAO;MACf,MAAMC,SAAS,GAAGtC,MAAM,CAACM,IAAI,CAAC+B,OAAO,CAACE,MAAM,CAAC;MAC7C,MAAMC,SAAS,GAAG,OAAO9C,GAAG,CAAC6B,GAAG,CAAClB,OAAO,CAAC;MACzC,MAAMkC,MAAM,GAAGvC,MAAM,CAACc,KAAK,CAAC0B,SAAS,EAAEF,SAAS,CAAC;MAEjD,MAAMG,QAAQ,GAAG,OAAO1C,aAAa,CAACgE,cAAc,CAAC;QAAE,GAAG1B,OAAO;QAAEE;MAAM,CAAE,CAAC;MAE5E,MAAMG,UAAU,GAAG1C,MAAM,CAACc,KAAK,CAACyB,MAAM,EAAEvC,MAAM,CAAC2C,iBAAiB,CAACF,QAAQ,CAACG,OAAO,CAAC,CAAC;MACnF,OAAOlD,GAAG,CAACmD,GAAG,CAACxC,OAAO,EAAEqC,UAAU,CAAC;MAEnC,OAAOD,QAAQ;IACjB,CAAC,EACD/B,cAAc,EACdF,SAAS,CAACsC,WAAW,CAAC,CAAC,CAAC,EACxB,CAACnC,MAAM,EAAE0B,OAAO,KACd/C,MAAM,CAAC2C,QAAQ,CAACtB,MAAM,EAAE,qBAAqB,EAAE;MAC7CqD,UAAU,EAAE;QACVC,UAAU,EAAE,YAAY,IAAI5B,OAAO,GAC/BA,OAAO,CAAC4B,UAAU,GAClB,MAAM,IAAI5B,OAAO,CAAC6B,MAAM,GACxB7B,OAAO,CAAC6B,MAAM,CAACC,IAAI,GAClB9B,OAAO,CAAC6B,MAAc,CAACE,UAAU,IAAI;OAC3C;MACDrB,iBAAiB,EAAE;KACpB,CAAC;GAEP,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiDA,OAAO,MAAMsB,UAAU,gBAAG/E,MAAM,CAAC8C,UAAU,CACzC,WAAUG,MAAuB;EAC/B,MAAM+B,IAAI,GAAG,OAAOnE,KAAK;EACzB,OAAOT,GAAG,CAACmD,GAAG,CAACyB,IAAI,CAACjE,OAAO,EAAEL,MAAM,CAACM,IAAI,CAACiC,MAAM,CAAC,CAAC;EACjD,OAAO+B,IAAI;AACb,CAAC,CACF;AAED,MAAMC,aAAa,gBAAG5E,MAAM,CAAC4E,aAAa,CAACvE,MAAM,CAACA,MAAM,CAAC;AAEzD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmCA,OAAO,MAAMwE,UAAU,GAAIC,IAAa,IACtCnF,MAAM,CAACmC,OAAO,CAAC8C,aAAa,CAACE,IAAI,CAAC,EAAEJ,UAAU,CAAC;AAEjD,MAAMK,iBAAiB,gBAAG/E,MAAM,CAAC4E,aAAa,CAACvE,MAAM,CAACoB,QAAQ,CAAC;AAE/D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoCA,OAAO,MAAMuD,QAAQ,GAAIF,IAAY,IACnCnF,MAAM,CAACmC,OAAO,CAACiD,iBAAiB,CAACD,IAAI,CAAC,EAAEJ,UAAU,CAAC;AAErD;AACA;AACA;AAEA;;;;;;;AAOA,OAAM,MAAOO,iBAAkB,sBAAQjF,MAAM,CAACkF,WAAW,CACvD,mCAAmC,CACpC,CAAC,mBAAmB,EAAE;EAAEC,MAAM,EAAEnF,MAAM,CAACoF;AAAM,CAAE,CAAC;AAEjD;AACA;;;;;;AAMA,OAAM,MAAOC,WAAY,sBAAQ3F,OAAO,CAACa,GAAG,CAAC,2BAA2B,CAAC,EAGtE;AA4DH;;;;;;;;;AASA,OAAO,MAAM+E,aAAa,gBAAG3F,MAAM,CAAC8C,UAAU,CAAC,WAAUC,OAExD;EACC,MAAM6C,WAAW,GAAG,OAAO/F,kBAAkB;EAC7C,MAAMgG,KAAK,GAAG,OAAOD,WAAW,CAAC5E,IAAI,CAAC+B,OAAO,CAAC+C,OAAO,CAAC;EAEtD,MAAMC,WAAW,GAAG/F,MAAM,CAAC8C,UAAU,CAAC,WAAU0C,MAAc,EAAER,IAAa;IAC3E,MAAMgB,WAAW,GAAG,OAAOhG,MAAM,CAACiG,aAAa,CAACzF,WAAW,CAACA,WAAW,CAAC,CAAC0B,IAAI,CAC3ElC,MAAM,CAACgE,GAAG,CAAC9D,MAAM,CAACgG,SAAS,CAAC,MAAM1F,WAAW,CAAC2F,kBAAkB,CAAC,CAAC,CACnE;IAED,MAAMC,QAAQ,GAAGpG,MAAM,CAAC8C,UAAU,CAChC,WAAUuD,WAA0B;MAClC;MACA,MAAMtF,OAAO,GAAG,OAAOX,GAAG,CAAC6B,GAAG,CAAC+C,IAAI,CAACjE,OAAO,CAAC;MAC5C;MACA,MAAMuF,WAAW,GAAGD,WAAW,CAAC/C,OAAO,CAAC+C,WAAW,CAAC/C,OAAO,CAACiD,MAAM,GAAG,CAAC,CAAC;MACvE;MACA,IAAIC,SAAS,GAAuBC,SAAS;MAC7C;MACA;MACA,IAAItG,SAAS,CAACuG,cAAc,CAACJ,WAAW,CAAC,IAAIA,WAAW,CAACK,IAAI,KAAK,WAAW,EAAE;QAC7EH,SAAS,GAAGF,WAAW,CAACvD,OAAO,CAAC2C,WAAW,CAACkB,GAAG,CAAC,EAAEJ,SAA+B;MACnF;MACA;MACA;MACA,IAAIrG,SAAS,CAAC0G,WAAW,CAACL,SAAS,CAAC,EAAE;QACpCA,SAAS,GAAG,OAAOR,WAAW,CAACc,UAAU,EAAE;MAC7C;MACA;MACA,KAAK,IAAIC,CAAC,GAAGV,WAAW,CAAC/C,OAAO,CAACiD,MAAM,EAAEQ,CAAC,GAAGhG,OAAO,CAACuC,OAAO,CAACiD,MAAM,EAAEQ,CAAC,EAAE,EAAE;QACxE,MAAMC,OAAO,GAAGjG,OAAO,CAACuC,OAAO,CAACyD,CAAC,CAAC;QAChCC,OAAO,CAACjE,OAAe,CAAC2C,WAAW,CAACkB,GAAG,CAAC,GAAG;UAAEJ;QAAS,CAAE;MAC5D;MACA;MACA,OAAOpG,GAAG,CAACmD,GAAG,CAACyB,IAAI,CAACjE,OAAO,EAAEA,OAAO,CAAC;MACrC;MACA,MAAMkG,IAAI,GAAG,OAAOjC,IAAI,CAACpC,UAAU;MACnC;MACA,OAAOiD,KAAK,CAACtC,GAAG,CAACiC,MAAM,EAAEyB,IAAI,EAAE/G,MAAM,CAACgH,IAAI,EAAE,CAAC;IAC/C,CAAC,EACDlH,MAAM,CAACoC,QAAQ,CAAC,kBAAkB,EAAGC,KAAK,IAAI;MAC5C;MACA;MACA;MACA,IAAIA,KAAK,CAAC8E,MAAM,KAAK,YAAY,EAAE,OAAOnH,MAAM,CAACoH,GAAG,CAAC/E,KAAK,CAAC;MAC3D,OAAOrC,MAAM,CAACqH,IAAI,CAAChF,KAAK,CAAC;IAC3B,CAAC,CAAC,CACH;IAED,MAAMiF,SAAS,GAAc;MAC3B,GAAGtC,IAAI;MACPuC,EAAE,EAAE/B,MAAM;MACVgC,IAAI,EAAExH,MAAM,CAACmC,OAAO,CAAC/B,GAAG,CAAC6B,GAAG,CAAC+C,IAAI,CAACjE,OAAO,CAAC,EAAEqF,QAAQ,CAAC;MACrDvD,YAAY,EAAE7C,MAAM,CAAC8C,UAAU,CAAC,WAAUC,OAAO;QAC/C,MAAMhC,OAAO,GAAG,OAAOX,GAAG,CAAC6B,GAAG,CAAC+C,IAAI,CAACjE,OAAO,CAAC;QAC5C,OAAO,OAAOiE,IAAI,CAACnC,YAAY,CAACE,OAAO,CAAC,CAACb,IAAI,CAC3ClC,MAAM,CAACyH,QAAQ,CAACzH,MAAM,CAAC0H,KAAK,CAACtB,QAAQ,CAACrF,OAAO,CAAC,CAAC,CAAC,CACjD;MACH,CAAC,CAAC;MACF0D,cAAc,EAAEzE,MAAM,CAAC8C,UAAU,CAAC,WAAUC,OAAO;QACjD,MAAMhC,OAAO,GAAG,OAAOX,GAAG,CAAC6B,GAAG,CAAC+C,IAAI,CAACjE,OAAO,CAAC;QAC5C,OAAO,OAAOiE,IAAI,CAACP,cAAc,CAAC1B,OAAO,CAAC,CAACb,IAAI,CAC7ClC,MAAM,CAACyH,QAAQ,CAACzH,MAAM,CAAC0H,KAAK,CAACtB,QAAQ,CAACrF,OAAO,CAAC,CAAC,CAAC,CACjD;MACH,CAAC,CAAC;MACF2C,UAAU,EAAE1D,MAAM,CAAC8C,UAAU,CAAC,WAAUC,OAAO;QAC7C,MAAMhC,OAAO,GAAG,OAAOX,GAAG,CAAC6B,GAAG,CAAC+C,IAAI,CAACjE,OAAO,CAAC;QAC5C,MAAMW,MAAM,GAAGsD,IAAI,CAACtB,UAAU,CAACX,OAAO,CAAC,CAACb,IAAI,CAC1C5B,MAAM,CAACmH,QAAQ,CAACzH,MAAM,CAAC0H,KAAK,CAACtB,QAAQ,CAACrF,OAAO,CAAC,CAAC,CAAC,CACjD;QACD,OAAOW,MAAM;MACf,CAAC,EAAEpB,MAAM,CAACkE,MAAM;KACjB;IAED,OAAO8C,SAAS;EAClB,CAAC,CAAC;EAEF,MAAMK,UAAU,GAAG3H,MAAM,CAAC8C,UAAU,CAClC,WAAU0C,MAAc;IACtB;IACA,MAAMR,IAAI,GAAG,OAAOnE,KAAK;IAEzB;IACA,MAAME,OAAO,GAAG,OAAOiE,IAAI,CAACpC,UAAU;IACtC,OAAOiD,KAAK,CAACtC,GAAG,CAACiC,MAAM,EAAEzE,OAAO,EAAEb,MAAM,CAACgH,IAAI,EAAE,CAAC;IAEhD;IACA,OAAO,OAAOnB,WAAW,CAACP,MAAM,EAAER,IAAI,CAAC;EACzC,CAAC,EACDhF,MAAM,CAACoC,QAAQ,CAAC,kBAAkB,EAAGC,KAAK,IAAI;IAC5C;IACA;IACA;IACA,IAAIA,KAAK,CAAC8E,MAAM,KAAK,YAAY,EAAE,OAAOnH,MAAM,CAACoH,GAAG,CAAC/E,KAAK,CAAC;IAC3D,OAAOrC,MAAM,CAACqH,IAAI,CAAChF,KAAK,CAAC;EAC3B,CAAC,CAAC,CACH;EAED,MAAMuF,OAAO,GAAG5H,MAAM,CAAC8C,UAAU,CAC/B,WAAU0C,MAAc;IACtB;IACA,MAAMR,IAAI,GAAG,OAAOnE,KAAK;IAEzB;IACA,OAAOgF,KAAK,CAAC5D,GAAG,CAACuD,MAAM,CAAC,CAACtD,IAAI,CAC3BlC,MAAM,CAACmC,OAAO,CAACnC,MAAM,CAAC6H,kBAAkB,CAACzC,iBAAiB,CAAC,CAAC,EAC5DpF,MAAM,CAAC8H,OAAO,EACd9H,MAAM,CAACoC,QAAQ,CAAC,wBAAwB,EAAE,MAAM,IAAIkD,iBAAiB,CAAC;MAAEE;IAAM,CAAE,CAAC,CAAC,EAClFxF,MAAM,CAACmC,OAAO,CAAEpB,OAAO,IAAKX,GAAG,CAACmD,GAAG,CAACyB,IAAI,CAACjE,OAAO,EAAEA,OAAO,CAAC,CAAC,CAC5D;IAED;IACA,OAAO,OAAOgF,WAAW,CAACP,MAAM,EAAER,IAAI,CAAC;EACzC,CAAC,EACDhF,MAAM,CAAC+H,SAAS,CAAC;IACfC,UAAU,EAAG3F,KAAK,IAAKrC,MAAM,CAACoH,GAAG,CAAC/E,KAAK,CAAC;IACxC4F,gBAAgB,EAAG5F,KAAK,IAAI;MAC1B;MACA;MACA;MACA,IAAIA,KAAK,CAAC8E,MAAM,KAAK,YAAY,EAAE,OAAOnH,MAAM,CAACoH,GAAG,CAAC/E,KAAK,CAAC;MAC3D,OAAOrC,MAAM,CAACqH,IAAI,CAAChF,KAAK,CAAC;IAC3B;GACD,CAAC,CACH;EAED,MAAMJ,GAAG,GAAGjC,MAAM,CAACkI,EAAE,CAAC,mBAAmB,CAAC,CAAC,WAAU1C,MAAc;IACjE,OAAO,OAAOoC,OAAO,CAACpC,MAAM,CAAC;EAC/B,CAAC,CAAC;EAEF,MAAM2C,WAAW,GAAGnI,MAAM,CAACkI,EAAE,CAAC,2BAA2B,CAAC,CAAC,WAAU1C,MAAc;IACjF,OAAO,OAAOoC,OAAO,CAACpC,MAAM,CAAC,CAACtD,IAAI,CAChClC,MAAM,CAACoC,QAAQ,CAAC,mBAAmB,EAAE,MAAMuF,UAAU,CAACnC,MAAM,CAAC,CAAC,CAC/D;EACH,CAAC,CAAC;EAEF,OAAOE,WAAW,CAAC3D,EAAE,CAAC;IACpBE,GAAG;IACHkG;GACD,CAAC;AACJ,CAAC,CAAC;AAEF;;;;;;;;;AASA,OAAO,MAAMC,cAAc,GAAIrF,OAE9B,IAA0D9C,KAAK,CAACoI,MAAM,CAAC3C,WAAW,EAAEC,aAAa,CAAC5C,OAAO,CAAC,CAAC","ignoreList":[]}
@@ -51,7 +51,11 @@
51
51
  *
52
52
  * @since 1.0.0
53
53
  */
54
+ import * as Arbitrary from "effect/Arbitrary";
55
+ import * as Arr from "effect/Array";
54
56
  import { constFalse, dual } from "effect/Function";
57
+ import * as ParseResult from "effect/ParseResult";
58
+ import { pipeArguments } from "effect/Pipeable";
55
59
  import * as Predicate from "effect/Predicate";
56
60
  import * as Schema from "effect/Schema";
57
61
  const constEmptyObject = () => ({});
@@ -260,6 +264,20 @@ export const makeMessage = (role, params) => ({
260
264
  role,
261
265
  options: params.options ?? {}
262
266
  });
267
+ /**
268
+ * Schema for decoding message content (i.e. an array containing a single
269
+ * `TextPart`) from a string.
270
+ *
271
+ * @since 1.0.0
272
+ * @category Schemas
273
+ */
274
+ export const MessageContentFromString = /*#__PURE__*/Schema.transform(Schema.String, /*#__PURE__*/Schema.NonEmptyArray(/*#__PURE__*/Schema.typeSchema(TextPart)), {
275
+ strict: true,
276
+ decode: text => Arr.of(makePart("text", {
277
+ text
278
+ })),
279
+ encode: content => content[0].text
280
+ });
263
281
  /**
264
282
  * Schema for validation and encoding of system messages.
265
283
  *
@@ -283,7 +301,7 @@ export const SystemMessage = /*#__PURE__*/Schema.Struct({
283
301
  */
284
302
  export const UserMessage = /*#__PURE__*/Schema.Struct({
285
303
  role: Schema.Literal("user"),
286
- content: Schema.Array(Schema.Union(TextPart, FilePart)),
304
+ content: Schema.Union(MessageContentFromString, Schema.Array(Schema.Union(TextPart, FilePart))),
287
305
  options: Schema.optionalWith(ProviderOptions, {
288
306
  default: constEmptyObject
289
307
  })
@@ -298,7 +316,7 @@ export const UserMessage = /*#__PURE__*/Schema.Struct({
298
316
  */
299
317
  export const AssistantMessage = /*#__PURE__*/Schema.Struct({
300
318
  role: Schema.Literal("assistant"),
301
- content: Schema.Array(Schema.Union(TextPart, FilePart, ReasoningPart, ToolCallPart, ToolResultPart)),
319
+ content: Schema.Union(MessageContentFromString, Schema.Array(Schema.Union(TextPart, FilePart, ReasoningPart, ToolCallPart, ToolResultPart))),
302
320
  options: Schema.optionalWith(ProviderOptions, {
303
321
  default: constEmptyObject
304
322
  })
@@ -344,17 +362,50 @@ export const TypeId = "~@effect/ai/Prompt";
344
362
  * @category Guards
345
363
  */
346
364
  export const isPrompt = u => Predicate.hasProperty(u, TypeId);
365
+ /**
366
+ * Describes a schema that represents a `Prompt` instance.
367
+ *
368
+ * @since 1.0.0
369
+ * @category Schemas
370
+ */
371
+ export class PromptFromSelf extends /*#__PURE__*/Schema.declare(u => isPrompt(u), {
372
+ identifier: "PromptFromSelf",
373
+ description: "a Prompt instance",
374
+ arbitrary: () => fc => fc.array(Arbitrary.makeLazy(Message)(fc)).map(makePrompt)
375
+ }) {}
347
376
  /**
348
377
  * Schema for validation and encoding of prompts.
349
378
  *
350
379
  * @since 1.0.0
351
380
  * @category Schemas
352
381
  */
353
- export const Prompt = /*#__PURE__*/Schema.Struct({
354
- content: Schema.Array(Message)
355
- }).pipe(/*#__PURE__*/Schema.attachPropertySignature(TypeId, TypeId), /*#__PURE__*/Schema.annotations({
382
+ export const Prompt = /*#__PURE__*/Schema.transformOrFail(Schema.Struct({
383
+ content: Schema.Array(Schema.encodedSchema(Message))
384
+ }), PromptFromSelf, {
385
+ strict: true,
386
+ decode: (i, _, ast) => decodePrompt(i, ast),
387
+ encode: (a, _, ast) => encodePrompt(a, ast)
388
+ }).annotations({
356
389
  identifier: "Prompt"
357
- }));
390
+ });
391
+ const decodeMessages = /*#__PURE__*/ParseResult.decodeEither(/*#__PURE__*/Schema.Array(Message));
392
+ const encodeMessages = /*#__PURE__*/ParseResult.encodeEither(/*#__PURE__*/Schema.Array(Message));
393
+ const decodePrompt = (input, ast) => ParseResult.mapBoth(decodeMessages(input.content), {
394
+ onFailure: () => new ParseResult.Type(ast, input, `Unable to decode ${JSON.stringify(input)} into a Prompt`),
395
+ onSuccess: makePrompt
396
+ });
397
+ const encodePrompt = (input, ast) => ParseResult.mapBoth(encodeMessages(input.content), {
398
+ onFailure: () => new ParseResult.Type(ast, input, `Failed to encode Prompt`),
399
+ onSuccess: messages => ({
400
+ content: messages
401
+ })
402
+ });
403
+ // export const Prompt: Schema.Schema<Prompt, PromptEncoded> = Schema.Struct({
404
+ // content: Schema.Array(Message)
405
+ // }).pipe(
406
+ // Schema.attachPropertySignature(TypeId, TypeId),
407
+ // Schema.annotations({ identifier: "Prompt" })
408
+ // )
358
409
  /**
359
410
  * Schema for parsing a Prompt from JSON strings.
360
411
  *
@@ -362,8 +413,13 @@ export const Prompt = /*#__PURE__*/Schema.Struct({
362
413
  * @category Schemas
363
414
  */
364
415
  export const FromJson = /*#__PURE__*/Schema.parseJson(Prompt);
365
- const makePrompt = content => ({
416
+ const Proto = {
366
417
  [TypeId]: TypeId,
418
+ pipe() {
419
+ return pipeArguments(this, arguments);
420
+ }
421
+ };
422
+ const makePrompt = content => Object.assign(Object.create(Proto), {
367
423
  content
368
424
  });
369
425
  const decodeMessagesSync = /*#__PURE__*/Schema.decodeSync(/*#__PURE__*/Schema.Array(Message));
@@ -420,7 +476,7 @@ export const make = input => {
420
476
  return makePrompt([message]);
421
477
  }
422
478
  if (Predicate.isIterable(input)) {
423
- return makePrompt(decodeMessagesSync(Array.from(input), {
479
+ return makePrompt(decodeMessagesSync(Arr.fromIterable(input), {
424
480
  errors: "all"
425
481
  }));
426
482
  }
@@ -513,13 +569,14 @@ export const fromResponseParts = parts => {
513
569
  if (parts.length === 0) {
514
570
  return empty;
515
571
  }
516
- const content = [];
572
+ const assistantParts = [];
573
+ const toolParts = [];
517
574
  const textDeltas = [];
518
575
  function flushTextDeltas() {
519
576
  if (textDeltas.length > 0) {
520
577
  const text = textDeltas.join("");
521
578
  if (text.length > 0) {
522
- content.push(makePart("text", {
579
+ assistantParts.push(makePart("text", {
523
580
  text
524
581
  }));
525
582
  }
@@ -531,7 +588,7 @@ export const fromResponseParts = parts => {
531
588
  if (reasoningDeltas.length > 0) {
532
589
  const text = reasoningDeltas.join("");
533
590
  if (text.length > 0) {
534
- content.push(makePart("reasoning", {
591
+ assistantParts.push(makePart("reasoning", {
535
592
  text
536
593
  }));
537
594
  }
@@ -548,7 +605,7 @@ export const fromResponseParts = parts => {
548
605
  case "text":
549
606
  {
550
607
  flushDeltas();
551
- content.push(makePart("text", {
608
+ assistantParts.push(makePart("text", {
552
609
  text: part.text
553
610
  }));
554
611
  break;
@@ -562,7 +619,7 @@ export const fromResponseParts = parts => {
562
619
  case "reasoning":
563
620
  {
564
621
  flushDeltas();
565
- content.push(makePart("reasoning", {
622
+ assistantParts.push(makePart("reasoning", {
566
623
  text: part.text
567
624
  }));
568
625
  break;
@@ -576,7 +633,7 @@ export const fromResponseParts = parts => {
576
633
  case "tool-call":
577
634
  {
578
635
  flushDeltas();
579
- content.push(makePart("tool-call", {
636
+ assistantParts.push(makePart("tool-call", {
580
637
  id: part.id,
581
638
  name: part.providerName ?? part.name,
582
639
  params: part.params,
@@ -587,7 +644,7 @@ export const fromResponseParts = parts => {
587
644
  case "tool-result":
588
645
  {
589
646
  flushDeltas();
590
- content.push(makePart("tool-result", {
647
+ toolParts.push(makePart("tool-result", {
591
648
  id: part.id,
592
649
  name: part.providerName ?? part.name,
593
650
  result: part.encodedResult
@@ -598,19 +655,65 @@ export const fromResponseParts = parts => {
598
655
  }
599
656
  }
600
657
  flushDeltas();
601
- const message = makeMessage("assistant", {
602
- content
603
- });
604
- 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);
605
673
  };
606
674
  // =============================================================================
607
675
  // Merging Prompts
608
676
  // =============================================================================
609
677
  /**
610
- * Merges two prompts by concatenating their messages.
678
+ * Merges a prompt with additional raw input by concatenating messages.
611
679
  *
612
- * Creates a new prompt containing all messages from both prompts, maintaining
613
- * the order of messages within each prompt.
680
+ * Creates a new prompt containing all messages from both the original prompt,
681
+ * and the provided raw input, maintaining the order of messages.
682
+ *
683
+ * @example
684
+ * ```ts
685
+ * import { Prompt } from "@effect/ai"
686
+ *
687
+ * const systemPrompt = Prompt.make([{
688
+ * role: "system",
689
+ * content: "You are a helpful assistant."
690
+ * }])
691
+ *
692
+ * const merged = Prompt.merge(systemPrompt, "Hello, world!")
693
+ * ```
694
+ *
695
+ * @since 1.0.0
696
+ * @category Combinators
697
+ */
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
+ });
708
+ // =============================================================================
709
+ // Manipulating Prompts
710
+ // =============================================================================
711
+ /**
712
+ * Creates a new prompt from the specified prompt with the system message set
713
+ * to the specified text content.
714
+ *
715
+ * **NOTE**: This method will remove and replace any previous system message
716
+ * from the prompt.
614
717
  *
615
718
  * @example
616
719
  * ```ts
@@ -623,11 +726,112 @@ export const fromResponseParts = parts => {
623
726
  *
624
727
  * const userPrompt = Prompt.make("Hello, world!")
625
728
  *
626
- * const merged = Prompt.merge(systemPrompt, userPrompt)
729
+ * const prompt = Prompt.merge(systemPrompt, userPrompt)
730
+ *
731
+ * const replaced = Prompt.setSystem(
732
+ * prompt,
733
+ * "You are an expert in programming"
734
+ * )
627
735
  * ```
628
736
  *
629
737
  * @since 1.0.0
630
738
  * @category Combinators
631
739
  */
632
- export const merge = /*#__PURE__*/dual(2, (self, other) => fromMessages([...self.content, ...other.content]));
740
+ export const setSystem = /*#__PURE__*/dual(2, (self, content) => {
741
+ const messages = [makeMessage("system", {
742
+ content
743
+ })];
744
+ for (const message of self.content) {
745
+ if (message.role !== "system") {
746
+ messages.push(message);
747
+ }
748
+ }
749
+ return makePrompt(messages);
750
+ });
751
+ /**
752
+ * Creates a new prompt from the specified prompt with the provided text content
753
+ * prepended to the start of existing system message content.
754
+ *
755
+ * If no system message exists in the specified prompt, the provided content
756
+ * will be used to create a system message.
757
+ *
758
+ * @example
759
+ * ```ts
760
+ * import { Prompt } from "@effect/ai"
761
+ *
762
+ * const systemPrompt = Prompt.make([{
763
+ * role: "system",
764
+ * content: "You are an expert in programming."
765
+ * }])
766
+ *
767
+ * const userPrompt = Prompt.make("Hello, world!")
768
+ *
769
+ * const prompt = Prompt.merge(systemPrompt, userPrompt)
770
+ *
771
+ * const replaced = Prompt.prependSystem(
772
+ * prompt,
773
+ * "You are a helpful assistant. "
774
+ * )
775
+ * ```
776
+ *
777
+ * @since 1.0.0
778
+ * @category Combinators
779
+ */
780
+ export const prependSystem = /*#__PURE__*/dual(2, (self, content) => {
781
+ const messages = [];
782
+ for (const message of self.content) {
783
+ if (message.role === "system") {
784
+ const system = makeMessage("system", {
785
+ content: content + message.content
786
+ });
787
+ messages.push(system);
788
+ } else {
789
+ messages.push(message);
790
+ }
791
+ }
792
+ return makePrompt(messages);
793
+ });
794
+ /**
795
+ * Creates a new prompt from the specified prompt with the provided text content
796
+ * appended to the end of existing system message content.
797
+ *
798
+ * If no system message exists in the specified prompt, the provided content
799
+ * will be used to create a system message.
800
+ *
801
+ * @example
802
+ * ```ts
803
+ * import { Prompt } from "@effect/ai"
804
+ *
805
+ * const systemPrompt = Prompt.make([{
806
+ * role: "system",
807
+ * content: "You are a helpful assistant."
808
+ * }])
809
+ *
810
+ * const userPrompt = Prompt.make("Hello, world!")
811
+ *
812
+ * const prompt = Prompt.merge(systemPrompt, userPrompt)
813
+ *
814
+ * const replaced = Prompt.appendSystem(
815
+ * prompt,
816
+ * " You are an expert in programming."
817
+ * )
818
+ * ```
819
+ *
820
+ * @since 1.0.0
821
+ * @category Combinators
822
+ */
823
+ export const appendSystem = /*#__PURE__*/dual(2, (self, content) => {
824
+ const messages = [];
825
+ for (const message of self.content) {
826
+ if (message.role === "system") {
827
+ const system = makeMessage("system", {
828
+ content: message.content + content
829
+ });
830
+ messages.push(system);
831
+ } else {
832
+ messages.push(message);
833
+ }
834
+ }
835
+ return makePrompt(messages);
836
+ });
633
837
  //# sourceMappingURL=Prompt.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Prompt.js","names":["constFalse","dual","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","SystemMessage","content","UserMessage","Array","AssistantMessage","ToolMessage","Message","TypeId","isPrompt","Prompt","FromJson","parseJson","makePrompt","decodeMessagesSync","decodeSync","empty","make","input","isString","part","message","isIterable","from","errors","fromMessages","messages","VALID_RESPONSE_PART_MAP","isValidPart","fromResponseParts","parts","length","textDeltas","flushTextDeltas","join","push","reasoningDeltas","flushReasoningDeltas","flushDeltas","delta","providerName","encodedResult","merge","self","other"],"sources":["../../src/Prompt.ts"],"sourcesContent":[null],"mappings":"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","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.