@langchain/langgraph 1.4.18 → 1.4.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/channels/base.cjs +2 -0
- package/dist/channels/base.cjs.map +1 -1
- package/dist/channels/base.js +2 -0
- package/dist/channels/base.js.map +1 -1
- package/dist/pregel/index.cjs +82 -46
- package/dist/pregel/index.cjs.map +1 -1
- package/dist/pregel/index.d.cts +19 -3
- package/dist/pregel/index.d.cts.map +1 -1
- package/dist/pregel/index.d.ts +19 -3
- package/dist/pregel/index.d.ts.map +1 -1
- package/dist/pregel/index.js +82 -46
- package/dist/pregel/index.js.map +1 -1
- package/dist/pregel/loop.cjs +2 -2
- package/dist/pregel/loop.cjs.map +1 -1
- package/dist/pregel/loop.js +2 -2
- package/dist/pregel/loop.js.map +1 -1
- package/package.json +7 -7
package/dist/pregel/index.d.cts
CHANGED
|
@@ -347,13 +347,27 @@ declare class Pregel<Nodes extends StrRecord<string, PregelNode>, Channels exten
|
|
|
347
347
|
* @returns AsyncGenerator yielding tuples of [name, subgraph]
|
|
348
348
|
*/
|
|
349
349
|
getSubgraphsAsync(namespace?: string, recurse?: boolean): AsyncGenerator<[string, Pregel<any, any>]>;
|
|
350
|
+
/**
|
|
351
|
+
* The checkpointer runs and state methods use: none for `checkpointer: false`,
|
|
352
|
+
* else the one a parent lends a subgraph through the config, else this
|
|
353
|
+
* graph's own.
|
|
354
|
+
*/
|
|
355
|
+
private _resolveCheckpointer;
|
|
356
|
+
private _stateCheckpointer;
|
|
357
|
+
/**
|
|
358
|
+
* A `checkpointer: true` subgraph keeps one history per thread, stored
|
|
359
|
+
* under its namespace with the task ids removed.
|
|
360
|
+
*/
|
|
361
|
+
private _ownCheckpointConfig;
|
|
362
|
+
private _subgraphForNamespace;
|
|
350
363
|
/**
|
|
351
364
|
* Prepares a state snapshot from saved checkpoint data.
|
|
352
365
|
* This is an internal method used by getState and getStateHistory.
|
|
353
366
|
*
|
|
354
367
|
* @param config - Configuration for preparing the snapshot
|
|
355
368
|
* @param saved - Optional saved checkpoint data
|
|
356
|
-
* @param
|
|
369
|
+
* @param saver - Checkpointer the caller resolved; a subgraph's own `checkpointer` is unset or `true`
|
|
370
|
+
* @param recurse - Whether to include each subgraph task's state
|
|
357
371
|
* @param applyPendingWrites - Whether to apply pending writes to tasks and then to channels
|
|
358
372
|
* @returns A snapshot of the graph state
|
|
359
373
|
* @internal
|
|
@@ -361,12 +375,14 @@ declare class Pregel<Nodes extends StrRecord<string, PregelNode>, Channels exten
|
|
|
361
375
|
protected _prepareStateSnapshot({
|
|
362
376
|
config,
|
|
363
377
|
saved,
|
|
364
|
-
|
|
378
|
+
saver,
|
|
379
|
+
recurse,
|
|
365
380
|
applyPendingWrites
|
|
366
381
|
}: {
|
|
367
382
|
config: RunnableConfig;
|
|
368
383
|
saved?: CheckpointTuple;
|
|
369
|
-
|
|
384
|
+
saver: BaseCheckpointSaver;
|
|
385
|
+
recurse?: boolean;
|
|
370
386
|
applyPendingWrites?: boolean;
|
|
371
387
|
}): Promise<StateSnapshot>;
|
|
372
388
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.cts","names":[],"sources":["../../src/pregel/index.ts"],"mappings":";;;;;;;;;;;;;;;;;KA2IK,UAAA,GAAa,QAAA,GAAW,YAAA;AAAA,KACxB,mBAAA,GAAsB,UAAA,CAAW,QAAA;AAAA,KACjC,qBAAA,eACW,SAAA,SAAkB,UAAA,oBACf,SAAA,SAAkB,WAAA,uBAEf,MAAA,qCAEE,aAAA,OAAoB,iBAAA,yEAExC,OAAA,CACF,IAAA,CAAK,aAAA,CAAc,KAAA,EAAO,QAAA,EAAU,WAAA;EAEpC,OAAA,QAba;EAeb,YAAA,GAAe,aAAA;AAAA,KACZ,SAAA;EACG,QAAA;AAAA;EACA,QAAA;AAAA;;;AAjBsC;;;;;cAwDjC,OAAA;EArDM;;;;;;;;;;;;;;;;;;;;;EAAA,OA2EV,WAAA,CACL,OAAA,UACA,OAAA,GAAU,gCAAA,GACT,UAAA;EA1EH;;;;;;;;;;;;;;;;;;AAiDF;;;EAjDE,OAiGO,WAAA,CACL,QAAA,YACA,OAAA,GAAU,kCAAA,GACT,UAAA;EA1BA;;;;;;;;;;;;;;;;;;;;;;;;;EAAA,OA6FI,OAAA,CACL,QAAA,YACA,MAAA,GAAS,MAAA,SAAe,UAAA,IACvB,YAAA;AAAA;AAAA,cAsCC,eAAA,0CAGgB,cAAA,UACZ,QAAA,CAAS,QAAA,EAAU,SAAA,EAAW,WAAA;EACtC,YAAA;EAES,MAAA,CACP,MAAA,EAAQ,QAAA,EACR,QAAA,GAAW,OAAA,CAAQ,WAAA,IAElB,OAAA;EAKM,UAAA,CAAW,OAAA,EAAS,WAAA;EAKpB,MAAA,CACP,KAAA,EAAO,QAAA,EACP,OAAA,GAAU,OAAA,CAAQ,WAAA,IAEjB,OAAA,CAAQ,sBAAA;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgEb;;;;;;;;;;;;;;;;;;cAAa,MAAA,eACG,SAAA,SAAkB,UAAA,oBACf,SAAA,SAAkB,WAAA,uBAEf,MAAA,gBAAsB,SAAA,2BAC9B,eAAA,eACC,gBAAA,sBACO,SAAA,qBACD,UAAA,0CAEL,eAAA,kDAIc,aAAA,OAAoB,iBAAA,qBAExC,eAAA,CACN,SAAA,GAAY,WAAA,SACZ,UAAA,EACA,aAAA,CAAc,KAAA,EAAO,QAAA,EAAU,WAAA,cAEtB,eAAA,CAAgB,KAAA,EAAO,QAAA,EAAU,WAAA;EAAA;EAFrB;;;;EAAA,OAQhB,OAAA,CAAA;EANqC;EAAA,cAWtB,SAAA;EAGC;EAAA,eAAA,UAAA;EAYb;EATV,YAAA;EAe4C;EAZ5C,YAAA;EAkBsB;EAftB,KAAA,EAAO,KAAA;EAe0B;EAZjC,QAAA,EAAU,QAAA;EAiCa;;;;EA3BvB,aAAA,QAAqB,QAAA,GAAW,KAAA,OAAY,QAAA;EAiCN;;;;EA3BtC,cAAA,QAAsB,QAAA,GAAW,KAAA,OAAY,QAAA;EAiD/B;EA9Cd,YAAA;EAsDQ;;;;;;;;;;EA1CR,UAAA,EAAY,UAAA;EAmJY;;;;EA7IxB,cAAA,SAAuB,QAAA,GAAW,KAAA,OAAY,QAAA;EAoJ5C;;;;EA9IF,cAAA,GAAiB,KAAA,OAAY,KAAA,IAAS,GAAA;EAmJpC;;;;EA7IF,eAAA,GAAkB,KAAA,OAAY,KAAA,IAAS,GAAA;EAkJR;EA/I/B,WAAA;EA+IU;EA5IV,KAAA;EA0M0B;;;;;EAnM1B,YAAA,GAAe,mBAAA;EAmO2B;EAhO1C,WAAA,GAAc,WAAA;EAiPX;EA9OH,MAAA,GAAS,uBAAA;EAySN;;;EApSH,KAAA,GAAQ,SAAA;
|
|
1
|
+
{"version":3,"file":"index.d.cts","names":[],"sources":["../../src/pregel/index.ts"],"mappings":"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"}
|
package/dist/pregel/index.d.ts
CHANGED
|
@@ -347,13 +347,27 @@ declare class Pregel<Nodes extends StrRecord<string, PregelNode>, Channels exten
|
|
|
347
347
|
* @returns AsyncGenerator yielding tuples of [name, subgraph]
|
|
348
348
|
*/
|
|
349
349
|
getSubgraphsAsync(namespace?: string, recurse?: boolean): AsyncGenerator<[string, Pregel<any, any>]>;
|
|
350
|
+
/**
|
|
351
|
+
* The checkpointer runs and state methods use: none for `checkpointer: false`,
|
|
352
|
+
* else the one a parent lends a subgraph through the config, else this
|
|
353
|
+
* graph's own.
|
|
354
|
+
*/
|
|
355
|
+
private _resolveCheckpointer;
|
|
356
|
+
private _stateCheckpointer;
|
|
357
|
+
/**
|
|
358
|
+
* A `checkpointer: true` subgraph keeps one history per thread, stored
|
|
359
|
+
* under its namespace with the task ids removed.
|
|
360
|
+
*/
|
|
361
|
+
private _ownCheckpointConfig;
|
|
362
|
+
private _subgraphForNamespace;
|
|
350
363
|
/**
|
|
351
364
|
* Prepares a state snapshot from saved checkpoint data.
|
|
352
365
|
* This is an internal method used by getState and getStateHistory.
|
|
353
366
|
*
|
|
354
367
|
* @param config - Configuration for preparing the snapshot
|
|
355
368
|
* @param saved - Optional saved checkpoint data
|
|
356
|
-
* @param
|
|
369
|
+
* @param saver - Checkpointer the caller resolved; a subgraph's own `checkpointer` is unset or `true`
|
|
370
|
+
* @param recurse - Whether to include each subgraph task's state
|
|
357
371
|
* @param applyPendingWrites - Whether to apply pending writes to tasks and then to channels
|
|
358
372
|
* @returns A snapshot of the graph state
|
|
359
373
|
* @internal
|
|
@@ -361,12 +375,14 @@ declare class Pregel<Nodes extends StrRecord<string, PregelNode>, Channels exten
|
|
|
361
375
|
protected _prepareStateSnapshot({
|
|
362
376
|
config,
|
|
363
377
|
saved,
|
|
364
|
-
|
|
378
|
+
saver,
|
|
379
|
+
recurse,
|
|
365
380
|
applyPendingWrites
|
|
366
381
|
}: {
|
|
367
382
|
config: RunnableConfig;
|
|
368
383
|
saved?: CheckpointTuple;
|
|
369
|
-
|
|
384
|
+
saver: BaseCheckpointSaver;
|
|
385
|
+
recurse?: boolean;
|
|
370
386
|
applyPendingWrites?: boolean;
|
|
371
387
|
}): Promise<StateSnapshot>;
|
|
372
388
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../../src/pregel/index.ts"],"mappings":";;;;;;;;;;;;;;;;;KA2IK,UAAA,GAAa,QAAA,GAAW,YAAA;AAAA,KACxB,mBAAA,GAAsB,UAAA,CAAW,QAAA;AAAA,KACjC,qBAAA,eACW,SAAA,SAAkB,UAAA,oBACf,SAAA,SAAkB,WAAA,uBAEf,MAAA,qCAEE,aAAA,OAAoB,iBAAA,yEAExC,OAAA,CACF,IAAA,CAAK,aAAA,CAAc,KAAA,EAAO,QAAA,EAAU,WAAA;EAEpC,OAAA,QAbG;EAeH,YAAA,GAAe,aAAA;AAAA,KACZ,SAAA;EACG,QAAA;AAAA;EACA,QAAA;AAAA;;;;AAjBsC;;;;cAwDjC,OAAA;EArDwB;;;;;;;;;;;;;;;;;;;;;EAAA,OA2E5B,WAAA,CACL,OAAA,UACA,OAAA,GAAU,gCAAA,GACT,UAAA;EA5EiB;;;;;;;;;;;;;;;;;;;AAmDtB;;EAnDsB,OAmGb,WAAA,CACL,QAAA,YACA,OAAA,GAAU,kCAAA,GACT,UAAA;EA3BS;;;;;;;;;;;;;;;;;;;;;;;;;EAAA,OA8FL,OAAA,CACL,QAAA,YACA,MAAA,GAAS,MAAA,SAAe,UAAA,IACvB,YAAA;AAAA;AAAA,cAsCC,eAAA,0CAGgB,cAAA,UACZ,QAAA,CAAS,QAAA,EAAU,SAAA,EAAW,WAAA;EACtC,YAAA;EAES,MAAA,CACP,MAAA,EAAQ,QAAA,EACR,QAAA,GAAW,OAAA,CAAQ,WAAA,IAElB,OAAA;EAKM,UAAA,CAAW,OAAA,EAAS,WAAA;EAKpB,MAAA,CACP,KAAA,EAAO,QAAA,EACP,OAAA,GAAU,OAAA,CAAQ,WAAA,IAEjB,OAAA,CAAQ,sBAAA;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgEb;;;;;;;;;;;;;;;;;cAAa,MAAA,eACG,SAAA,SAAkB,UAAA,oBACf,SAAA,SAAkB,WAAA,uBAEf,MAAA,gBAAsB,SAAA,2BAC9B,eAAA,eACC,gBAAA,sBACO,SAAA,qBACD,UAAA,0CAEL,eAAA,kDAIc,aAAA,OAAoB,iBAAA,qBAExC,eAAA,CACN,SAAA,GAAY,WAAA,SACZ,UAAA,EACA,aAAA,CAAc,KAAA,EAAO,QAAA,EAAU,WAAA,cAEtB,eAAA,CAAgB,KAAA,EAAO,QAAA,EAAU,WAAA;EAAA;EAF5B;;;;EAAA,OAQT,OAAA,CAAA;EAN2B;EAAA,cAWZ,SAAA;EAAA;EAAA,eAGC,UAAA;EAShB;EANP,YAAA;EAeqB;EAZrB,YAAA;EAYgC;EAThC,KAAA,EAAO,KAAA;EAesC;EAZ7C,QAAA,EAAU,QAAA;EA2BE;;;;EArBZ,aAAA,QAAqB,QAAA,GAAW,KAAA,OAAY,QAAA;EAiC3B;;;;EA3BjB,cAAA,QAAsB,QAAA,GAAW,KAAA,OAAY,QAAA;EA8C9B;EA3Cf,YAAA;EAiDS;;;;;;;;;;EArCT,UAAA,EAAY,UAAA;EAkJF;;;;EA5IV,cAAA,SAAuB,QAAA,GAAW,KAAA,OAAY,QAAA;EAmJ5C;;;;EA7IF,cAAA,GAAiB,KAAA,OAAY,KAAA,IAAS,GAAA;EAkJpC;;;;EA5IF,eAAA,GAAkB,KAAA,OAAY,KAAA,IAAS,GAAA;EAkJf;EA/IxB,WAAA;EA+IyC;EA5IzC,KAAA;EA0MsC;;;;;EAnMtC,YAAA,GAAe,mBAAA;EAmO2B;EAhO1C,WAAA,GAAc,WAAA;EAiPQ;EA9OtB,MAAA,GAAS,uBAAA;EAySkB;;;EApS3B,KAAA,GAAQ,SAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../src/pregel/index.ts"],"mappings":"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"}
|
package/dist/pregel/index.js
CHANGED
|
@@ -423,17 +423,62 @@ var Pregel = class extends PartialRunnable {
|
|
|
423
423
|
yield* this.getSubgraphs(namespace, recurse);
|
|
424
424
|
}
|
|
425
425
|
/**
|
|
426
|
+
* The checkpointer runs and state methods use: none for `checkpointer: false`,
|
|
427
|
+
* else the one a parent lends a subgraph through the config, else this
|
|
428
|
+
* graph's own.
|
|
429
|
+
*/
|
|
430
|
+
_resolveCheckpointer(config) {
|
|
431
|
+
if (this.checkpointer === false) return void 0;
|
|
432
|
+
const lent = config?.configurable?.[CONFIG_KEY_CHECKPOINTER];
|
|
433
|
+
if (lent !== void 0) return lent;
|
|
434
|
+
if (this.checkpointer === true) throw new Error("checkpointer: true cannot be used for root graphs.");
|
|
435
|
+
return this.checkpointer;
|
|
436
|
+
}
|
|
437
|
+
_stateCheckpointer(config) {
|
|
438
|
+
const checkpointer = this._resolveCheckpointer(config);
|
|
439
|
+
if (typeof checkpointer !== "object" || checkpointer === null) throw new GraphValueError("No checkpointer set", { lc_error_code: "MISSING_CHECKPOINTER" });
|
|
440
|
+
return checkpointer;
|
|
441
|
+
}
|
|
442
|
+
/**
|
|
443
|
+
* A `checkpointer: true` subgraph keeps one history per thread, stored
|
|
444
|
+
* under its namespace with the task ids removed.
|
|
445
|
+
*/
|
|
446
|
+
_ownCheckpointConfig(config) {
|
|
447
|
+
if (this.checkpointer !== true) return config;
|
|
448
|
+
const ns = config.configurable?.["checkpoint_ns"] ?? "";
|
|
449
|
+
return {
|
|
450
|
+
...config,
|
|
451
|
+
configurable: {
|
|
452
|
+
...config.configurable,
|
|
453
|
+
[CONFIG_KEY_CHECKPOINT_NS]: ns.split("|").map((part) => part.split(":")[0]).join("|")
|
|
454
|
+
}
|
|
455
|
+
};
|
|
456
|
+
}
|
|
457
|
+
/**
|
|
458
|
+
* The subgraph a state method's namespaced config addresses, and the config
|
|
459
|
+
* to call it with, lending it `checkpointer`. `undefined` when the config is
|
|
460
|
+
* for this graph, comes from inside a running task, or names no declared
|
|
461
|
+
* subgraph (a dynamically created one, such as a tool-call subgraph).
|
|
462
|
+
*/
|
|
463
|
+
async _subgraphForNamespace(config, checkpointer) {
|
|
464
|
+
const checkpointNamespace = config.configurable?.checkpoint_ns ?? "";
|
|
465
|
+
if (checkpointNamespace === "" || config.configurable?.["__pregel_read"] !== void 0 || config.configurable?.["__pregel_checkpointer"] !== void 0) return;
|
|
466
|
+
const recastNamespace = recastCheckpointNamespace(checkpointNamespace);
|
|
467
|
+
for await (const [name, subgraph] of this.getSubgraphsAsync(recastNamespace, true)) if (name === recastNamespace) return [subgraph, patchConfigurable(config, { [CONFIG_KEY_CHECKPOINTER]: checkpointer })];
|
|
468
|
+
}
|
|
469
|
+
/**
|
|
426
470
|
* Prepares a state snapshot from saved checkpoint data.
|
|
427
471
|
* This is an internal method used by getState and getStateHistory.
|
|
428
472
|
*
|
|
429
473
|
* @param config - Configuration for preparing the snapshot
|
|
430
474
|
* @param saved - Optional saved checkpoint data
|
|
431
|
-
* @param
|
|
475
|
+
* @param saver - Checkpointer the caller resolved; a subgraph's own `checkpointer` is unset or `true`
|
|
476
|
+
* @param recurse - Whether to include each subgraph task's state
|
|
432
477
|
* @param applyPendingWrites - Whether to apply pending writes to tasks and then to channels
|
|
433
478
|
* @returns A snapshot of the graph state
|
|
434
479
|
* @internal
|
|
435
480
|
*/
|
|
436
|
-
async _prepareStateSnapshot({ config, saved,
|
|
481
|
+
async _prepareStateSnapshot({ config, saved, saver, recurse = false, applyPendingWrites = false }) {
|
|
437
482
|
if (saved === void 0) return {
|
|
438
483
|
values: {},
|
|
439
484
|
next: [],
|
|
@@ -441,7 +486,7 @@ var Pregel = class extends PartialRunnable {
|
|
|
441
486
|
tasks: []
|
|
442
487
|
};
|
|
443
488
|
const channels = await channelsFromCheckpoint(this.channels, saved.checkpoint, {
|
|
444
|
-
saver
|
|
489
|
+
saver,
|
|
445
490
|
config: saved.config ?? config
|
|
446
491
|
});
|
|
447
492
|
if (saved.pendingWrites?.length) {
|
|
@@ -461,10 +506,10 @@ var Pregel = class extends PartialRunnable {
|
|
|
461
506
|
const taskStates = {};
|
|
462
507
|
for (const task of nextTasks) {
|
|
463
508
|
const matchingSubgraph = subgraphs.find(([name]) => name === task.name);
|
|
464
|
-
if (!matchingSubgraph) continue;
|
|
509
|
+
if (!matchingSubgraph || matchingSubgraph[1].checkpointer === false) continue;
|
|
465
510
|
let taskNs = `${String(task.name)}:${task.id}`;
|
|
466
511
|
if (parentNamespace) taskNs = `${parentNamespace}|${taskNs}`;
|
|
467
|
-
if (
|
|
512
|
+
if (!recurse) {
|
|
468
513
|
const config = { configurable: {
|
|
469
514
|
thread_id: saved.config.configurable?.thread_id,
|
|
470
515
|
checkpoint_ns: taskNs
|
|
@@ -472,7 +517,7 @@ var Pregel = class extends PartialRunnable {
|
|
|
472
517
|
taskStates[task.id] = config;
|
|
473
518
|
} else {
|
|
474
519
|
const subgraphConfig = { configurable: {
|
|
475
|
-
[CONFIG_KEY_CHECKPOINTER]:
|
|
520
|
+
[CONFIG_KEY_CHECKPOINTER]: saver,
|
|
476
521
|
thread_id: saved.config.configurable?.thread_id,
|
|
477
522
|
checkpoint_ns: taskNs
|
|
478
523
|
} };
|
|
@@ -520,19 +565,20 @@ var Pregel = class extends PartialRunnable {
|
|
|
520
565
|
* @throws {GraphValueError} If no checkpointer is configured
|
|
521
566
|
*/
|
|
522
567
|
async getState(config, options) {
|
|
523
|
-
const checkpointer =
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
for await (const [name, subgraph] of this.getSubgraphsAsync(recastNamespace, true)) if (name === recastNamespace) return await subgraph.getState(patchConfigurable(config, { [CONFIG_KEY_CHECKPOINTER]: checkpointer }), { subgraphs: options?.subgraphs });
|
|
568
|
+
const checkpointer = this._stateCheckpointer(config);
|
|
569
|
+
const subgraph = await this._subgraphForNamespace(config, checkpointer);
|
|
570
|
+
if (subgraph !== void 0) {
|
|
571
|
+
const [pregel, subgraphConfig] = subgraph;
|
|
572
|
+
return await pregel.getState(subgraphConfig, { subgraphs: options?.subgraphs });
|
|
529
573
|
}
|
|
530
|
-
const
|
|
531
|
-
const
|
|
574
|
+
const ownConfig = this._ownCheckpointConfig(config);
|
|
575
|
+
const mergedConfig = mergeConfigs(this.config, ownConfig);
|
|
576
|
+
const saved = await checkpointer.getTuple(ownConfig);
|
|
532
577
|
return await this._prepareStateSnapshot({
|
|
533
578
|
config: mergedConfig,
|
|
534
579
|
saved,
|
|
535
|
-
|
|
580
|
+
saver: checkpointer,
|
|
581
|
+
recurse: options?.subgraphs,
|
|
536
582
|
applyPendingWrites: !config.configurable?.checkpoint_id
|
|
537
583
|
});
|
|
538
584
|
}
|
|
@@ -550,20 +596,18 @@ var Pregel = class extends PartialRunnable {
|
|
|
550
596
|
* @throws {Error} If no checkpointer is configured
|
|
551
597
|
*/
|
|
552
598
|
async *getStateHistory(config, options) {
|
|
553
|
-
const checkpointer =
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
559
|
-
yield* pregel.getStateHistory(patchConfigurable(config, { [CONFIG_KEY_CHECKPOINTER]: checkpointer }), options);
|
|
560
|
-
return;
|
|
561
|
-
}
|
|
599
|
+
const checkpointer = this._stateCheckpointer(config);
|
|
600
|
+
const subgraph = await this._subgraphForNamespace(config, checkpointer);
|
|
601
|
+
if (subgraph !== void 0) {
|
|
602
|
+
const [pregel, subgraphConfig] = subgraph;
|
|
603
|
+
yield* pregel.getStateHistory(subgraphConfig, options);
|
|
604
|
+
return;
|
|
562
605
|
}
|
|
563
|
-
const mergedConfig = mergeConfigs(this.config, config, { configurable: { checkpoint_ns:
|
|
606
|
+
const mergedConfig = this._ownCheckpointConfig(mergeConfigs(this.config, config, { configurable: { checkpoint_ns: config.configurable?.checkpoint_ns ?? "" } }));
|
|
564
607
|
for await (const checkpointTuple of checkpointer.list(mergedConfig, options)) yield this._prepareStateSnapshot({
|
|
565
608
|
config: checkpointTuple.config,
|
|
566
|
-
saved: checkpointTuple
|
|
609
|
+
saved: checkpointTuple,
|
|
610
|
+
saver: checkpointer
|
|
567
611
|
});
|
|
568
612
|
}
|
|
569
613
|
/**
|
|
@@ -583,18 +627,18 @@ var Pregel = class extends PartialRunnable {
|
|
|
583
627
|
* @throws {InvalidUpdateError} If the update cannot be attributed to a node or an update can be only applied in sequence.
|
|
584
628
|
*/
|
|
585
629
|
async bulkUpdateState(startConfig, supersteps) {
|
|
586
|
-
const checkpointer =
|
|
587
|
-
if (!checkpointer) throw new GraphValueError("No checkpointer set", { lc_error_code: "MISSING_CHECKPOINTER" });
|
|
630
|
+
const checkpointer = this._stateCheckpointer(startConfig);
|
|
588
631
|
if (supersteps.length === 0) throw new Error("No supersteps provided");
|
|
589
632
|
if (supersteps.some((s) => s.updates.length === 0)) throw new Error("No updates provided");
|
|
590
|
-
const
|
|
591
|
-
if (
|
|
592
|
-
const
|
|
593
|
-
|
|
594
|
-
throw new Error(`Subgraph "${recastNamespace}" not found`);
|
|
633
|
+
const subgraph = await this._subgraphForNamespace(startConfig, checkpointer);
|
|
634
|
+
if (subgraph !== void 0) {
|
|
635
|
+
const [pregel, subgraphConfig] = subgraph;
|
|
636
|
+
return await pregel.bulkUpdateState(subgraphConfig, supersteps);
|
|
595
637
|
}
|
|
638
|
+
const checkpointNamespace = startConfig.configurable?.checkpoint_ns ?? "";
|
|
639
|
+
if (checkpointNamespace !== "" && startConfig.configurable?.["__pregel_read"] === void 0 && startConfig.configurable?.["__pregel_checkpointer"] === void 0) throw new Error(`Subgraph "${recastCheckpointNamespace(checkpointNamespace)}" not found`);
|
|
596
640
|
const updateSuperStep = async (inputConfig, updates) => {
|
|
597
|
-
const config = this.config ? mergeConfigs(this.config, inputConfig) : inputConfig;
|
|
641
|
+
const config = this._ownCheckpointConfig(this.config ? mergeConfigs(this.config, inputConfig) : inputConfig);
|
|
598
642
|
const saved = await checkpointer.getTuple(config);
|
|
599
643
|
const checkpoint = saved !== void 0 ? copyCheckpoint(saved.checkpoint) : emptyCheckpoint();
|
|
600
644
|
const checkpointPreviousVersions = { ...saved?.checkpoint.channel_versions };
|
|
@@ -698,7 +742,7 @@ var Pregel = class extends PartialRunnable {
|
|
|
698
742
|
name: INPUT,
|
|
699
743
|
writes: inputWrites,
|
|
700
744
|
triggers: []
|
|
701
|
-
}], checkpointer.getNextVersion.bind(
|
|
745
|
+
}], checkpointer.getNextVersion.bind(checkpointer), this.triggerToNodes);
|
|
702
746
|
const nextStep = saved?.metadata?.step != null ? saved.metadata.step + 1 : -1;
|
|
703
747
|
const nextConfig = await checkpointer.put(checkpointConfig, createCheckpoint(checkpoint, channels, nextStep), {
|
|
704
748
|
source: "input",
|
|
@@ -796,7 +840,7 @@ var Pregel = class extends PartialRunnable {
|
|
|
796
840
|
const channelWrites = task.writes.filter((w) => w[0] !== PUSH);
|
|
797
841
|
if (saved !== void 0 && channelWrites.length > 0) await checkpointer.putWrites(checkpointConfig, channelWrites, task.id);
|
|
798
842
|
}
|
|
799
|
-
_applyWrites(checkpoint, channels, tasks, checkpointer.getNextVersion.bind(
|
|
843
|
+
_applyWrites(checkpoint, channels, tasks, checkpointer.getNextVersion.bind(checkpointer), this.triggerToNodes);
|
|
800
844
|
const newVersions = getNewChannelVersions(checkpointPreviousVersions, checkpoint.channel_versions);
|
|
801
845
|
const nextConfig = await checkpointer.put(checkpointConfig, createCheckpoint(checkpoint, channels, step + 1), {
|
|
802
846
|
source: "update",
|
|
@@ -876,11 +920,7 @@ var Pregel = class extends PartialRunnable {
|
|
|
876
920
|
else defaultStreamMode = this.streamMode;
|
|
877
921
|
streamModeSingle = true;
|
|
878
922
|
}
|
|
879
|
-
|
|
880
|
-
if (this.checkpointer === false) defaultCheckpointer = void 0;
|
|
881
|
-
else if (config !== void 0 && config.configurable?.["__pregel_checkpointer"] !== void 0) defaultCheckpointer = config.configurable[CONFIG_KEY_CHECKPOINTER];
|
|
882
|
-
else if (this.checkpointer === true) throw new Error("checkpointer: true cannot be used for root graphs.");
|
|
883
|
-
else defaultCheckpointer = this.checkpointer;
|
|
923
|
+
const defaultCheckpointer = this._resolveCheckpointer(config);
|
|
884
924
|
const defaultStore = config.store ?? this.store;
|
|
885
925
|
const defaultCache = config.cache ?? this.cache;
|
|
886
926
|
if (config.durability != null && config.checkpointDuring != null) throw new Error("Cannot use both `durability` and `checkpointDuring` at the same time.");
|
|
@@ -1020,11 +1060,7 @@ var Pregel = class extends PartialRunnable {
|
|
|
1020
1060
|
if (typeof config.context !== "undefined") config.context = await this._validateContext(config.context);
|
|
1021
1061
|
else config.configurable = await this._validateContext(config.configurable);
|
|
1022
1062
|
const stream = new IterableReadableWritableStream({ modes: new Set(streamMode) });
|
|
1023
|
-
|
|
1024
|
-
config.configurable ??= {};
|
|
1025
|
-
const ns = config.configurable["checkpoint_ns"] ?? "";
|
|
1026
|
-
config.configurable[CONFIG_KEY_CHECKPOINT_NS] = ns.split("|").map((part) => part.split(":")[0]).join("|");
|
|
1027
|
-
}
|
|
1063
|
+
config.configurable = this._ownCheckpointConfig(config).configurable;
|
|
1028
1064
|
if (streamMode.includes("messages")) {
|
|
1029
1065
|
const messageStreamer = isV3 ? new StreamProtocolMessagesHandler((chunk) => stream.push(chunk)) : new StreamMessagesHandler((chunk) => stream.push(chunk));
|
|
1030
1066
|
const { callbacks } = config;
|