@juspay/neurolink 7.33.0 → 7.33.1
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 +2 -0
- package/dist/agent/directTools.d.ts +6 -6
- package/dist/cli/commands/config.d.ts +68 -68
- package/dist/cli/utils/interactiveSetup.d.ts +1 -1
- package/dist/cli/utils/interactiveSetup.js +1 -1
- package/dist/core/analytics.d.ts +1 -2
- package/dist/core/baseProvider.d.ts +1 -1
- package/dist/core/baseProvider.js +1 -0
- package/dist/core/dynamicModels.d.ts +1 -132
- package/dist/core/dynamicModels.js +0 -7
- package/dist/core/evaluation.d.ts +1 -39
- package/dist/core/evaluationProviders.d.ts +1 -17
- package/dist/core/evaluationProviders.js +1 -1
- package/dist/core/factory.d.ts +1 -3
- package/dist/core/factory.js +0 -1
- package/dist/core/modelConfiguration.d.ts +8 -69
- package/dist/core/modelConfiguration.js +11 -11
- package/dist/core/serviceRegistry.d.ts +1 -8
- package/dist/core/streamAnalytics.d.ts +2 -45
- package/dist/factories/providerFactory.d.ts +1 -1
- package/dist/factories/providerRegistry.js +1 -1
- package/dist/index.d.ts +8 -9
- package/dist/index.js +1 -1
- package/dist/lib/core/analytics.d.ts +1 -2
- package/dist/lib/core/baseProvider.d.ts +1 -1
- package/dist/lib/core/baseProvider.js +1 -0
- package/dist/lib/core/dynamicModels.d.ts +1 -132
- package/dist/lib/core/dynamicModels.js +0 -7
- package/dist/lib/core/evaluation.d.ts +1 -39
- package/dist/lib/core/evaluationProviders.d.ts +1 -17
- package/dist/lib/core/evaluationProviders.js +1 -1
- package/dist/lib/core/factory.d.ts +1 -3
- package/dist/lib/core/factory.js +0 -1
- package/dist/lib/core/modelConfiguration.d.ts +8 -69
- package/dist/lib/core/modelConfiguration.js +11 -11
- package/dist/lib/core/serviceRegistry.d.ts +1 -8
- package/dist/lib/core/streamAnalytics.d.ts +2 -45
- package/dist/lib/factories/providerFactory.d.ts +1 -1
- package/dist/lib/factories/providerRegistry.js +1 -1
- package/dist/lib/index.d.ts +5 -6
- package/dist/lib/index.js +1 -1
- package/dist/lib/models/modelRegistry.d.ts +1 -1
- package/dist/lib/models/modelRegistry.js +1 -1
- package/dist/lib/models/modelResolver.d.ts +1 -1
- package/dist/lib/neurolink.d.ts +1 -1
- package/dist/lib/neurolink.js +1 -1
- package/dist/lib/providers/amazonBedrock.d.ts +1 -2
- package/dist/lib/providers/amazonSagemaker.d.ts +1 -1
- package/dist/lib/providers/anthropic.d.ts +1 -1
- package/dist/lib/providers/anthropic.js +1 -1
- package/dist/lib/providers/anthropicBaseProvider.d.ts +1 -1
- package/dist/lib/providers/anthropicBaseProvider.js +1 -1
- package/dist/lib/providers/azureOpenai.d.ts +1 -1
- package/dist/lib/providers/googleAiStudio.d.ts +1 -1
- package/dist/lib/providers/googleAiStudio.js +1 -1
- package/dist/lib/providers/googleVertex.d.ts +1 -1
- package/dist/lib/providers/googleVertex.js +1 -1
- package/dist/lib/providers/huggingFace.d.ts +1 -1
- package/dist/lib/providers/index.d.ts +1 -1
- package/dist/lib/providers/litellm.d.ts +1 -1
- package/dist/lib/providers/mistral.d.ts +1 -1
- package/dist/lib/providers/ollama.d.ts +1 -1
- package/dist/lib/providers/ollama.js +1 -1
- package/dist/lib/providers/openAI.d.ts +1 -1
- package/dist/lib/providers/openAI.js +1 -1
- package/dist/lib/providers/openaiCompatible.d.ts +1 -1
- package/dist/lib/providers/sagemaker/language-model.d.ts +2 -2
- package/dist/lib/types/analytics.d.ts +53 -0
- package/dist/lib/types/analytics.js +5 -0
- package/dist/lib/types/cli.d.ts +1 -1
- package/dist/lib/types/evaluation.d.ts +119 -0
- package/dist/lib/types/evaluation.js +5 -0
- package/dist/lib/types/evaluationProviders.d.ts +104 -0
- package/dist/lib/types/evaluationProviders.js +5 -0
- package/dist/lib/types/generateTypes.d.ts +89 -18
- package/dist/lib/types/index.d.ts +10 -2
- package/dist/lib/types/index.js +12 -0
- package/dist/lib/types/modelTypes.d.ts +242 -0
- package/dist/lib/types/modelTypes.js +30 -0
- package/dist/lib/types/providers.d.ts +193 -127
- package/dist/lib/types/providers.js +110 -18
- package/dist/lib/types/serviceTypes.d.ts +79 -0
- package/dist/lib/types/serviceTypes.js +5 -0
- package/dist/lib/types/streamTypes.d.ts +101 -21
- package/dist/lib/utils/analyticsUtils.d.ts +5 -1
- package/dist/lib/utils/analyticsUtils.js +13 -0
- package/dist/lib/utils/conversationMemoryUtils.d.ts +1 -1
- package/dist/lib/utils/evaluationUtils.d.ts +1 -1
- package/dist/lib/utils/factoryProcessing.d.ts +1 -1
- package/dist/lib/utils/messageBuilder.d.ts +1 -1
- package/dist/lib/utils/providerHealth.d.ts +1 -1
- package/dist/lib/utils/providerHealth.js +1 -1
- package/dist/lib/utils/providerUtils.d.ts +5 -0
- package/dist/lib/utils/providerUtils.js +6 -0
- package/dist/models/modelRegistry.d.ts +1 -1
- package/dist/models/modelRegistry.js +1 -1
- package/dist/models/modelResolver.d.ts +1 -1
- package/dist/neurolink.d.ts +1 -1
- package/dist/neurolink.js +1 -1
- package/dist/providers/amazonBedrock.d.ts +1 -2
- package/dist/providers/amazonSagemaker.d.ts +1 -1
- package/dist/providers/anthropic.d.ts +1 -1
- package/dist/providers/anthropic.js +1 -1
- package/dist/providers/anthropicBaseProvider.d.ts +1 -1
- package/dist/providers/anthropicBaseProvider.js +1 -1
- package/dist/providers/azureOpenai.d.ts +1 -1
- package/dist/providers/googleAiStudio.d.ts +1 -1
- package/dist/providers/googleAiStudio.js +1 -1
- package/dist/providers/googleVertex.d.ts +1 -1
- package/dist/providers/googleVertex.js +1 -1
- package/dist/providers/huggingFace.d.ts +1 -1
- package/dist/providers/index.d.ts +1 -1
- package/dist/providers/litellm.d.ts +1 -1
- package/dist/providers/mistral.d.ts +1 -1
- package/dist/providers/ollama.d.ts +1 -1
- package/dist/providers/ollama.js +1 -1
- package/dist/providers/openAI.d.ts +1 -1
- package/dist/providers/openAI.js +1 -1
- package/dist/providers/openaiCompatible.d.ts +1 -1
- package/dist/types/analytics.d.ts +53 -0
- package/dist/types/analytics.js +5 -0
- package/dist/types/cli.d.ts +1 -1
- package/dist/types/evaluation.d.ts +119 -0
- package/dist/types/evaluation.js +5 -0
- package/dist/types/evaluationProviders.d.ts +104 -0
- package/dist/types/evaluationProviders.js +5 -0
- package/dist/types/generateTypes.d.ts +89 -18
- package/dist/types/index.d.ts +10 -2
- package/dist/types/index.js +12 -0
- package/dist/types/modelTypes.d.ts +242 -0
- package/dist/types/modelTypes.js +30 -0
- package/dist/types/providers.d.ts +193 -127
- package/dist/types/providers.js +110 -18
- package/dist/types/serviceTypes.d.ts +79 -0
- package/dist/types/serviceTypes.js +5 -0
- package/dist/types/streamTypes.d.ts +101 -21
- package/dist/utils/analyticsUtils.d.ts +5 -1
- package/dist/utils/analyticsUtils.js +13 -0
- package/dist/utils/conversationMemoryUtils.d.ts +1 -1
- package/dist/utils/evaluationUtils.d.ts +1 -1
- package/dist/utils/factoryProcessing.d.ts +1 -1
- package/dist/utils/messageBuilder.d.ts +1 -1
- package/dist/utils/providerHealth.d.ts +1 -1
- package/dist/utils/providerHealth.js +1 -1
- package/dist/utils/providerUtils.d.ts +5 -0
- package/dist/utils/providerUtils.js +6 -0
- package/package.json +1 -1
- package/dist/core/types.d.ts +0 -223
- package/dist/core/types.js +0 -111
- package/dist/lib/core/types.d.ts +0 -223
- package/dist/lib/core/types.js +0 -111
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Evaluation provider type definitions for NeuroLink
|
|
3
|
+
* Provider performance tracking, evaluation configurations, and provider optimization types
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Evaluation provider type as specified in core module refactoring
|
|
7
|
+
*/
|
|
8
|
+
export type EvaluationProvider = "openai" | "anthropic" | "vertex" | "google-ai" | "local";
|
|
9
|
+
/**
|
|
10
|
+
* Evaluation modes
|
|
11
|
+
*/
|
|
12
|
+
export type EvaluationMode = "basic" | "detailed" | "domain-aware" | "disabled";
|
|
13
|
+
/**
|
|
14
|
+
* Alert severity levels
|
|
15
|
+
*/
|
|
16
|
+
export type AlertSeverity = "low" | "medium" | "high" | "none";
|
|
17
|
+
/**
|
|
18
|
+
* Response quality evaluation scores - Comprehensive evaluation type
|
|
19
|
+
*/
|
|
20
|
+
export type EvaluationData = {
|
|
21
|
+
relevance: number;
|
|
22
|
+
accuracy: number;
|
|
23
|
+
completeness: number;
|
|
24
|
+
overall: number;
|
|
25
|
+
domainAlignment?: number;
|
|
26
|
+
terminologyAccuracy?: number;
|
|
27
|
+
toolEffectiveness?: number;
|
|
28
|
+
isOffTopic: boolean;
|
|
29
|
+
alertSeverity: AlertSeverity;
|
|
30
|
+
reasoning: string;
|
|
31
|
+
suggestedImprovements?: string;
|
|
32
|
+
evaluationModel: string;
|
|
33
|
+
evaluationTime: number;
|
|
34
|
+
evaluationDomain?: string;
|
|
35
|
+
evaluationProvider?: string;
|
|
36
|
+
evaluationAttempt?: number;
|
|
37
|
+
evaluationConfig?: {
|
|
38
|
+
mode: string;
|
|
39
|
+
fallbackUsed: boolean;
|
|
40
|
+
costEstimate: number;
|
|
41
|
+
};
|
|
42
|
+
domainConfig?: {
|
|
43
|
+
domainName: string;
|
|
44
|
+
domainDescription: string;
|
|
45
|
+
keyTerms: string[];
|
|
46
|
+
failurePatterns: string[];
|
|
47
|
+
successPatterns: string[];
|
|
48
|
+
evaluationCriteria?: Record<string, unknown>;
|
|
49
|
+
};
|
|
50
|
+
domainEvaluation?: {
|
|
51
|
+
domainRelevance: number;
|
|
52
|
+
terminologyAccuracy: number;
|
|
53
|
+
domainExpertise: number;
|
|
54
|
+
domainSpecificInsights: string[];
|
|
55
|
+
};
|
|
56
|
+
};
|
|
57
|
+
/**
|
|
58
|
+
* Enhanced evaluation context for comprehensive response assessment
|
|
59
|
+
*/
|
|
60
|
+
export type EvaluationContext = {
|
|
61
|
+
userQuery: string;
|
|
62
|
+
aiResponse: string;
|
|
63
|
+
context?: Record<string, unknown>;
|
|
64
|
+
primaryDomain?: string;
|
|
65
|
+
assistantRole?: string;
|
|
66
|
+
conversationHistory?: Array<{
|
|
67
|
+
role: "user" | "assistant";
|
|
68
|
+
content: string;
|
|
69
|
+
timestamp?: string;
|
|
70
|
+
}>;
|
|
71
|
+
toolUsage?: Array<{
|
|
72
|
+
toolName: string;
|
|
73
|
+
input: unknown;
|
|
74
|
+
output: unknown;
|
|
75
|
+
executionTime: number;
|
|
76
|
+
}>;
|
|
77
|
+
expectedOutcome?: string;
|
|
78
|
+
evaluationCriteria?: string[];
|
|
79
|
+
};
|
|
80
|
+
/**
|
|
81
|
+
* Evaluation result type
|
|
82
|
+
* Extends EvaluationData with additional fields
|
|
83
|
+
*/
|
|
84
|
+
export type EnhancedEvaluationResult = EvaluationData & {
|
|
85
|
+
domainAlignment?: number;
|
|
86
|
+
terminologyAccuracy?: number;
|
|
87
|
+
toolEffectiveness?: number;
|
|
88
|
+
contextUtilization?: {
|
|
89
|
+
conversationUsed: boolean;
|
|
90
|
+
toolsUsed: boolean;
|
|
91
|
+
domainKnowledgeUsed: boolean;
|
|
92
|
+
};
|
|
93
|
+
evaluationContext?: {
|
|
94
|
+
domain: string;
|
|
95
|
+
toolsEvaluated: string[];
|
|
96
|
+
conversationTurns: number;
|
|
97
|
+
};
|
|
98
|
+
isOffTopic: boolean;
|
|
99
|
+
alertSeverity: AlertSeverity;
|
|
100
|
+
reasoning: string;
|
|
101
|
+
};
|
|
102
|
+
/**
|
|
103
|
+
* Evaluation request type as specified in core module refactoring
|
|
104
|
+
*/
|
|
105
|
+
export type EvaluationRequest = {
|
|
106
|
+
content: string;
|
|
107
|
+
context?: string;
|
|
108
|
+
domain?: string;
|
|
109
|
+
criteria: EvaluationCriteria;
|
|
110
|
+
};
|
|
111
|
+
/**
|
|
112
|
+
* Evaluation criteria type as specified in core module refactoring
|
|
113
|
+
*/
|
|
114
|
+
export type EvaluationCriteria = {
|
|
115
|
+
relevance: boolean;
|
|
116
|
+
accuracy: boolean;
|
|
117
|
+
completeness: boolean;
|
|
118
|
+
domainSpecific?: boolean;
|
|
119
|
+
};
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Evaluation provider type definitions for NeuroLink
|
|
3
|
+
* Provider performance tracking, evaluation configurations, and provider optimization types
|
|
4
|
+
*/
|
|
5
|
+
/**
|
|
6
|
+
* Performance optimization priority
|
|
7
|
+
*/
|
|
8
|
+
export type PerformancePriority = "speed" | "cost" | "reliability";
|
|
9
|
+
/**
|
|
10
|
+
* Legacy provider model configuration for evaluation
|
|
11
|
+
*/
|
|
12
|
+
export type ProviderModelConfig = {
|
|
13
|
+
provider: string;
|
|
14
|
+
models: string[];
|
|
15
|
+
costPerToken?: number | {
|
|
16
|
+
input: number;
|
|
17
|
+
output: number;
|
|
18
|
+
};
|
|
19
|
+
requiresApiKey?: string[];
|
|
20
|
+
performance?: {
|
|
21
|
+
averageLatency?: number;
|
|
22
|
+
reliability?: number;
|
|
23
|
+
speed?: number;
|
|
24
|
+
quality?: number;
|
|
25
|
+
cost?: number;
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* Real-time provider performance tracking metrics
|
|
30
|
+
*/
|
|
31
|
+
export type ProviderPerformanceMetrics = {
|
|
32
|
+
responseTime: number[];
|
|
33
|
+
successRate: number;
|
|
34
|
+
tokenThroughput: number;
|
|
35
|
+
costEfficiency: number;
|
|
36
|
+
lastUpdated: Date;
|
|
37
|
+
sampleCount: number;
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Provider performance recording data
|
|
41
|
+
*/
|
|
42
|
+
export type ProviderPerformanceData = {
|
|
43
|
+
responseTime: number;
|
|
44
|
+
tokensGenerated: number;
|
|
45
|
+
cost: number;
|
|
46
|
+
success: boolean;
|
|
47
|
+
};
|
|
48
|
+
/**
|
|
49
|
+
* Provider performance analytics result
|
|
50
|
+
*/
|
|
51
|
+
export type ProviderPerformanceAnalytics = {
|
|
52
|
+
avgResponseTime: number;
|
|
53
|
+
successRate: number;
|
|
54
|
+
tokenThroughput: number;
|
|
55
|
+
costEfficiency: number;
|
|
56
|
+
recommendation: string;
|
|
57
|
+
sampleCount: number;
|
|
58
|
+
};
|
|
59
|
+
/**
|
|
60
|
+
* Performance thresholds for evaluation
|
|
61
|
+
*/
|
|
62
|
+
export type PerformanceThresholds = {
|
|
63
|
+
EXCELLENT_SUCCESS_RATE: number;
|
|
64
|
+
EXCELLENT_RESPONSE_TIME_MS: number;
|
|
65
|
+
GOOD_SUCCESS_RATE: number;
|
|
66
|
+
FAIR_SUCCESS_RATE: number;
|
|
67
|
+
};
|
|
68
|
+
/**
|
|
69
|
+
* Provider scoring result
|
|
70
|
+
*/
|
|
71
|
+
export type ProviderScoringResult = {
|
|
72
|
+
provider: ProviderModelConfig;
|
|
73
|
+
score: number;
|
|
74
|
+
metrics: ProviderPerformanceMetrics | null;
|
|
75
|
+
};
|
|
76
|
+
/**
|
|
77
|
+
* Provider availability status
|
|
78
|
+
*/
|
|
79
|
+
export type ProviderAvailabilityStatus = {
|
|
80
|
+
provider: string;
|
|
81
|
+
available: boolean;
|
|
82
|
+
reason?: string;
|
|
83
|
+
lastChecked: Date;
|
|
84
|
+
};
|
|
85
|
+
/**
|
|
86
|
+
* Provider cost estimation parameters
|
|
87
|
+
*/
|
|
88
|
+
export type CostEstimationParams = {
|
|
89
|
+
provider: string;
|
|
90
|
+
inputTokens: number;
|
|
91
|
+
outputTokens: number;
|
|
92
|
+
model?: string;
|
|
93
|
+
};
|
|
94
|
+
/**
|
|
95
|
+
* Provider selection criteria
|
|
96
|
+
*/
|
|
97
|
+
export type ProviderSelectionCriteria = {
|
|
98
|
+
priority: PerformancePriority;
|
|
99
|
+
maxCost?: number;
|
|
100
|
+
minSuccessRate?: number;
|
|
101
|
+
maxResponseTime?: number;
|
|
102
|
+
excludeProviders?: string[];
|
|
103
|
+
requireCapabilities?: string[];
|
|
104
|
+
};
|
|
@@ -1,12 +1,16 @@
|
|
|
1
|
-
import type { Tool } from "ai";
|
|
2
|
-
import type { ValidationSchema, StandardRecord } from "./typeAliases.js";
|
|
3
|
-
import type { AIProviderName
|
|
4
|
-
import type { TokenUsage } from "./
|
|
1
|
+
import type { Tool, Schema } from "ai";
|
|
2
|
+
import type { ValidationSchema, StandardRecord, ZodUnknownSchema } from "./typeAliases.js";
|
|
3
|
+
import type { AIProviderName } from "./providers.js";
|
|
4
|
+
import type { AnalyticsData, TokenUsage } from "./analytics.js";
|
|
5
|
+
import type { EvaluationData } from "./evaluation.js";
|
|
6
|
+
import type { ChatMessage, ConversationMemoryConfig } from "./conversationTypes.js";
|
|
7
|
+
import type { MiddlewareFactoryOptions } from "./middlewareTypes.js";
|
|
8
|
+
import type { JsonValue } from "./common.js";
|
|
5
9
|
/**
|
|
6
|
-
* Generate function options
|
|
10
|
+
* Generate function options type - Primary method for content generation
|
|
7
11
|
* Future-ready for multi-modal capabilities while maintaining text focus
|
|
8
12
|
*/
|
|
9
|
-
export
|
|
13
|
+
export type GenerateOptions = {
|
|
10
14
|
input: {
|
|
11
15
|
text: string;
|
|
12
16
|
};
|
|
@@ -45,12 +49,12 @@ export interface GenerateOptions {
|
|
|
45
49
|
enableProgress?: boolean;
|
|
46
50
|
fallbackToGenerate?: boolean;
|
|
47
51
|
};
|
|
48
|
-
}
|
|
52
|
+
};
|
|
49
53
|
/**
|
|
50
|
-
* Generate function result
|
|
54
|
+
* Generate function result type - Primary output format
|
|
51
55
|
* Future-ready for multi-modal outputs while maintaining text focus
|
|
52
56
|
*/
|
|
53
|
-
export
|
|
57
|
+
export type GenerateResult = {
|
|
54
58
|
content: string;
|
|
55
59
|
outputs?: {
|
|
56
60
|
text: string;
|
|
@@ -96,28 +100,28 @@ export interface GenerateResult {
|
|
|
96
100
|
streamId?: string;
|
|
97
101
|
bufferOptimization?: boolean;
|
|
98
102
|
};
|
|
99
|
-
}
|
|
103
|
+
};
|
|
100
104
|
/**
|
|
101
105
|
* Unified options for both generation and streaming
|
|
102
106
|
* Supports factory patterns and domain configuration
|
|
103
107
|
*/
|
|
104
|
-
export
|
|
108
|
+
export type UnifiedGenerationOptions = GenerateOptions & {
|
|
105
109
|
preferStreaming?: boolean;
|
|
106
110
|
streamingFallback?: boolean;
|
|
107
|
-
}
|
|
111
|
+
};
|
|
108
112
|
/**
|
|
109
|
-
* Enhanced provider
|
|
113
|
+
* Enhanced provider type with generate method
|
|
110
114
|
*/
|
|
111
|
-
export
|
|
115
|
+
export type EnhancedProvider = {
|
|
112
116
|
generate(options: GenerateOptions): Promise<GenerateResult>;
|
|
113
117
|
getName(): string;
|
|
114
118
|
isAvailable(): Promise<boolean>;
|
|
115
|
-
}
|
|
119
|
+
};
|
|
116
120
|
/**
|
|
117
|
-
* Factory-enhanced provider
|
|
121
|
+
* Factory-enhanced provider type
|
|
118
122
|
* Supports domain configuration and streaming optimizations
|
|
119
123
|
*/
|
|
120
|
-
export
|
|
124
|
+
export type FactoryEnhancedProvider = EnhancedProvider & {
|
|
121
125
|
generateWithFactory(options: UnifiedGenerationOptions): Promise<GenerateResult>;
|
|
122
126
|
getDomainSupport(): string[];
|
|
123
127
|
getStreamingCapabilities(): {
|
|
@@ -125,4 +129,71 @@ export interface FactoryEnhancedProvider extends EnhancedProvider {
|
|
|
125
129
|
maxChunkSize: number;
|
|
126
130
|
bufferOptimizations: boolean;
|
|
127
131
|
};
|
|
128
|
-
}
|
|
132
|
+
};
|
|
133
|
+
/**
|
|
134
|
+
* Text generation options type (consolidated from core types)
|
|
135
|
+
*/
|
|
136
|
+
export type TextGenerationOptions = {
|
|
137
|
+
prompt?: string;
|
|
138
|
+
input?: {
|
|
139
|
+
text: string;
|
|
140
|
+
};
|
|
141
|
+
provider?: AIProviderName;
|
|
142
|
+
model?: string;
|
|
143
|
+
temperature?: number;
|
|
144
|
+
maxTokens?: number;
|
|
145
|
+
systemPrompt?: string;
|
|
146
|
+
schema?: ZodUnknownSchema | Schema<unknown>;
|
|
147
|
+
tools?: Record<string, Tool>;
|
|
148
|
+
timeout?: number | string;
|
|
149
|
+
disableTools?: boolean;
|
|
150
|
+
maxSteps?: number;
|
|
151
|
+
enableEvaluation?: boolean;
|
|
152
|
+
enableAnalytics?: boolean;
|
|
153
|
+
context?: Record<string, JsonValue>;
|
|
154
|
+
evaluationDomain?: string;
|
|
155
|
+
toolUsageContext?: string;
|
|
156
|
+
conversationHistory?: Array<{
|
|
157
|
+
role: string;
|
|
158
|
+
content: string;
|
|
159
|
+
}>;
|
|
160
|
+
conversationMessages?: ChatMessage[];
|
|
161
|
+
conversationMemoryConfig?: Partial<ConversationMemoryConfig>;
|
|
162
|
+
originalPrompt?: string;
|
|
163
|
+
middleware?: MiddlewareFactoryOptions;
|
|
164
|
+
expectedOutcome?: string;
|
|
165
|
+
evaluationCriteria?: string[];
|
|
166
|
+
};
|
|
167
|
+
/**
|
|
168
|
+
* Text generation result (consolidated from core types)
|
|
169
|
+
*/
|
|
170
|
+
export type TextGenerationResult = {
|
|
171
|
+
content: string;
|
|
172
|
+
provider?: string;
|
|
173
|
+
model?: string;
|
|
174
|
+
usage?: TokenUsage;
|
|
175
|
+
responseTime?: number;
|
|
176
|
+
toolsUsed?: string[];
|
|
177
|
+
toolExecutions?: Array<{
|
|
178
|
+
toolName: string;
|
|
179
|
+
executionTime: number;
|
|
180
|
+
success: boolean;
|
|
181
|
+
serverId?: string;
|
|
182
|
+
}>;
|
|
183
|
+
enhancedWithTools?: boolean;
|
|
184
|
+
availableTools?: Array<{
|
|
185
|
+
name: string;
|
|
186
|
+
description: string;
|
|
187
|
+
server: string;
|
|
188
|
+
category?: string;
|
|
189
|
+
}>;
|
|
190
|
+
analytics?: AnalyticsData;
|
|
191
|
+
evaluation?: EvaluationData;
|
|
192
|
+
};
|
|
193
|
+
/**
|
|
194
|
+
* Enhanced result type with optional analytics/evaluation
|
|
195
|
+
*/
|
|
196
|
+
export type EnhancedGenerateResult = GenerateResult & {
|
|
197
|
+
analytics?: AnalyticsData;
|
|
198
|
+
evaluation?: EvaluationData;
|
|
199
|
+
};
|
package/dist/types/index.d.ts
CHANGED
|
@@ -7,10 +7,18 @@ export * from "./providers.js";
|
|
|
7
7
|
export * from "./cli.js";
|
|
8
8
|
export type { Unknown, UnknownRecord, UnknownArray, JsonValue, JsonObject, JsonArray, ErrorInfo, Result, FunctionParameters, } from "./common.js";
|
|
9
9
|
export type { ToolArgs, ToolContext, ToolResult, ToolDefinition, SimpleTool, AvailableTool, ToolExecution, } from "./tools.js";
|
|
10
|
-
export type { AISDKModel, ProviderError,
|
|
10
|
+
export type { AISDKModel, ProviderError, ProviderConfig } from "./providers.js";
|
|
11
11
|
export type { BaseCommandArgs, GenerateCommandArgs, MCPCommandArgs, ModelsCommandArgs, CommandResult, GenerateResult, StreamChunk, } from "./cli.js";
|
|
12
12
|
export type { MCPTransportType, MCPServerConnectionStatus, MCPServerCategory, MCPServerStatus, MCPDiscoveredServer, MCPConnectedServer, MCPToolInfo, MCPExecutableTool, MCPServerMetadata, MCPToolMetadata, MCPServerRegistryEntry, } from "./mcpTypes.js";
|
|
13
13
|
export type { ExternalMCPServerInstance, ExternalMCPServerStatus, ExternalMCPToolInfo, ExternalMCPServerHealth, ExternalMCPConfigValidation, ExternalMCPOperationResult, ExternalMCPToolContext, ExternalMCPToolResult, ExternalMCPServerEvents, ExternalMCPManagerConfig, } from "./externalMcp.js";
|
|
14
14
|
export type { ModelCapability, ModelUseCase, ModelFilter, ModelResolutionContext, ModelStats, ModelPricing, } from "./providers.js";
|
|
15
|
-
export type { ToolCallResults, ToolCalls, StreamAnalyticsData, } from "./streamTypes.js";
|
|
16
15
|
export type { DomainType, DomainConfig, DomainTemplate, DomainConfigOptions, DomainEvaluationCriteria, DomainValidationRule, } from "./domainTypes.js";
|
|
16
|
+
export * from "./generateTypes.js";
|
|
17
|
+
export type { StreamingProgressData, StreamingMetadata, ProgressCallback, ToolCall as StreamToolCall, // Renamed to avoid conflict with tools.js ToolCall
|
|
18
|
+
ToolResult as StreamToolResult, // Renamed to avoid conflict with tools.js ToolResult
|
|
19
|
+
ToolCallResults, ToolCalls, StreamOptions, StreamingOptions, StreamResult, EnhancedStreamProvider, } from "./streamTypes.js";
|
|
20
|
+
export * from "./analytics.js";
|
|
21
|
+
export * from "./evaluation.js";
|
|
22
|
+
export * from "./modelTypes.js";
|
|
23
|
+
export * from "./serviceTypes.js";
|
|
24
|
+
export * from "./evaluationProviders.js";
|
package/dist/types/index.js
CHANGED
|
@@ -9,3 +9,15 @@ export * from "./tools.js";
|
|
|
9
9
|
export * from "./providers.js";
|
|
10
10
|
// CLI types
|
|
11
11
|
export * from "./cli.js";
|
|
12
|
+
// Generate types - NEW
|
|
13
|
+
export * from "./generateTypes.js";
|
|
14
|
+
// Analytics types - NEW
|
|
15
|
+
export * from "./analytics.js";
|
|
16
|
+
// Evaluation types - NEW
|
|
17
|
+
export * from "./evaluation.js";
|
|
18
|
+
// Model types - NEW
|
|
19
|
+
export * from "./modelTypes.js";
|
|
20
|
+
// Service types - NEW
|
|
21
|
+
export * from "./serviceTypes.js";
|
|
22
|
+
// Evaluation provider types - NEW
|
|
23
|
+
export * from "./evaluationProviders.js";
|
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Model-related type definitions for NeuroLink
|
|
3
|
+
* Consolidates all model configuration, dynamic model, and provider model types
|
|
4
|
+
*/
|
|
5
|
+
import { z } from "zod";
|
|
6
|
+
import type { JsonValue } from "./common.js";
|
|
7
|
+
/**
|
|
8
|
+
* Model performance tier definition
|
|
9
|
+
*/
|
|
10
|
+
export type ModelTier = "fast" | "balanced" | "quality";
|
|
11
|
+
/**
|
|
12
|
+
* Model configuration source type
|
|
13
|
+
*/
|
|
14
|
+
export type ConfigSource = "default" | "environment" | "file" | "dynamic";
|
|
15
|
+
/**
|
|
16
|
+
* Model configuration for a specific provider
|
|
17
|
+
*/
|
|
18
|
+
export type ModelConfig = {
|
|
19
|
+
/** Model identifier */
|
|
20
|
+
id: string;
|
|
21
|
+
/** Display name */
|
|
22
|
+
name: string;
|
|
23
|
+
/** Performance tier */
|
|
24
|
+
tier: ModelTier;
|
|
25
|
+
/** Cost per 1K tokens */
|
|
26
|
+
cost: {
|
|
27
|
+
input: number;
|
|
28
|
+
output: number;
|
|
29
|
+
};
|
|
30
|
+
/** Model capabilities */
|
|
31
|
+
capabilities: string[];
|
|
32
|
+
/** Model-specific options */
|
|
33
|
+
options?: Record<string, JsonValue>;
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* Provider configuration for model management
|
|
37
|
+
*/
|
|
38
|
+
export type ProviderConfiguration = {
|
|
39
|
+
/** Provider name */
|
|
40
|
+
provider: string;
|
|
41
|
+
/** Available models by tier */
|
|
42
|
+
models: Record<ModelTier, string>;
|
|
43
|
+
/** Default cost per token (fallback) */
|
|
44
|
+
defaultCost: {
|
|
45
|
+
input: number;
|
|
46
|
+
output: number;
|
|
47
|
+
};
|
|
48
|
+
/** Required environment variables */
|
|
49
|
+
requiredEnvVars: string[];
|
|
50
|
+
/** Provider-specific performance metrics */
|
|
51
|
+
performance: {
|
|
52
|
+
speed: number;
|
|
53
|
+
quality: number;
|
|
54
|
+
cost: number;
|
|
55
|
+
};
|
|
56
|
+
/** Provider-specific model configurations */
|
|
57
|
+
modelConfigs?: Record<string, ModelConfig>;
|
|
58
|
+
/** Provider-specific model behavior configurations */
|
|
59
|
+
modelBehavior?: {
|
|
60
|
+
/** Models that have issues with maxTokens parameter */
|
|
61
|
+
maxTokensIssues?: string[];
|
|
62
|
+
/** Models that require special handling */
|
|
63
|
+
specialHandling?: Record<string, JsonValue>;
|
|
64
|
+
/** Models that support tool calling (Ollama-specific) */
|
|
65
|
+
toolCapableModels?: string[];
|
|
66
|
+
};
|
|
67
|
+
};
|
|
68
|
+
/**
|
|
69
|
+
* Zod schema for model configuration validation
|
|
70
|
+
*/
|
|
71
|
+
export declare const ModelConfigSchema: z.ZodObject<{
|
|
72
|
+
id: z.ZodString;
|
|
73
|
+
displayName: z.ZodString;
|
|
74
|
+
capabilities: z.ZodArray<z.ZodString, "many">;
|
|
75
|
+
deprecated: z.ZodBoolean;
|
|
76
|
+
pricing: z.ZodObject<{
|
|
77
|
+
input: z.ZodNumber;
|
|
78
|
+
output: z.ZodNumber;
|
|
79
|
+
}, "strip", z.ZodTypeAny, {
|
|
80
|
+
input: number;
|
|
81
|
+
output: number;
|
|
82
|
+
}, {
|
|
83
|
+
input: number;
|
|
84
|
+
output: number;
|
|
85
|
+
}>;
|
|
86
|
+
contextWindow: z.ZodNumber;
|
|
87
|
+
releaseDate: z.ZodString;
|
|
88
|
+
}, "strip", z.ZodTypeAny, {
|
|
89
|
+
deprecated: boolean;
|
|
90
|
+
pricing: {
|
|
91
|
+
input: number;
|
|
92
|
+
output: number;
|
|
93
|
+
};
|
|
94
|
+
id: string;
|
|
95
|
+
displayName: string;
|
|
96
|
+
capabilities: string[];
|
|
97
|
+
contextWindow: number;
|
|
98
|
+
releaseDate: string;
|
|
99
|
+
}, {
|
|
100
|
+
deprecated: boolean;
|
|
101
|
+
pricing: {
|
|
102
|
+
input: number;
|
|
103
|
+
output: number;
|
|
104
|
+
};
|
|
105
|
+
id: string;
|
|
106
|
+
displayName: string;
|
|
107
|
+
capabilities: string[];
|
|
108
|
+
contextWindow: number;
|
|
109
|
+
releaseDate: string;
|
|
110
|
+
}>;
|
|
111
|
+
/**
|
|
112
|
+
* Zod schema for model registry validation
|
|
113
|
+
*/
|
|
114
|
+
export declare const ModelRegistrySchema: z.ZodObject<{
|
|
115
|
+
version: z.ZodString;
|
|
116
|
+
lastUpdated: z.ZodString;
|
|
117
|
+
models: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
118
|
+
id: z.ZodString;
|
|
119
|
+
displayName: z.ZodString;
|
|
120
|
+
capabilities: z.ZodArray<z.ZodString, "many">;
|
|
121
|
+
deprecated: z.ZodBoolean;
|
|
122
|
+
pricing: z.ZodObject<{
|
|
123
|
+
input: z.ZodNumber;
|
|
124
|
+
output: z.ZodNumber;
|
|
125
|
+
}, "strip", z.ZodTypeAny, {
|
|
126
|
+
input: number;
|
|
127
|
+
output: number;
|
|
128
|
+
}, {
|
|
129
|
+
input: number;
|
|
130
|
+
output: number;
|
|
131
|
+
}>;
|
|
132
|
+
contextWindow: z.ZodNumber;
|
|
133
|
+
releaseDate: z.ZodString;
|
|
134
|
+
}, "strip", z.ZodTypeAny, {
|
|
135
|
+
deprecated: boolean;
|
|
136
|
+
pricing: {
|
|
137
|
+
input: number;
|
|
138
|
+
output: number;
|
|
139
|
+
};
|
|
140
|
+
id: string;
|
|
141
|
+
displayName: string;
|
|
142
|
+
capabilities: string[];
|
|
143
|
+
contextWindow: number;
|
|
144
|
+
releaseDate: string;
|
|
145
|
+
}, {
|
|
146
|
+
deprecated: boolean;
|
|
147
|
+
pricing: {
|
|
148
|
+
input: number;
|
|
149
|
+
output: number;
|
|
150
|
+
};
|
|
151
|
+
id: string;
|
|
152
|
+
displayName: string;
|
|
153
|
+
capabilities: string[];
|
|
154
|
+
contextWindow: number;
|
|
155
|
+
releaseDate: string;
|
|
156
|
+
}>>>;
|
|
157
|
+
aliases: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
158
|
+
defaults: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
159
|
+
}, "strip", z.ZodTypeAny, {
|
|
160
|
+
version: string;
|
|
161
|
+
models: Record<string, Record<string, {
|
|
162
|
+
deprecated: boolean;
|
|
163
|
+
pricing: {
|
|
164
|
+
input: number;
|
|
165
|
+
output: number;
|
|
166
|
+
};
|
|
167
|
+
id: string;
|
|
168
|
+
displayName: string;
|
|
169
|
+
capabilities: string[];
|
|
170
|
+
contextWindow: number;
|
|
171
|
+
releaseDate: string;
|
|
172
|
+
}>>;
|
|
173
|
+
lastUpdated: string;
|
|
174
|
+
aliases?: Record<string, string> | undefined;
|
|
175
|
+
defaults?: Record<string, string> | undefined;
|
|
176
|
+
}, {
|
|
177
|
+
version: string;
|
|
178
|
+
models: Record<string, Record<string, {
|
|
179
|
+
deprecated: boolean;
|
|
180
|
+
pricing: {
|
|
181
|
+
input: number;
|
|
182
|
+
output: number;
|
|
183
|
+
};
|
|
184
|
+
id: string;
|
|
185
|
+
displayName: string;
|
|
186
|
+
capabilities: string[];
|
|
187
|
+
contextWindow: number;
|
|
188
|
+
releaseDate: string;
|
|
189
|
+
}>>;
|
|
190
|
+
lastUpdated: string;
|
|
191
|
+
aliases?: Record<string, string> | undefined;
|
|
192
|
+
defaults?: Record<string, string> | undefined;
|
|
193
|
+
}>;
|
|
194
|
+
/**
|
|
195
|
+
* Dynamic model configuration type
|
|
196
|
+
*/
|
|
197
|
+
export type DynamicModelConfig = z.infer<typeof ModelConfigSchema>;
|
|
198
|
+
/**
|
|
199
|
+
* Dynamic model registry type
|
|
200
|
+
*/
|
|
201
|
+
export type ModelRegistry = z.infer<typeof ModelRegistrySchema>;
|
|
202
|
+
/**
|
|
203
|
+
* Model name constants structure
|
|
204
|
+
*/
|
|
205
|
+
export type ModelNameConstants = {
|
|
206
|
+
readonly [provider: string]: {
|
|
207
|
+
readonly FAST: string;
|
|
208
|
+
readonly BALANCED: string;
|
|
209
|
+
readonly QUALITY: string;
|
|
210
|
+
};
|
|
211
|
+
};
|
|
212
|
+
/**
|
|
213
|
+
* Model metadata for registry
|
|
214
|
+
*/
|
|
215
|
+
export type ModelMetadata = {
|
|
216
|
+
version: string;
|
|
217
|
+
lastUpdated: string;
|
|
218
|
+
modelCount: number;
|
|
219
|
+
};
|
|
220
|
+
/**
|
|
221
|
+
* Model search options
|
|
222
|
+
*/
|
|
223
|
+
export type ModelSearchOptions = {
|
|
224
|
+
provider?: string;
|
|
225
|
+
maxPrice?: number;
|
|
226
|
+
excludeDeprecated?: boolean;
|
|
227
|
+
};
|
|
228
|
+
/**
|
|
229
|
+
* Model search result
|
|
230
|
+
*/
|
|
231
|
+
export type ModelSearchResult = {
|
|
232
|
+
provider: string;
|
|
233
|
+
model: string;
|
|
234
|
+
config: DynamicModelConfig;
|
|
235
|
+
};
|
|
236
|
+
/**
|
|
237
|
+
* Cost information structure
|
|
238
|
+
*/
|
|
239
|
+
export type CostInfo = {
|
|
240
|
+
input: number;
|
|
241
|
+
output: number;
|
|
242
|
+
};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Model-related type definitions for NeuroLink
|
|
3
|
+
* Consolidates all model configuration, dynamic model, and provider model types
|
|
4
|
+
*/
|
|
5
|
+
import { z } from "zod";
|
|
6
|
+
/**
|
|
7
|
+
* Zod schema for model configuration validation
|
|
8
|
+
*/
|
|
9
|
+
export const ModelConfigSchema = z.object({
|
|
10
|
+
id: z.string(),
|
|
11
|
+
displayName: z.string(),
|
|
12
|
+
capabilities: z.array(z.string()),
|
|
13
|
+
deprecated: z.boolean(),
|
|
14
|
+
pricing: z.object({
|
|
15
|
+
input: z.number(),
|
|
16
|
+
output: z.number(),
|
|
17
|
+
}),
|
|
18
|
+
contextWindow: z.number(),
|
|
19
|
+
releaseDate: z.string(),
|
|
20
|
+
});
|
|
21
|
+
/**
|
|
22
|
+
* Zod schema for model registry validation
|
|
23
|
+
*/
|
|
24
|
+
export const ModelRegistrySchema = z.object({
|
|
25
|
+
version: z.string(),
|
|
26
|
+
lastUpdated: z.string(),
|
|
27
|
+
models: z.record(z.record(ModelConfigSchema)),
|
|
28
|
+
aliases: z.record(z.string()).optional(),
|
|
29
|
+
defaults: z.record(z.string()).optional(),
|
|
30
|
+
});
|