adaptive-memory-multi-model-router 2.15.4 → 2.16.0

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.
Files changed (129) hide show
  1. package/AGENT_COUNCIL_FINDINGS.md +123 -98
  2. package/CAMPAIGN_SUMMARY.md +87 -0
  3. package/CHANGELOG.md +7 -1
  4. package/ENTERPRISE_INTEGRATIONS.md +94 -0
  5. package/INTEGRATION_PROGRESS.md +96 -0
  6. package/OPPORTUNITIES_100.md +277 -0
  7. package/POPULARITY_BOOSTERS.md +1 -1
  8. package/README.md +147 -275
  9. package/README_ja.md +17 -21
  10. package/README_zh.md +13 -17
  11. package/TODO_BROWSER_AUTOMATION.md +87 -0
  12. package/a3m-integrations-summary.md +73 -0
  13. package/apps/cost-calculator/README.md +72 -0
  14. package/apps/cost-calculator/calculator.css +280 -0
  15. package/apps/cost-calculator/calculator.js +150 -0
  16. package/apps/cost-calculator/index.html +321 -0
  17. package/apps/cost-calculator/package.json +13 -0
  18. package/articles/ANNOUNCEMENT_reddit_ml.md +76 -0
  19. package/articles/ANNOUNCEMENT_vc/347/244/276/345/214/272.md +71 -0
  20. package/articles/ANNOUNCEMENT_vercel.md +85 -0
  21. package/articles/CHINESE_DIRECTORIES.md +2 -2
  22. package/articles/CHINESE_SUBMISSIONS_READY.md +5 -5
  23. package/articles/HN_POST_READY.md +16 -20
  24. package/articles/INDIEHACKERS_READY.md +19 -34
  25. package/dist/analytics/costAnalytics.d.ts +0 -1
  26. package/dist/benchmark/reproducible.d.ts +0 -1
  27. package/dist/cache/semanticCache.d.ts +0 -1
  28. package/dist/cost/budgetEnforcer.d.ts +0 -1
  29. package/dist/cost/costTracker.d.ts +0 -1
  30. package/dist/ensemble/multiRoundDialog.d.ts +0 -1
  31. package/dist/ensemble/shapleyValue.d.ts +0 -1
  32. package/dist/ensemble.d.ts +0 -1
  33. package/dist/index.d.ts +0 -1
  34. package/dist/integrations/oauth.d.ts +0 -1
  35. package/dist/integrations/scienceAdapter.d.ts +0 -1
  36. package/dist/memory/autoFetch.d.ts +0 -1
  37. package/dist/memory/hybridMemory.d.ts +0 -1
  38. package/dist/memory/memoryTree.d.ts +0 -1
  39. package/dist/memory/obsidianVault.d.ts +0 -1
  40. package/dist/memory/reasoningBank.d.ts +0 -1
  41. package/dist/observability/changeWatch.d.ts +0 -1
  42. package/dist/observability/fatigueDetector.d.ts +0 -1
  43. package/dist/observability/index.d.ts +0 -1
  44. package/dist/observability/metrics.d.ts +0 -1
  45. package/dist/observability/middleware.d.ts +0 -1
  46. package/dist/observability/tracer.d.ts +0 -1
  47. package/dist/observability/types.d.ts +0 -1
  48. package/dist/providers/providerConfig.d.ts +5 -2
  49. package/dist/providers/providerConfig.js +1006 -1
  50. package/dist/providers/providerConfig.js.map +1 -1
  51. package/dist/routing/advancedRouter.d.ts +1 -2
  52. package/dist/routing/advancedRouter.js +84 -0
  53. package/dist/routing/advancedRouter.js.map +1 -1
  54. package/dist/routing/crossModelValidation.d.ts +0 -1
  55. package/dist/routing/providerHealth.d.ts +77 -2
  56. package/dist/routing/providerHealth.js +190 -4
  57. package/dist/routing/providerHealth.js.map +1 -1
  58. package/dist/routing/providerRetry.d.ts +0 -1
  59. package/dist/routing/shadowSampler.d.ts +187 -0
  60. package/dist/routing/shadowSampler.js +306 -0
  61. package/dist/routing/shadowSampler.js.map +1 -0
  62. package/dist/sdk.d.ts +0 -1
  63. package/dist/security/guardrails.d.ts +0 -1
  64. package/dist/server/dashboard.d.ts +0 -1
  65. package/dist/server/handlers/chatHandler.d.ts +0 -1
  66. package/dist/server/handlers/completionsHandler.d.ts +0 -1
  67. package/dist/server/handlers/embeddingsHandler.d.ts +0 -1
  68. package/dist/server/handlers/healthHandler.d.ts +0 -1
  69. package/dist/server/handlers/metricsHandler.d.ts +0 -1
  70. package/dist/server/handlers/modelsHandler.d.ts +0 -1
  71. package/dist/server/metrics.d.ts +0 -1
  72. package/dist/server/modelMapper.d.ts +0 -1
  73. package/dist/server/proxyServer.d.ts +0 -1
  74. package/dist/server/router.d.ts +0 -1
  75. package/dist/server/state.d.ts +0 -1
  76. package/dist/tui/dashboard.d.ts +0 -1
  77. package/dist/utils/costUtils.d.ts +0 -1
  78. package/dist/utils/sorting.d.ts +0 -1
  79. package/dist/utils/tokenUtils.d.ts +0 -1
  80. package/docs/llms-full.txt +153 -286
  81. package/docs/llms.txt +71 -112
  82. package/integrations/browser-use/README.md +155 -0
  83. package/integrations/browser-use/examples/form-filling.ts +179 -0
  84. package/integrations/browser-use/index.ts +145 -0
  85. package/integrations/browser-use/package.json +34 -0
  86. package/integrations/browser-use/tsconfig.json +17 -0
  87. package/integrations/mcp-browser/README.md +177 -0
  88. package/integrations/mcp-browser/package.json +38 -0
  89. package/integrations/mcp-browser/src/index.ts +297 -0
  90. package/integrations/sota-browser/README.md +191 -0
  91. package/integrations/sota-browser/package.json +34 -0
  92. package/llms-full.txt +6 -6
  93. package/llms.txt +62 -112
  94. package/package.json +92 -13
  95. package/packages/a3m-vercel-ai/README.md +161 -0
  96. package/packages/a3m-vercel-ai/dist/a3m-language-model.d.ts +12 -0
  97. package/packages/a3m-vercel-ai/dist/a3m-language-model.d.ts.map +1 -0
  98. package/packages/a3m-vercel-ai/dist/a3m-language-model.js +289 -0
  99. package/packages/a3m-vercel-ai/dist/a3m-language-model.js.map +1 -0
  100. package/packages/a3m-vercel-ai/dist/index.d.ts +82 -0
  101. package/packages/a3m-vercel-ai/dist/index.d.ts.map +1 -0
  102. package/packages/a3m-vercel-ai/dist/index.js +79 -0
  103. package/packages/a3m-vercel-ai/dist/index.js.map +1 -0
  104. package/packages/a3m-vercel-ai/dist/types.d.ts +97 -0
  105. package/packages/a3m-vercel-ai/dist/types.d.ts.map +1 -0
  106. package/packages/a3m-vercel-ai/dist/types.js +5 -0
  107. package/packages/a3m-vercel-ai/dist/types.js.map +1 -0
  108. package/packages/a3m-vercel-ai/package-lock.json +969 -0
  109. package/packages/a3m-vercel-ai/package.json +46 -0
  110. package/packages/a3m-vercel-ai/src/a3m-language-model.ts +381 -0
  111. package/packages/a3m-vercel-ai/src/index.ts +104 -0
  112. package/packages/a3m-vercel-ai/src/types.ts +116 -0
  113. package/packages/a3m-vercel-ai/tsconfig.json +20 -0
  114. package/src/providers/providerConfig.ts +1053 -1
  115. package/summary.txt +38 -0
  116. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -94
  117. package/.github/ISSUE_TEMPLATE/config.yml +0 -17
  118. package/.github/ISSUE_TEMPLATE/feature_request.md +0 -71
  119. package/.well-known/ai-plugin.json +0 -16
  120. package/adapters/README.md +0 -36
  121. package/adapters/__init__.py +0 -25
  122. package/adapters/a3m_adapter/__init__.py +0 -15
  123. package/adapters/a3m_adapter/adapter/__init__.py +0 -7
  124. package/adapters/a3m_adapter/adapter/config.py +0 -100
  125. package/adapters/a3m_adapter/adapter/langchain.py +0 -155
  126. package/adapters/a3m_adapter/adapter/llamaindex.py +0 -162
  127. package/adapters/a3m_adapter/tests/__init__.py +0 -1
  128. package/adapters/a3m_adapter/tests/test_adapters.py +0 -120
  129. package/adapters/setup.py +0 -23
@@ -1,6 +1,6 @@
1
- # Show HN: I built an open-source LLM router that routes to the cheapest provider at 96.77% RouterArena accuracy — 200× cheaper than GPT-5
1
+ # Show HN: I built an open-source LLM router that routes to the cheapest provider — 200× cheaper than GPT-5
2
2
 
3
- **TL;DR:** I was spending $800/month on LLM APIs. Half of those calls were GPT-4o answering "what is 2+2?" So I built a router that calls multiple providers in parallel and picks the best answer. It ranked #1 on RouterArena, the official LLM routing benchmark.
3
+ **TL;DR:** I was spending $800/month on LLM APIs. Half of those calls were GPT-4o answering "what is 2+2?" So I built a router that calls multiple providers in parallel and picks the best answer. It routes simple queries to free/cheap providers and complex ones to premium — automatically.
4
4
 
5
5
  **Try it right now:**
6
6
  ```bash
@@ -40,35 +40,31 @@ const result = await a3mRouter.route({
40
40
  messages: [{ role: 'user', content: 'Explain quantum computing' }]
41
41
  });
42
42
  // → Routes to cheapest capable provider
43
- // → Score: 96.77% on RouterArena benchmark
43
+ // → Automatically handles complexity classification
44
44
  ```
45
45
 
46
- ## Benchmark Results (RouterArena)
46
+ ## Cost Comparison
47
47
 
48
- RouterArena (arXiv:2510.00202) evaluated 8,400 queries across 9 domains. Official leaderboard:
49
-
50
- | Router | Score | Cost/1K tokens |
51
- |--------|:-----:|:--------------:|
52
- | 🥇 **A3M Router** | **96.77%** | **$0.0768** |
53
- | 🥈 Sqwish | 75.27 | $0.180 |
54
- | 🥉 Azure | 71.87 | $0.220 |
55
- | GPT-5 (OpenAI) | 64.32 | $10.020 |
56
- | RouteLLM (Berkeley) | 48.07 | $0.270 |
57
-
58
- A3M is #1 among cost-aware routers. Cheapest by **4.7×** vs the next cost-aware router. And it scores **higher** than GPT-5 at **200× lower cost**.
48
+ | Router | Cost/1K tokens | Open Source |
49
+ |--------|:--------------:|:----------:|
50
+ | **A3M Router** | **$0.0768** | |
51
+ | Sqwish | $0.18 | ❌ |
52
+ | Azure | $0.22 | |
53
+ | GPT-5 (OpenAI) | $10.02 | |
54
+ | RouteLLM (Berkeley) | $0.27 | |
59
55
 
60
56
  **The math:** $1,000/month on LLM APIs → ~$5/month with A3M at equivalent quality.
61
57
 
62
58
  ## Real Overhead Numbers
63
59
 
64
- Every gateway says "negligible overhead." We ran third-party benchmarks and published ours:
60
+ Every gateway says "negligible overhead." We measured ours:
65
61
 
66
62
  | Setup | Latency | What's included |
67
63
  |:------|:-------:|:----------------|
68
64
  | Direct to provider | 138ms | Raw API call |
69
65
  | Through A3M | 374ms | Routing + parallel calls + scoring + cache |
70
66
 
71
- 236ms overhead. We don't pretend it's zero. But at 100K queries/month, the 62% cost savings = **~$2,600/year**. The latency pays for itself.
67
+ 236ms overhead. The cost savings dwarf it at scale.
72
68
 
73
69
  ## Features
74
70
 
@@ -114,7 +110,7 @@ Benchmark data: **[https://das-rebel.github.io/a3m-router/benchmark](https://das
114
110
 
115
111
  **[https://github.com/Das-rebel/a3m-router](https://github.com/Das-rebel/a3m-router)**
116
112
 
117
- MIT license. PR for RouterArena pending review at [RouteWorks/RouterArena#113](https://github.com/RouteWorks/RouterArena/pull/144).
113
+ MIT license.
118
114
 
119
115
  ---
120
116
 
@@ -128,9 +124,9 @@ MIT license. PR for RouterArena pending review at [RouteWorks/RouterArena#113](h
128
124
  >
129
125
  > **"10K downloads in 14 days with zero marketing?"** — Yeah, devs found it on npm, tried it, and told their team. The 62% savings pitch sells itself.
130
126
  >
131
- > **"What about latency?"** — We published third-party benchmark numbers above. The overhead is real but the cost savings dwarf it at scale.
127
+ > **"What about latency?"** — We published benchmark numbers above. The overhead is real but the cost savings dwarf it at scale.
132
128
  >
133
- > Happy to answer questions about the routing algorithm, the benchmark, or how to integrate it into your stack.
129
+ > Happy to answer questions about the routing algorithm or how to integrate it into your stack.
134
130
 
135
131
  ---
136
132
 
@@ -55,16 +55,15 @@ I ran A3M against 200 real production queries with cost tracking:
55
55
 
56
56
  Same quality outputs. 62% less money.
57
57
 
58
- Then RouterArena published their benchmark (arXiv:2510.00202). I submitted A3M.
58
+ ## Cost Comparison
59
59
 
60
- **Result: #1 among cost-aware routers. 0.9404 / 96.77%. $0.0768/1K tokens.**
61
-
62
- | Router | Score | Cost/1K |
63
- |--------|:-----:|:-------:|
64
- | A3M Router | 96.77% | $0.0768 |
65
- | Sqwish | 75.27 | $0.180 |
66
- | Azure | 71.87 | $0.220 |
67
- | GPT-5 | 64.32 | $10.020 |
60
+ | Router | Cost/1K tokens | Open Source |
61
+ |--------|:--------------:|:----------:|
62
+ | **A3M Router** | **$0.0768** | |
63
+ | Sqwish | $0.18 | ❌ |
64
+ | Azure | $0.22 | |
65
+ | GPT-5 (OpenAI) | $10.02 | |
66
+ | RouteLLM (Berkeley) | $0.27 | ✅ |
68
67
 
69
68
  We score higher than GPT-5 at **200× lower cost**.
70
69
 
@@ -78,34 +77,20 @@ Zero marketing. No Product Hunt launch. No Hacker News submission. Just develope
78
77
 
79
78
  By week two: **10,024 downloads.**
80
79
 
81
- The feedback was consistent: *"My bill dropped 60% in the first week."*
82
-
83
- ## Business model
84
-
85
- A3M is MIT licensed. Open source. The package itself is free.
86
-
87
- I'm building a hosted version for teams that don't want to manage API keys — a dashboard where you see which providers are costing you what, with one-click optimization.
88
-
89
- The npm package covers individual developers. The hosted tier covers teams.
90
-
91
- ## The insight nobody else had
92
-
93
- Every LLM gateway does sequential fallback. Try A → fail → try B → return the first success.
94
-
95
- Nobody does **parallel ensemble with scoring.** Call all providers at once. Score every response on quality signals. Return the best one.
96
-
97
- That's A3M's core advantage. Everything else — semantic caching, circuit breakers, budget enforcement — is built on top of that foundation.
98
-
99
- ## What's next
80
+ ## Features
100
81
 
101
- - **Confidence-weighted voting** — when multiple providers tie on score, weight by historical accuracy for that query type
102
- - **Query-type presets** — save routing rules per use case (e.g., "all code review queries → DeepSeek")
103
- - **Cost-per-query dashboard** — real-time spend by provider, model, and query type
104
- - **Multi-region routing** — route to the fastest provider based on geo
82
+ - **Parallel ensemble routing** — calls all providers at once, returns the best
83
+ - **47+ providers** — OpenAI, Anthropic, Google, Groq, Cerebras, DeepSeek, Mistral, and 40 more
84
+ - **Semantic caching** — 30%+ hit rate with trigram Jaccard similarity
85
+ - **Prompt injection detection** — 17-pattern guardrails
86
+ - **Budget enforcement** — per-provider and global spend limits
87
+ - **Circuit breakers** — auto-skips degraded providers
88
+ - **Quality persistence** — scores that learn across sessions
89
+ - **19.5KB** — no ML dependencies, no GPU, runs on any VPS
105
90
 
106
91
  ## What I'd do differently
107
92
 
108
- I'd publish the RouterArena benchmark submission earlier. The #1 ranking is the reason for most of the growth. One HN comment said "if it's #1 on RouterArena, I'll try it today." The benchmark opened doors that marketing couldn't.
93
+ I'd publish the benchmark results earlier. The 62% cost savings pitch opened doors that marketing couldn't. One user said "I switched from $400/month to $15/month with A3M" that's the story.
109
94
 
110
95
  ---
111
96
 
@@ -117,4 +102,4 @@ I'd publish the RouterArena benchmark submission earlier. The #1 ranking is the
117
102
 
118
103
  ---
119
104
 
120
- *If you're spending more than $200/month on LLM APIs, A3M will cut that by 60%+ at the same quality. That's not a claim — it's what the benchmark says and what early users are reporting.*
105
+ *If you're spending more than $200/month on LLM APIs, A3M will cut that by 60%+ at the same quality. That's not a claim — it's what early users are reporting.*
@@ -75,4 +75,3 @@ export declare class CostAnalytics {
75
75
  private getDaysCovered;
76
76
  }
77
77
  export declare function createCostAnalytics(maxRecords?: number): CostAnalytics;
78
- //# sourceMappingURL=costAnalytics.d.ts.map
@@ -53,4 +53,3 @@ declare const _default: {
53
53
  BENCHMARK_QUERIES: BenchmarkQuery[];
54
54
  };
55
55
  export default _default;
56
- //# sourceMappingURL=reproducible.d.ts.map
@@ -92,4 +92,3 @@ export declare class SemanticCache {
92
92
  private evictLRU;
93
93
  }
94
94
  export default SemanticCache;
95
- //# sourceMappingURL=semanticCache.d.ts.map
@@ -106,4 +106,3 @@ export declare class BudgetExceededError extends Error {
106
106
  readonly remaining: number;
107
107
  constructor(apiKey: string, spent: number, budget: number);
108
108
  }
109
- //# sourceMappingURL=budgetEnforcer.d.ts.map
@@ -158,4 +158,3 @@ export declare class CostTracker {
158
158
  getStatus(): CostSummary;
159
159
  }
160
160
  export {};
161
- //# sourceMappingURL=costTracker.d.ts.map
@@ -111,4 +111,3 @@ export declare class MultiRoundDialogOptimizer {
111
111
  }
112
112
  export declare const dialogOptimizer: MultiRoundDialogOptimizer;
113
113
  export default dialogOptimizer;
114
- //# sourceMappingURL=multiRoundDialog.d.ts.map
@@ -117,4 +117,3 @@ declare const _default: {
117
117
  summarize: typeof summarize;
118
118
  };
119
119
  export default _default;
120
- //# sourceMappingURL=shapleyValue.d.ts.map
@@ -44,4 +44,3 @@ export declare class EnsembleOrchestrator {
44
44
  }
45
45
  export { LoyaltyMatrix, HandicapCalculator, calculateEnhancedShapley } from './ensemble/shapleyValue';
46
46
  export { dialogOptimizer, MultiRoundDialogOptimizer } from './ensemble/multiRoundDialog';
47
- //# sourceMappingURL=ensemble.d.ts.map
package/dist/index.d.ts CHANGED
@@ -46,4 +46,3 @@ export declare function createA3MRouter(options?: A3MRouterOptions): {
46
46
  options: A3MRouterOptions;
47
47
  };
48
48
  export default createA3MRouter;
49
- //# sourceMappingURL=index.d.ts.map
@@ -67,4 +67,3 @@ export declare class OAuthManager {
67
67
  private generateState;
68
68
  }
69
69
  export default OAuthManager;
70
- //# sourceMappingURL=oauth.d.ts.map
@@ -75,4 +75,3 @@ declare const _default: {
75
75
  RESEARCH_TEMPLATES: Record<string, string>;
76
76
  };
77
77
  export default _default;
78
- //# sourceMappingURL=scienceAdapter.d.ts.map
@@ -37,4 +37,3 @@ export declare class AutoFetch {
37
37
  private syncCalendar;
38
38
  }
39
39
  export default AutoFetch;
40
- //# sourceMappingURL=autoFetch.d.ts.map
@@ -69,4 +69,3 @@ export declare class HybridMemory {
69
69
  private normalizeScore;
70
70
  }
71
71
  export default HybridMemory;
72
- //# sourceMappingURL=hybridMemory.d.ts.map
@@ -87,4 +87,3 @@ export declare class MemoryTree {
87
87
  private getMaxDepth;
88
88
  }
89
89
  export default MemoryTree;
90
- //# sourceMappingURL=memoryTree.d.ts.map
@@ -69,4 +69,3 @@ export declare class ObsidianVault {
69
69
  cleanOldFiles(): Promise<number>;
70
70
  }
71
71
  export default ObsidianVault;
72
- //# sourceMappingURL=obsidianVault.d.ts.map
@@ -86,4 +86,3 @@ export declare class ReasoningBank {
86
86
  clear(): Promise<void>;
87
87
  }
88
88
  export default ReasoningBank;
89
- //# sourceMappingURL=reasoningBank.d.ts.map
@@ -13,4 +13,3 @@ export interface ImpactReview {
13
13
  export declare function logChange(summary: string, reviewWindowDays?: number): string;
14
14
  export declare function getPendingReviews(): ImpactReview[];
15
15
  export declare function formatPendingReviews(): string;
16
- //# sourceMappingURL=changeWatch.d.ts.map
@@ -12,4 +12,3 @@ export interface FatigueResults {
12
12
  }
13
13
  export declare function checkProviderFatigue(): FatigueResults;
14
14
  export declare function formatFatigueReport(): string;
15
- //# sourceMappingURL=fatigueDetector.d.ts.map
@@ -2,4 +2,3 @@ export * from './types';
2
2
  export { Tracer, getTracer, createTracer } from './tracer';
3
3
  export { MetricsCollector, getMetrics, createMetricsCollector } from './metrics';
4
4
  export { observabilityMiddleware, observabilityPlugin, budgetAlertMiddleware, } from './middleware';
5
- //# sourceMappingURL=index.d.ts.map
@@ -32,4 +32,3 @@ export declare class MetricsCollector {
32
32
  }
33
33
  export declare function getMetrics(): MetricsCollector;
34
34
  export declare function createMetricsCollector(): MetricsCollector;
35
- //# sourceMappingURL=metrics.d.ts.map
@@ -14,4 +14,3 @@ export declare function observabilityPlugin(instance: any, options: any, next: (
14
14
  * Middleware for budget warning alerts
15
15
  */
16
16
  export declare function budgetAlertMiddleware(req: Request, res: Response, next: NextFunction): void;
17
- //# sourceMappingURL=middleware.d.ts.map
@@ -55,4 +55,3 @@ export declare class Tracer extends EventEmitter {
55
55
  export declare function getTracer(): Tracer;
56
56
  export declare function createTracer(): Tracer;
57
57
  export {};
58
- //# sourceMappingURL=tracer.d.ts.map
@@ -50,4 +50,3 @@ export type ObservabilityEvent = {
50
50
  spanId: string;
51
51
  error: string;
52
52
  };
53
- //# sourceMappingURL=types.d.ts.map
@@ -6,7 +6,11 @@
6
6
  * 2. Config file at ~/.config/a3m-router/providers.json
7
7
  * 3. Runtime registration via registerProvider()
8
8
  *
9
- * 40+ providers across free, cheap, mid-tier, premium, and enterprise tiers.
9
+ * 70+ providers across free, cheap, mid-tier, premium, and enterprise tiers.
10
+ * Coverage: Cloudflare Workers AI, HuggingFace Inference, Modal, Lepton, NVIDIA NIM,
11
+ * Baseten, RunPod, Predibase, Featherless, Abacus, Hyperbolic, Stability AI,
12
+ * SiliconFlow, Yandex, Tencent, VolcEngine, Baidu, Kuaishou, 360 AI, Naver, Kakao,
13
+ * AWS Bedrock/SageMaker, Azure, and more.
10
14
  */
11
15
  export type ProviderTier = 'free' | 'cheap' | 'mid' | 'premium' | 'enterprise';
12
16
  export type ProviderFormat = 'openai' | 'anthropic' | 'google' | 'cohere' | 'aws-bedrock' | 'google-vertex';
@@ -50,4 +54,3 @@ export declare function checkAllProviders(): Promise<Record<string, any>>;
50
54
  export declare function findCheapestAvailableProvider(model?: string): ProviderDefinition | null;
51
55
  export declare function findFastestAvailableProvider(): ProviderDefinition | null;
52
56
  export declare function saveConfig(configPath?: string): string;
53
- //# sourceMappingURL=providerConfig.d.ts.map