@absolutejs/absolute 0.19.0-beta.552 → 0.19.0-beta.554
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/ai/client/index.js +63 -4
- package/dist/ai/client/index.js.map +3 -3
- package/dist/ai/index.js +110 -7
- package/dist/ai/index.js.map +5 -5
- package/dist/react/ai/index.js +63 -4
- package/dist/react/ai/index.js.map +3 -3
- package/dist/src/ai/rag/lexical.d.ts +1 -17
- package/dist/src/vue/ai/useRAG.d.ts +12 -0
- package/dist/src/vue/ai/useRAGEvaluate.d.ts +10 -0
- package/dist/src/vue/ai/useRAGSearch.d.ts +2 -0
- package/dist/svelte/ai/index.js +63 -4
- package/dist/svelte/ai/index.js.map +3 -3
- package/dist/types/ai.d.ts +11 -0
- package/dist/vue/ai/index.js +63 -4
- package/dist/vue/ai/index.js.map +3 -3
- package/package.json +7 -7
package/dist/types/ai.d.ts
CHANGED
|
@@ -335,10 +335,12 @@ export type RAGQueryResult = {
|
|
|
335
335
|
};
|
|
336
336
|
export type RAGHybridRetrievalMode = 'vector' | 'lexical' | 'hybrid';
|
|
337
337
|
export type RAGHybridFusionMode = 'rrf' | 'max';
|
|
338
|
+
export type RAGSourceBalanceStrategy = 'cap' | 'round_robin';
|
|
338
339
|
export type RAGHybridSearchOptions = {
|
|
339
340
|
mode?: RAGHybridRetrievalMode;
|
|
340
341
|
lexicalTopK?: number;
|
|
341
342
|
maxResultsPerSource?: number;
|
|
343
|
+
sourceBalanceStrategy?: RAGSourceBalanceStrategy;
|
|
342
344
|
fusion?: RAGHybridFusionMode;
|
|
343
345
|
fusionConstant?: number;
|
|
344
346
|
lexicalWeight?: number;
|
|
@@ -497,6 +499,7 @@ export type RAGRetrievalTrace = {
|
|
|
497
499
|
candidateTopK: number;
|
|
498
500
|
lexicalTopK: number;
|
|
499
501
|
maxResultsPerSource?: number;
|
|
502
|
+
sourceBalanceStrategy?: RAGSourceBalanceStrategy;
|
|
500
503
|
mode: RAGHybridRetrievalMode;
|
|
501
504
|
runVector: boolean;
|
|
502
505
|
runLexical: boolean;
|
|
@@ -1244,8 +1247,11 @@ export type RAGEvaluationRunDiff = {
|
|
|
1244
1247
|
};
|
|
1245
1248
|
traceSummaryDelta?: {
|
|
1246
1249
|
modesChanged: boolean;
|
|
1250
|
+
sourceBalanceStrategiesChanged: boolean;
|
|
1247
1251
|
vectorCases: number;
|
|
1248
1252
|
lexicalCases: number;
|
|
1253
|
+
balancedCases: number;
|
|
1254
|
+
roundRobinCases: number;
|
|
1249
1255
|
transformedCases: number;
|
|
1250
1256
|
variantCases: number;
|
|
1251
1257
|
averageFinalCount: number;
|
|
@@ -1263,6 +1269,8 @@ export type RAGEvaluationCaseTraceSnapshot = {
|
|
|
1263
1269
|
status: RAGEvaluationCaseResult['status'];
|
|
1264
1270
|
traceMode?: RAGHybridRetrievalMode;
|
|
1265
1271
|
previousTraceMode?: RAGHybridRetrievalMode;
|
|
1272
|
+
sourceBalanceStrategy?: RAGSourceBalanceStrategy;
|
|
1273
|
+
previousSourceBalanceStrategy?: RAGSourceBalanceStrategy;
|
|
1266
1274
|
transformedQuery?: string;
|
|
1267
1275
|
previousTransformedQuery?: string;
|
|
1268
1276
|
variantQueries: string[];
|
|
@@ -1424,8 +1432,11 @@ export type RAGRerankerCandidate = {
|
|
|
1424
1432
|
export type RAGRetrievalTraceComparisonSummary = {
|
|
1425
1433
|
totalCases: number;
|
|
1426
1434
|
modes: RAGHybridRetrievalMode[];
|
|
1435
|
+
sourceBalanceStrategies: RAGSourceBalanceStrategy[];
|
|
1427
1436
|
vectorCases: number;
|
|
1428
1437
|
lexicalCases: number;
|
|
1438
|
+
balancedCases: number;
|
|
1439
|
+
roundRobinCases: number;
|
|
1429
1440
|
transformedCases: number;
|
|
1430
1441
|
variantCases: number;
|
|
1431
1442
|
averageFinalCount: number;
|
package/dist/vue/ai/index.js
CHANGED
|
@@ -2206,8 +2206,11 @@ var summarizeRetrievalTraces = (traces) => {
|
|
|
2206
2206
|
}
|
|
2207
2207
|
const totalCases = traces.length;
|
|
2208
2208
|
const modeSet = new Set;
|
|
2209
|
+
const sourceBalanceStrategySet = new Set;
|
|
2209
2210
|
let vectorCases = 0;
|
|
2210
2211
|
let lexicalCases = 0;
|
|
2212
|
+
let balancedCases = 0;
|
|
2213
|
+
let roundRobinCases = 0;
|
|
2211
2214
|
let transformedCases = 0;
|
|
2212
2215
|
let variantCases = 0;
|
|
2213
2216
|
let finalCountSum = 0;
|
|
@@ -2217,12 +2220,19 @@ var summarizeRetrievalTraces = (traces) => {
|
|
|
2217
2220
|
let lexicalTopKSum = 0;
|
|
2218
2221
|
for (const trace of traces) {
|
|
2219
2222
|
modeSet.add(trace.mode);
|
|
2223
|
+
sourceBalanceStrategySet.add(trace.sourceBalanceStrategy ?? "cap");
|
|
2220
2224
|
if (trace.runVector) {
|
|
2221
2225
|
vectorCases += 1;
|
|
2222
2226
|
}
|
|
2223
2227
|
if (trace.runLexical) {
|
|
2224
2228
|
lexicalCases += 1;
|
|
2225
2229
|
}
|
|
2230
|
+
if (typeof trace.maxResultsPerSource === "number") {
|
|
2231
|
+
balancedCases += 1;
|
|
2232
|
+
if (trace.sourceBalanceStrategy === "round_robin") {
|
|
2233
|
+
roundRobinCases += 1;
|
|
2234
|
+
}
|
|
2235
|
+
}
|
|
2226
2236
|
if (trace.transformedQuery !== trace.query) {
|
|
2227
2237
|
transformedCases += 1;
|
|
2228
2238
|
}
|
|
@@ -2240,9 +2250,12 @@ var summarizeRetrievalTraces = (traces) => {
|
|
|
2240
2250
|
averageFinalCount: roundTraceAverage(finalCountSum, totalCases),
|
|
2241
2251
|
averageLexicalCount: roundTraceAverage(lexicalCountSum, totalCases),
|
|
2242
2252
|
averageLexicalTopK: roundTraceAverage(lexicalTopKSum, totalCases),
|
|
2253
|
+
balancedCases,
|
|
2243
2254
|
averageVectorCount: roundTraceAverage(vectorCountSum, totalCases),
|
|
2244
2255
|
lexicalCases,
|
|
2245
2256
|
modes: Array.from(modeSet),
|
|
2257
|
+
roundRobinCases,
|
|
2258
|
+
sourceBalanceStrategies: Array.from(sourceBalanceStrategySet),
|
|
2246
2259
|
stageCounts: buildTraceStageCounts(traces),
|
|
2247
2260
|
totalCases,
|
|
2248
2261
|
transformedCases,
|
|
@@ -2578,7 +2591,7 @@ var buildEvaluationCaseTraceSnapshot = ({
|
|
|
2578
2591
|
}) => {
|
|
2579
2592
|
const stageCounts = currentTrace ? buildTraceStageCounts([currentTrace]) : {};
|
|
2580
2593
|
const previousStageCounts = previousTrace?.stageCounts ?? {};
|
|
2581
|
-
const traceChange = !previousTrace ? currentTrace ? "new" : "unchanged" : previousTrace.traceMode !== currentTrace?.mode || previousTrace.transformedQuery !== (currentTrace?.transformedQuery || undefined) || previousTrace.variantQueries.join("|") !== (currentTrace?.variantQueries ?? []).join("|") || previousTrace.finalCount !== (currentTrace?.resultCounts.final ?? 0) || previousTrace.vectorCount !== (currentTrace?.resultCounts.vector ?? 0) || previousTrace.lexicalCount !== (currentTrace?.resultCounts.lexical ?? 0) || previousTrace.candidateTopK !== (currentTrace?.candidateTopK ?? 0) || previousTrace.lexicalTopK !== (currentTrace?.lexicalTopK ?? 0) || !areStageCountsEqual(previousStageCounts, stageCounts) ? "changed" : "unchanged";
|
|
2594
|
+
const traceChange = !previousTrace ? currentTrace ? "new" : "unchanged" : previousTrace.traceMode !== currentTrace?.mode || previousTrace.sourceBalanceStrategy !== currentTrace?.sourceBalanceStrategy || previousTrace.transformedQuery !== (currentTrace?.transformedQuery || undefined) || previousTrace.variantQueries.join("|") !== (currentTrace?.variantQueries ?? []).join("|") || previousTrace.finalCount !== (currentTrace?.resultCounts.final ?? 0) || previousTrace.vectorCount !== (currentTrace?.resultCounts.vector ?? 0) || previousTrace.lexicalCount !== (currentTrace?.resultCounts.lexical ?? 0) || previousTrace.candidateTopK !== (currentTrace?.candidateTopK ?? 0) || previousTrace.lexicalTopK !== (currentTrace?.lexicalTopK ?? 0) || !areStageCountsEqual(previousStageCounts, stageCounts) ? "changed" : "unchanged";
|
|
2582
2595
|
return {
|
|
2583
2596
|
candidateTopK: currentTrace?.candidateTopK ?? 0,
|
|
2584
2597
|
caseId: caseResult.caseId,
|
|
@@ -2590,6 +2603,7 @@ var buildEvaluationCaseTraceSnapshot = ({
|
|
|
2590
2603
|
previousFinalCount: previousTrace?.finalCount,
|
|
2591
2604
|
previousLexicalCount: previousTrace?.lexicalCount,
|
|
2592
2605
|
previousLexicalTopK: previousTrace?.lexicalTopK,
|
|
2606
|
+
previousSourceBalanceStrategy: previousTrace?.sourceBalanceStrategy,
|
|
2593
2607
|
previousStageCounts,
|
|
2594
2608
|
previousTraceMode: previousTrace?.traceMode,
|
|
2595
2609
|
previousTransformedQuery: previousTrace?.transformedQuery,
|
|
@@ -2598,6 +2612,7 @@ var buildEvaluationCaseTraceSnapshot = ({
|
|
|
2598
2612
|
query: caseResult.query,
|
|
2599
2613
|
stageCounts,
|
|
2600
2614
|
status: caseResult.status,
|
|
2615
|
+
sourceBalanceStrategy: currentTrace?.sourceBalanceStrategy,
|
|
2601
2616
|
traceChange,
|
|
2602
2617
|
traceMode: currentTrace?.mode,
|
|
2603
2618
|
transformedQuery: currentTrace?.transformedQuery || undefined,
|
|
@@ -2642,6 +2657,7 @@ var buildEvaluationCaseTraceSnapshots = ({
|
|
|
2642
2657
|
},
|
|
2643
2658
|
runLexical: currentSnapshot.lexicalCount > 0,
|
|
2644
2659
|
runVector: currentSnapshot.vectorCount > 0,
|
|
2660
|
+
sourceBalanceStrategy: currentSnapshot.sourceBalanceStrategy ?? "cap",
|
|
2645
2661
|
steps: [],
|
|
2646
2662
|
topK: caseResult.topK,
|
|
2647
2663
|
transformedQuery: currentSnapshot.transformedQuery ?? caseResult.query,
|
|
@@ -2672,6 +2688,7 @@ var formatRetrievalComparisonHeadline = (entry) => [
|
|
|
2672
2688
|
`latency ${entry.response.summary.averageLatencyMs.toFixed(1)}ms`
|
|
2673
2689
|
].join(" \xB7 ");
|
|
2674
2690
|
var formatTraceModes = (modes) => modes.length > 0 ? modes.join(" / ") : "n/a";
|
|
2691
|
+
var formatSourceBalanceStrategies = (strategies) => strategies.length > 0 ? strategies.join(" / ") : "n/a";
|
|
2675
2692
|
var formatTraceStageSummary = (stageCounts) => {
|
|
2676
2693
|
const topStages = Object.entries(stageCounts).sort((left, right) => right[1] - left[1]).slice(0, 3);
|
|
2677
2694
|
return topStages.length > 0 ? topStages.map(([stage, count]) => `${stage} ${count}`).join(" \xB7 ") : "n/a";
|
|
@@ -2707,9 +2724,21 @@ var buildRAGComparisonTraceSummaryRows = (entry) => {
|
|
|
2707
2724
|
}
|
|
2708
2725
|
return [
|
|
2709
2726
|
{ label: "Modes", value: formatTraceModes(trace.modes) },
|
|
2727
|
+
{
|
|
2728
|
+
label: "Balance",
|
|
2729
|
+
value: formatSourceBalanceStrategies(trace.sourceBalanceStrategies)
|
|
2730
|
+
},
|
|
2710
2731
|
{ label: "Avg final", value: trace.averageFinalCount.toFixed(1) },
|
|
2711
2732
|
{ label: "Avg vector", value: trace.averageVectorCount.toFixed(1) },
|
|
2712
2733
|
{ label: "Avg lexical", value: trace.averageLexicalCount.toFixed(1) },
|
|
2734
|
+
{
|
|
2735
|
+
label: "Balanced",
|
|
2736
|
+
value: formatTraceRatio(trace.balancedCases, trace.totalCases)
|
|
2737
|
+
},
|
|
2738
|
+
{
|
|
2739
|
+
label: "Round robin",
|
|
2740
|
+
value: formatTraceRatio(trace.roundRobinCases, trace.totalCases)
|
|
2741
|
+
},
|
|
2713
2742
|
{
|
|
2714
2743
|
label: "Transforms",
|
|
2715
2744
|
value: formatTraceRatio(trace.transformedCases, trace.totalCases)
|
|
@@ -2757,6 +2786,12 @@ var buildRAGComparisonTraceDiffRows = (entry, leader) => {
|
|
|
2757
2786
|
value: `${formatTraceModes(trace.modes)} vs ${formatTraceModes(leaderTrace.modes)}`
|
|
2758
2787
|
});
|
|
2759
2788
|
}
|
|
2789
|
+
if (formatSourceBalanceStrategies(trace.sourceBalanceStrategies) !== formatSourceBalanceStrategies(leaderTrace.sourceBalanceStrategies)) {
|
|
2790
|
+
rows.push({
|
|
2791
|
+
label: "Balance vs leader",
|
|
2792
|
+
value: `${formatSourceBalanceStrategies(trace.sourceBalanceStrategies)} vs ${formatSourceBalanceStrategies(leaderTrace.sourceBalanceStrategies)}`
|
|
2793
|
+
});
|
|
2794
|
+
}
|
|
2760
2795
|
rows.push({
|
|
2761
2796
|
label: "Final delta",
|
|
2762
2797
|
value: formatSignedDelta(trace.averageFinalCount - leaderTrace.averageFinalCount, 1)
|
|
@@ -2769,6 +2804,12 @@ var buildRAGComparisonTraceDiffRows = (entry, leader) => {
|
|
|
2769
2804
|
}, {
|
|
2770
2805
|
label: "Transform delta",
|
|
2771
2806
|
value: formatTraceCountDelta(trace.transformedCases - leaderTrace.transformedCases)
|
|
2807
|
+
}, {
|
|
2808
|
+
label: "Balanced delta",
|
|
2809
|
+
value: formatTraceCountDelta(trace.balancedCases - leaderTrace.balancedCases)
|
|
2810
|
+
}, {
|
|
2811
|
+
label: "Round robin delta",
|
|
2812
|
+
value: formatTraceCountDelta(trace.roundRobinCases - leaderTrace.roundRobinCases)
|
|
2772
2813
|
});
|
|
2773
2814
|
if (stageDelta) {
|
|
2774
2815
|
rows.push({ label: "Stage delta", value: stageDelta });
|
|
@@ -2932,7 +2973,7 @@ var buildRAGEvaluationHistoryRows = (history) => {
|
|
|
2932
2973
|
if (history.latestRun.traceSummary) {
|
|
2933
2974
|
rows.push({
|
|
2934
2975
|
label: "Latest trace",
|
|
2935
|
-
value: `${formatTraceModes(history.latestRun.traceSummary.modes)} \xB7 final ${history.latestRun.traceSummary.averageFinalCount.toFixed(1)} \xB7 vector ${history.latestRun.traceSummary.averageVectorCount.toFixed(1)} \xB7 lexical ${history.latestRun.traceSummary.averageLexicalCount.toFixed(1)}`
|
|
2976
|
+
value: `${formatTraceModes(history.latestRun.traceSummary.modes)} \xB7 balance ${formatSourceBalanceStrategies(history.latestRun.traceSummary.sourceBalanceStrategies)} \xB7 final ${history.latestRun.traceSummary.averageFinalCount.toFixed(1)} \xB7 vector ${history.latestRun.traceSummary.averageVectorCount.toFixed(1)} \xB7 lexical ${history.latestRun.traceSummary.averageLexicalCount.toFixed(1)}`
|
|
2936
2977
|
});
|
|
2937
2978
|
}
|
|
2938
2979
|
if (history.previousRun) {
|
|
@@ -2968,6 +3009,9 @@ var buildRAGEvaluationHistoryRows = (history) => {
|
|
|
2968
3009
|
rows.push({
|
|
2969
3010
|
label: "Trace mode shift",
|
|
2970
3011
|
value: history.diff.traceSummaryDelta.modesChanged ? "changed" : "stable"
|
|
3012
|
+
}, {
|
|
3013
|
+
label: "Trace balance shift",
|
|
3014
|
+
value: history.diff.traceSummaryDelta.sourceBalanceStrategiesChanged ? "changed" : "stable"
|
|
2971
3015
|
}, {
|
|
2972
3016
|
label: "Trace final delta",
|
|
2973
3017
|
value: formatSignedDelta(history.diff.traceSummaryDelta.averageFinalCount, 1)
|
|
@@ -2977,6 +3021,12 @@ var buildRAGEvaluationHistoryRows = (history) => {
|
|
|
2977
3021
|
}, {
|
|
2978
3022
|
label: "Trace lexical delta",
|
|
2979
3023
|
value: formatSignedDelta(history.diff.traceSummaryDelta.averageLexicalCount, 1)
|
|
3024
|
+
}, {
|
|
3025
|
+
label: "Trace balanced delta",
|
|
3026
|
+
value: formatTraceCountDelta(history.diff.traceSummaryDelta.balancedCases)
|
|
3027
|
+
}, {
|
|
3028
|
+
label: "Trace round robin delta",
|
|
3029
|
+
value: formatTraceCountDelta(history.diff.traceSummaryDelta.roundRobinCases)
|
|
2980
3030
|
}, {
|
|
2981
3031
|
label: "Trace transform delta",
|
|
2982
3032
|
value: formatTraceCountDelta(history.diff.traceSummaryDelta.transformedCases)
|
|
@@ -3006,6 +3056,8 @@ var buildRAGEvaluationCaseTracePresentations = (history) => {
|
|
|
3006
3056
|
const label = entry.label ?? entry.caseId;
|
|
3007
3057
|
const currentMode = entry.traceMode ?? "no-trace";
|
|
3008
3058
|
const previousMode = entry.previousTraceMode ?? "n/a";
|
|
3059
|
+
const currentBalance = entry.sourceBalanceStrategy ?? "cap";
|
|
3060
|
+
const previousBalance = entry.previousSourceBalanceStrategy ?? "n/a";
|
|
3009
3061
|
const currentVariants = entry.variantQueries.length > 0 ? entry.variantQueries.join(", ") : "none";
|
|
3010
3062
|
const previousVariants = entry.previousVariantQueries.length > 0 ? entry.previousVariantQueries.join(", ") : "none";
|
|
3011
3063
|
const currentStages = Object.keys(entry.stageCounts).length > 0 ? Object.entries(entry.stageCounts).map(([stage, count]) => `${stage} ${count}`).join(", ") : "none";
|
|
@@ -3013,12 +3065,16 @@ var buildRAGEvaluationCaseTracePresentations = (history) => {
|
|
|
3013
3065
|
return {
|
|
3014
3066
|
caseId: entry.caseId,
|
|
3015
3067
|
label,
|
|
3016
|
-
summary: `${entry.traceChange} \xB7 ${previousMode}\u2192${currentMode} \xB7 final ${entry.previousFinalCount ?? 0}\u2192${entry.finalCount}`,
|
|
3068
|
+
summary: `${entry.traceChange} \xB7 ${previousMode}\u2192${currentMode} \xB7 ${previousBalance}\u2192${currentBalance} \xB7 final ${entry.previousFinalCount ?? 0}\u2192${entry.finalCount}`,
|
|
3017
3069
|
traceChange: entry.traceChange,
|
|
3018
3070
|
rows: [
|
|
3019
3071
|
{ label: "Query", value: entry.query },
|
|
3020
3072
|
{ label: "Trace change", value: entry.traceChange },
|
|
3021
3073
|
{ label: "Mode", value: `${previousMode}\u2192${currentMode}` },
|
|
3074
|
+
{
|
|
3075
|
+
label: "Balance",
|
|
3076
|
+
value: `${previousBalance}\u2192${currentBalance}`
|
|
3077
|
+
},
|
|
3022
3078
|
{
|
|
3023
3079
|
label: "Transformed query",
|
|
3024
3080
|
value: `${entry.previousTransformedQuery?.trim() || "n/a"}\u2192${entry.transformedQuery?.trim() || "n/a"}`
|
|
@@ -3090,12 +3146,15 @@ var buildRAGEvaluationRunDiff = ({
|
|
|
3090
3146
|
averageLexicalCount: (current.traceSummary?.averageLexicalCount ?? 0) - (previous?.traceSummary?.averageLexicalCount ?? 0),
|
|
3091
3147
|
averageLexicalTopK: (current.traceSummary?.averageLexicalTopK ?? 0) - (previous?.traceSummary?.averageLexicalTopK ?? 0),
|
|
3092
3148
|
averageVectorCount: (current.traceSummary?.averageVectorCount ?? 0) - (previous?.traceSummary?.averageVectorCount ?? 0),
|
|
3149
|
+
balancedCases: (current.traceSummary?.balancedCases ?? 0) - (previous?.traceSummary?.balancedCases ?? 0),
|
|
3093
3150
|
lexicalCases: (current.traceSummary?.lexicalCases ?? 0) - (previous?.traceSummary?.lexicalCases ?? 0),
|
|
3094
3151
|
modesChanged: (current.traceSummary?.modes ?? []).join("|") !== (previous?.traceSummary?.modes ?? []).join("|"),
|
|
3152
|
+
roundRobinCases: (current.traceSummary?.roundRobinCases ?? 0) - (previous?.traceSummary?.roundRobinCases ?? 0),
|
|
3095
3153
|
stageCounts: diffTraceStageCounts({
|
|
3096
3154
|
current: current.traceSummary?.stageCounts ?? {},
|
|
3097
3155
|
previous: previous?.traceSummary?.stageCounts ?? {}
|
|
3098
3156
|
}),
|
|
3157
|
+
sourceBalanceStrategiesChanged: (current.traceSummary?.sourceBalanceStrategies ?? []).join("|") !== (previous?.traceSummary?.sourceBalanceStrategies ?? []).join("|"),
|
|
3099
3158
|
transformedCases: (current.traceSummary?.transformedCases ?? 0) - (previous?.traceSummary?.transformedCases ?? 0),
|
|
3100
3159
|
variantCases: (current.traceSummary?.variantCases ?? 0) - (previous?.traceSummary?.variantCases ?? 0),
|
|
3101
3160
|
vectorCases: (current.traceSummary?.vectorCases ?? 0) - (previous?.traceSummary?.vectorCases ?? 0)
|
|
@@ -4475,5 +4534,5 @@ export {
|
|
|
4475
4534
|
AIStreamKey
|
|
4476
4535
|
};
|
|
4477
4536
|
|
|
4478
|
-
//# debugId=
|
|
4537
|
+
//# debugId=5E360CD51068D3C964756E2164756E21
|
|
4479
4538
|
//# sourceMappingURL=index.js.map
|