@aeye/ai 0.3.0 → 0.3.2

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/README.md CHANGED
@@ -377,25 +377,7 @@ type ContentPart =
377
377
 
378
378
  #### Response Format
379
379
 
380
- ```typescript
381
- interface Response {
382
- content: string;
383
- finishReason: 'stop' | 'length' | 'tool_calls' | 'content_filter';
384
- toolCalls?: ToolCall[];
385
- refusal?: string;
386
- reasoning?: string; // For reasoning models
387
- usage: Usage;
388
- }
389
-
390
- interface Usage {
391
- inputTokens: number;
392
- outputTokens: number;
393
- totalTokens: number;
394
- cachedTokens?: number;
395
- reasoningTokens?: number;
396
- cost?: number; // Cost in dollars, if provided by the provider
397
- }
398
- ```
380
+ TODO: updated
399
381
 
400
382
  #### Examples
401
383
 
@@ -464,6 +446,8 @@ if (response.toolCalls) {
464
446
 
465
447
  **Streaming with Token Counting**
466
448
 
449
+ TODO: update with new types
450
+
467
451
  ```typescript
468
452
  let totalTokens = 0;
469
453
 
@@ -675,7 +659,7 @@ models.forEach(model => {
675
659
  console.log(`${model.provider}/${model.id}`);
676
660
  console.log(` Tier: ${model.tier}`);
677
661
  console.log(` Capabilities: ${Array.from(model.capabilities).join(', ')}`);
678
- console.log(` Cost: $${model.pricing.inputTokensPer1M}/1M input tokens`);
662
+ console.log(` Cost: $${model.pricing.text.input}/1M input tokens`);
679
663
  });
680
664
  ```
681
665
 
@@ -795,9 +779,6 @@ const ai = AI.with<AppContext, AppMetadata>()
795
779
  },
796
780
 
797
781
  beforeRequest: async (ctx, request, selected, estimatedTokens, estimatedCost) => {
798
- const estimatedCost = estimatedTokens / 1_000_000 *
799
- (selected.model.pricing.inputTokensPer1M + selected.model.pricing.outputTokensPer1M) / 2;
800
-
801
782
  // Check budget
802
783
  if (estimatedCost > ctx.user.remainingBudget) {
803
784
  throw new Error('Insufficient budget');
@@ -946,111 +927,7 @@ const models = ai.models.list();
946
927
 
947
928
  ### Custom Providers
948
929
 
949
- Create custom provider implementations:
950
-
951
- ```typescript
952
- import { Provider } from '@aeye/ai';
953
-
954
- const customProvider: Provider<CustomConfig> = {
955
- name: 'custom',
956
- config: {
957
- apiKey: process.env.CUSTOM_API_KEY,
958
- baseURL: 'https://api.custom.ai'
959
- },
960
-
961
- async listModels() {
962
- const response = await fetch(`${this.config.baseURL}/models`);
963
- const data = await response.json();
964
-
965
- return data.models.map(m => ({
966
- id: m.id,
967
- provider: 'custom',
968
- name: m.name,
969
- capabilities: new Set(['chat', 'streaming']),
970
- tier: 'flagship',
971
- pricing: {
972
- inputTokensPer1M: m.pricing.input,
973
- outputTokensPer1M: m.pricing.output
974
- },
975
- contextWindow: m.context_length
976
- }));
977
- },
978
-
979
- async checkHealth() {
980
- try {
981
- await fetch(`${this.config.baseURL}/health`);
982
- return true;
983
- } catch {
984
- return false;
985
- }
986
- },
987
-
988
- createExecutor() {
989
- return async (request, ctx, metadata) => {
990
- const response = await fetch(`${this.config.baseURL}/chat`, {
991
- method: 'POST',
992
- headers: {
993
- 'Authorization': `Bearer ${this.config.apiKey}`,
994
- 'Content-Type': 'application/json'
995
- },
996
- body: JSON.stringify({
997
- model: metadata.model,
998
- messages: request.messages,
999
- max_tokens: request.maxTokens,
1000
- temperature: request.temperature
1001
- })
1002
- });
1003
-
1004
- const data = await response.json();
1005
-
1006
- return {
1007
- content: data.choices[0].message.content,
1008
- finishReason: data.choices[0].finish_reason,
1009
- usage: {
1010
- inputTokens: data.usage.prompt_tokens,
1011
- outputTokens: data.usage.completion_tokens,
1012
- totalTokens: data.usage.total_tokens
1013
- }
1014
- };
1015
- };
1016
- },
1017
-
1018
- createStreamer() {
1019
- return async function* (request, ctx, metadata) {
1020
- const response = await fetch(`${this.config.baseURL}/chat/stream`, {
1021
- // ... similar setup with stream: true
1022
- });
1023
-
1024
- const reader = response.body.getReader();
1025
- const decoder = new TextDecoder();
1026
-
1027
- while (true) {
1028
- const { done, value } = await reader.read();
1029
- if (done) break;
1030
-
1031
- const chunk = decoder.decode(value);
1032
- const lines = chunk.split('\n').filter(line => line.trim());
1033
-
1034
- for (const line of lines) {
1035
- if (line.startsWith('data: ')) {
1036
- const data = JSON.parse(line.slice(6));
1037
- yield {
1038
- content: data.choices[0]?.delta?.content,
1039
- finishReason: data.choices[0]?.finish_reason,
1040
- usage: data.usage
1041
- };
1042
- }
1043
- }
1044
- }
1045
- };
1046
- }
1047
- };
1048
-
1049
- // Use custom provider
1050
- const ai = AI.with()
1051
- .providers({ custom: customProvider, openai })
1052
- .create({});
1053
- ```
930
+ You can create custom provider implementations - just implement the Provider interface.
1054
931
 
1055
932
  ## TypeScript Guide
1056
933
 
package/dist/ai.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../src/ai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../src/ai.ts"],"names":[],"mappings":"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"}
package/dist/ai.js CHANGED
@@ -324,17 +324,18 @@ export class AI {
324
324
  case 'optional':
325
325
  merged[key] = mergeArray(merged[key], metadata[key]);
326
326
  break;
327
- case 'budget':
328
- merged[key] = mergeBudget(merged[key], metadata[key]);
329
- break;
330
327
  case 'weights':
331
328
  merged[key] = mergeWeights(merged[key], metadata[key]);
332
329
  break;
333
330
  case 'providers':
334
331
  merged[key] = mergeProviders(merged[key], metadata[key]);
335
332
  break;
336
- case 'minContextWindow':
337
- merged[key] = mergeMax(merged[key], metadata[key]);
333
+ case 'pricing':
334
+ case 'contextWindow':
335
+ case 'outputTokens':
336
+ case 'metrics':
337
+ // For constraint fields, later metadata takes precedence
338
+ merged[key] = metadata[key];
338
339
  break;
339
340
  default:
340
341
  merged[key] = metadata[key];
package/dist/ai.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"ai.js","sourceRoot":"","sources":["../src/ai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai.js","sourceRoot":"","sources":["../src/ai.ts"],"names":[],"mappings":"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"}
@@ -125,12 +125,22 @@ export declare class ModelRegistry<TProviders extends Providers, TProviderKey ex
125
125
  * @returns Set of capabilities the provider supports, or undefined if provider not found
126
126
  */
127
127
  getProviderCapabilities(name: TProviderKey): Set<ModelCapability> | undefined;
128
+ /**
129
+ * Check if a model is applicable given the criteria.
130
+ * Returns null if not applicable, or an object with matched capabilities if applicable.
131
+ */
132
+ private isModelApplicable;
128
133
  /**
129
134
  * Score a model against criteria
135
+ * @param skipApplicabilityCheck - If true, skips the applicability check (used when already filtered)
136
+ * @param rangeMin - Minimum values across all applicable models (for target scoring)
137
+ * @param rangeMax - Maximum values across all applicable models (for target scoring)
130
138
  */
131
139
  private scoreModel;
132
140
  /**
133
141
  * Calculate weighted score for a model
142
+ * @param rangeMin - Minimum values across all applicable models (for target scoring)
143
+ * @param rangeMax - Maximum values across all applicable models (for target scoring)
134
144
  */
135
145
  private calculateWeightedScore;
136
146
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
package/dist/registry.js CHANGED
@@ -7,6 +7,164 @@
7
7
  import { getModel } from '@aeye/core';
8
8
  import { detectTier } from './modelDetection';
9
9
  // ============================================================================
10
+ // Generic Constraint Helpers
11
+ // ============================================================================
12
+ /**
13
+ * Recursively checks if a model value satisfies min/max constraints.
14
+ * Returns true if the value is acceptable, false otherwise.
15
+ *
16
+ * For primitive values (number, string, boolean), compares directly.
17
+ * For objects, recursively checks all properties that exist in both min/max and modelValue.
18
+ */
19
+ function satisfiesConstraint(modelValue, min, max) {
20
+ // If no constraints, always satisfied
21
+ if (min === undefined && max === undefined) {
22
+ return true;
23
+ }
24
+ // If model doesn't have the value but constraints exist, it's not satisfied
25
+ if (modelValue === undefined) {
26
+ return false;
27
+ }
28
+ // Handle primitive types (numbers)
29
+ if (typeof modelValue === 'number') {
30
+ const minNum = min;
31
+ const maxNum = max;
32
+ if (minNum !== undefined && modelValue < minNum) {
33
+ return false;
34
+ }
35
+ if (maxNum !== undefined && modelValue > maxNum) {
36
+ return false;
37
+ }
38
+ return true;
39
+ }
40
+ // Handle objects recursively
41
+ if (typeof modelValue === 'object' && modelValue !== null) {
42
+ const minObj = min;
43
+ const maxObj = max;
44
+ // Check all properties that exist in constraints
45
+ const propsToCheck = new Set();
46
+ if (minObj && typeof minObj === 'object') {
47
+ Object.keys(minObj).forEach(key => propsToCheck.add(key));
48
+ }
49
+ if (maxObj && typeof maxObj === 'object') {
50
+ Object.keys(maxObj).forEach(key => propsToCheck.add(key));
51
+ }
52
+ for (const key of propsToCheck) {
53
+ const modelProp = modelValue[key];
54
+ const minProp = minObj?.[key];
55
+ const maxProp = maxObj?.[key];
56
+ if (!satisfiesConstraint(modelProp, minProp, maxProp)) {
57
+ return false;
58
+ }
59
+ }
60
+ return true;
61
+ }
62
+ // For other types, just check existence
63
+ return true;
64
+ }
65
+ /**
66
+ * Recursively updates min/max range values based on a model value.
67
+ * Updates min to the minimum and max to the maximum across all models.
68
+ * Returns the updated min and max.
69
+ */
70
+ function calculateRange(modelValue, currentMin, currentMax) {
71
+ // If model doesn't have the value, return current range
72
+ if (modelValue === undefined) {
73
+ return { min: currentMin, max: currentMax };
74
+ }
75
+ // Handle primitive types (numbers)
76
+ if (typeof modelValue === 'number') {
77
+ const minNum = currentMin;
78
+ const maxNum = currentMax;
79
+ return {
80
+ min: (minNum === undefined ? modelValue : Math.min(minNum, modelValue)),
81
+ max: (maxNum === undefined ? modelValue : Math.max(maxNum, modelValue))
82
+ };
83
+ }
84
+ // Handle objects recursively
85
+ if (typeof modelValue === 'object' && modelValue !== null) {
86
+ const minObj = (currentMin ?? {});
87
+ const maxObj = (currentMax ?? {});
88
+ const resultMin = { ...minObj };
89
+ const resultMax = { ...maxObj };
90
+ // Process all properties in modelValue
91
+ for (const key in modelValue) {
92
+ const modelProp = modelValue[key];
93
+ const { min: newMin, max: newMax } = calculateRange(modelProp, minObj[key], maxObj[key]);
94
+ if (newMin !== undefined) {
95
+ resultMin[key] = newMin;
96
+ }
97
+ if (newMax !== undefined) {
98
+ resultMax[key] = newMax;
99
+ }
100
+ }
101
+ return {
102
+ min: (Object.keys(resultMin).length > 0 ? resultMin : undefined),
103
+ max: (Object.keys(resultMax).length > 0 ? resultMax : undefined)
104
+ };
105
+ }
106
+ // For other types, just return the value
107
+ return { min: modelValue, max: modelValue };
108
+ }
109
+ /**
110
+ * Recursively calculates a normalized score based on how close modelValue is to target.
111
+ * Returns a score between 0 and 1, where 1 is closest to target.
112
+ *
113
+ * For primitive values, normalizes distance between min and max.
114
+ * For objects, calculates the average score across all defined numeric properties.
115
+ * Returns undefined if target is not specified or if no valid scores can be calculated.
116
+ */
117
+ function calculateScore(modelValue, target, min, max) {
118
+ // If no target or no model value, can't calculate score
119
+ if (target === undefined || modelValue === undefined) {
120
+ return undefined;
121
+ }
122
+ // Handle primitive types (numbers)
123
+ if (typeof modelValue === 'number' && typeof target === 'number') {
124
+ const minNum = min;
125
+ const maxNum = max;
126
+ // Need both min and max to normalize
127
+ if (minNum === undefined || maxNum === undefined) {
128
+ return undefined;
129
+ }
130
+ // If min and max are the same, perfect score if value matches
131
+ const range = maxNum - minNum;
132
+ if (range === 0) {
133
+ return modelValue === target ? 1 : 0;
134
+ }
135
+ // Calculate normalized distance from target
136
+ const distance = Math.abs(target - modelValue);
137
+ const normalizedDistance = distance / range;
138
+ // Score is 1 - normalizedDistance, clamped to [0, 1]
139
+ return Math.max(0, Math.min(1, 1 - normalizedDistance));
140
+ }
141
+ // Handle objects recursively
142
+ if (typeof modelValue === 'object' && modelValue !== null && typeof target === 'object' && target !== null) {
143
+ const targetObj = target;
144
+ const minObj = min;
145
+ const maxObj = max;
146
+ const scores = [];
147
+ // Calculate scores for all properties in target
148
+ for (const key in targetObj) {
149
+ const modelProp = modelValue[key];
150
+ const targetProp = targetObj[key];
151
+ const minProp = minObj?.[key];
152
+ const maxProp = maxObj?.[key];
153
+ const score = calculateScore(modelProp, targetProp, minProp, maxProp);
154
+ if (score !== undefined) {
155
+ scores.push(score);
156
+ }
157
+ }
158
+ // Return average of all defined scores
159
+ if (scores.length === 0) {
160
+ return undefined;
161
+ }
162
+ return scores.reduce((sum, score) => sum + score, 0) / scores.length;
163
+ }
164
+ // For other types, can't calculate meaningful score
165
+ return undefined;
166
+ }
167
+ // ============================================================================
10
168
  // Provider Capability Detection
11
169
  // ============================================================================
12
170
  /**
@@ -237,13 +395,76 @@ export class ModelRegistry {
237
395
  * Search and score models based on criteria
238
396
  */
239
397
  searchModels(metadata) {
240
- const scored = [];
241
398
  // Filter list by models we have providers for
242
399
  const providedModels = this.providedModels();
400
+ // Step 1: Filter to applicable models
401
+ const applicableModels = [];
243
402
  for (const model of providedModels) {
244
- const score = this.scoreModel(model, metadata);
245
- if (score.score > 0) {
246
- scored.push(score);
403
+ const applicability = this.isModelApplicable(model, metadata);
404
+ if (applicability) {
405
+ applicableModels.push({ model, applicability });
406
+ }
407
+ }
408
+ // If no applicable models, return empty
409
+ if (applicableModels.length === 0) {
410
+ return [];
411
+ }
412
+ // Step 2: Calculate ranges across all applicable models
413
+ let rangeMin = {};
414
+ let rangeMax = {};
415
+ for (const { model } of applicableModels) {
416
+ // Calculate range for pricing
417
+ if (model.pricing) {
418
+ const { min, max } = calculateRange(model.pricing, rangeMin.pricing, rangeMax.pricing);
419
+ rangeMin.pricing = min;
420
+ rangeMax.pricing = max;
421
+ }
422
+ // Calculate range for contextWindow
423
+ if (model.contextWindow) {
424
+ const { min, max } = calculateRange(model.contextWindow, rangeMin.contextWindow, rangeMax.contextWindow);
425
+ rangeMin.contextWindow = min;
426
+ rangeMax.contextWindow = max;
427
+ }
428
+ // Calculate range for maxOutputTokens
429
+ if (model.maxOutputTokens) {
430
+ const { min, max } = calculateRange(model.maxOutputTokens, rangeMin.maxOutputTokens, rangeMax.maxOutputTokens);
431
+ rangeMin.maxOutputTokens = min;
432
+ rangeMax.maxOutputTokens = max;
433
+ }
434
+ // Calculate range for metrics
435
+ if (model.metrics) {
436
+ const { min, max } = calculateRange(model.metrics, rangeMin.metrics, rangeMax.metrics);
437
+ rangeMin.metrics = min;
438
+ rangeMax.metrics = max;
439
+ }
440
+ }
441
+ // Step 3: Score all applicable models with ranges
442
+ const scored = [];
443
+ for (const { model, applicability } of applicableModels) {
444
+ const result = {
445
+ model,
446
+ score: 0,
447
+ matchedRequired: applicability.matchedRequired,
448
+ matchedOptional: applicability.matchedOptional,
449
+ missingRequired: applicability.missingRequired,
450
+ };
451
+ // Determine weights
452
+ let weights;
453
+ if (metadata.weights) {
454
+ weights = metadata.weights;
455
+ }
456
+ else if (metadata.weightProfile && this.weightProfiles[metadata.weightProfile]) {
457
+ weights = this.weightProfiles[metadata.weightProfile];
458
+ }
459
+ else if (this.defaultWeights) {
460
+ weights = this.defaultWeights;
461
+ }
462
+ else {
463
+ weights = { cost: 0.5, speed: 0.3, accuracy: 0.2 };
464
+ }
465
+ result.score = this.calculateWeightedScore(model, weights, metadata, rangeMin, rangeMax);
466
+ if (result.score > 0) {
467
+ scored.push(result);
247
468
  }
248
469
  }
249
470
  // Sort by score descending
@@ -266,33 +487,10 @@ export class ModelRegistry {
266
487
  if (!provider) {
267
488
  return undefined;
268
489
  }
269
- // Validate that provider supports required capabilities
270
- if (criteria.required) {
271
- const providerCaps = this.providerCapabilities.get(model.provider);
272
- for (const cap of criteria.required) {
273
- // Check if provider supports this capability
274
- const providerSupportsCap = !providerCaps || providerCaps.has(cap);
275
- if (!providerSupportsCap) {
276
- // Provider doesn't support this capability, cannot use this model
277
- return undefined;
278
- }
279
- }
280
- }
281
- // Validate that model supports required parameters
282
- if (criteria.requiredParameters && criteria.requiredParameters.length > 0) {
283
- const optionalParams = criteria.optionalParameters || [];
284
- for (const param of criteria.requiredParameters) {
285
- // If this param is marked as optional, skip the requirement check
286
- if (optionalParams.includes(param)) {
287
- continue;
288
- }
289
- // Check if model supports this parameter
290
- const modelSupportsParam = model.supportedParameters?.has(param) ?? false;
291
- if (!modelSupportsParam) {
292
- // Required parameter not supported by model
293
- return undefined;
294
- }
295
- }
490
+ // Check if model is applicable
491
+ const applicability = this.isModelApplicable(model, criteria);
492
+ if (!applicability) {
493
+ return undefined;
296
494
  }
297
495
  return {
298
496
  model,
@@ -345,25 +543,22 @@ export class ModelRegistry {
345
543
  return this.providerCapabilities.get(name);
346
544
  }
347
545
  /**
348
- * Score a model against criteria
546
+ * Check if a model is applicable given the criteria.
547
+ * Returns null if not applicable, or an object with matched capabilities if applicable.
349
548
  */
350
- scoreModel(model, criteria) {
351
- const result = {
352
- model,
353
- score: 0,
354
- matchedRequired: [],
355
- matchedOptional: [],
356
- missingRequired: [],
357
- };
549
+ isModelApplicable(model, criteria) {
358
550
  // Check provider allowlist/blocklist
359
551
  if (criteria.providers) {
360
552
  if (criteria.providers.deny?.includes(model.provider)) {
361
- return result; // score = 0
553
+ return null;
362
554
  }
363
555
  if (criteria.providers.allow && !criteria.providers.allow.includes(model.provider)) {
364
- return result; // score = 0
556
+ return null;
365
557
  }
366
558
  }
559
+ const matchedRequired = [];
560
+ const matchedOptional = [];
561
+ const missingRequired = [];
367
562
  // Check required capabilities against both model AND provider
368
563
  if (criteria.required) {
369
564
  const providerCaps = this.providerCapabilities.get(model.provider);
@@ -375,22 +570,22 @@ export class ModelRegistry {
375
570
  const providerSupportsCap = !providerCaps || providerCaps.has(cap);
376
571
  // Both model AND provider must support the capability
377
572
  if (modelHasCap && providerSupportsCap) {
378
- result.matchedRequired.push(cap);
573
+ matchedRequired.push(cap);
379
574
  }
380
575
  else {
381
- result.missingRequired.push(cap);
576
+ missingRequired.push(cap);
382
577
  }
383
578
  }
384
- // If any required capabilities are missing, score = 0
385
- if (result.missingRequired.length > 0) {
386
- return result;
579
+ // If any required capabilities are missing, not applicable
580
+ if (missingRequired.length > 0) {
581
+ return null;
387
582
  }
388
583
  }
389
584
  // Check optional capabilities
390
585
  if (criteria.optional) {
391
586
  for (const cap of criteria.optional) {
392
587
  if (model.capabilities.has(cap)) {
393
- result.matchedOptional.push(cap);
588
+ matchedOptional.push(cap);
394
589
  }
395
590
  }
396
591
  }
@@ -406,16 +601,54 @@ export class ModelRegistry {
406
601
  const modelSupportsParam = model.supportedParameters?.has(param) ?? false;
407
602
  if (!modelSupportsParam) {
408
603
  // Required parameter not supported by model
409
- return result; // score = 0
604
+ return null;
410
605
  }
411
606
  }
412
607
  }
413
- // Check minimum context window
414
- if (criteria.minContextWindow && model.contextWindow && model.contextWindow < criteria.minContextWindow) {
415
- return result; // score = 0
608
+ // Check pricing constraints
609
+ if (!satisfiesConstraint(model.pricing, criteria.pricing?.min, criteria.pricing?.max)) {
610
+ return null;
611
+ }
612
+ // Check context window constraints
613
+ if (!satisfiesConstraint(model.contextWindow, criteria.contextWindow?.min, criteria.contextWindow?.max)) {
614
+ return null;
615
+ }
616
+ // Check output tokens constraints
617
+ if (!satisfiesConstraint(model.maxOutputTokens, criteria.outputTokens?.min, criteria.outputTokens?.max)) {
618
+ return null;
619
+ }
620
+ // Check metrics constraints
621
+ if (!satisfiesConstraint(model.metrics, criteria.metrics?.min, criteria.metrics?.max)) {
622
+ return null;
416
623
  }
417
624
  if (criteria.tier && model.tier !== criteria.tier) {
418
- return result; // score = 0
625
+ return null;
626
+ }
627
+ return { matchedRequired, matchedOptional, missingRequired };
628
+ }
629
+ /**
630
+ * Score a model against criteria
631
+ * @param skipApplicabilityCheck - If true, skips the applicability check (used when already filtered)
632
+ * @param rangeMin - Minimum values across all applicable models (for target scoring)
633
+ * @param rangeMax - Maximum values across all applicable models (for target scoring)
634
+ */
635
+ scoreModel(model, criteria, skipApplicabilityCheck = false, rangeMin, rangeMax) {
636
+ const result = {
637
+ model,
638
+ score: 0,
639
+ matchedRequired: [],
640
+ matchedOptional: [],
641
+ missingRequired: [],
642
+ };
643
+ // Check if model is applicable (unless already checked)
644
+ if (!skipApplicabilityCheck) {
645
+ const applicability = this.isModelApplicable(model, criteria);
646
+ if (!applicability) {
647
+ return result; // score = 0
648
+ }
649
+ result.matchedRequired = applicability.matchedRequired;
650
+ result.matchedOptional = applicability.matchedOptional;
651
+ result.missingRequired = applicability.missingRequired;
419
652
  }
420
653
  // Determine weights with priority: metadata.weights > weightProfile > defaultWeights
421
654
  let weights;
@@ -431,30 +664,54 @@ export class ModelRegistry {
431
664
  else {
432
665
  weights = { cost: 0.5, speed: 0.3, accuracy: 0.2 };
433
666
  }
434
- result.score = this.calculateWeightedScore(model, weights, criteria);
667
+ result.score = this.calculateWeightedScore(model, weights, criteria, rangeMin, rangeMax);
435
668
  return result;
436
669
  }
437
670
  /**
438
671
  * Calculate weighted score for a model
672
+ * @param rangeMin - Minimum values across all applicable models (for target scoring)
673
+ * @param rangeMax - Maximum values across all applicable models (for target scoring)
439
674
  */
440
- calculateWeightedScore(model, weights, metadata) {
675
+ calculateWeightedScore(model, weights, metadata, rangeMin, rangeMax) {
441
676
  let score = 0;
442
677
  let weighted = 0;
443
- // Cost score (lower is better, invert)
678
+ // Cost score with optional target-based scoring
444
679
  if (weights.cost) {
445
- // TODO more sophisticated cost modeling
446
- const avgCost = ((model.pricing.text?.input ?? 0) + (model.pricing.text?.output ?? 0)) / 2;
447
- const costScore = 1 / (1 + avgCost / 10); // Normalize
448
- score += weights.cost * costScore;
449
- if (avgCost > 0) {
680
+ let costScore;
681
+ // If target pricing specified and we have range, use target-based scoring
682
+ if (metadata.pricing?.target && rangeMin && rangeMax) {
683
+ costScore = calculateScore(model.pricing, metadata.pricing.target, rangeMin.pricing, rangeMax.pricing);
684
+ }
685
+ // Fallback to default scoring if no target or no range
686
+ if (costScore === undefined) {
687
+ // Extract average cost for simple scoring
688
+ const inputCost = model.pricing?.text?.input ?? 0;
689
+ const outputCost = model.pricing?.text?.output ?? 0;
690
+ const avgCost = (inputCost + outputCost) / 2;
691
+ if (avgCost > 0) {
692
+ // Default: lower cost is better
693
+ costScore = 1 / (1 + avgCost / 10);
694
+ }
695
+ }
696
+ if (costScore !== undefined) {
697
+ score += weights.cost * costScore;
450
698
  weighted++;
451
699
  }
452
700
  }
453
- // Speed score
454
- if (weights.speed && model.metrics?.tokensPerSecond) {
455
- const speedScore = Math.min(model.metrics.tokensPerSecond / 100, 1); // Normalize to 0-1
456
- score += weights.speed * speedScore;
457
- if (speedScore > 0) {
701
+ // Speed score with optional target-based scoring
702
+ if (weights.speed) {
703
+ let speedScore;
704
+ // If target metrics specified and we have range, use target-based scoring
705
+ if (metadata.metrics?.target && rangeMin && rangeMax) {
706
+ speedScore = calculateScore(model.metrics, metadata.metrics.target, rangeMin.metrics, rangeMax.metrics);
707
+ }
708
+ // Fallback to default scoring if no target or no range
709
+ if (speedScore === undefined && model.metrics?.tokensPerSecond !== undefined) {
710
+ // Default: higher speed is better (normalize to 0-1)
711
+ speedScore = Math.min(model.metrics.tokensPerSecond / 100, 1);
712
+ }
713
+ if (speedScore !== undefined) {
714
+ score += weights.speed * speedScore;
458
715
  weighted++;
459
716
  }
460
717
  }
@@ -462,21 +719,29 @@ export class ModelRegistry {
462
719
  if (weights.accuracy) {
463
720
  if (model.metrics?.accuracyScore) {
464
721
  score += weights.accuracy * model.metrics.accuracyScore;
722
+ weighted++;
465
723
  }
466
724
  else if (model.tier) {
467
725
  // Fallback to tier-based accuracy when metrics not available
468
726
  const tierScore = model.tier === 'flagship' ? 1.0 : model.tier === 'efficient' ? 0.7 : 0.5;
469
727
  score += weights.accuracy * tierScore;
470
- }
471
- if (model.metrics?.accuracyScore || model.tier) {
472
728
  weighted++;
473
729
  }
474
730
  }
475
- // Context window score
731
+ // Context window score with optional target-based scoring
476
732
  if (weights.contextWindow) {
477
- const contextScore = Math.min(model.contextWindow / 100000, 1); // Normalize
478
- score += weights.contextWindow * contextScore;
479
- if (model.contextWindow > 0) {
733
+ let contextScore;
734
+ // If target context window specified and we have range, use target-based scoring
735
+ if (metadata.contextWindow?.target && rangeMin && rangeMax) {
736
+ contextScore = calculateScore(model.contextWindow, metadata.contextWindow.target, rangeMin.contextWindow, rangeMax.contextWindow);
737
+ }
738
+ // Fallback to default scoring if no target or no range
739
+ if (contextScore === undefined && model.contextWindow > 0) {
740
+ // Default: larger context window is better (normalize to 0-1)
741
+ contextScore = Math.min(model.contextWindow / 100000, 1);
742
+ }
743
+ if (contextScore !== undefined) {
744
+ score += weights.contextWindow * contextScore;
480
745
  weighted++;
481
746
  }
482
747
  }
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../src/registry.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -206,6 +206,15 @@ export type AITypesInfer<TContext extends object, TMetadata extends object, TPro
206
206
  * Extract provider names as string union
207
207
  */
208
208
  export type AIProviderNames<T extends AIBaseTypes> = keyof AIProviders<T> & string;
209
+ /**
210
+ * Range constraint for model selection criteria.
211
+ * @template T - Type of the value being constrained
212
+ */
213
+ export interface RangeConstraint<T> {
214
+ min?: T;
215
+ max?: T;
216
+ target?: T;
217
+ }
209
218
  /**
210
219
  * Base metadata that all AI operations need.
211
220
  * Provides model selection criteria and constraints.
@@ -222,13 +231,12 @@ export interface AIBaseMetadata<TProviders extends Providers> {
222
231
  allow?: (keyof TProviders)[];
223
232
  deny?: (keyof TProviders)[];
224
233
  };
225
- budget?: {
226
- maxCostPerRequest?: number;
227
- maxCostPerMillionTokens?: number;
228
- };
234
+ pricing?: RangeConstraint<ModelPricing>;
235
+ contextWindow?: RangeConstraint<number>;
236
+ outputTokens?: RangeConstraint<number>;
237
+ metrics?: RangeConstraint<ModelMetrics>;
229
238
  weights?: ModelSelectionWeights;
230
239
  weightProfile?: string;
231
- minContextWindow?: number;
232
240
  tier?: ModelTier;
233
241
  }
234
242
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aeye/ai",
3
- "version": "0.3.0",
3
+ "version": "0.3.2",
4
4
  "description": "@aeye AI - AI TypeScript library main functionality",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -31,7 +31,7 @@
31
31
  "LICENSE"
32
32
  ],
33
33
  "dependencies": {
34
- "@aeye/core": "^0.3.0"
34
+ "@aeye/core": "^0.3.2"
35
35
  },
36
36
  "devDependencies": {
37
37
  "@types/jest": "^30.0.0",