aifastdb 0.2.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.
Files changed (53) hide show
  1. package/aidb.win32-x64-msvc.node +0 -0
  2. package/aifastdb.win32-x64-msvc.node +0 -0
  3. package/dist/client.d.ts +140 -0
  4. package/dist/client.d.ts.map +1 -0
  5. package/dist/client.js +270 -0
  6. package/dist/client.js.map +1 -0
  7. package/dist/connectme-adapter.d.ts +76 -0
  8. package/dist/connectme-adapter.d.ts.map +1 -0
  9. package/dist/connectme-adapter.js +456 -0
  10. package/dist/connectme-adapter.js.map +1 -0
  11. package/dist/family-tree.d.ts +482 -0
  12. package/dist/family-tree.d.ts.map +1 -0
  13. package/dist/family-tree.js +676 -0
  14. package/dist/family-tree.js.map +1 -0
  15. package/dist/family-types.d.ts +228 -0
  16. package/dist/family-types.d.ts.map +1 -0
  17. package/dist/family-types.js +108 -0
  18. package/dist/family-types.js.map +1 -0
  19. package/dist/index.d.ts +25 -0
  20. package/dist/index.d.ts.map +1 -0
  21. package/dist/index.js +70 -0
  22. package/dist/index.js.map +1 -0
  23. package/dist/memory-manager.d.ts +82 -0
  24. package/dist/memory-manager.d.ts.map +1 -0
  25. package/dist/memory-manager.js +273 -0
  26. package/dist/memory-manager.js.map +1 -0
  27. package/dist/native.d.ts +352 -0
  28. package/dist/native.d.ts.map +1 -0
  29. package/dist/native.js +35 -0
  30. package/dist/native.js.map +1 -0
  31. package/dist/query-builder.d.ts +143 -0
  32. package/dist/query-builder.d.ts.map +1 -0
  33. package/dist/query-builder.js +240 -0
  34. package/dist/query-builder.js.map +1 -0
  35. package/dist/social-graph.d.ts +392 -0
  36. package/dist/social-graph.d.ts.map +1 -0
  37. package/dist/social-graph.js +545 -0
  38. package/dist/social-graph.js.map +1 -0
  39. package/dist/social-types.d.ts +379 -0
  40. package/dist/social-types.d.ts.map +1 -0
  41. package/dist/social-types.js +34 -0
  42. package/dist/social-types.js.map +1 -0
  43. package/dist/types.d.ts +475 -0
  44. package/dist/types.d.ts.map +1 -0
  45. package/dist/types.js +161 -0
  46. package/dist/types.js.map +1 -0
  47. package/dist/vibe-synapse.d.ts +174 -0
  48. package/dist/vibe-synapse.d.ts.map +1 -0
  49. package/dist/vibe-synapse.js +509 -0
  50. package/dist/vibe-synapse.js.map +1 -0
  51. package/package.json +61 -0
  52. package/vibebase.node +0 -0
  53. package/vibebase.win32-x64-msvc.node +0 -0
@@ -0,0 +1,475 @@
1
+ /**
2
+ * TypeScript type definitions for AiFastDb
3
+ */
4
+ import type { MemoryNode, SearchResult, FilterCondition, Collection, CollectionStats } from './native';
5
+ /**
6
+ * Collection configuration for creating new collections
7
+ */
8
+ export interface CollectionConfig {
9
+ /** Collection name */
10
+ name: string;
11
+ /** Vector dimension */
12
+ dimension: number;
13
+ /** Optional description */
14
+ description?: string;
15
+ /** Custom metadata */
16
+ metadata?: Record<string, unknown>;
17
+ /** Foreign key constraints */
18
+ foreignKeys?: ForeignKeyConfig[];
19
+ }
20
+ /**
21
+ * Action to take when a referenced record is deleted
22
+ */
23
+ export type OnDeleteAction = 'restrict' | 'cascade' | 'set_null' | 'no_action';
24
+ /**
25
+ * Foreign key configuration
26
+ */
27
+ export interface ForeignKeyConfig {
28
+ /** Field name in this collection that holds the foreign key value */
29
+ field: string;
30
+ /** Name of the referenced collection */
31
+ references: string;
32
+ /** Field in the referenced collection (default: "id") */
33
+ referenceField?: string;
34
+ /** Action when the referenced record is deleted */
35
+ onDelete?: OnDeleteAction;
36
+ /** Alias for the populated field (optional) */
37
+ alias?: string;
38
+ }
39
+ /**
40
+ * Result of foreign key validation
41
+ */
42
+ export interface ForeignKeyValidationResult {
43
+ /** Whether all foreign keys are valid */
44
+ valid: boolean;
45
+ /** Error messages for invalid foreign keys */
46
+ errors: string[];
47
+ }
48
+ /**
49
+ * Result of cascade delete operation
50
+ */
51
+ export interface CascadeDeleteResult {
52
+ /** IDs deleted from each collection { collectionName: string[] } */
53
+ deleted: Record<string, string[]>;
54
+ /** IDs with null set in each collection { collectionName: string[] } */
55
+ nullified: Record<string, string[]>;
56
+ }
57
+ /**
58
+ * Configuration for populating (joining) related documents
59
+ * Similar to Mongoose's populate()
60
+ */
61
+ export interface PopulateConfig {
62
+ /** Foreign key field to populate */
63
+ field: string;
64
+ /** Target collection (optional, inferred from foreign key config if not set) */
65
+ from?: string;
66
+ /** Alias for the populated field in results */
67
+ alias?: string;
68
+ /** Fields to select from the referenced document (optional, all if not set) */
69
+ select?: string[];
70
+ /** Nested populations (optional) */
71
+ populate?: PopulateConfig[];
72
+ }
73
+ /**
74
+ * Helper to create a populate config
75
+ */
76
+ export declare function populate(field: string, options?: Omit<PopulateConfig, 'field'>): PopulateConfig;
77
+ /**
78
+ * Helper to create a foreign key config
79
+ */
80
+ export declare function foreignKey(field: string, references: string, options?: Omit<ForeignKeyConfig, 'field' | 'references'>): ForeignKeyConfig;
81
+ /**
82
+ * Extended query options with collection support
83
+ */
84
+ export interface MultiCollectionQueryOptions {
85
+ /** Text query */
86
+ query?: string;
87
+ /** Vector embedding to search for */
88
+ vector?: number[];
89
+ /** Weight for vector search (0-1) */
90
+ vectorWeight?: number;
91
+ /** Weight for text search (0-1) */
92
+ textWeight?: number;
93
+ /** Metadata filters */
94
+ filters?: FilterCondition[];
95
+ /** Time range start (Unix ms) */
96
+ timeStart?: number;
97
+ /** Time range end (Unix ms) */
98
+ timeEnd?: number;
99
+ /** Minimum importance threshold */
100
+ minImportance?: number;
101
+ /** Maximum number of results */
102
+ limit?: number;
103
+ /** Result offset */
104
+ offset?: number;
105
+ /** Collections to search in (empty = default collection only) */
106
+ collections?: string[];
107
+ }
108
+ export type { Collection, CollectionStats };
109
+ /**
110
+ * Embedding function type
111
+ * Takes text content and returns a vector embedding
112
+ */
113
+ export type EmbeddingFunction = (text: string) => Promise<number[]>;
114
+ /**
115
+ * Batch embedding function type
116
+ */
117
+ export type BatchEmbeddingFunction = (texts: string[]) => Promise<number[][]>;
118
+ /**
119
+ * Embedding provider configuration
120
+ */
121
+ export interface EmbeddingProvider {
122
+ /** Generate embedding for a single text */
123
+ embed: EmbeddingFunction;
124
+ /** Generate embeddings for multiple texts (optional, for efficiency) */
125
+ embedBatch?: BatchEmbeddingFunction;
126
+ /** Vector dimension */
127
+ dimension: number;
128
+ }
129
+ /**
130
+ * OpenAI embedding configuration
131
+ */
132
+ export interface OpenAIEmbeddingConfig {
133
+ /** OpenAI API key */
134
+ apiKey: string;
135
+ /** Model name (default: text-embedding-ada-002) */
136
+ model?: string;
137
+ /** Base URL for API (optional, for Azure or proxies) */
138
+ baseUrl?: string;
139
+ }
140
+ /**
141
+ * Memory with computed properties
142
+ */
143
+ export interface EnrichedMemory extends MemoryNode {
144
+ /** Computed current importance with decay */
145
+ currentImportance: number;
146
+ /** Age in milliseconds */
147
+ ageMs: number;
148
+ /** Human-readable age */
149
+ ageHuman: string;
150
+ }
151
+ /**
152
+ * Query result with enriched data
153
+ */
154
+ export interface EnrichedSearchResult extends SearchResult {
155
+ node: EnrichedMemory;
156
+ /** Score breakdown */
157
+ breakdown?: {
158
+ vectorScore?: number;
159
+ textScore?: number;
160
+ importanceScore?: number;
161
+ recencyScore?: number;
162
+ };
163
+ }
164
+ /**
165
+ * Chunking options for document ingestion
166
+ */
167
+ export interface ChunkingOptions {
168
+ /** Maximum chunk size in characters */
169
+ maxChunkSize?: number;
170
+ /** Overlap between chunks */
171
+ overlap?: number;
172
+ /** Chunking strategy */
173
+ strategy?: 'sentence' | 'paragraph' | 'fixed' | 'semantic';
174
+ /** Separator for splitting */
175
+ separator?: string | RegExp;
176
+ }
177
+ /**
178
+ * Document to ingest
179
+ */
180
+ export interface Document {
181
+ /** Document content */
182
+ content: string;
183
+ /** Document metadata */
184
+ metadata?: Record<string, unknown>;
185
+ /** Document ID (optional, will be generated if not provided) */
186
+ id?: string;
187
+ }
188
+ /**
189
+ * Ingestion result
190
+ */
191
+ export interface IngestionResult {
192
+ /** Document ID */
193
+ documentId: string;
194
+ /** Created chunk IDs */
195
+ chunkIds: string[];
196
+ /** Number of chunks created */
197
+ chunkCount: number;
198
+ }
199
+ /**
200
+ * Entity for knowledge graph
201
+ */
202
+ export interface Entity {
203
+ id: string;
204
+ name: string;
205
+ entityType: string;
206
+ properties: Record<string, unknown>;
207
+ memoryRefs: string[];
208
+ createdAt: number;
209
+ updatedAt: number;
210
+ }
211
+ /**
212
+ * Relation for knowledge graph
213
+ */
214
+ export interface Relation {
215
+ id: string;
216
+ source: string;
217
+ target: string;
218
+ relationType: string;
219
+ weight: number;
220
+ bidirectional: boolean;
221
+ metadata: Record<string, unknown>;
222
+ createdAt: number;
223
+ }
224
+ /**
225
+ * Graph traversal result
226
+ */
227
+ export interface GraphTraversalResult {
228
+ entity: Entity;
229
+ depth: number;
230
+ path: string[];
231
+ }
232
+ /**
233
+ * Filter builder helpers
234
+ */
235
+ export declare const Filters: {
236
+ eq: (field: string, value: unknown) => FilterCondition;
237
+ ne: (field: string, value: unknown) => FilterCondition;
238
+ gt: (field: string, value: unknown) => FilterCondition;
239
+ gte: (field: string, value: unknown) => FilterCondition;
240
+ lt: (field: string, value: unknown) => FilterCondition;
241
+ lte: (field: string, value: unknown) => FilterCondition;
242
+ contains: (field: string, value: unknown) => FilterCondition;
243
+ startsWith: (field: string, value: string) => FilterCondition;
244
+ endsWith: (field: string, value: string) => FilterCondition;
245
+ in: (field: string, values: unknown[]) => FilterCondition;
246
+ notIn: (field: string, values: unknown[]) => FilterCondition;
247
+ isNull: (field: string) => FilterCondition;
248
+ isNotNull: (field: string) => FilterCondition;
249
+ exists: (field: string) => FilterCondition;
250
+ };
251
+ /**
252
+ * Common relation types
253
+ */
254
+ export declare const RelationTypes: {
255
+ readonly RELATES_TO: "relates_to";
256
+ readonly PART_OF: "part_of";
257
+ readonly CONTAINS: "contains";
258
+ readonly CAUSES: "causes";
259
+ readonly CAUSED_BY: "caused_by";
260
+ readonly SIMILAR_TO: "similar_to";
261
+ readonly OPPOSITE_OF: "opposite_of";
262
+ readonly DERIVED_FROM: "derived_from";
263
+ readonly INSTANCE_OF: "instance_of";
264
+ readonly SUBCLASS_OF: "subclass_of";
265
+ readonly CREATED_BY: "created_by";
266
+ readonly LOCATED_IN: "located_in";
267
+ readonly BELONGS_TO: "belongs_to";
268
+ readonly ASSOCIATED_WITH: "associated_with";
269
+ };
270
+ /**
271
+ * Common entity types
272
+ */
273
+ export declare const EntityTypes: {
274
+ readonly PERSON: "person";
275
+ readonly ORGANIZATION: "organization";
276
+ readonly LOCATION: "location";
277
+ readonly EVENT: "event";
278
+ readonly CONCEPT: "concept";
279
+ readonly OBJECT: "object";
280
+ readonly DOCUMENT: "document";
281
+ readonly TOPIC: "topic";
282
+ readonly DATE: "date";
283
+ readonly QUANTITY: "quantity";
284
+ };
285
+ /**
286
+ * Modality types supported by perception engines
287
+ */
288
+ export type Modality = 'text' | 'code' | 'audio' | 'image' | 'video';
289
+ /**
290
+ * Perception engine configuration
291
+ */
292
+ export interface PerceptionConfig {
293
+ /** Engine type: "candle" | "none" */
294
+ engineType?: string;
295
+ /** Model ID (HuggingFace model ID or local path) */
296
+ modelId?: string;
297
+ /** Output embedding dimension */
298
+ dimension?: number;
299
+ /** Device: "cpu" | "cuda" | "metal" */
300
+ device?: string;
301
+ /** Whether to auto-download model from HuggingFace */
302
+ autoDownload?: boolean;
303
+ /** Local cache directory for models */
304
+ cacheDir?: string;
305
+ }
306
+ /**
307
+ * Reasoning engine configuration (for LLM API)
308
+ */
309
+ export interface ReasoningConfig {
310
+ /** Provider: "ollama" | "openai" | "azure" */
311
+ provider: 'ollama' | 'openai' | 'azure' | string;
312
+ /** API endpoint URL */
313
+ endpoint: string;
314
+ /** Model name */
315
+ model: string;
316
+ /** API key (optional for local providers like Ollama) */
317
+ apiKey?: string;
318
+ /** Request timeout in seconds */
319
+ timeoutSecs?: number;
320
+ /** Maximum tokens for generation */
321
+ maxTokens?: number;
322
+ /** Temperature (0.0 - 2.0) */
323
+ temperature?: number;
324
+ }
325
+ /**
326
+ * VibeSynapse configuration
327
+ */
328
+ export interface VibeSynapseConfig {
329
+ /** Storage path for database files */
330
+ storage: string;
331
+ /** Vector dimension (default: 384 for MiniLM) */
332
+ dimension?: number;
333
+ /** HNSW index configuration */
334
+ hnsw?: {
335
+ m?: number;
336
+ efConstruction?: number;
337
+ efSearch?: number;
338
+ maxElements?: number;
339
+ };
340
+ /** Built-in perception engine configuration */
341
+ perception?: PerceptionConfig;
342
+ /** External reasoning engine (LLM) configuration */
343
+ reasoning?: ReasoningConfig;
344
+ /** Multimodal configuration */
345
+ multimodal?: {
346
+ /** Enable audio processing */
347
+ audio?: boolean;
348
+ /** Enable image processing */
349
+ image?: boolean;
350
+ /** Auto-generate tags from content */
351
+ autoTag?: boolean;
352
+ };
353
+ }
354
+ /**
355
+ * Multimodal input for VibeSynapse
356
+ */
357
+ export interface MultimodalInput {
358
+ /** Input type */
359
+ type: Modality;
360
+ /** Content (text) or description */
361
+ content?: string;
362
+ /** File path (for audio/image/video) */
363
+ file?: string;
364
+ /** Raw data buffer (alternative to file) */
365
+ data?: Buffer;
366
+ /** MIME type */
367
+ mimeType?: string;
368
+ /** Tags */
369
+ tags?: string[];
370
+ /** Metadata */
371
+ metadata?: Record<string, unknown>;
372
+ /** Importance score (0-1) */
373
+ importance?: number;
374
+ }
375
+ /**
376
+ * Perception result
377
+ */
378
+ export interface PerceptionResult {
379
+ /** Generated embedding vector */
380
+ embedding: number[];
381
+ /** Detected modality */
382
+ modality: Modality;
383
+ /** Confidence score (0-1) */
384
+ confidence: number;
385
+ /** Extracted metadata */
386
+ metadata?: Record<string, unknown>;
387
+ }
388
+ /**
389
+ * Reasoning result
390
+ */
391
+ export interface ReasoningResult {
392
+ /** Generated content */
393
+ content: string;
394
+ /** Token usage */
395
+ usage?: {
396
+ promptTokens: number;
397
+ completionTokens: number;
398
+ totalTokens: number;
399
+ };
400
+ /** Model used */
401
+ model?: string;
402
+ }
403
+ /**
404
+ * Logic check result
405
+ */
406
+ export interface LogicCheckResult {
407
+ /** Whether statements are logically consistent */
408
+ consistent: boolean;
409
+ /** Explanation (if available) */
410
+ explanation?: string;
411
+ }
412
+ /**
413
+ * Cross-modal search options
414
+ */
415
+ export interface CrossModalSearchOptions {
416
+ /** Query text */
417
+ query?: string;
418
+ /** Query embedding (alternative to query) */
419
+ embedding?: number[];
420
+ /** Filter by modality */
421
+ modality?: Modality | Modality[];
422
+ /** Tags filter */
423
+ tags?: string[];
424
+ /** Minimum importance */
425
+ minImportance?: number;
426
+ /** Maximum results */
427
+ limit?: number;
428
+ /** Time range start */
429
+ timeStart?: number;
430
+ /** Time range end */
431
+ timeEnd?: number;
432
+ }
433
+ /**
434
+ * Preset perception configurations
435
+ */
436
+ export declare const PerceptionPresets: {
437
+ /** Lightweight English model (22M params, 384 dim) */
438
+ readonly miniLM: () => PerceptionConfig;
439
+ /** High-quality English model (33M params, 384 dim) */
440
+ readonly bgeSmall: () => PerceptionConfig;
441
+ /** Multilingual model (118M params, 384 dim) */
442
+ readonly multilingualE5: () => PerceptionConfig;
443
+ /**
444
+ * EmbeddingGemma - Google's state-of-the-art embedding model (308M params, 768 dim)
445
+ *
446
+ * Features:
447
+ * - Highest MTEB score among models under 500M params
448
+ * - Supports 100+ languages
449
+ * - 2048 token context window
450
+ * - Matryoshka representation learning (can truncate to 512/256/128 dims)
451
+ */
452
+ readonly embeddingGemma: () => PerceptionConfig;
453
+ /**
454
+ * EmbeddingGemma with Matryoshka dimension truncation
455
+ *
456
+ * @param dim - Target dimension (768, 512, 256, or 128)
457
+ */
458
+ readonly embeddingGemmaMatryoshka: (dim?: 768 | 512 | 256 | 128) => PerceptionConfig;
459
+ /** No perception (manual embeddings required) */
460
+ readonly none: () => PerceptionConfig;
461
+ };
462
+ /**
463
+ * Preset reasoning configurations
464
+ */
465
+ export declare const ReasoningPresets: {
466
+ /** Ollama with Llama 3.2 */
467
+ readonly ollamaLlama: (model?: string) => ReasoningConfig;
468
+ /** Ollama with Gemma */
469
+ readonly ollamaGemma: (model?: string) => ReasoningConfig;
470
+ /** OpenAI GPT-4 */
471
+ readonly openaiGpt4: (apiKey: string) => ReasoningConfig;
472
+ /** OpenAI GPT-3.5 Turbo */
473
+ readonly openaiGpt35: (apiKey: string) => ReasoningConfig;
474
+ };
475
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../ts/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js ADDED
@@ -0,0 +1,161 @@
1
+ "use strict";
2
+ /**
3
+ * TypeScript type definitions for AiFastDb
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.ReasoningPresets = exports.PerceptionPresets = exports.EntityTypes = exports.RelationTypes = exports.Filters = void 0;
7
+ exports.populate = populate;
8
+ exports.foreignKey = foreignKey;
9
+ /**
10
+ * Helper to create a populate config
11
+ */
12
+ function populate(field, options) {
13
+ return { field, ...options };
14
+ }
15
+ /**
16
+ * Helper to create a foreign key config
17
+ */
18
+ function foreignKey(field, references, options) {
19
+ return { field, references, ...options };
20
+ }
21
+ /**
22
+ * Filter builder helpers
23
+ */
24
+ exports.Filters = {
25
+ eq: (field, value) => ({ field, op: 'eq', value }),
26
+ ne: (field, value) => ({ field, op: 'ne', value }),
27
+ gt: (field, value) => ({ field, op: 'gt', value }),
28
+ gte: (field, value) => ({ field, op: 'gte', value }),
29
+ lt: (field, value) => ({ field, op: 'lt', value }),
30
+ lte: (field, value) => ({ field, op: 'lte', value }),
31
+ contains: (field, value) => ({ field, op: 'contains', value }),
32
+ startsWith: (field, value) => ({ field, op: 'starts_with', value }),
33
+ endsWith: (field, value) => ({ field, op: 'ends_with', value }),
34
+ in: (field, values) => ({ field, op: 'in', value: values }),
35
+ notIn: (field, values) => ({ field, op: 'not_in', value: values }),
36
+ isNull: (field) => ({ field, op: 'is_null', value: null }),
37
+ isNotNull: (field) => ({ field, op: 'is_not_null', value: null }),
38
+ exists: (field) => ({ field, op: 'exists', value: null }),
39
+ };
40
+ /**
41
+ * Common relation types
42
+ */
43
+ exports.RelationTypes = {
44
+ RELATES_TO: 'relates_to',
45
+ PART_OF: 'part_of',
46
+ CONTAINS: 'contains',
47
+ CAUSES: 'causes',
48
+ CAUSED_BY: 'caused_by',
49
+ SIMILAR_TO: 'similar_to',
50
+ OPPOSITE_OF: 'opposite_of',
51
+ DERIVED_FROM: 'derived_from',
52
+ INSTANCE_OF: 'instance_of',
53
+ SUBCLASS_OF: 'subclass_of',
54
+ CREATED_BY: 'created_by',
55
+ LOCATED_IN: 'located_in',
56
+ BELONGS_TO: 'belongs_to',
57
+ ASSOCIATED_WITH: 'associated_with',
58
+ };
59
+ /**
60
+ * Common entity types
61
+ */
62
+ exports.EntityTypes = {
63
+ PERSON: 'person',
64
+ ORGANIZATION: 'organization',
65
+ LOCATION: 'location',
66
+ EVENT: 'event',
67
+ CONCEPT: 'concept',
68
+ OBJECT: 'object',
69
+ DOCUMENT: 'document',
70
+ TOPIC: 'topic',
71
+ DATE: 'date',
72
+ QUANTITY: 'quantity',
73
+ };
74
+ /**
75
+ * Preset perception configurations
76
+ */
77
+ exports.PerceptionPresets = {
78
+ /** Lightweight English model (22M params, 384 dim) */
79
+ miniLM: () => ({
80
+ engineType: 'candle',
81
+ modelId: 'sentence-transformers/all-MiniLM-L6-v2',
82
+ dimension: 384,
83
+ autoDownload: true,
84
+ }),
85
+ /** High-quality English model (33M params, 384 dim) */
86
+ bgeSmall: () => ({
87
+ engineType: 'candle',
88
+ modelId: 'BAAI/bge-small-en-v1.5',
89
+ dimension: 384,
90
+ autoDownload: true,
91
+ }),
92
+ /** Multilingual model (118M params, 384 dim) */
93
+ multilingualE5: () => ({
94
+ engineType: 'candle',
95
+ modelId: 'intfloat/multilingual-e5-small',
96
+ dimension: 384,
97
+ autoDownload: true,
98
+ }),
99
+ /**
100
+ * EmbeddingGemma - Google's state-of-the-art embedding model (308M params, 768 dim)
101
+ *
102
+ * Features:
103
+ * - Highest MTEB score among models under 500M params
104
+ * - Supports 100+ languages
105
+ * - 2048 token context window
106
+ * - Matryoshka representation learning (can truncate to 512/256/128 dims)
107
+ */
108
+ embeddingGemma: () => ({
109
+ engineType: 'embedding_gemma',
110
+ modelId: 'google/embeddinggemma-300m',
111
+ dimension: 768,
112
+ autoDownload: true,
113
+ }),
114
+ /**
115
+ * EmbeddingGemma with Matryoshka dimension truncation
116
+ *
117
+ * @param dim - Target dimension (768, 512, 256, or 128)
118
+ */
119
+ embeddingGemmaMatryoshka: (dim = 256) => ({
120
+ engineType: 'embedding_gemma',
121
+ modelId: 'google/embeddinggemma-300m',
122
+ dimension: dim,
123
+ autoDownload: true,
124
+ }),
125
+ /** No perception (manual embeddings required) */
126
+ none: () => ({
127
+ engineType: 'none',
128
+ }),
129
+ };
130
+ /**
131
+ * Preset reasoning configurations
132
+ */
133
+ exports.ReasoningPresets = {
134
+ /** Ollama with Llama 3.2 */
135
+ ollamaLlama: (model = 'llama3.2') => ({
136
+ provider: 'ollama',
137
+ endpoint: 'http://localhost:11434/v1',
138
+ model,
139
+ }),
140
+ /** Ollama with Gemma */
141
+ ollamaGemma: (model = 'gemma3:27b') => ({
142
+ provider: 'ollama',
143
+ endpoint: 'http://localhost:11434/v1',
144
+ model,
145
+ }),
146
+ /** OpenAI GPT-4 */
147
+ openaiGpt4: (apiKey) => ({
148
+ provider: 'openai',
149
+ endpoint: 'https://api.openai.com/v1',
150
+ model: 'gpt-4',
151
+ apiKey,
152
+ }),
153
+ /** OpenAI GPT-3.5 Turbo */
154
+ openaiGpt35: (apiKey) => ({
155
+ provider: 'openai',
156
+ endpoint: 'https://api.openai.com/v1',
157
+ model: 'gpt-3.5-turbo',
158
+ apiKey,
159
+ }),
160
+ };
161
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../ts/types.ts"],"names":[],"mappings":"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"}