dpth 0.1.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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"entity.js","sourceRoot":"","sources":["../src/entity.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,104 @@
1
+ /**
2
+ * dpth.io Centralized Inference Fallback
3
+ *
4
+ * When no agents are available to serve a model, routes to centralized
5
+ * API providers (OpenAI, Anthropic, etc.) as a fallback.
6
+ *
7
+ * Priority:
8
+ * 1. Distributed network (free, agent-served)
9
+ * 2. Centralized fallback (costs money, but always available)
10
+ *
11
+ * The fallback is transparent to clients — same API, same format.
12
+ */
13
+ export interface FallbackProvider {
14
+ id: string;
15
+ name: string;
16
+ /** Base URL for API */
17
+ baseUrl: string;
18
+ /** API key env var name */
19
+ apiKeyEnv: string;
20
+ /** Models this provider supports */
21
+ models: FallbackModelMap[];
22
+ /** Is this provider configured (has API key) */
23
+ configured: boolean;
24
+ /** Provider-specific headers */
25
+ headers?: Record<string, string>;
26
+ }
27
+ interface FallbackModelMap {
28
+ /** dpth.io model pattern (regex) */
29
+ pattern: string;
30
+ /** Provider's model ID */
31
+ providerModel: string;
32
+ /** Cost per 1M input tokens (USD) */
33
+ inputCostPer1M?: number;
34
+ /** Cost per 1M output tokens (USD) */
35
+ outputCostPer1M?: number;
36
+ }
37
+ export interface FallbackRequest {
38
+ modelId: string;
39
+ messages?: Array<{
40
+ role: string;
41
+ content: string;
42
+ }>;
43
+ prompt?: string;
44
+ system?: string;
45
+ maxTokens?: number;
46
+ temperature?: number;
47
+ topP?: number;
48
+ stream?: boolean;
49
+ }
50
+ export interface FallbackResponse {
51
+ text: string;
52
+ tokensGenerated: number;
53
+ tokensPerSecond: number;
54
+ latencyMs: number;
55
+ provider: string;
56
+ providerModel: string;
57
+ cost?: {
58
+ inputTokens: number;
59
+ outputTokens: number;
60
+ totalUsd: number;
61
+ };
62
+ }
63
+ export interface FallbackStreamChunk {
64
+ text: string;
65
+ done: boolean;
66
+ }
67
+ /**
68
+ * Check which fallback providers are configured (have API keys)
69
+ */
70
+ export declare function getConfiguredProviders(): FallbackProvider[];
71
+ /**
72
+ * Find the best fallback provider for a model
73
+ */
74
+ export declare function findFallbackProvider(modelId: string): {
75
+ provider: FallbackProvider;
76
+ providerModel: string;
77
+ cost: {
78
+ inputCostPer1M: number;
79
+ outputCostPer1M: number;
80
+ };
81
+ } | null;
82
+ /**
83
+ * Execute a fallback inference request (non-streaming)
84
+ */
85
+ export declare function fallbackInference(request: FallbackRequest): Promise<FallbackResponse>;
86
+ /**
87
+ * Execute a streaming fallback inference request
88
+ * Returns an async generator of text chunks
89
+ */
90
+ export declare function fallbackInferenceStream(request: FallbackRequest): AsyncGenerator<FallbackStreamChunk>;
91
+ /**
92
+ * Get fallback status — which providers are available
93
+ */
94
+ export declare function getFallbackStatus(): {
95
+ available: boolean;
96
+ providers: Array<{
97
+ id: string;
98
+ name: string;
99
+ configured: boolean;
100
+ modelCount: number;
101
+ }>;
102
+ };
103
+ export {};
104
+ //# sourceMappingURL=fallback.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fallback.d.ts","sourceRoot":"","sources":["../src/fallback.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,uBAAuB;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,2BAA2B;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,oCAAoC;IACpC,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC3B,gDAAgD;IAChD,UAAU,EAAE,OAAO,CAAC;IACpB,gCAAgC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClC;AAED,UAAU,gBAAgB;IACxB,oCAAoC;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,0BAA0B;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,qCAAqC;IACrC,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,sCAAsC;IACtC,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACpD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,CAAC,EAAE;QACL,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;CACf;AA8DD;;GAEG;AACH,wBAAgB,sBAAsB,IAAI,gBAAgB,EAAE,CAK3D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG;IACrD,QAAQ,EAAE,gBAAgB,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3D,GAAG,IAAI,CAoBP;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAkB3F;AAED;;;GAGG;AACH,wBAAuB,uBAAuB,CAC5C,OAAO,EAAE,eAAe,GACvB,cAAc,CAAC,mBAAmB,CAAC,CAerC;AAqQD;;GAEG;AACH,wBAAgB,iBAAiB,IAAI;IACnC,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,KAAK,CAAC;QACf,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,UAAU,EAAE,OAAO,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC,CAAC;CACJ,CAYA"}
@@ -0,0 +1,359 @@
1
+ /**
2
+ * dpth.io Centralized Inference Fallback
3
+ *
4
+ * When no agents are available to serve a model, routes to centralized
5
+ * API providers (OpenAI, Anthropic, etc.) as a fallback.
6
+ *
7
+ * Priority:
8
+ * 1. Distributed network (free, agent-served)
9
+ * 2. Centralized fallback (costs money, but always available)
10
+ *
11
+ * The fallback is transparent to clients — same API, same format.
12
+ */
13
+ // ─── Provider Registry ───────────────────────────────
14
+ const PROVIDERS = [
15
+ {
16
+ id: 'openai',
17
+ name: 'OpenAI',
18
+ baseUrl: 'https://api.openai.com/v1',
19
+ apiKeyEnv: 'OPENAI_API_KEY',
20
+ configured: false,
21
+ models: [
22
+ { pattern: 'gpt-4o', providerModel: 'gpt-4o', inputCostPer1M: 2.5, outputCostPer1M: 10 },
23
+ { pattern: 'gpt-4o-mini', providerModel: 'gpt-4o-mini', inputCostPer1M: 0.15, outputCostPer1M: 0.6 },
24
+ { pattern: 'gpt-4-turbo', providerModel: 'gpt-4-turbo', inputCostPer1M: 10, outputCostPer1M: 30 },
25
+ { pattern: 'o1', providerModel: 'o1', inputCostPer1M: 15, outputCostPer1M: 60 },
26
+ { pattern: 'o3-mini', providerModel: 'o3-mini', inputCostPer1M: 1.1, outputCostPer1M: 4.4 },
27
+ ],
28
+ },
29
+ {
30
+ id: 'anthropic',
31
+ name: 'Anthropic',
32
+ baseUrl: 'https://api.anthropic.com/v1',
33
+ apiKeyEnv: 'ANTHROPIC_API_KEY',
34
+ configured: false,
35
+ headers: { 'anthropic-version': '2023-06-01' },
36
+ models: [
37
+ { pattern: 'claude-.*sonnet', providerModel: 'claude-sonnet-4-20250514', inputCostPer1M: 3, outputCostPer1M: 15 },
38
+ { pattern: 'claude-.*haiku', providerModel: 'claude-3-5-haiku-20241022', inputCostPer1M: 0.8, outputCostPer1M: 4 },
39
+ { pattern: 'claude-.*opus', providerModel: 'claude-3-opus-20240229', inputCostPer1M: 15, outputCostPer1M: 75 },
40
+ ],
41
+ },
42
+ {
43
+ id: 'groq',
44
+ name: 'Groq',
45
+ baseUrl: 'https://api.groq.com/openai/v1',
46
+ apiKeyEnv: 'GROQ_API_KEY',
47
+ configured: false,
48
+ models: [
49
+ { pattern: 'llama-3\\.3-70b', providerModel: 'llama-3.3-70b-versatile', inputCostPer1M: 0.59, outputCostPer1M: 0.79 },
50
+ { pattern: 'llama-3\\.1-8b', providerModel: 'llama-3.1-8b-instant', inputCostPer1M: 0.05, outputCostPer1M: 0.08 },
51
+ { pattern: 'mixtral', providerModel: 'mixtral-8x7b-32768', inputCostPer1M: 0.24, outputCostPer1M: 0.24 },
52
+ { pattern: 'gemma-2-9b', providerModel: 'gemma2-9b-it', inputCostPer1M: 0.2, outputCostPer1M: 0.2 },
53
+ ],
54
+ },
55
+ {
56
+ id: 'together',
57
+ name: 'Together AI',
58
+ baseUrl: 'https://api.together.xyz/v1',
59
+ apiKeyEnv: 'TOGETHER_API_KEY',
60
+ configured: false,
61
+ models: [
62
+ { pattern: 'llama-3\\.3-70b', providerModel: 'meta-llama/Llama-3.3-70B-Instruct-Turbo', inputCostPer1M: 0.88, outputCostPer1M: 0.88 },
63
+ { pattern: 'qwen-2\\.5.*72b', providerModel: 'Qwen/Qwen2.5-72B-Instruct-Turbo', inputCostPer1M: 1.2, outputCostPer1M: 1.2 },
64
+ { pattern: 'deepseek-v3', providerModel: 'deepseek-ai/DeepSeek-V3', inputCostPer1M: 0.9, outputCostPer1M: 0.9 },
65
+ { pattern: 'qwen-2\\.5-coder-32b', providerModel: 'Qwen/Qwen2.5-Coder-32B-Instruct', inputCostPer1M: 0.8, outputCostPer1M: 0.8 },
66
+ ],
67
+ },
68
+ ];
69
+ // ─── Core Functions ──────────────────────────────────
70
+ /**
71
+ * Check which fallback providers are configured (have API keys)
72
+ */
73
+ export function getConfiguredProviders() {
74
+ return PROVIDERS.map(p => ({
75
+ ...p,
76
+ configured: !!process.env[p.apiKeyEnv],
77
+ })).filter(p => p.configured);
78
+ }
79
+ /**
80
+ * Find the best fallback provider for a model
81
+ */
82
+ export function findFallbackProvider(modelId) {
83
+ const configured = getConfiguredProviders();
84
+ for (const provider of configured) {
85
+ for (const mapping of provider.models) {
86
+ const regex = new RegExp(mapping.pattern, 'i');
87
+ if (regex.test(modelId)) {
88
+ return {
89
+ provider,
90
+ providerModel: mapping.providerModel,
91
+ cost: {
92
+ inputCostPer1M: mapping.inputCostPer1M || 0,
93
+ outputCostPer1M: mapping.outputCostPer1M || 0,
94
+ },
95
+ };
96
+ }
97
+ }
98
+ }
99
+ return null;
100
+ }
101
+ /**
102
+ * Execute a fallback inference request (non-streaming)
103
+ */
104
+ export async function fallbackInference(request) {
105
+ const match = findFallbackProvider(request.modelId);
106
+ if (!match) {
107
+ throw new Error(`No fallback provider available for model: ${request.modelId}`);
108
+ }
109
+ const { provider, providerModel, cost } = match;
110
+ const apiKey = process.env[provider.apiKeyEnv];
111
+ const startTime = Date.now();
112
+ // Build request based on provider
113
+ if (provider.id === 'anthropic') {
114
+ return executeAnthropicRequest(provider, apiKey, providerModel, request, cost, startTime);
115
+ }
116
+ // OpenAI-compatible providers (OpenAI, Groq, Together)
117
+ return executeOpenAIRequest(provider, apiKey, providerModel, request, cost, startTime);
118
+ }
119
+ /**
120
+ * Execute a streaming fallback inference request
121
+ * Returns an async generator of text chunks
122
+ */
123
+ export async function* fallbackInferenceStream(request) {
124
+ const match = findFallbackProvider(request.modelId);
125
+ if (!match) {
126
+ throw new Error(`No fallback provider available for model: ${request.modelId}`);
127
+ }
128
+ const { provider, providerModel } = match;
129
+ const apiKey = process.env[provider.apiKeyEnv];
130
+ if (provider.id === 'anthropic') {
131
+ yield* streamAnthropicRequest(provider, apiKey, providerModel, request);
132
+ }
133
+ else {
134
+ yield* streamOpenAIRequest(provider, apiKey, providerModel, request);
135
+ }
136
+ }
137
+ // ─── Provider Implementations ────────────────────────
138
+ async function executeOpenAIRequest(provider, apiKey, model, request, cost, startTime) {
139
+ const messages = request.messages || [
140
+ ...(request.system ? [{ role: 'system', content: request.system }] : []),
141
+ { role: 'user', content: request.prompt || '' },
142
+ ];
143
+ const response = await fetch(`${provider.baseUrl}/chat/completions`, {
144
+ method: 'POST',
145
+ headers: {
146
+ 'Authorization': `Bearer ${apiKey}`,
147
+ 'Content-Type': 'application/json',
148
+ ...(provider.headers || {}),
149
+ },
150
+ body: JSON.stringify({
151
+ model,
152
+ messages,
153
+ max_tokens: request.maxTokens || 4096,
154
+ temperature: request.temperature ?? 0.7,
155
+ top_p: request.topP,
156
+ }),
157
+ });
158
+ if (!response.ok) {
159
+ const error = await response.text();
160
+ throw new Error(`${provider.name} API error (${response.status}): ${error}`);
161
+ }
162
+ const data = await response.json();
163
+ const latencyMs = Date.now() - startTime;
164
+ const text = data.choices?.[0]?.message?.content || '';
165
+ const inputTokens = data.usage?.prompt_tokens || 0;
166
+ const outputTokens = data.usage?.completion_tokens || 0;
167
+ return {
168
+ text,
169
+ tokensGenerated: outputTokens,
170
+ tokensPerSecond: outputTokens / (latencyMs / 1000),
171
+ latencyMs,
172
+ provider: provider.id,
173
+ providerModel: model,
174
+ cost: {
175
+ inputTokens,
176
+ outputTokens,
177
+ totalUsd: (inputTokens * cost.inputCostPer1M + outputTokens * cost.outputCostPer1M) / 1_000_000,
178
+ },
179
+ };
180
+ }
181
+ async function executeAnthropicRequest(provider, apiKey, model, request, cost, startTime) {
182
+ const messages = request.messages?.filter(m => m.role !== 'system') || [
183
+ { role: 'user', content: request.prompt || '' },
184
+ ];
185
+ const system = request.system || request.messages?.find(m => m.role === 'system')?.content;
186
+ const response = await fetch(`${provider.baseUrl}/messages`, {
187
+ method: 'POST',
188
+ headers: {
189
+ 'x-api-key': apiKey,
190
+ 'Content-Type': 'application/json',
191
+ ...(provider.headers || {}),
192
+ },
193
+ body: JSON.stringify({
194
+ model,
195
+ messages,
196
+ system,
197
+ max_tokens: request.maxTokens || 4096,
198
+ temperature: request.temperature ?? 0.7,
199
+ }),
200
+ });
201
+ if (!response.ok) {
202
+ const error = await response.text();
203
+ throw new Error(`${provider.name} API error (${response.status}): ${error}`);
204
+ }
205
+ const data = await response.json();
206
+ const latencyMs = Date.now() - startTime;
207
+ const text = data.content?.map((c) => c.text).join('') || '';
208
+ const inputTokens = data.usage?.input_tokens || 0;
209
+ const outputTokens = data.usage?.output_tokens || 0;
210
+ return {
211
+ text,
212
+ tokensGenerated: outputTokens,
213
+ tokensPerSecond: outputTokens / (latencyMs / 1000),
214
+ latencyMs,
215
+ provider: provider.id,
216
+ providerModel: model,
217
+ cost: {
218
+ inputTokens,
219
+ outputTokens,
220
+ totalUsd: (inputTokens * cost.inputCostPer1M + outputTokens * cost.outputCostPer1M) / 1_000_000,
221
+ },
222
+ };
223
+ }
224
+ async function* streamOpenAIRequest(provider, apiKey, model, request) {
225
+ const messages = request.messages || [
226
+ ...(request.system ? [{ role: 'system', content: request.system }] : []),
227
+ { role: 'user', content: request.prompt || '' },
228
+ ];
229
+ const response = await fetch(`${provider.baseUrl}/chat/completions`, {
230
+ method: 'POST',
231
+ headers: {
232
+ 'Authorization': `Bearer ${apiKey}`,
233
+ 'Content-Type': 'application/json',
234
+ ...(provider.headers || {}),
235
+ },
236
+ body: JSON.stringify({
237
+ model,
238
+ messages,
239
+ max_tokens: request.maxTokens || 4096,
240
+ temperature: request.temperature ?? 0.7,
241
+ stream: true,
242
+ }),
243
+ });
244
+ if (!response.ok) {
245
+ const error = await response.text();
246
+ throw new Error(`${provider.name} streaming error (${response.status}): ${error}`);
247
+ }
248
+ const reader = response.body?.getReader();
249
+ if (!reader)
250
+ throw new Error('No response body');
251
+ const decoder = new TextDecoder();
252
+ let buffer = '';
253
+ while (true) {
254
+ const { done, value } = await reader.read();
255
+ if (done)
256
+ break;
257
+ buffer += decoder.decode(value, { stream: true });
258
+ const lines = buffer.split('\n');
259
+ buffer = lines.pop() || '';
260
+ for (const line of lines) {
261
+ if (!line.startsWith('data: '))
262
+ continue;
263
+ const data = line.slice(6).trim();
264
+ if (data === '[DONE]') {
265
+ yield { text: '', done: true };
266
+ return;
267
+ }
268
+ try {
269
+ const parsed = JSON.parse(data);
270
+ const text = parsed.choices?.[0]?.delta?.content || '';
271
+ if (text) {
272
+ yield { text, done: false };
273
+ }
274
+ }
275
+ catch {
276
+ // Skip malformed chunks
277
+ }
278
+ }
279
+ }
280
+ yield { text: '', done: true };
281
+ }
282
+ async function* streamAnthropicRequest(provider, apiKey, model, request) {
283
+ const messages = request.messages?.filter(m => m.role !== 'system') || [
284
+ { role: 'user', content: request.prompt || '' },
285
+ ];
286
+ const system = request.system || request.messages?.find(m => m.role === 'system')?.content;
287
+ const response = await fetch(`${provider.baseUrl}/messages`, {
288
+ method: 'POST',
289
+ headers: {
290
+ 'x-api-key': apiKey,
291
+ 'Content-Type': 'application/json',
292
+ ...(provider.headers || {}),
293
+ },
294
+ body: JSON.stringify({
295
+ model,
296
+ messages,
297
+ system,
298
+ max_tokens: request.maxTokens || 4096,
299
+ temperature: request.temperature ?? 0.7,
300
+ stream: true,
301
+ }),
302
+ });
303
+ if (!response.ok) {
304
+ const error = await response.text();
305
+ throw new Error(`${provider.name} streaming error (${response.status}): ${error}`);
306
+ }
307
+ const reader = response.body?.getReader();
308
+ if (!reader)
309
+ throw new Error('No response body');
310
+ const decoder = new TextDecoder();
311
+ let buffer = '';
312
+ while (true) {
313
+ const { done, value } = await reader.read();
314
+ if (done)
315
+ break;
316
+ buffer += decoder.decode(value, { stream: true });
317
+ const lines = buffer.split('\n');
318
+ buffer = lines.pop() || '';
319
+ for (const line of lines) {
320
+ if (!line.startsWith('data: '))
321
+ continue;
322
+ const data = line.slice(6).trim();
323
+ try {
324
+ const parsed = JSON.parse(data);
325
+ if (parsed.type === 'content_block_delta') {
326
+ const text = parsed.delta?.text || '';
327
+ if (text) {
328
+ yield { text, done: false };
329
+ }
330
+ }
331
+ if (parsed.type === 'message_stop') {
332
+ yield { text: '', done: true };
333
+ return;
334
+ }
335
+ }
336
+ catch {
337
+ // Skip malformed chunks
338
+ }
339
+ }
340
+ }
341
+ yield { text: '', done: true };
342
+ }
343
+ // ─── Status ──────────────────────────────────────────
344
+ /**
345
+ * Get fallback status — which providers are available
346
+ */
347
+ export function getFallbackStatus() {
348
+ const providers = PROVIDERS.map(p => ({
349
+ id: p.id,
350
+ name: p.name,
351
+ configured: !!process.env[p.apiKeyEnv],
352
+ modelCount: p.models.length,
353
+ }));
354
+ return {
355
+ available: providers.some(p => p.configured),
356
+ providers,
357
+ };
358
+ }
359
+ //# sourceMappingURL=fallback.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fallback.js","sourceRoot":"","sources":["../src/fallback.ts"],"names":[],"mappings":"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"}