agentic-qe 2.6.1 → 2.6.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.
- package/.claude/agents/qe-code-intelligence.md +88 -1
- package/CHANGELOG.md +134 -0
- package/README.md +222 -159
- package/dist/agents/BaseAgent.d.ts +19 -0
- package/dist/agents/BaseAgent.d.ts.map +1 -1
- package/dist/agents/BaseAgent.js +41 -1
- package/dist/agents/BaseAgent.js.map +1 -1
- package/dist/agents/CodeIntelligenceAgent.d.ts +18 -1
- package/dist/agents/CodeIntelligenceAgent.d.ts.map +1 -1
- package/dist/agents/CodeIntelligenceAgent.js +96 -1
- package/dist/agents/CodeIntelligenceAgent.js.map +1 -1
- package/dist/agents/CoverageAnalyzerAgent.d.ts +8 -0
- package/dist/agents/CoverageAnalyzerAgent.d.ts.map +1 -1
- package/dist/agents/CoverageAnalyzerAgent.js +65 -1
- package/dist/agents/CoverageAnalyzerAgent.js.map +1 -1
- package/dist/agents/TestGeneratorAgent.d.ts +2 -2
- package/dist/agents/TestGeneratorAgent.d.ts.map +1 -1
- package/dist/agents/TestGeneratorAgent.js +16 -6
- package/dist/agents/TestGeneratorAgent.js.map +1 -1
- package/dist/agents/adapters/AgentLLMAdapter.d.ts +127 -0
- package/dist/agents/adapters/AgentLLMAdapter.d.ts.map +1 -0
- package/dist/agents/adapters/AgentLLMAdapter.js +366 -0
- package/dist/agents/adapters/AgentLLMAdapter.js.map +1 -0
- package/dist/agents/adapters/index.d.ts +1 -0
- package/dist/agents/adapters/index.d.ts.map +1 -1
- package/dist/agents/adapters/index.js +5 -1
- package/dist/agents/adapters/index.js.map +1 -1
- package/dist/agents/interfaces/IAgentLLM.d.ts +257 -0
- package/dist/agents/interfaces/IAgentLLM.d.ts.map +1 -0
- package/dist/agents/interfaces/IAgentLLM.js +39 -0
- package/dist/agents/interfaces/IAgentLLM.js.map +1 -0
- package/dist/agents/interfaces/index.d.ts +10 -0
- package/dist/agents/interfaces/index.d.ts.map +1 -0
- package/dist/agents/interfaces/index.js +14 -0
- package/dist/agents/interfaces/index.js.map +1 -0
- package/dist/agents/n8n/N8nBaseAgent.d.ts +18 -0
- package/dist/agents/n8n/N8nBaseAgent.d.ts.map +1 -1
- package/dist/agents/n8n/N8nBaseAgent.js +80 -0
- package/dist/agents/n8n/N8nBaseAgent.js.map +1 -1
- package/dist/cli/commands/knowledge-graph.d.ts +30 -0
- package/dist/cli/commands/knowledge-graph.d.ts.map +1 -1
- package/dist/cli/commands/knowledge-graph.js +206 -4
- package/dist/cli/commands/knowledge-graph.js.map +1 -1
- package/dist/cli/commands/providers.d.ts +50 -0
- package/dist/cli/commands/providers.d.ts.map +1 -0
- package/dist/cli/commands/providers.js +403 -0
- package/dist/cli/commands/providers.js.map +1 -0
- package/dist/cli/index.js +214 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/code-intelligence/indexing/FileWatcher.d.ts.map +1 -1
- package/dist/code-intelligence/indexing/FileWatcher.js +11 -8
- package/dist/code-intelligence/indexing/FileWatcher.js.map +1 -1
- package/dist/code-intelligence/inference/ComponentBoundaryAnalyzer.d.ts +75 -0
- package/dist/code-intelligence/inference/ComponentBoundaryAnalyzer.d.ts.map +1 -0
- package/dist/code-intelligence/inference/ComponentBoundaryAnalyzer.js +400 -0
- package/dist/code-intelligence/inference/ComponentBoundaryAnalyzer.js.map +1 -0
- package/dist/code-intelligence/inference/ExternalSystemDetector.d.ts +31 -0
- package/dist/code-intelligence/inference/ExternalSystemDetector.d.ts.map +1 -0
- package/dist/code-intelligence/inference/ExternalSystemDetector.js +523 -0
- package/dist/code-intelligence/inference/ExternalSystemDetector.js.map +1 -0
- package/dist/code-intelligence/inference/ProjectMetadataAnalyzer.d.ts +78 -0
- package/dist/code-intelligence/inference/ProjectMetadataAnalyzer.d.ts.map +1 -0
- package/dist/code-intelligence/inference/ProjectMetadataAnalyzer.js +491 -0
- package/dist/code-intelligence/inference/ProjectMetadataAnalyzer.js.map +1 -0
- package/dist/code-intelligence/inference/index.d.ts +36 -0
- package/dist/code-intelligence/inference/index.d.ts.map +1 -0
- package/dist/code-intelligence/inference/index.js +65 -0
- package/dist/code-intelligence/inference/index.js.map +1 -0
- package/dist/code-intelligence/inference/types.d.ts +196 -0
- package/dist/code-intelligence/inference/types.d.ts.map +1 -0
- package/dist/code-intelligence/inference/types.js +9 -0
- package/dist/code-intelligence/inference/types.js.map +1 -0
- package/dist/code-intelligence/visualization/C4ComponentDiagramBuilder.d.ts +75 -0
- package/dist/code-intelligence/visualization/C4ComponentDiagramBuilder.d.ts.map +1 -0
- package/dist/code-intelligence/visualization/C4ComponentDiagramBuilder.js +267 -0
- package/dist/code-intelligence/visualization/C4ComponentDiagramBuilder.js.map +1 -0
- package/dist/code-intelligence/visualization/C4ContainerDiagramBuilder.d.ts +138 -0
- package/dist/code-intelligence/visualization/C4ContainerDiagramBuilder.d.ts.map +1 -0
- package/dist/code-intelligence/visualization/C4ContainerDiagramBuilder.js +343 -0
- package/dist/code-intelligence/visualization/C4ContainerDiagramBuilder.js.map +1 -0
- package/dist/code-intelligence/visualization/C4ContextDiagramBuilder.d.ts +67 -0
- package/dist/code-intelligence/visualization/C4ContextDiagramBuilder.d.ts.map +1 -0
- package/dist/code-intelligence/visualization/C4ContextDiagramBuilder.js +152 -0
- package/dist/code-intelligence/visualization/C4ContextDiagramBuilder.js.map +1 -0
- package/dist/code-intelligence/visualization/MermaidGenerator.d.ts +79 -0
- package/dist/code-intelligence/visualization/MermaidGenerator.d.ts.map +1 -1
- package/dist/code-intelligence/visualization/MermaidGenerator.js +143 -0
- package/dist/code-intelligence/visualization/MermaidGenerator.js.map +1 -1
- package/dist/config/ConfigLoader.d.ts +86 -0
- package/dist/config/ConfigLoader.d.ts.map +1 -0
- package/dist/config/ConfigLoader.js +450 -0
- package/dist/config/ConfigLoader.js.map +1 -0
- package/dist/config/ProviderConfig.d.ts +153 -0
- package/dist/config/ProviderConfig.d.ts.map +1 -0
- package/dist/config/ProviderConfig.js +155 -0
- package/dist/config/ProviderConfig.js.map +1 -0
- package/dist/config/index.d.ts +35 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +45 -0
- package/dist/config/index.js.map +1 -0
- package/dist/core/memory/HNSWVectorMemory.js +1 -1
- package/dist/mcp/handlers/integration/integration-test-orchestrate.d.ts.map +1 -1
- package/dist/mcp/handlers/integration/integration-test-orchestrate.js +6 -9
- package/dist/mcp/handlers/integration/integration-test-orchestrate.js.map +1 -1
- package/dist/mcp/server-instructions.d.ts +1 -1
- package/dist/mcp/server-instructions.js +1 -1
- package/dist/mcp/server.d.ts +1 -0
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/memory/HNSWPatternStore.d.ts.map +1 -1
- package/dist/memory/HNSWPatternStore.js +23 -0
- package/dist/memory/HNSWPatternStore.js.map +1 -1
- package/dist/memory/RuVectorPatternStore.d.ts +5 -0
- package/dist/memory/RuVectorPatternStore.d.ts.map +1 -1
- package/dist/memory/RuVectorPatternStore.js +11 -0
- package/dist/memory/RuVectorPatternStore.js.map +1 -1
- package/dist/providers/CostOptimizationStrategies.d.ts +297 -0
- package/dist/providers/CostOptimizationStrategies.d.ts.map +1 -0
- package/dist/providers/CostOptimizationStrategies.js +831 -0
- package/dist/providers/CostOptimizationStrategies.js.map +1 -0
- package/dist/providers/HybridRouter.d.ts +142 -5
- package/dist/providers/HybridRouter.d.ts.map +1 -1
- package/dist/providers/HybridRouter.js +472 -6
- package/dist/providers/HybridRouter.js.map +1 -1
- package/dist/providers/HybridRouterComplexityIntegration.d.ts +169 -0
- package/dist/providers/HybridRouterComplexityIntegration.d.ts.map +1 -0
- package/dist/providers/HybridRouterComplexityIntegration.js +319 -0
- package/dist/providers/HybridRouterComplexityIntegration.js.map +1 -0
- package/dist/providers/HybridRouterModelSelection.d.ts +106 -0
- package/dist/providers/HybridRouterModelSelection.d.ts.map +1 -0
- package/dist/providers/HybridRouterModelSelection.js +420 -0
- package/dist/providers/HybridRouterModelSelection.js.map +1 -0
- package/dist/providers/LLMProviderFactory.d.ts +23 -9
- package/dist/providers/LLMProviderFactory.d.ts.map +1 -1
- package/dist/providers/LLMProviderFactory.js +54 -11
- package/dist/providers/LLMProviderFactory.js.map +1 -1
- package/dist/providers/OllamaProvider.d.ts +122 -0
- package/dist/providers/OllamaProvider.d.ts.map +1 -0
- package/dist/providers/OllamaProvider.js +425 -0
- package/dist/providers/OllamaProvider.js.map +1 -0
- package/dist/providers/index.d.ts +6 -1
- package/dist/providers/index.d.ts.map +1 -1
- package/dist/providers/index.js +17 -1
- package/dist/providers/index.js.map +1 -1
- package/dist/routing/ComplexityClassifier.d.ts +266 -0
- package/dist/routing/ComplexityClassifier.d.ts.map +1 -0
- package/dist/routing/ComplexityClassifier.js +567 -0
- package/dist/routing/ComplexityClassifier.js.map +1 -0
- package/dist/routing/ModelCapabilityRegistry.d.ts +98 -0
- package/dist/routing/ModelCapabilityRegistry.d.ts.map +1 -0
- package/dist/routing/ModelCapabilityRegistry.js +216 -0
- package/dist/routing/ModelCapabilityRegistry.js.map +1 -0
- package/dist/routing/index.d.ts +13 -0
- package/dist/routing/index.d.ts.map +1 -0
- package/dist/routing/index.js +24 -0
- package/dist/routing/index.js.map +1 -0
- package/docs/reference/model-capability-registry.md +402 -0
- package/docs/reference/provider-config-schema.md +608 -0
- package/package.json +20 -4
|
@@ -0,0 +1,297 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Cost Optimization Strategies for LLM Independence
|
|
3
|
+
*
|
|
4
|
+
* Provides intelligent cost optimization through:
|
|
5
|
+
* - Prompt compression (6-10% token savings)
|
|
6
|
+
* - Request batching for bulk operations
|
|
7
|
+
* - Smart caching with task-specific TTLs
|
|
8
|
+
* - Model right-sizing based on budget and complexity
|
|
9
|
+
*
|
|
10
|
+
* Designed as standalone utilities for integration with HybridRouter.
|
|
11
|
+
*
|
|
12
|
+
* @module providers/CostOptimizationStrategies
|
|
13
|
+
* @version 1.0.0
|
|
14
|
+
*/
|
|
15
|
+
import { LLMCompletionOptions, LLMCompletionResponse } from './ILLMProvider';
|
|
16
|
+
import { TaskComplexity, BudgetStatus } from './HybridRouter';
|
|
17
|
+
import { TaskType, ModelConstraints } from '../routing/ModelCapabilityRegistry';
|
|
18
|
+
/**
|
|
19
|
+
* Request group for batching
|
|
20
|
+
*/
|
|
21
|
+
export interface RequestGroup {
|
|
22
|
+
/** Group identifier based on similarity */
|
|
23
|
+
groupId: string;
|
|
24
|
+
/** Requests in this group */
|
|
25
|
+
requests: LLMCompletionOptions[];
|
|
26
|
+
/** Common characteristics */
|
|
27
|
+
characteristics: {
|
|
28
|
+
averageTokens: number;
|
|
29
|
+
hasCode: boolean;
|
|
30
|
+
taskType?: TaskType;
|
|
31
|
+
complexity?: TaskComplexity;
|
|
32
|
+
};
|
|
33
|
+
/** Estimated savings from batching */
|
|
34
|
+
estimatedSavings: number;
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Cache strategy configuration
|
|
38
|
+
*/
|
|
39
|
+
export interface CacheStrategy {
|
|
40
|
+
/** Task type this strategy applies to */
|
|
41
|
+
taskType: TaskType;
|
|
42
|
+
/** Time-to-live in seconds */
|
|
43
|
+
ttlSeconds: number;
|
|
44
|
+
/** Aggressive caching (cache more aggressively) */
|
|
45
|
+
aggressive: boolean;
|
|
46
|
+
/** Cache key generator function */
|
|
47
|
+
keyGenerator: (options: LLMCompletionOptions) => string;
|
|
48
|
+
/** Confidence threshold for cache hits (0-1) */
|
|
49
|
+
confidenceThreshold: number;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Prompt compression result
|
|
53
|
+
*/
|
|
54
|
+
export interface CompressionResult {
|
|
55
|
+
/** Compressed prompt */
|
|
56
|
+
compressed: string;
|
|
57
|
+
/** Original prompt */
|
|
58
|
+
original: string;
|
|
59
|
+
/** Tokens saved (estimated) */
|
|
60
|
+
tokensSaved: number;
|
|
61
|
+
/** Compression ratio (0-1, higher = more compression) */
|
|
62
|
+
ratio: number;
|
|
63
|
+
/** Techniques applied */
|
|
64
|
+
techniques: string[];
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Model right-sizing recommendation
|
|
68
|
+
*/
|
|
69
|
+
export interface ModelRightSizingResult {
|
|
70
|
+
/** Should downgrade to smaller model */
|
|
71
|
+
shouldDowngrade: boolean;
|
|
72
|
+
/** Recommended model ID */
|
|
73
|
+
recommendedModel?: string;
|
|
74
|
+
/** Reason for recommendation */
|
|
75
|
+
reason: string;
|
|
76
|
+
/** Estimated cost savings */
|
|
77
|
+
estimatedSavings?: number;
|
|
78
|
+
/** Quality impact score (0-1, 1 = no impact) */
|
|
79
|
+
qualityImpact: number;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* Batch execution result
|
|
83
|
+
*/
|
|
84
|
+
export interface BatchExecutionResult {
|
|
85
|
+
/** Individual responses */
|
|
86
|
+
responses: LLMCompletionResponse[];
|
|
87
|
+
/** Total cost */
|
|
88
|
+
totalCost: number;
|
|
89
|
+
/** Cost savings from batching */
|
|
90
|
+
savings: number;
|
|
91
|
+
/** Execution time in milliseconds */
|
|
92
|
+
executionTime: number;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Configuration for cost optimization
|
|
96
|
+
*/
|
|
97
|
+
export interface CostOptimizationConfig {
|
|
98
|
+
/** Enable debug logging */
|
|
99
|
+
debug?: boolean;
|
|
100
|
+
/** Enable prompt compression */
|
|
101
|
+
enableCompression?: boolean;
|
|
102
|
+
/** Enable request batching */
|
|
103
|
+
enableBatching?: boolean;
|
|
104
|
+
/** Enable smart caching */
|
|
105
|
+
enableSmartCaching?: boolean;
|
|
106
|
+
/** Minimum compression ratio to apply (0-1) */
|
|
107
|
+
minCompressionRatio?: number;
|
|
108
|
+
/** Maximum batch size */
|
|
109
|
+
maxBatchSize?: number;
|
|
110
|
+
/** Default cache TTL in seconds */
|
|
111
|
+
defaultCacheTTL?: number;
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* PromptCompressor - Reduce token usage through intelligent compression
|
|
115
|
+
*
|
|
116
|
+
* Achieves 6-10% token savings through:
|
|
117
|
+
* - Redundant whitespace removal
|
|
118
|
+
* - Common pattern abbreviation
|
|
119
|
+
* - Token-efficient phrasing
|
|
120
|
+
*/
|
|
121
|
+
export declare class PromptCompressor {
|
|
122
|
+
private readonly logger;
|
|
123
|
+
private readonly config;
|
|
124
|
+
constructor(config?: CostOptimizationConfig);
|
|
125
|
+
/**
|
|
126
|
+
* Compress whitespace - remove redundant spaces, newlines
|
|
127
|
+
*/
|
|
128
|
+
compressWhitespace(prompt: string): string;
|
|
129
|
+
/**
|
|
130
|
+
* Abbreviate common patterns to save tokens
|
|
131
|
+
*/
|
|
132
|
+
abbreviatePatterns(prompt: string): string;
|
|
133
|
+
/**
|
|
134
|
+
* Optimize token usage through efficient phrasing
|
|
135
|
+
*/
|
|
136
|
+
optimizeTokenUsage(prompt: string): string;
|
|
137
|
+
/**
|
|
138
|
+
* Full compression pipeline
|
|
139
|
+
*/
|
|
140
|
+
compress(prompt: string): CompressionResult;
|
|
141
|
+
/**
|
|
142
|
+
* Compress LLM completion options
|
|
143
|
+
*/
|
|
144
|
+
compressOptions(options: LLMCompletionOptions): {
|
|
145
|
+
options: LLMCompletionOptions;
|
|
146
|
+
result: CompressionResult;
|
|
147
|
+
};
|
|
148
|
+
/**
|
|
149
|
+
* Extract all text from options
|
|
150
|
+
*/
|
|
151
|
+
private extractAllText;
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* RequestBatcher - Batch similar requests for cost efficiency
|
|
155
|
+
*/
|
|
156
|
+
export declare class RequestBatcher {
|
|
157
|
+
private readonly logger;
|
|
158
|
+
private readonly config;
|
|
159
|
+
constructor(config?: CostOptimizationConfig);
|
|
160
|
+
/**
|
|
161
|
+
* Group similar requests for batch processing
|
|
162
|
+
*/
|
|
163
|
+
groupSimilarRequests(requests: LLMCompletionOptions[]): RequestGroup[];
|
|
164
|
+
/**
|
|
165
|
+
* Estimate savings from batching
|
|
166
|
+
*/
|
|
167
|
+
estimateBatchSavings(requests: LLMCompletionOptions[]): number;
|
|
168
|
+
/**
|
|
169
|
+
* Calculate group key for similarity
|
|
170
|
+
*/
|
|
171
|
+
private calculateGroupKey;
|
|
172
|
+
/**
|
|
173
|
+
* Analyze group characteristics
|
|
174
|
+
*/
|
|
175
|
+
private analyzeGroupCharacteristics;
|
|
176
|
+
/**
|
|
177
|
+
* Split requests into batches
|
|
178
|
+
*/
|
|
179
|
+
private splitIntoBatches;
|
|
180
|
+
/**
|
|
181
|
+
* Extract all text from request
|
|
182
|
+
*/
|
|
183
|
+
private extractAllText;
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* SmartCacheStrategy - Task-specific caching strategies
|
|
187
|
+
*/
|
|
188
|
+
export declare class SmartCacheStrategy {
|
|
189
|
+
private readonly logger;
|
|
190
|
+
private readonly config;
|
|
191
|
+
private readonly strategies;
|
|
192
|
+
constructor(config?: CostOptimizationConfig);
|
|
193
|
+
/**
|
|
194
|
+
* Get cache strategy for task type
|
|
195
|
+
*/
|
|
196
|
+
getCacheStrategy(taskType: TaskType): CacheStrategy;
|
|
197
|
+
/**
|
|
198
|
+
* Check if result should be cached
|
|
199
|
+
*/
|
|
200
|
+
shouldCache(options: LLMCompletionOptions, response: LLMCompletionResponse): boolean;
|
|
201
|
+
/**
|
|
202
|
+
* Generate cache key for request
|
|
203
|
+
*/
|
|
204
|
+
generateCacheKey(options: LLMCompletionOptions, taskType?: TaskType): string;
|
|
205
|
+
/**
|
|
206
|
+
* Default cache key generator
|
|
207
|
+
*/
|
|
208
|
+
private defaultKeyGenerator;
|
|
209
|
+
/**
|
|
210
|
+
* Simple hash function for cache keys
|
|
211
|
+
*/
|
|
212
|
+
private simpleHash;
|
|
213
|
+
/**
|
|
214
|
+
* Initialize default caching strategies
|
|
215
|
+
*/
|
|
216
|
+
private initializeDefaultStrategies;
|
|
217
|
+
/**
|
|
218
|
+
* Specialized key generator for test generation
|
|
219
|
+
*/
|
|
220
|
+
private testGenerationKeyGenerator;
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* ModelRightSizer - Budget-aware model selection
|
|
224
|
+
*/
|
|
225
|
+
export declare class ModelRightSizer {
|
|
226
|
+
private readonly logger;
|
|
227
|
+
constructor();
|
|
228
|
+
/**
|
|
229
|
+
* Determine if should use smaller model based on budget
|
|
230
|
+
*/
|
|
231
|
+
shouldDowngradeModel(complexity: TaskComplexity, budgetStatus: BudgetStatus, constraints?: ModelConstraints): ModelRightSizingResult;
|
|
232
|
+
/**
|
|
233
|
+
* Calculate budget pressure score (0-1)
|
|
234
|
+
*/
|
|
235
|
+
private calculateBudgetPressure;
|
|
236
|
+
/**
|
|
237
|
+
* Check if task allows model downgrade
|
|
238
|
+
*/
|
|
239
|
+
private canDowngrade;
|
|
240
|
+
/**
|
|
241
|
+
* Make downgrade decision
|
|
242
|
+
*/
|
|
243
|
+
private makeDowngradeDecision;
|
|
244
|
+
/**
|
|
245
|
+
* Get model for tier
|
|
246
|
+
*/
|
|
247
|
+
private getModelForTier;
|
|
248
|
+
/**
|
|
249
|
+
* Estimate cost savings from downgrade
|
|
250
|
+
*/
|
|
251
|
+
private estimateSavings;
|
|
252
|
+
/**
|
|
253
|
+
* Get downgrade reason message
|
|
254
|
+
*/
|
|
255
|
+
private getDowngradeReason;
|
|
256
|
+
}
|
|
257
|
+
/**
|
|
258
|
+
* CostOptimizationManager - Orchestrates all optimization strategies
|
|
259
|
+
*/
|
|
260
|
+
export declare class CostOptimizationManager {
|
|
261
|
+
private readonly compressor;
|
|
262
|
+
private readonly batcher;
|
|
263
|
+
private readonly cacheStrategy;
|
|
264
|
+
private readonly rightSizer;
|
|
265
|
+
private readonly logger;
|
|
266
|
+
constructor(config?: CostOptimizationConfig);
|
|
267
|
+
/**
|
|
268
|
+
* Get prompt compressor
|
|
269
|
+
*/
|
|
270
|
+
getCompressor(): PromptCompressor;
|
|
271
|
+
/**
|
|
272
|
+
* Get request batcher
|
|
273
|
+
*/
|
|
274
|
+
getBatcher(): RequestBatcher;
|
|
275
|
+
/**
|
|
276
|
+
* Get cache strategy manager
|
|
277
|
+
*/
|
|
278
|
+
getCacheStrategy(): SmartCacheStrategy;
|
|
279
|
+
/**
|
|
280
|
+
* Get model right-sizer
|
|
281
|
+
*/
|
|
282
|
+
getRightSizer(): ModelRightSizer;
|
|
283
|
+
/**
|
|
284
|
+
* Apply all applicable optimizations to a request
|
|
285
|
+
*/
|
|
286
|
+
optimizeRequest(options: LLMCompletionOptions, context?: {
|
|
287
|
+
taskType?: TaskType;
|
|
288
|
+
complexity?: TaskComplexity;
|
|
289
|
+
budgetStatus?: BudgetStatus;
|
|
290
|
+
}): {
|
|
291
|
+
optimizedOptions: LLMCompletionOptions;
|
|
292
|
+
compressionResult?: CompressionResult;
|
|
293
|
+
modelDowngrade?: ModelRightSizingResult;
|
|
294
|
+
estimatedSavings: number;
|
|
295
|
+
};
|
|
296
|
+
}
|
|
297
|
+
//# sourceMappingURL=CostOptimizationStrategies.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CostOptimizationStrategies.d.ts","sourceRoot":"","sources":["../../src/providers/CostOptimizationStrategies.ts"],"names":[],"mappings":"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"}
|