@absolutejs/rag 0.24.1 → 0.24.2
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/CHANGELOG.md +6 -0
- package/RESEARCH.md +2 -0
- package/changelog.json +14 -0
- package/dist/research/index.js +9 -4
- package/dist/research/index.js.map +3 -3
- package/dist/src/research/types.d.ts +2 -0
- package/dist/web-index/index.js +9 -4
- package/dist/web-index/index.js.map +3 -3
- package/package.json +1 -1
|
@@ -34,6 +34,8 @@ export type ResearchReviewCheckpoint = {
|
|
|
34
34
|
pass: number;
|
|
35
35
|
stage?: "extract" | "review";
|
|
36
36
|
nextField: number;
|
|
37
|
+
/** Reduced after a settled failed batch; never increases the configured maximum. */
|
|
38
|
+
nextBatchSize?: number;
|
|
37
39
|
pending: boolean;
|
|
38
40
|
finished?: boolean;
|
|
39
41
|
draft: unknown;
|
package/dist/web-index/index.js
CHANGED
|
@@ -123563,8 +123563,10 @@ var createResearch = (config) => {
|
|
|
123563
123563
|
reviewBatchSize
|
|
123564
123564
|
});
|
|
123565
123565
|
const resumed = input.resumeReview;
|
|
123566
|
-
if (resumed && (resumed.version !== 1 || resumed.fingerprint !== fingerprint || resumed.pending || !Number.isSafeInteger(resumed.nextField) || resumed.nextField < 0 || !Number.isSafeInteger(resumed.pass) || resumed.pass < 0 || resumed.pass > evidenceRepairs))
|
|
123566
|
+
if (resumed && (resumed.version !== 1 || resumed.fingerprint !== fingerprint || resumed.pending || resumed.nextBatchSize !== undefined && (!Number.isSafeInteger(resumed.nextBatchSize) || resumed.nextBatchSize < 1 || resumed.nextBatchSize > reviewBatchSize) || !Number.isSafeInteger(resumed.nextField) || resumed.nextField < 0 || !Number.isSafeInteger(resumed.pass) || resumed.pass < 0 || resumed.pass > evidenceRepairs))
|
|
123567
123567
|
throw new Error("Review checkpoint requires reconciliation or does not match this task");
|
|
123568
|
+
const legacyFailedReview = resumed && !resumed.pending && resumed.result.operations.at(-1)?.kind === "review" && resumed.result.operations.at(-1)?.status === "unknown";
|
|
123569
|
+
let nextBatchSize = resumed?.nextBatchSize ?? (legacyFailedReview ? Math.max(1, Math.floor(reviewBatchSize / 2)) : reviewBatchSize);
|
|
123568
123570
|
const result = resumed ? structuredClone(resumed.result) : {
|
|
123569
123571
|
id: crypto.randomUUID(),
|
|
123570
123572
|
status: "unavailable",
|
|
@@ -123599,6 +123601,7 @@ var createResearch = (config) => {
|
|
|
123599
123601
|
pass,
|
|
123600
123602
|
stage,
|
|
123601
123603
|
nextField,
|
|
123604
|
+
nextBatchSize,
|
|
123602
123605
|
pending,
|
|
123603
123606
|
finished,
|
|
123604
123607
|
draft: structuredClone(draft),
|
|
@@ -123979,13 +123982,13 @@ Correct the previous schema-invalid response using the validation diagnostics. T
|
|
|
123979
123982
|
}
|
|
123980
123983
|
const reviewSources = researchPassages(result.sources);
|
|
123981
123984
|
const reviewStart = continuing ? resumed.nextField : 0;
|
|
123982
|
-
for (let offset = reviewStart;offset < leaves.length; offset += Math.min(
|
|
123985
|
+
for (let offset = reviewStart;offset < leaves.length; offset += Math.min(nextBatchSize, limits.fields - (offset - reviewStart))) {
|
|
123983
123986
|
if (offset - reviewStart >= limits.fields) {
|
|
123984
123987
|
result.status = "partial";
|
|
123985
123988
|
result.limitations.push("Review field allowance reached; remaining fields are saved for explicit continuation");
|
|
123986
123989
|
return result;
|
|
123987
123990
|
}
|
|
123988
|
-
const batch = leaves.slice(offset, offset + Math.min(
|
|
123991
|
+
const batch = leaves.slice(offset, offset + Math.min(nextBatchSize, limits.fields - (offset - reviewStart)));
|
|
123989
123992
|
await persistReview(pass, offset, true, data);
|
|
123990
123993
|
let reviewed;
|
|
123991
123994
|
try {
|
|
@@ -124002,6 +124005,8 @@ Correct the previous schema-invalid response using the validation diagnostics. T
|
|
|
124002
124005
|
});
|
|
124003
124006
|
} catch (error) {
|
|
124004
124007
|
const known = error instanceof Error && error.message === "Research budget denied" || !admit && await config.isReviewFailureSettled?.(error) === true;
|
|
124008
|
+
if (known && !(error instanceof Error && error.message === "Research budget denied"))
|
|
124009
|
+
nextBatchSize = Math.max(1, Math.floor(batch.length / 2));
|
|
124005
124010
|
await persistReview(pass, offset, !known, data);
|
|
124006
124011
|
throw error;
|
|
124007
124012
|
}
|
|
@@ -124198,5 +124203,5 @@ export {
|
|
|
124198
124203
|
webIndexPostgresSchemaSql
|
|
124199
124204
|
};
|
|
124200
124205
|
|
|
124201
|
-
//# debugId=
|
|
124206
|
+
//# debugId=A5E570BDB36F03C864756E2164756E21
|
|
124202
124207
|
//# sourceMappingURL=index.js.map
|