@objectstack/spec 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/README.md +127 -5
- package/dist/ai/index.d.ts +14 -0
- package/dist/ai/index.d.ts.map +1 -0
- package/dist/ai/index.js +29 -0
- package/dist/ai/model-registry.zod.d.ts +1389 -0
- package/dist/ai/model-registry.zod.d.ts.map +1 -0
- package/dist/ai/model-registry.zod.js +164 -0
- package/dist/ai/nlq.zod.d.ts +1126 -0
- package/dist/ai/nlq.zod.d.ts.map +1 -0
- package/dist/ai/nlq.zod.js +246 -0
- package/dist/ai/rag-pipeline.zod.d.ts +1034 -0
- package/dist/ai/rag-pipeline.zod.d.ts.map +1 -0
- package/dist/ai/rag-pipeline.zod.js +244 -0
- package/dist/api/index.d.ts +9 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +24 -0
- package/dist/data/index.d.ts +21 -0
- package/dist/data/index.d.ts.map +1 -0
- package/dist/data/index.js +36 -0
- package/dist/data/query.zod.d.ts +386 -3
- package/dist/data/query.zod.d.ts.map +1 -1
- package/dist/data/query.zod.js +386 -3
- package/dist/data/validation.zod.d.ts +349 -0
- package/dist/data/validation.zod.d.ts.map +1 -1
- package/dist/data/validation.zod.js +395 -0
- package/dist/index.d.ts +36 -41
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +64 -49
- package/dist/system/auth-protocol.d.ts +175 -0
- package/dist/system/auth-protocol.d.ts.map +1 -0
- package/dist/system/auth-protocol.js +60 -0
- package/dist/system/auth.zod.d.ts +1097 -65
- package/dist/system/auth.zod.d.ts.map +1 -1
- package/dist/system/auth.zod.js +135 -1
- package/dist/system/identity.zod.d.ts +234 -180
- package/dist/system/identity.zod.d.ts.map +1 -1
- package/dist/system/identity.zod.js +168 -51
- package/dist/system/index.d.ts +28 -0
- package/dist/system/index.d.ts.map +1 -0
- package/dist/system/index.js +43 -0
- package/dist/system/manifest.zod.d.ts +10 -10
- package/dist/system/organization.zod.d.ts +179 -0
- package/dist/system/organization.zod.d.ts.map +1 -0
- package/dist/system/organization.zod.js +129 -0
- package/dist/ui/action.zod.d.ts +2 -2
- package/dist/ui/index.d.ts +17 -0
- package/dist/ui/index.d.ts.map +1 -0
- package/dist/ui/index.js +32 -0
- package/dist/ui/theme.zod.d.ts +6 -6
- package/json-schema/Account.json +87 -0
- package/json-schema/AuthConfig.json +235 -0
- package/json-schema/ChunkingStrategy.json +133 -0
- package/json-schema/DatabaseMapping.json +48 -0
- package/json-schema/DocumentChunk.json +97 -0
- package/json-schema/DocumentLoaderConfig.json +69 -0
- package/json-schema/DocumentMetadata.json +61 -0
- package/json-schema/EmbeddingModel.json +57 -0
- package/json-schema/EnterpriseAuthConfig.json +172 -0
- package/json-schema/Entity.json +55 -0
- package/json-schema/FieldSynonymConfig.json +39 -0
- package/json-schema/Invitation.json +69 -0
- package/json-schema/InvitationStatus.json +15 -0
- package/json-schema/LDAPConfig.json +22 -5
- package/json-schema/Member.json +46 -0
- package/json-schema/ModelCapability.json +47 -0
- package/json-schema/ModelConfig.json +181 -0
- package/json-schema/ModelLimits.json +45 -0
- package/json-schema/ModelPricing.json +28 -0
- package/json-schema/ModelProvider.json +19 -0
- package/json-schema/ModelRegistry.json +427 -0
- package/json-schema/ModelRegistryEntry.json +239 -0
- package/json-schema/ModelSelectionCriteria.json +50 -0
- package/json-schema/NLQAnalytics.json +106 -0
- package/json-schema/NLQFieldMapping.json +40 -0
- package/json-schema/NLQModelConfig.json +78 -0
- package/json-schema/NLQParseResult.json +252 -0
- package/json-schema/NLQRequest.json +110 -0
- package/json-schema/NLQResponse.json +288 -0
- package/json-schema/NLQTrainingExample.json +120 -0
- package/json-schema/OIDCConfig.json +18 -3
- package/json-schema/Organization.json +52 -0
- package/json-schema/PromptTemplate.json +163 -0
- package/json-schema/PromptVariable.json +56 -0
- package/json-schema/QueryContext.json +72 -0
- package/json-schema/QueryIntent.json +21 -0
- package/json-schema/QueryTemplate.json +81 -0
- package/json-schema/RAGPipelineConfig.json +552 -0
- package/json-schema/RAGPipelineStatus.json +66 -0
- package/json-schema/RAGQueryRequest.json +64 -0
- package/json-schema/RAGQueryResponse.json +108 -0
- package/json-schema/RerankingConfig.json +34 -0
- package/json-schema/RetrievalStrategy.json +121 -0
- package/json-schema/SAMLConfig.json +17 -3
- package/json-schema/Session.json +63 -0
- package/json-schema/StandardAuthProvider.json +235 -0
- package/json-schema/Timeframe.json +68 -0
- package/json-schema/User.json +51 -0
- package/json-schema/VectorStoreConfig.json +82 -0
- package/json-schema/VectorStoreProvider.json +21 -0
- package/json-schema/VerificationToken.json +36 -0
- package/package.json +27 -1
- package/json-schema/AuthProtocol.json +0 -17
- package/json-schema/AuthProvider.json +0 -171
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-registry.zod.d.ts","sourceRoot":"","sources":["../../src/ai/model-registry.zod.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ModelSelectionCriteriaSchema = exports.ModelRegistrySchema = exports.ModelRegistryEntrySchema = exports.PromptTemplateSchema = exports.PromptVariableSchema = exports.ModelConfigSchema = exports.ModelPricingSchema = exports.ModelLimitsSchema = exports.ModelCapabilitySchema = exports.ModelProviderSchema = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
/**
|
|
6
|
+
* AI Model Registry Protocol
|
|
7
|
+
*
|
|
8
|
+
* Centralized registry for managing AI models, prompt templates, and model versioning.
|
|
9
|
+
* Enables AI-powered ObjectStack applications to discover and use LLMs consistently.
|
|
10
|
+
*/
|
|
11
|
+
/**
|
|
12
|
+
* Model Provider Type
|
|
13
|
+
*/
|
|
14
|
+
exports.ModelProviderSchema = zod_1.z.enum([
|
|
15
|
+
'openai',
|
|
16
|
+
'azure_openai',
|
|
17
|
+
'anthropic',
|
|
18
|
+
'google',
|
|
19
|
+
'cohere',
|
|
20
|
+
'huggingface',
|
|
21
|
+
'local',
|
|
22
|
+
'custom',
|
|
23
|
+
]);
|
|
24
|
+
/**
|
|
25
|
+
* Model Capability
|
|
26
|
+
*/
|
|
27
|
+
exports.ModelCapabilitySchema = zod_1.z.object({
|
|
28
|
+
textGeneration: zod_1.z.boolean().optional().default(true).describe('Supports text generation'),
|
|
29
|
+
textEmbedding: zod_1.z.boolean().optional().default(false).describe('Supports text embedding'),
|
|
30
|
+
imageGeneration: zod_1.z.boolean().optional().default(false).describe('Supports image generation'),
|
|
31
|
+
imageUnderstanding: zod_1.z.boolean().optional().default(false).describe('Supports image understanding'),
|
|
32
|
+
functionCalling: zod_1.z.boolean().optional().default(false).describe('Supports function calling'),
|
|
33
|
+
codeGeneration: zod_1.z.boolean().optional().default(false).describe('Supports code generation'),
|
|
34
|
+
reasoning: zod_1.z.boolean().optional().default(false).describe('Supports advanced reasoning'),
|
|
35
|
+
});
|
|
36
|
+
/**
|
|
37
|
+
* Model Limits
|
|
38
|
+
*/
|
|
39
|
+
exports.ModelLimitsSchema = zod_1.z.object({
|
|
40
|
+
maxTokens: zod_1.z.number().int().positive().describe('Maximum tokens per request'),
|
|
41
|
+
contextWindow: zod_1.z.number().int().positive().describe('Context window size'),
|
|
42
|
+
maxOutputTokens: zod_1.z.number().int().positive().optional().describe('Maximum output tokens'),
|
|
43
|
+
rateLimit: zod_1.z.object({
|
|
44
|
+
requestsPerMinute: zod_1.z.number().int().positive().optional(),
|
|
45
|
+
tokensPerMinute: zod_1.z.number().int().positive().optional(),
|
|
46
|
+
}).optional(),
|
|
47
|
+
});
|
|
48
|
+
/**
|
|
49
|
+
* Model Pricing
|
|
50
|
+
*/
|
|
51
|
+
exports.ModelPricingSchema = zod_1.z.object({
|
|
52
|
+
currency: zod_1.z.string().optional().default('USD'),
|
|
53
|
+
inputCostPer1kTokens: zod_1.z.number().optional().describe('Cost per 1K input tokens'),
|
|
54
|
+
outputCostPer1kTokens: zod_1.z.number().optional().describe('Cost per 1K output tokens'),
|
|
55
|
+
embeddingCostPer1kTokens: zod_1.z.number().optional().describe('Cost per 1K embedding tokens'),
|
|
56
|
+
});
|
|
57
|
+
/**
|
|
58
|
+
* Model Configuration
|
|
59
|
+
*/
|
|
60
|
+
exports.ModelConfigSchema = zod_1.z.object({
|
|
61
|
+
/** Identity */
|
|
62
|
+
id: zod_1.z.string().describe('Unique model identifier'),
|
|
63
|
+
name: zod_1.z.string().describe('Model display name'),
|
|
64
|
+
version: zod_1.z.string().describe('Model version (e.g., "gpt-4-turbo-2024-04-09")'),
|
|
65
|
+
provider: exports.ModelProviderSchema,
|
|
66
|
+
/** Capabilities */
|
|
67
|
+
capabilities: exports.ModelCapabilitySchema,
|
|
68
|
+
limits: exports.ModelLimitsSchema,
|
|
69
|
+
/** Pricing */
|
|
70
|
+
pricing: exports.ModelPricingSchema.optional(),
|
|
71
|
+
/** Configuration */
|
|
72
|
+
endpoint: zod_1.z.string().url().optional().describe('Custom API endpoint'),
|
|
73
|
+
apiKey: zod_1.z.string().optional().describe('API key or reference to secret'),
|
|
74
|
+
region: zod_1.z.string().optional().describe('Deployment region (e.g., "us-east-1")'),
|
|
75
|
+
/** Metadata */
|
|
76
|
+
description: zod_1.z.string().optional(),
|
|
77
|
+
tags: zod_1.z.array(zod_1.z.string()).optional().describe('Tags for categorization'),
|
|
78
|
+
deprecated: zod_1.z.boolean().optional().default(false),
|
|
79
|
+
recommendedFor: zod_1.z.array(zod_1.z.string()).optional().describe('Use case recommendations'),
|
|
80
|
+
});
|
|
81
|
+
/**
|
|
82
|
+
* Prompt Template Variable
|
|
83
|
+
*/
|
|
84
|
+
exports.PromptVariableSchema = zod_1.z.object({
|
|
85
|
+
name: zod_1.z.string().describe('Variable name (e.g., "user_name", "context")'),
|
|
86
|
+
type: zod_1.z.enum(['string', 'number', 'boolean', 'object', 'array']).default('string'),
|
|
87
|
+
required: zod_1.z.boolean().default(false),
|
|
88
|
+
defaultValue: zod_1.z.any().optional(),
|
|
89
|
+
description: zod_1.z.string().optional(),
|
|
90
|
+
validation: zod_1.z.object({
|
|
91
|
+
minLength: zod_1.z.number().optional(),
|
|
92
|
+
maxLength: zod_1.z.number().optional(),
|
|
93
|
+
pattern: zod_1.z.string().optional(),
|
|
94
|
+
enum: zod_1.z.array(zod_1.z.any()).optional(),
|
|
95
|
+
}).optional(),
|
|
96
|
+
});
|
|
97
|
+
/**
|
|
98
|
+
* Prompt Template
|
|
99
|
+
*/
|
|
100
|
+
exports.PromptTemplateSchema = zod_1.z.object({
|
|
101
|
+
/** Identity */
|
|
102
|
+
id: zod_1.z.string().describe('Unique template identifier'),
|
|
103
|
+
name: zod_1.z.string().regex(/^[a-z_][a-z0-9_]*$/).describe('Template name (snake_case)'),
|
|
104
|
+
label: zod_1.z.string().describe('Display name'),
|
|
105
|
+
/** Template Content */
|
|
106
|
+
system: zod_1.z.string().optional().describe('System prompt'),
|
|
107
|
+
user: zod_1.z.string().describe('User prompt template with variables'),
|
|
108
|
+
assistant: zod_1.z.string().optional().describe('Assistant message prefix'),
|
|
109
|
+
/** Variables */
|
|
110
|
+
variables: zod_1.z.array(exports.PromptVariableSchema).optional().describe('Template variables'),
|
|
111
|
+
/** Model Configuration */
|
|
112
|
+
modelId: zod_1.z.string().optional().describe('Recommended model ID'),
|
|
113
|
+
temperature: zod_1.z.number().min(0).max(2).optional(),
|
|
114
|
+
maxTokens: zod_1.z.number().optional(),
|
|
115
|
+
topP: zod_1.z.number().optional(),
|
|
116
|
+
frequencyPenalty: zod_1.z.number().optional(),
|
|
117
|
+
presencePenalty: zod_1.z.number().optional(),
|
|
118
|
+
stopSequences: zod_1.z.array(zod_1.z.string()).optional(),
|
|
119
|
+
/** Metadata */
|
|
120
|
+
version: zod_1.z.string().optional().default('1.0.0'),
|
|
121
|
+
description: zod_1.z.string().optional(),
|
|
122
|
+
category: zod_1.z.string().optional().describe('Template category (e.g., "code_generation", "support")'),
|
|
123
|
+
tags: zod_1.z.array(zod_1.z.string()).optional(),
|
|
124
|
+
examples: zod_1.z.array(zod_1.z.object({
|
|
125
|
+
input: zod_1.z.record(zod_1.z.any()).describe('Example variable values'),
|
|
126
|
+
output: zod_1.z.string().describe('Expected output'),
|
|
127
|
+
})).optional(),
|
|
128
|
+
});
|
|
129
|
+
/**
|
|
130
|
+
* Model Registry Entry
|
|
131
|
+
*/
|
|
132
|
+
exports.ModelRegistryEntrySchema = zod_1.z.object({
|
|
133
|
+
model: exports.ModelConfigSchema,
|
|
134
|
+
status: zod_1.z.enum(['active', 'deprecated', 'experimental', 'disabled']).default('active'),
|
|
135
|
+
priority: zod_1.z.number().int().default(0).describe('Priority for model selection'),
|
|
136
|
+
fallbackModels: zod_1.z.array(zod_1.z.string()).optional().describe('Fallback model IDs'),
|
|
137
|
+
healthCheck: zod_1.z.object({
|
|
138
|
+
enabled: zod_1.z.boolean().default(true),
|
|
139
|
+
intervalSeconds: zod_1.z.number().int().default(300),
|
|
140
|
+
lastChecked: zod_1.z.string().optional().describe('ISO timestamp'),
|
|
141
|
+
status: zod_1.z.enum(['healthy', 'unhealthy', 'unknown']).default('unknown'),
|
|
142
|
+
}).optional(),
|
|
143
|
+
});
|
|
144
|
+
/**
|
|
145
|
+
* Model Registry
|
|
146
|
+
*/
|
|
147
|
+
exports.ModelRegistrySchema = zod_1.z.object({
|
|
148
|
+
name: zod_1.z.string().describe('Registry name'),
|
|
149
|
+
models: zod_1.z.record(exports.ModelRegistryEntrySchema).describe('Model entries by ID'),
|
|
150
|
+
promptTemplates: zod_1.z.record(exports.PromptTemplateSchema).optional().describe('Prompt templates by name'),
|
|
151
|
+
defaultModel: zod_1.z.string().optional().describe('Default model ID'),
|
|
152
|
+
enableAutoFallback: zod_1.z.boolean().default(true).describe('Auto-fallback on errors'),
|
|
153
|
+
});
|
|
154
|
+
/**
|
|
155
|
+
* Model Selection Criteria
|
|
156
|
+
*/
|
|
157
|
+
exports.ModelSelectionCriteriaSchema = zod_1.z.object({
|
|
158
|
+
capabilities: zod_1.z.array(zod_1.z.string()).optional().describe('Required capabilities'),
|
|
159
|
+
maxCostPer1kTokens: zod_1.z.number().optional().describe('Maximum acceptable cost'),
|
|
160
|
+
minContextWindow: zod_1.z.number().optional().describe('Minimum context window size'),
|
|
161
|
+
provider: exports.ModelProviderSchema.optional(),
|
|
162
|
+
tags: zod_1.z.array(zod_1.z.string()).optional(),
|
|
163
|
+
excludeDeprecated: zod_1.z.boolean().default(true),
|
|
164
|
+
});
|