ai.matey.middleware 0.2.0 → 0.3.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.
- package/CHANGELOG.md +38 -0
- package/dist/cjs/cost-tracking.js +42 -16
- package/dist/cjs/cost-tracking.js.map +1 -1
- package/dist/cjs/embeddings.js +84 -0
- package/dist/cjs/embeddings.js.map +1 -0
- package/dist/cjs/index.js +1 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/transform.js.map +1 -1
- package/dist/esm/cost-tracking.js +42 -16
- package/dist/esm/cost-tracking.js.map +1 -1
- package/dist/esm/embeddings.js +80 -0
- package/dist/esm/embeddings.js.map +1 -0
- package/dist/esm/index.js +1 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/transform.js.map +1 -1
- package/dist/types/cost-tracking.d.ts +7 -2
- package/dist/types/cost-tracking.d.ts.map +1 -1
- package/dist/types/embeddings.d.ts +65 -0
- package/dist/types/embeddings.d.ts.map +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +11 -1
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
# ai.matey.middleware
|
|
2
|
+
|
|
3
|
+
## 0.3.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- dae4d01: Embeddings support: `bridge.embed()` / `router.embed()` with batch chunking, dimension
|
|
8
|
+
normalization, and an embed middleware chain; provider implementations for OpenAI, Mistral,
|
|
9
|
+
Gemini, Cohere, Ollama, Together, Fireworks, DeepInfra, NVIDIA, and LM Studio; caching and
|
|
10
|
+
cost-tracking embedding middleware.
|
|
11
|
+
|
|
12
|
+
### Patch Changes
|
|
13
|
+
|
|
14
|
+
- 2912b7d: Introduce a shared, data-driven model registry in `ai.matey.utils` as the single source of truth
|
|
15
|
+
for model metadata (pricing, context windows, capabilities, quality/latency). The registry ships
|
|
16
|
+
with a mid-2026 seed (GPT-5.x/o-series, Claude 4.x, Gemini 2.5/3, Grok, current Mistral/DeepSeek,
|
|
17
|
+
plus embedding models) and is runtime-extensible via `registerModels()` / `overrideModelPricing()`,
|
|
18
|
+
with alias and longest-prefix fallback so new dated snapshots of known families still resolve.
|
|
19
|
+
|
|
20
|
+
`ai.matey.core`'s model-pricing API is now a thin delegate over the registry (no API break; legacy
|
|
21
|
+
models keep their prices, marked `deprecated`). Capability inference recognizes current families.
|
|
22
|
+
Cost-tracking middleware consults the registry before provider-level defaults. `useTokenCount`
|
|
23
|
+
consults the registry for context windows. Backend default models updated:
|
|
24
|
+
`claude-3-haiku-20240307` → `claude-sonnet-4-5-20250929` (Anthropic), `gpt-3.5-turbo` →
|
|
25
|
+
`gpt-5-mini` (OpenAI) — note this changes behavior for requests that omit a model. `estimateCost()`
|
|
26
|
+
on both backends now prices the actual requested model. Refreshed `deepseek-chat` pricing.
|
|
27
|
+
|
|
28
|
+
- Updated dependencies [dae4d01]
|
|
29
|
+
- Updated dependencies [e7df1d0]
|
|
30
|
+
- Updated dependencies [f227db2]
|
|
31
|
+
- Updated dependencies [2912b7d]
|
|
32
|
+
- Updated dependencies [aef9f4a]
|
|
33
|
+
- Updated dependencies [78731bb]
|
|
34
|
+
- Updated dependencies [b7e2312]
|
|
35
|
+
- Updated dependencies [58ebc03]
|
|
36
|
+
- ai.matey.types@0.3.0
|
|
37
|
+
- ai.matey.utils@0.3.0
|
|
38
|
+
- ai.matey.core@0.3.0
|
|
@@ -13,6 +13,7 @@ exports.calculateCost = calculateCost;
|
|
|
13
13
|
exports.createCostTrackingMiddleware = createCostTrackingMiddleware;
|
|
14
14
|
exports.createStreamingCostTrackingMiddleware = createStreamingCostTrackingMiddleware;
|
|
15
15
|
exports.getCostStats = getCostStats;
|
|
16
|
+
const ai_matey_utils_1 = require("ai.matey.utils");
|
|
16
17
|
/**
|
|
17
18
|
* In-memory cost storage
|
|
18
19
|
*/
|
|
@@ -65,11 +66,16 @@ class InMemoryCostStorage {
|
|
|
65
66
|
}
|
|
66
67
|
exports.InMemoryCostStorage = InMemoryCostStorage;
|
|
67
68
|
/**
|
|
68
|
-
*
|
|
69
|
-
*
|
|
69
|
+
* Provider-level fallback pricing (USD per 1M tokens).
|
|
70
|
+
*
|
|
71
|
+
* Model-specific pricing comes from the shared model registry in
|
|
72
|
+
* `ai.matey.utils` (see calculateCost); these entries only cover the case
|
|
73
|
+
* where the model itself is unknown, using a mid-tier model of each
|
|
74
|
+
* provider as the representative rate. Model-keyed entries
|
|
75
|
+
* (`provider:model`) remain supported for explicit overrides.
|
|
70
76
|
*/
|
|
71
77
|
exports.DEFAULT_PRICING = {
|
|
72
|
-
// Anthropic Claude
|
|
78
|
+
// Anthropic Claude (representative: Sonnet)
|
|
73
79
|
anthropic: {
|
|
74
80
|
inputCostPer1M: 3.0,
|
|
75
81
|
outputCostPer1M: 15.0,
|
|
@@ -86,10 +92,10 @@ exports.DEFAULT_PRICING = {
|
|
|
86
92
|
inputCostPer1M: 0.25,
|
|
87
93
|
outputCostPer1M: 1.25,
|
|
88
94
|
},
|
|
89
|
-
// OpenAI
|
|
95
|
+
// OpenAI (representative: gpt-5.x flagship)
|
|
90
96
|
openai: {
|
|
91
|
-
inputCostPer1M:
|
|
92
|
-
outputCostPer1M:
|
|
97
|
+
inputCostPer1M: 1.25,
|
|
98
|
+
outputCostPer1M: 10.0,
|
|
93
99
|
},
|
|
94
100
|
'openai:gpt-4': {
|
|
95
101
|
inputCostPer1M: 30.0,
|
|
@@ -103,24 +109,29 @@ exports.DEFAULT_PRICING = {
|
|
|
103
109
|
inputCostPer1M: 0.5,
|
|
104
110
|
outputCostPer1M: 1.5,
|
|
105
111
|
},
|
|
106
|
-
// Google Gemini
|
|
112
|
+
// Google Gemini (representative: Flash)
|
|
107
113
|
gemini: {
|
|
108
|
-
inputCostPer1M: 0.
|
|
109
|
-
outputCostPer1M:
|
|
114
|
+
inputCostPer1M: 0.3,
|
|
115
|
+
outputCostPer1M: 2.5,
|
|
110
116
|
},
|
|
111
117
|
'gemini:gemini-pro': {
|
|
112
118
|
inputCostPer1M: 0.5,
|
|
113
119
|
outputCostPer1M: 1.5,
|
|
114
120
|
},
|
|
115
|
-
// Mistral
|
|
121
|
+
// Mistral (representative: Medium)
|
|
116
122
|
mistral: {
|
|
117
|
-
inputCostPer1M:
|
|
118
|
-
outputCostPer1M:
|
|
123
|
+
inputCostPer1M: 0.4,
|
|
124
|
+
outputCostPer1M: 2.0,
|
|
119
125
|
},
|
|
120
126
|
// DeepSeek
|
|
121
127
|
deepseek: {
|
|
122
|
-
inputCostPer1M: 0.
|
|
123
|
-
outputCostPer1M:
|
|
128
|
+
inputCostPer1M: 0.27,
|
|
129
|
+
outputCostPer1M: 1.1,
|
|
130
|
+
},
|
|
131
|
+
// xAI Grok
|
|
132
|
+
xai: {
|
|
133
|
+
inputCostPer1M: 3.0,
|
|
134
|
+
outputCostPer1M: 15.0,
|
|
124
135
|
},
|
|
125
136
|
// Groq (very low cost)
|
|
126
137
|
groq: {
|
|
@@ -165,10 +176,25 @@ function calculateCost(usage, provider, model, config) {
|
|
|
165
176
|
const providerKey = `${provider}:${model}`;
|
|
166
177
|
pricing = config.providers[providerKey] || config.providers[provider];
|
|
167
178
|
}
|
|
168
|
-
// Fall back to
|
|
179
|
+
// Fall back to explicit provider:model / provider defaults
|
|
169
180
|
if (!pricing) {
|
|
170
181
|
const providerKey = `${provider}:${model}`;
|
|
171
|
-
pricing = exports.DEFAULT_PRICING[providerKey]
|
|
182
|
+
pricing = exports.DEFAULT_PRICING[providerKey];
|
|
183
|
+
}
|
|
184
|
+
// Fall back to the shared model registry (single source of truth for
|
|
185
|
+
// per-model pricing, including user-registered models)
|
|
186
|
+
if (!pricing) {
|
|
187
|
+
const registryPricing = (0, ai_matey_utils_1.getModelPricingInfo)(model);
|
|
188
|
+
if (registryPricing) {
|
|
189
|
+
pricing = {
|
|
190
|
+
inputCostPer1M: registryPricing.inputPer1M,
|
|
191
|
+
outputCostPer1M: registryPricing.outputPer1M,
|
|
192
|
+
};
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
// Last resort: provider-level representative rate
|
|
196
|
+
if (!pricing) {
|
|
197
|
+
pricing = exports.DEFAULT_PRICING[provider];
|
|
172
198
|
}
|
|
173
199
|
// If still no pricing, use zero cost
|
|
174
200
|
if (!pricing) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cost-tracking.js","sourceRoot":"","sources":["../../src/cost-tracking.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;
|
|
1
|
+
{"version":3,"file":"cost-tracking.js","sourceRoot":"","sources":["../../src/cost-tracking.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Embedding Middleware
|
|
4
|
+
*
|
|
5
|
+
* Middleware for the Bridge's embedding chain (`bridge.useEmbed()`):
|
|
6
|
+
* response caching and cost tracking.
|
|
7
|
+
*
|
|
8
|
+
* @module
|
|
9
|
+
*/
|
|
10
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
+
exports.createEmbeddingCachingMiddleware = createEmbeddingCachingMiddleware;
|
|
12
|
+
exports.createEmbeddingCostTrackingMiddleware = createEmbeddingCostTrackingMiddleware;
|
|
13
|
+
const crypto_1 = require("crypto");
|
|
14
|
+
const ai_matey_utils_1 = require("ai.matey.utils");
|
|
15
|
+
function defaultKeyGenerator(request) {
|
|
16
|
+
const payload = JSON.stringify({
|
|
17
|
+
input: request.input,
|
|
18
|
+
model: request.parameters?.model,
|
|
19
|
+
dimensions: request.parameters?.dimensions,
|
|
20
|
+
inputType: request.parameters?.inputType,
|
|
21
|
+
});
|
|
22
|
+
return (0, crypto_1.createHash)('sha256').update(payload).digest('hex');
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Cache embedding responses by input + parameters.
|
|
26
|
+
*
|
|
27
|
+
* Embeddings are deterministic per model, making them ideal cache
|
|
28
|
+
* candidates — repeated embedding of the same documents costs nothing.
|
|
29
|
+
*
|
|
30
|
+
* @example
|
|
31
|
+
* ```typescript
|
|
32
|
+
* bridge.useEmbed(createEmbeddingCachingMiddleware({ ttl: 24 * 3600 * 1000 }));
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
35
|
+
function createEmbeddingCachingMiddleware(config = {}) {
|
|
36
|
+
const ttl = config.ttl ?? 3_600_000;
|
|
37
|
+
const maxEntries = config.maxEntries ?? 1000;
|
|
38
|
+
const keyGenerator = config.keyGenerator ?? defaultKeyGenerator;
|
|
39
|
+
const cache = new Map();
|
|
40
|
+
return async (request, next) => {
|
|
41
|
+
const key = keyGenerator(request);
|
|
42
|
+
const cached = cache.get(key);
|
|
43
|
+
if (cached && cached.expiresAt > Date.now()) {
|
|
44
|
+
return cached.response;
|
|
45
|
+
}
|
|
46
|
+
const response = await next(request);
|
|
47
|
+
if (cache.size >= maxEntries) {
|
|
48
|
+
// Evict the oldest entry (Map preserves insertion order)
|
|
49
|
+
const oldest = cache.keys().next().value;
|
|
50
|
+
if (oldest !== undefined) {
|
|
51
|
+
cache.delete(oldest);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
cache.set(key, { response, expiresAt: Date.now() + ttl });
|
|
55
|
+
return response;
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Track embedding spend using registry pricing and reported usage.
|
|
60
|
+
*
|
|
61
|
+
* @example
|
|
62
|
+
* ```typescript
|
|
63
|
+
* const costs: EmbeddingCostRecord[] = [];
|
|
64
|
+
* bridge.useEmbed(createEmbeddingCostTrackingMiddleware({ onCost: (r) => costs.push(r) }));
|
|
65
|
+
* ```
|
|
66
|
+
*/
|
|
67
|
+
function createEmbeddingCostTrackingMiddleware(config = {}) {
|
|
68
|
+
return async (request, next) => {
|
|
69
|
+
const response = await next(request);
|
|
70
|
+
const promptTokens = response.usage?.promptTokens ?? 0;
|
|
71
|
+
const model = response.model;
|
|
72
|
+
const per1M = config.costPer1M ?? (0, ai_matey_utils_1.getModelPricingInfo)(model)?.inputPer1M ?? 0;
|
|
73
|
+
const costUSD = (promptTokens / 1_000_000) * per1M;
|
|
74
|
+
config.onCost?.({
|
|
75
|
+
requestId: response.metadata.requestId,
|
|
76
|
+
model,
|
|
77
|
+
promptTokens,
|
|
78
|
+
costUSD,
|
|
79
|
+
timestamp: Date.now(),
|
|
80
|
+
});
|
|
81
|
+
return response;
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
//# sourceMappingURL=embeddings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"embeddings.js","sourceRoot":"","sources":["../../src/embeddings.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;AAkDH,4EA6BC;AAwCD,sFAqBC;AA1ID,mCAAoC;AAEpC,mDAAqD;AAyBrD,SAAS,mBAAmB,CAAC,OAAuB;IAClD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;QAC7B,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,KAAK,EAAE,OAAO,CAAC,UAAU,EAAE,KAAK;QAChC,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,UAAU;QAC1C,SAAS,EAAE,OAAO,CAAC,UAAU,EAAE,SAAS;KACzC,CAAC,CAAC;IACH,OAAO,IAAA,mBAAU,EAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;;;;GAUG;AACH,SAAgB,gCAAgC,CAC9C,SAAiC,EAAE;IAEnC,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI,SAAS,CAAC;IACpC,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,IAAI,CAAC;IAC7C,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,mBAAmB,CAAC;IAChE,MAAM,KAAK,GAAG,IAAI,GAAG,EAAsB,CAAC;IAE5C,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QAC7B,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QAClC,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAE9B,IAAI,MAAM,IAAI,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;YAC5C,OAAO,MAAM,CAAC,QAAQ,CAAC;QACzB,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;QAErC,IAAI,KAAK,CAAC,IAAI,IAAI,UAAU,EAAE,CAAC;YAC7B,yDAAyD;YACzD,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;YACzC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;QACD,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC;QAE1D,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;AACJ,CAAC;AA+BD;;;;;;;;GAQG;AACH,SAAgB,qCAAqC,CACnD,SAAsC,EAAE;IAExC,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QAC7B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;QAErC,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,EAAE,YAAY,IAAI,CAAC,CAAC;QACvD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;QAC7B,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,IAAI,IAAA,oCAAmB,EAAC,KAAK,CAAC,EAAE,UAAU,IAAI,CAAC,CAAC;QAC9E,MAAM,OAAO,GAAG,CAAC,YAAY,GAAG,SAAS,CAAC,GAAG,KAAK,CAAC;QAEnD,MAAM,CAAC,MAAM,EAAE,CAAC;YACd,SAAS,EAAE,QAAQ,CAAC,QAAQ,CAAC,SAAS;YACtC,KAAK;YACL,YAAY;YACZ,OAAO;YACP,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACtB,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;AACJ,CAAC"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -34,4 +34,5 @@ __exportStar(require("./security.js"), exports);
|
|
|
34
34
|
__exportStar(require("./telemetry.js"), exports);
|
|
35
35
|
__exportStar(require("./transform.js"), exports);
|
|
36
36
|
__exportStar(require("./validation.js"), exports);
|
|
37
|
+
__exportStar(require("./embeddings.js"), exports);
|
|
37
38
|
//# sourceMappingURL=index.js.map
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;;;;;;;;;;;;;;AAEH,wBAAwB;AACxB,+CAA6B;AAC7B,4DAA0C;AAC1C,qDAAmC;AACnC,+CAA6B;AAC7B,qDAAmC;AACnC,6CAA2B;AAC3B,gDAA8B;AAC9B,iDAA+B;AAC/B,iDAA+B;AAC/B,kDAAgC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;;;;;;;;;;;;;;AAEH,wBAAwB;AACxB,+CAA6B;AAC7B,4DAA0C;AAC1C,qDAAmC;AACnC,+CAA6B;AAC7B,qDAAmC;AACnC,6CAA2B;AAC3B,gDAA8B;AAC9B,iDAA+B;AAC/B,iDAA+B;AAC/B,kDAAgC;AAChC,kDAAgC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transform.js","sourceRoot":"","sources":["../../src/transform.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AA0EH,8DAoCC;AAmBD,oDAkCC;AAgBD,0DAWC;AAiBD,oDAIC;AAiBD,kEAkBC;AAgBD,kDAiBC;AAgBD,wDAIC;AAgBD,gEAYC;AAQD,kEAYC;AAQD,gEAYC;AAjUD,+EAA+E;AAC/E,qBAAqB;AACrB,+EAA+E;AAE/E;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,SAAgB,yBAAyB,CAAC,SAA0B,EAAE;IACpE,MAAM,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,GAAG,MAAM,CAAC;IAE1E,OAAO,KAAK,EAAE,OAA0B,EAAE,IAAoB,EAA2B,EAAE;QACzF,IAAI,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAE9B,gCAAgC;QAChC,IAAI,iBAAiB,EAAE,CAAC;YACtB,MAAM,mBAAmB,GAAG,MAAM,OAAO,CAAC,GAAG,CAC3C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,CACvE,CAAC;YAEF,OAAO,GAAG;gBACR,GAAG,OAAO;gBACV,QAAQ,EAAE,mBAAmB;aAC9B,CAAC;QACJ,CAAC;QAED,+BAA+B;QAC/B,IAAI,gBAAgB,EAAE,CAAC;YACrB,OAAO,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC5C,CAAC;QAED,0CAA0C;QAC1C,OAAO,CAAC,OAAO,GAAG,OAAO,CAAC;QAE1B,+BAA+B;QAC/B,IAAI,QAAQ,GAAG,MAAM,IAAI,EAAE,CAAC;QAE5B,gCAAgC;QAChC,IAAI,iBAAiB,EAAE,CAAC;YACtB,QAAQ,GAAG,MAAM,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAC/C,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;AACJ,CAAC;AAED,+EAA+E;AAC/E,wBAAwB;AACxB,+EAA+E;AAE/E;;;;;;;;;;;;GAYG;AACH,SAAgB,oBAAoB,CAClC,QAAoD;IAEpD,OAAO,KAAK,EAAE,OAAkB,EAAsB,EAAE;QACtD,8BAA8B;QAC9B,IAAI,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YACxC,OAAO;gBACL,GAAG,OAAO;gBACV,OAAO,EAAE,MAAM,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC;aACzC,CAAC;QACJ,CAAC;QAED,mCAAmC;QACnC,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACnC,MAAM,kBAAkB,GAAG,MAAM,OAAO,CAAC,GAAG,CAC1C,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBAClC,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC1B,OAAO;wBACL,GAAG,KAAK;wBACR,IAAI,EAAE,MAAM,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;qBACjC,CAAC;gBACJ,CAAC;gBACD,OAAO,KAAK,CAAC;YACf,CAAC,CAAC,CACH,CAAC;YAEF,OAAO;gBACL,GAAG,OAAO;gBACV,OAAO,EAAE,kBAAkB;aAC5B,CAAC;QACJ,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAgB,uBAAuB,CACrC,QAEuE;IAEvE,OAAO,KAAK,EAAE,OAAsB,EAA0B,EAAE;QAC9D,OAAO;YACL,GAAG,OAAO;YACV,UAAU,EAAE,MAAM,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC;SAC/C,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAgB,oBAAoB,CAClC,MAA8E;IAE9E,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAgB,2BAA2B,CACzC,aAAqB,EACrB,WAA4B,OAAO;IAEnC,OAAO,CAAC,OAAsB,EAAiB,EAAE;QAC/C,MAAM,SAAS,GAAc;YAC3B,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,aAAa;SACvB,CAAC;QAEF,MAAM,QAAQ,GACZ,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QAE7F,OAAO;YACL,GAAG,OAAO;YACV,QAAQ;SACT,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,SAAgB,mBAAmB,CACjC,SAA6D;IAE7D,OAAO,KAAK,EAAE,OAAsB,EAA0B,EAAE;QAC9D,MAAM,gBAAgB,
|
|
1
|
+
{"version":3,"file":"transform.js","sourceRoot":"","sources":["../../src/transform.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
*
|
|
7
7
|
* @module
|
|
8
8
|
*/
|
|
9
|
+
import { getModelPricingInfo } from 'ai.matey.utils';
|
|
9
10
|
/**
|
|
10
11
|
* In-memory cost storage
|
|
11
12
|
*/
|
|
@@ -57,11 +58,16 @@ export class InMemoryCostStorage {
|
|
|
57
58
|
}
|
|
58
59
|
}
|
|
59
60
|
/**
|
|
60
|
-
*
|
|
61
|
-
*
|
|
61
|
+
* Provider-level fallback pricing (USD per 1M tokens).
|
|
62
|
+
*
|
|
63
|
+
* Model-specific pricing comes from the shared model registry in
|
|
64
|
+
* `ai.matey.utils` (see calculateCost); these entries only cover the case
|
|
65
|
+
* where the model itself is unknown, using a mid-tier model of each
|
|
66
|
+
* provider as the representative rate. Model-keyed entries
|
|
67
|
+
* (`provider:model`) remain supported for explicit overrides.
|
|
62
68
|
*/
|
|
63
69
|
export const DEFAULT_PRICING = {
|
|
64
|
-
// Anthropic Claude
|
|
70
|
+
// Anthropic Claude (representative: Sonnet)
|
|
65
71
|
anthropic: {
|
|
66
72
|
inputCostPer1M: 3.0,
|
|
67
73
|
outputCostPer1M: 15.0,
|
|
@@ -78,10 +84,10 @@ export const DEFAULT_PRICING = {
|
|
|
78
84
|
inputCostPer1M: 0.25,
|
|
79
85
|
outputCostPer1M: 1.25,
|
|
80
86
|
},
|
|
81
|
-
// OpenAI
|
|
87
|
+
// OpenAI (representative: gpt-5.x flagship)
|
|
82
88
|
openai: {
|
|
83
|
-
inputCostPer1M:
|
|
84
|
-
outputCostPer1M:
|
|
89
|
+
inputCostPer1M: 1.25,
|
|
90
|
+
outputCostPer1M: 10.0,
|
|
85
91
|
},
|
|
86
92
|
'openai:gpt-4': {
|
|
87
93
|
inputCostPer1M: 30.0,
|
|
@@ -95,24 +101,29 @@ export const DEFAULT_PRICING = {
|
|
|
95
101
|
inputCostPer1M: 0.5,
|
|
96
102
|
outputCostPer1M: 1.5,
|
|
97
103
|
},
|
|
98
|
-
// Google Gemini
|
|
104
|
+
// Google Gemini (representative: Flash)
|
|
99
105
|
gemini: {
|
|
100
|
-
inputCostPer1M: 0.
|
|
101
|
-
outputCostPer1M:
|
|
106
|
+
inputCostPer1M: 0.3,
|
|
107
|
+
outputCostPer1M: 2.5,
|
|
102
108
|
},
|
|
103
109
|
'gemini:gemini-pro': {
|
|
104
110
|
inputCostPer1M: 0.5,
|
|
105
111
|
outputCostPer1M: 1.5,
|
|
106
112
|
},
|
|
107
|
-
// Mistral
|
|
113
|
+
// Mistral (representative: Medium)
|
|
108
114
|
mistral: {
|
|
109
|
-
inputCostPer1M:
|
|
110
|
-
outputCostPer1M:
|
|
115
|
+
inputCostPer1M: 0.4,
|
|
116
|
+
outputCostPer1M: 2.0,
|
|
111
117
|
},
|
|
112
118
|
// DeepSeek
|
|
113
119
|
deepseek: {
|
|
114
|
-
inputCostPer1M: 0.
|
|
115
|
-
outputCostPer1M:
|
|
120
|
+
inputCostPer1M: 0.27,
|
|
121
|
+
outputCostPer1M: 1.1,
|
|
122
|
+
},
|
|
123
|
+
// xAI Grok
|
|
124
|
+
xai: {
|
|
125
|
+
inputCostPer1M: 3.0,
|
|
126
|
+
outputCostPer1M: 15.0,
|
|
116
127
|
},
|
|
117
128
|
// Groq (very low cost)
|
|
118
129
|
groq: {
|
|
@@ -157,10 +168,25 @@ export function calculateCost(usage, provider, model, config) {
|
|
|
157
168
|
const providerKey = `${provider}:${model}`;
|
|
158
169
|
pricing = config.providers[providerKey] || config.providers[provider];
|
|
159
170
|
}
|
|
160
|
-
// Fall back to
|
|
171
|
+
// Fall back to explicit provider:model / provider defaults
|
|
161
172
|
if (!pricing) {
|
|
162
173
|
const providerKey = `${provider}:${model}`;
|
|
163
|
-
pricing = DEFAULT_PRICING[providerKey]
|
|
174
|
+
pricing = DEFAULT_PRICING[providerKey];
|
|
175
|
+
}
|
|
176
|
+
// Fall back to the shared model registry (single source of truth for
|
|
177
|
+
// per-model pricing, including user-registered models)
|
|
178
|
+
if (!pricing) {
|
|
179
|
+
const registryPricing = getModelPricingInfo(model);
|
|
180
|
+
if (registryPricing) {
|
|
181
|
+
pricing = {
|
|
182
|
+
inputCostPer1M: registryPricing.inputPer1M,
|
|
183
|
+
outputCostPer1M: registryPricing.outputPer1M,
|
|
184
|
+
};
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
// Last resort: provider-level representative rate
|
|
188
|
+
if (!pricing) {
|
|
189
|
+
pricing = DEFAULT_PRICING[provider];
|
|
164
190
|
}
|
|
165
191
|
// If still no pricing, use zero cost
|
|
166
192
|
if (!pricing) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cost-tracking.js","sourceRoot":"","sources":["../../src/cost-tracking.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"cost-tracking.js","sourceRoot":"","sources":["../../src/cost-tracking.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Embedding Middleware
|
|
3
|
+
*
|
|
4
|
+
* Middleware for the Bridge's embedding chain (`bridge.useEmbed()`):
|
|
5
|
+
* response caching and cost tracking.
|
|
6
|
+
*
|
|
7
|
+
* @module
|
|
8
|
+
*/
|
|
9
|
+
import { createHash } from 'crypto';
|
|
10
|
+
import { getModelPricingInfo } from 'ai.matey.utils';
|
|
11
|
+
function defaultKeyGenerator(request) {
|
|
12
|
+
const payload = JSON.stringify({
|
|
13
|
+
input: request.input,
|
|
14
|
+
model: request.parameters?.model,
|
|
15
|
+
dimensions: request.parameters?.dimensions,
|
|
16
|
+
inputType: request.parameters?.inputType,
|
|
17
|
+
});
|
|
18
|
+
return createHash('sha256').update(payload).digest('hex');
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Cache embedding responses by input + parameters.
|
|
22
|
+
*
|
|
23
|
+
* Embeddings are deterministic per model, making them ideal cache
|
|
24
|
+
* candidates — repeated embedding of the same documents costs nothing.
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```typescript
|
|
28
|
+
* bridge.useEmbed(createEmbeddingCachingMiddleware({ ttl: 24 * 3600 * 1000 }));
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
31
|
+
export function createEmbeddingCachingMiddleware(config = {}) {
|
|
32
|
+
const ttl = config.ttl ?? 3_600_000;
|
|
33
|
+
const maxEntries = config.maxEntries ?? 1000;
|
|
34
|
+
const keyGenerator = config.keyGenerator ?? defaultKeyGenerator;
|
|
35
|
+
const cache = new Map();
|
|
36
|
+
return async (request, next) => {
|
|
37
|
+
const key = keyGenerator(request);
|
|
38
|
+
const cached = cache.get(key);
|
|
39
|
+
if (cached && cached.expiresAt > Date.now()) {
|
|
40
|
+
return cached.response;
|
|
41
|
+
}
|
|
42
|
+
const response = await next(request);
|
|
43
|
+
if (cache.size >= maxEntries) {
|
|
44
|
+
// Evict the oldest entry (Map preserves insertion order)
|
|
45
|
+
const oldest = cache.keys().next().value;
|
|
46
|
+
if (oldest !== undefined) {
|
|
47
|
+
cache.delete(oldest);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
cache.set(key, { response, expiresAt: Date.now() + ttl });
|
|
51
|
+
return response;
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Track embedding spend using registry pricing and reported usage.
|
|
56
|
+
*
|
|
57
|
+
* @example
|
|
58
|
+
* ```typescript
|
|
59
|
+
* const costs: EmbeddingCostRecord[] = [];
|
|
60
|
+
* bridge.useEmbed(createEmbeddingCostTrackingMiddleware({ onCost: (r) => costs.push(r) }));
|
|
61
|
+
* ```
|
|
62
|
+
*/
|
|
63
|
+
export function createEmbeddingCostTrackingMiddleware(config = {}) {
|
|
64
|
+
return async (request, next) => {
|
|
65
|
+
const response = await next(request);
|
|
66
|
+
const promptTokens = response.usage?.promptTokens ?? 0;
|
|
67
|
+
const model = response.model;
|
|
68
|
+
const per1M = config.costPer1M ?? getModelPricingInfo(model)?.inputPer1M ?? 0;
|
|
69
|
+
const costUSD = (promptTokens / 1_000_000) * per1M;
|
|
70
|
+
config.onCost?.({
|
|
71
|
+
requestId: response.metadata.requestId,
|
|
72
|
+
model,
|
|
73
|
+
promptTokens,
|
|
74
|
+
costUSD,
|
|
75
|
+
timestamp: Date.now(),
|
|
76
|
+
});
|
|
77
|
+
return response;
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=embeddings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"embeddings.js","sourceRoot":"","sources":["../../src/embeddings.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAyBrD,SAAS,mBAAmB,CAAC,OAAuB;IAClD,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;QAC7B,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,KAAK,EAAE,OAAO,CAAC,UAAU,EAAE,KAAK;QAChC,UAAU,EAAE,OAAO,CAAC,UAAU,EAAE,UAAU;QAC1C,SAAS,EAAE,OAAO,CAAC,UAAU,EAAE,SAAS;KACzC,CAAC,CAAC;IACH,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gCAAgC,CAC9C,SAAiC,EAAE;IAEnC,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,IAAI,SAAS,CAAC;IACpC,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,IAAI,CAAC;IAC7C,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,mBAAmB,CAAC;IAChE,MAAM,KAAK,GAAG,IAAI,GAAG,EAAsB,CAAC;IAE5C,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QAC7B,MAAM,GAAG,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QAClC,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAE9B,IAAI,MAAM,IAAI,MAAM,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;YAC5C,OAAO,MAAM,CAAC,QAAQ,CAAC;QACzB,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;QAErC,IAAI,KAAK,CAAC,IAAI,IAAI,UAAU,EAAE,CAAC;YAC7B,yDAAyD;YACzD,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;YACzC,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;QACD,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC;QAE1D,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;AACJ,CAAC;AA+BD;;;;;;;;GAQG;AACH,MAAM,UAAU,qCAAqC,CACnD,SAAsC,EAAE;IAExC,OAAO,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QAC7B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC;QAErC,MAAM,YAAY,GAAG,QAAQ,CAAC,KAAK,EAAE,YAAY,IAAI,CAAC,CAAC;QACvD,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;QAC7B,MAAM,KAAK,GAAG,MAAM,CAAC,SAAS,IAAI,mBAAmB,CAAC,KAAK,CAAC,EAAE,UAAU,IAAI,CAAC,CAAC;QAC9E,MAAM,OAAO,GAAG,CAAC,YAAY,GAAG,SAAS,CAAC,GAAG,KAAK,CAAC;QAEnD,MAAM,CAAC,MAAM,EAAE,CAAC;YACd,SAAS,EAAE,QAAQ,CAAC,QAAQ,CAAC,SAAS;YACtC,KAAK;YACL,YAAY;YACZ,OAAO;YACP,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;SACtB,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC;AACJ,CAAC"}
|
package/dist/esm/index.js
CHANGED
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,wBAAwB;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,wBAAwB;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transform.js","sourceRoot":"","sources":["../../src/transform.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"transform.js","sourceRoot":"","sources":["../../src/transform.ts"],"names":[],"mappings":"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"}
|
|
@@ -178,8 +178,13 @@ export interface CostTrackingConfig {
|
|
|
178
178
|
includeInMetadata?: boolean;
|
|
179
179
|
}
|
|
180
180
|
/**
|
|
181
|
-
*
|
|
182
|
-
*
|
|
181
|
+
* Provider-level fallback pricing (USD per 1M tokens).
|
|
182
|
+
*
|
|
183
|
+
* Model-specific pricing comes from the shared model registry in
|
|
184
|
+
* `ai.matey.utils` (see calculateCost); these entries only cover the case
|
|
185
|
+
* where the model itself is unknown, using a mid-tier model of each
|
|
186
|
+
* provider as the representative rate. Model-keyed entries
|
|
187
|
+
* (`provider:model`) remain supported for explicit overrides.
|
|
183
188
|
*/
|
|
184
189
|
export declare const DEFAULT_PRICING: Record<string, ProviderPricing>;
|
|
185
190
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cost-tracking.d.ts","sourceRoot":"","sources":["../../src/cost-tracking.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"cost-tracking.d.ts","sourceRoot":"","sources":["../../src/cost-tracking.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Embedding Middleware
|
|
3
|
+
*
|
|
4
|
+
* Middleware for the Bridge's embedding chain (`bridge.useEmbed()`):
|
|
5
|
+
* response caching and cost tracking.
|
|
6
|
+
*
|
|
7
|
+
* @module
|
|
8
|
+
*/
|
|
9
|
+
import type { EmbedMiddleware, IREmbedRequest } from 'ai.matey.types';
|
|
10
|
+
/**
|
|
11
|
+
* Configuration for embedding caching middleware.
|
|
12
|
+
*/
|
|
13
|
+
export interface EmbeddingCachingConfig {
|
|
14
|
+
/** Time-to-live in milliseconds. @default 3600000 (1 hour) */
|
|
15
|
+
ttl?: number;
|
|
16
|
+
/** Maximum cached entries (LRU-ish eviction of oldest). @default 1000 */
|
|
17
|
+
maxEntries?: number;
|
|
18
|
+
/** Custom cache key generator. */
|
|
19
|
+
keyGenerator?: (request: IREmbedRequest) => string;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Cache embedding responses by input + parameters.
|
|
23
|
+
*
|
|
24
|
+
* Embeddings are deterministic per model, making them ideal cache
|
|
25
|
+
* candidates — repeated embedding of the same documents costs nothing.
|
|
26
|
+
*
|
|
27
|
+
* @example
|
|
28
|
+
* ```typescript
|
|
29
|
+
* bridge.useEmbed(createEmbeddingCachingMiddleware({ ttl: 24 * 3600 * 1000 }));
|
|
30
|
+
* ```
|
|
31
|
+
*/
|
|
32
|
+
export declare function createEmbeddingCachingMiddleware(config?: EmbeddingCachingConfig): EmbedMiddleware;
|
|
33
|
+
/**
|
|
34
|
+
* A recorded embedding cost event.
|
|
35
|
+
*/
|
|
36
|
+
export interface EmbeddingCostRecord {
|
|
37
|
+
requestId: string;
|
|
38
|
+
model: string;
|
|
39
|
+
promptTokens: number;
|
|
40
|
+
costUSD: number;
|
|
41
|
+
timestamp: number;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Configuration for embedding cost tracking.
|
|
45
|
+
*/
|
|
46
|
+
export interface EmbeddingCostTrackingConfig {
|
|
47
|
+
/** Called for each priced request. */
|
|
48
|
+
onCost?: (record: EmbeddingCostRecord) => void;
|
|
49
|
+
/**
|
|
50
|
+
* Price per 1M input tokens; defaults to the shared model registry's
|
|
51
|
+
* price for the request's model (0 when unknown).
|
|
52
|
+
*/
|
|
53
|
+
costPer1M?: number;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Track embedding spend using registry pricing and reported usage.
|
|
57
|
+
*
|
|
58
|
+
* @example
|
|
59
|
+
* ```typescript
|
|
60
|
+
* const costs: EmbeddingCostRecord[] = [];
|
|
61
|
+
* bridge.useEmbed(createEmbeddingCostTrackingMiddleware({ onCost: (r) => costs.push(r) }));
|
|
62
|
+
* ```
|
|
63
|
+
*/
|
|
64
|
+
export declare function createEmbeddingCostTrackingMiddleware(config?: EmbeddingCostTrackingConfig): EmbedMiddleware;
|
|
65
|
+
//# sourceMappingURL=embeddings.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"embeddings.d.ts","sourceRoot":"","sources":["../../src/embeddings.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAmB,MAAM,gBAAgB,CAAC;AAOvF;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,8DAA8D;IAC9D,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb,yEAAyE;IACzE,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,kCAAkC;IAClC,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,MAAM,CAAC;CACpD;AAiBD;;;;;;;;;;GAUG;AACH,wBAAgB,gCAAgC,CAC9C,MAAM,GAAE,sBAA2B,GAClC,eAAe,CA2BjB;AAMD;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,2BAA2B;IAC1C,sCAAsC;IACtC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,mBAAmB,KAAK,IAAI,CAAC;IAE/C;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;GAQG;AACH,wBAAgB,qCAAqC,CACnD,MAAM,GAAE,2BAAgC,GACvC,eAAe,CAmBjB"}
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,cAAc,cAAc,CAAC;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,cAAc,cAAc,CAAC;AAC7B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,oBAAoB,CAAC;AACnC,cAAc,cAAc,CAAC;AAC7B,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,iBAAiB,CAAC;AAChC,cAAc,iBAAiB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ai.matey.middleware",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.0",
|
|
4
4
|
"description": "Middleware components for AI Matey - Universal AI Adapter System",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/cjs/index.js",
|
|
@@ -116,6 +116,16 @@
|
|
|
116
116
|
"types": "./dist/types/transform.d.ts",
|
|
117
117
|
"default": "./dist/cjs/transform.js"
|
|
118
118
|
}
|
|
119
|
+
},
|
|
120
|
+
"./embeddings": {
|
|
121
|
+
"import": {
|
|
122
|
+
"types": "./dist/types/embeddings.d.ts",
|
|
123
|
+
"default": "./dist/esm/embeddings.js"
|
|
124
|
+
},
|
|
125
|
+
"require": {
|
|
126
|
+
"types": "./dist/types/embeddings.d.ts",
|
|
127
|
+
"default": "./dist/cjs/embeddings.js"
|
|
128
|
+
}
|
|
119
129
|
}
|
|
120
130
|
},
|
|
121
131
|
"files": [
|