@absolutejs/absolute 0.19.0-beta.613 → 0.19.0-beta.615

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.
@@ -128,7 +128,14 @@ export type RAGSectionRetrievalDiagnostic = {
128
128
  mode: 'primary' | 'transformed' | 'variant' | 'mixed';
129
129
  reasons: RAGSectionQueryAttributionReason[];
130
130
  };
131
+ requestedMode?: RAGHybridRetrievalMode;
131
132
  retrievalMode?: RAGHybridRetrievalMode;
133
+ routingProvider?: string;
134
+ routingLabel?: string;
135
+ routingReason?: string;
136
+ queryTransformProvider?: string;
137
+ queryTransformLabel?: string;
138
+ queryTransformReason?: string;
132
139
  rerankApplied?: boolean;
133
140
  sourceBalanceApplied?: boolean;
134
141
  scoreThresholdApplied?: boolean;
@@ -432,6 +439,9 @@ export type RAGQueryTransformInput = {
432
439
  export type RAGQueryTransformResult = {
433
440
  query: string;
434
441
  variants?: string[];
442
+ label?: string;
443
+ reason?: string;
444
+ metadata?: Record<string, string | number | boolean | null>;
435
445
  };
436
446
  export type RAGQueryTransformer = (input: RAGQueryTransformInput) => Promise<RAGQueryTransformResult> | RAGQueryTransformResult;
437
447
  export type RAGQueryTransformProvider = {
@@ -440,6 +450,39 @@ export type RAGQueryTransformProvider = {
440
450
  providerName?: string;
441
451
  };
442
452
  export type RAGQueryTransformProviderLike = RAGQueryTransformer | RAGQueryTransformProvider;
453
+ export type RAGRetrievalStrategyDecision = {
454
+ mode?: RAGHybridRetrievalMode;
455
+ lexicalTopK?: number;
456
+ maxResultsPerSource?: number;
457
+ sourceBalanceStrategy?: RAGSourceBalanceStrategy;
458
+ diversityStrategy?: RAGDiversityStrategy;
459
+ mmrLambda?: number;
460
+ fusion?: RAGHybridFusionMode;
461
+ fusionConstant?: number;
462
+ lexicalWeight?: number;
463
+ vectorWeight?: number;
464
+ label?: string;
465
+ reason?: string;
466
+ metadata?: Record<string, string | number | boolean | null>;
467
+ };
468
+ export type RAGRetrievalStrategyInput = {
469
+ query: string;
470
+ transformedQuery: string;
471
+ variantQueries: string[];
472
+ topK: number;
473
+ candidateTopK: number;
474
+ filter?: Record<string, unknown>;
475
+ scoreThreshold?: number;
476
+ model?: string;
477
+ retrieval: RAGHybridSearchOptions;
478
+ };
479
+ export type RAGRetrievalStrategySelector = (input: RAGRetrievalStrategyInput) => Promise<RAGRetrievalStrategyDecision | undefined> | RAGRetrievalStrategyDecision | undefined;
480
+ export type RAGRetrievalStrategyProvider = {
481
+ select: RAGRetrievalStrategySelector;
482
+ providerName?: string;
483
+ defaultLabel?: string;
484
+ };
485
+ export type RAGRetrievalStrategyProviderLike = RAGRetrievalStrategySelector | RAGRetrievalStrategyProvider;
443
486
  export type RAGRerankerInput = {
444
487
  query: string;
445
488
  queryVector: number[];
@@ -692,12 +735,13 @@ export type RAGCollectionSearchParams = {
692
735
  filter?: Record<string, unknown>;
693
736
  scoreThreshold?: number;
694
737
  queryTransform?: RAGQueryTransformProviderLike;
738
+ retrievalStrategy?: RAGRetrievalStrategyProviderLike;
695
739
  rerank?: RAGRerankerProviderLike;
696
740
  retrieval?: RAGHybridSearchOptions | RAGHybridRetrievalMode;
697
741
  model?: string;
698
742
  signal?: AbortSignal;
699
743
  };
700
- export type RAGRetrievalTraceStage = 'input' | 'query_transform' | 'embed' | 'vector_search' | 'lexical_search' | 'fusion' | 'rerank' | 'diversity' | 'source_balance' | 'score_filter' | 'finalize';
744
+ export type RAGRetrievalTraceStage = 'input' | 'query_transform' | 'routing' | 'embed' | 'vector_search' | 'lexical_search' | 'fusion' | 'rerank' | 'diversity' | 'source_balance' | 'score_filter' | 'finalize';
701
745
  export type RAGRetrievalTraceStep = {
702
746
  stage: RAGRetrievalTraceStage;
703
747
  label: string;
@@ -719,14 +763,21 @@ export type RAGRetrievalTrace = {
719
763
  query: string;
720
764
  transformedQuery: string;
721
765
  variantQueries: string[];
766
+ queryTransformProvider?: string;
767
+ queryTransformLabel?: string;
768
+ queryTransformReason?: string;
722
769
  topK: number;
723
770
  candidateTopK: number;
724
771
  lexicalTopK: number;
772
+ requestedMode?: RAGHybridRetrievalMode;
725
773
  maxResultsPerSource?: number;
726
774
  sourceBalanceStrategy?: RAGSourceBalanceStrategy;
727
775
  diversityStrategy?: RAGDiversityStrategy;
728
776
  mmrLambda?: number;
729
777
  mode: RAGHybridRetrievalMode;
778
+ routingProvider?: string;
779
+ routingLabel?: string;
780
+ routingReason?: string;
730
781
  runVector: boolean;
731
782
  runLexical: boolean;
732
783
  scoreThreshold?: number;
@@ -3772,10 +3772,35 @@ var buildRAGRetrievalTracePresentation = (trace) => {
3772
3772
  ];
3773
3773
  const details = [
3774
3774
  { label: "Transformed query", value: trace.transformedQuery },
3775
+ ...trace.queryTransformLabel || trace.queryTransformProvider ? [
3776
+ {
3777
+ label: "Query transform",
3778
+ value: trace.queryTransformLabel ?? trace.queryTransformProvider ?? "configured"
3779
+ },
3780
+ ...trace.queryTransformReason ? [
3781
+ {
3782
+ label: "Query transform reason",
3783
+ value: trace.queryTransformReason
3784
+ }
3785
+ ] : []
3786
+ ] : [],
3775
3787
  {
3776
3788
  label: "Variant queries",
3777
3789
  value: trace.variantQueries.length > 0 ? trace.variantQueries.join(" \xB7 ") : "none"
3778
3790
  },
3791
+ ...trace.requestedMode && trace.requestedMode !== trace.mode ? [{ label: "Requested mode", value: trace.requestedMode }] : [],
3792
+ ...trace.routingLabel || trace.routingProvider ? [
3793
+ {
3794
+ label: "Routing decision",
3795
+ value: trace.routingLabel ?? trace.routingProvider ?? "configured"
3796
+ },
3797
+ ...trace.routingReason ? [
3798
+ {
3799
+ label: "Routing reason",
3800
+ value: trace.routingReason
3801
+ }
3802
+ ] : []
3803
+ ] : [],
3779
3804
  { label: "Candidate topK", value: String(trace.candidateTopK) },
3780
3805
  { label: "Lexical topK", value: String(trace.lexicalTopK) }
3781
3806
  ];
@@ -4668,10 +4693,10 @@ var buildRAGSectionRetrievalDiagnostics = (sources, trace) => {
4668
4693
  const vectorHits = channels.includes("vector") ? 1 : 0;
4669
4694
  const lexicalHits = channels.includes("lexical") ? 1 : 0;
4670
4695
  const hybridHits = isHybrid ? 1 : 0;
4671
- const queryOrigin = source.metadata?.retrievalQueryOrigin;
4672
- const primaryHits = queryOrigin === "primary" ? 1 : 0;
4673
- const transformedHits = queryOrigin === "transformed" ? 1 : 0;
4674
- const variantHits = queryOrigin === "variant" ? 1 : 0;
4696
+ const queryOrigins = Array.isArray(source.metadata?.retrievalQueryOrigins) ? source.metadata.retrievalQueryOrigins.filter((value) => value === "primary" || value === "transformed" || value === "variant") : source.metadata?.retrievalQueryOrigin === "primary" || source.metadata?.retrievalQueryOrigin === "transformed" || source.metadata?.retrievalQueryOrigin === "variant" ? [source.metadata.retrievalQueryOrigin] : [];
4697
+ const primaryHits = queryOrigins.includes("primary") ? 1 : 0;
4698
+ const transformedHits = queryOrigins.includes("transformed") ? 1 : 0;
4699
+ const variantHits = queryOrigins.includes("variant") ? 1 : 0;
4675
4700
  if (!existing) {
4676
4701
  sections.set(key, {
4677
4702
  bestScore: source.score,
@@ -4878,7 +4903,14 @@ var buildRAGSectionRetrievalDiagnostics = (sources, trace) => {
4878
4903
  transformedHits: section.transformedHits,
4879
4904
  variantHits: section.variantHits
4880
4905
  },
4906
+ requestedMode: trace?.requestedMode,
4881
4907
  retrievalMode: trace?.mode,
4908
+ routingLabel: trace?.routingLabel,
4909
+ routingProvider: trace?.routingProvider,
4910
+ routingReason: trace?.routingReason,
4911
+ queryTransformLabel: trace?.queryTransformLabel,
4912
+ queryTransformProvider: trace?.queryTransformProvider,
4913
+ queryTransformReason: trace?.queryTransformReason,
4882
4914
  reasons,
4883
4915
  rerankApplied: trace?.steps.some((step) => step.stage === "rerank" && step.metadata?.applied === true),
4884
4916
  scoreShare,
@@ -8191,5 +8223,5 @@ export {
8191
8223
  AIStreamKey
8192
8224
  };
8193
8225
 
8194
- //# debugId=B01D3BA3D00EF09B64756E2164756E21
8226
+ //# debugId=044DA3D708DF041064756E2164756E21
8195
8227
  //# sourceMappingURL=index.js.map