@pleaseai/context-please-core 0.2.1 → 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.
Files changed (99) hide show
  1. package/README.md +74 -46
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/context.d.ts +12 -12
  4. package/dist/context.d.ts.map +1 -1
  5. package/dist/context.js +125 -73
  6. package/dist/context.js.map +1 -1
  7. package/dist/embedding/base-embedding.d.ts.map +1 -1
  8. package/dist/embedding/base-embedding.js +1 -1
  9. package/dist/embedding/base-embedding.js.map +1 -1
  10. package/dist/embedding/gemini-embedding.d.ts +2 -1
  11. package/dist/embedding/gemini-embedding.d.ts.map +1 -1
  12. package/dist/embedding/gemini-embedding.js +8 -8
  13. package/dist/embedding/gemini-embedding.js.map +1 -1
  14. package/dist/embedding/index.d.ts +2 -2
  15. package/dist/embedding/index.d.ts.map +1 -1
  16. package/dist/embedding/index.js +2 -2
  17. package/dist/embedding/index.js.map +1 -1
  18. package/dist/embedding/ollama-embedding.d.ts +2 -1
  19. package/dist/embedding/ollama-embedding.d.ts.map +1 -1
  20. package/dist/embedding/ollama-embedding.js +5 -5
  21. package/dist/embedding/ollama-embedding.js.map +1 -1
  22. package/dist/embedding/openai-embedding.d.ts +2 -1
  23. package/dist/embedding/openai-embedding.d.ts.map +1 -1
  24. package/dist/embedding/openai-embedding.js +10 -10
  25. package/dist/embedding/openai-embedding.js.map +1 -1
  26. package/dist/embedding/voyageai-embedding.d.ts +2 -1
  27. package/dist/embedding/voyageai-embedding.d.ts.map +1 -1
  28. package/dist/embedding/voyageai-embedding.js +23 -23
  29. package/dist/embedding/voyageai-embedding.js.map +1 -1
  30. package/dist/index.d.ts +4 -4
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.js +4 -4
  33. package/dist/index.js.map +1 -1
  34. package/dist/splitter/ast-splitter.d.ts +1 -1
  35. package/dist/splitter/ast-splitter.d.ts.map +1 -1
  36. package/dist/splitter/ast-splitter.js +29 -15
  37. package/dist/splitter/ast-splitter.js.map +1 -1
  38. package/dist/splitter/index.d.ts +4 -4
  39. package/dist/splitter/index.d.ts.map +1 -1
  40. package/dist/splitter/index.js +1 -1
  41. package/dist/splitter/index.js.map +1 -1
  42. package/dist/splitter/langchain-splitter.d.ts +1 -1
  43. package/dist/splitter/langchain-splitter.d.ts.map +1 -1
  44. package/dist/splitter/langchain-splitter.js.map +1 -1
  45. package/dist/sync/merkle.d.ts.map +1 -1
  46. package/dist/sync/merkle.js +9 -9
  47. package/dist/sync/merkle.js.map +1 -1
  48. package/dist/sync/synchronizer.d.ts.map +1 -1
  49. package/dist/sync/synchronizer.js +15 -15
  50. package/dist/sync/synchronizer.js.map +1 -1
  51. package/dist/types.d.ts.map +1 -1
  52. package/dist/utils/env-manager.d.ts.map +1 -1
  53. package/dist/utils/env-manager.js +3 -3
  54. package/dist/utils/env-manager.js.map +1 -1
  55. package/dist/utils/index.d.ts.map +1 -1
  56. package/dist/utils/index.js.map +1 -1
  57. package/dist/vectordb/base/base-vector-database.d.ts +1 -1
  58. package/dist/vectordb/base/base-vector-database.d.ts.map +1 -1
  59. package/dist/vectordb/base/base-vector-database.js.map +1 -1
  60. package/dist/vectordb/factory.d.ts +6 -6
  61. package/dist/vectordb/factory.d.ts.map +1 -1
  62. package/dist/vectordb/factory.js +1 -1
  63. package/dist/vectordb/factory.js.map +1 -1
  64. package/dist/vectordb/index.d.ts +9 -9
  65. package/dist/vectordb/index.d.ts.map +1 -1
  66. package/dist/vectordb/index.js +8 -8
  67. package/dist/vectordb/index.js.map +1 -1
  68. package/dist/vectordb/milvus-restful-vectordb.d.ts +6 -5
  69. package/dist/vectordb/milvus-restful-vectordb.d.ts.map +1 -1
  70. package/dist/vectordb/milvus-restful-vectordb.js +136 -136
  71. package/dist/vectordb/milvus-restful-vectordb.js.map +1 -1
  72. package/dist/vectordb/milvus-vectordb.d.ts +5 -4
  73. package/dist/vectordb/milvus-vectordb.d.ts.map +1 -1
  74. package/dist/vectordb/milvus-vectordb.js +31 -31
  75. package/dist/vectordb/milvus-vectordb.js.map +1 -1
  76. package/dist/vectordb/qdrant-vectordb.d.ts +28 -3
  77. package/dist/vectordb/qdrant-vectordb.d.ts.map +1 -1
  78. package/dist/vectordb/qdrant-vectordb.js +298 -73
  79. package/dist/vectordb/qdrant-vectordb.js.map +1 -1
  80. package/dist/vectordb/sparse/index.d.ts +2 -2
  81. package/dist/vectordb/sparse/index.d.ts.map +1 -1
  82. package/dist/vectordb/sparse/index.js +4 -4
  83. package/dist/vectordb/sparse/index.js.map +1 -1
  84. package/dist/vectordb/sparse/simple-bm25.d.ts +12 -2
  85. package/dist/vectordb/sparse/simple-bm25.d.ts.map +1 -1
  86. package/dist/vectordb/sparse/simple-bm25.js +82 -9
  87. package/dist/vectordb/sparse/simple-bm25.js.map +1 -1
  88. package/dist/vectordb/sparse/sparse-vector-generator.d.ts +7 -7
  89. package/dist/vectordb/sparse/sparse-vector-generator.d.ts.map +1 -1
  90. package/dist/vectordb/sparse/types.d.ts.map +1 -1
  91. package/dist/vectordb/types.d.ts +12 -12
  92. package/dist/vectordb/types.d.ts.map +1 -1
  93. package/dist/vectordb/types.js +1 -1
  94. package/dist/vectordb/types.js.map +1 -1
  95. package/dist/vectordb/zilliz-utils.d.ts +10 -10
  96. package/dist/vectordb/zilliz-utils.d.ts.map +1 -1
  97. package/dist/vectordb/zilliz-utils.js +16 -17
  98. package/dist/vectordb/zilliz-utils.js.map +1 -1
  99. package/package.json +14 -13
@@ -1,6 +1,42 @@
1
1
  "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
2
35
  Object.defineProperty(exports, "__esModule", { value: true });
3
36
  exports.QdrantVectorDatabase = void 0;
37
+ const fs = __importStar(require("node:fs/promises"));
38
+ const os = __importStar(require("node:os"));
39
+ const path = __importStar(require("node:path"));
4
40
  const js_client_grpc_1 = require("@qdrant/js-client-grpc");
5
41
  const base_vector_database_1 = require("./base/base-vector-database");
6
42
  const simple_bm25_1 = require("./sparse/simple-bm25");
@@ -42,13 +78,19 @@ class QdrantVectorDatabase extends base_vector_database_1.BaseVectorDatabase {
42
78
  // Parse address to extract host and port
43
79
  const url = new URL(address.startsWith('http') ? address : `http://${address}`);
44
80
  const host = url.hostname;
45
- const port = url.port ? parseInt(url.port) : 6334;
81
+ const port = url.port ? Number.parseInt(url.port) : 6334;
46
82
  this.client = new js_client_grpc_1.QdrantClient({
47
83
  host,
48
84
  port,
49
85
  apiKey: this.config.apiKey,
50
86
  timeout: this.config.timeout || 10000,
51
87
  });
88
+ // Suppress MaxListenersExceededWarning for gRPC connections
89
+ // Multiple operations on the same collection trigger multiple listeners
90
+ // This is normal for gRPC HTTP/2 multiplexing and not a memory leak
91
+ if (this.client && typeof this.client.setMaxListeners === 'function') {
92
+ this.client.setMaxListeners(50);
93
+ }
52
94
  console.log('[QdrantDB] ✅ Connected to Qdrant successfully');
53
95
  }
54
96
  /**
@@ -159,11 +201,11 @@ class QdrantVectorDatabase extends base_vector_database_1.BaseVectorDatabase {
159
201
  }
160
202
  catch (error) {
161
203
  // Handle gRPC NOT_FOUND error (code 5) or check error messages
162
- if (error.code === 5 || // gRPC NOT_FOUND status code
163
- error.rawMessage?.includes('not found') ||
164
- error.rawMessage?.includes('does not exist') ||
165
- error.message?.includes('not found') ||
166
- error.message?.includes('does not exist')) {
204
+ if (error.code === 5 // gRPC NOT_FOUND status code
205
+ || error.rawMessage?.includes('not found')
206
+ || error.rawMessage?.includes('does not exist')
207
+ || error.message?.includes('not found')
208
+ || error.message?.includes('does not exist')) {
167
209
  return false;
168
210
  }
169
211
  throw error;
@@ -184,11 +226,11 @@ class QdrantVectorDatabase extends base_vector_database_1.BaseVectorDatabase {
184
226
  await this.ensureInitialized();
185
227
  await this.ensureLoaded(collectionName);
186
228
  console.log('[QdrantDB] 📝 Inserting', documents.length, 'documents into:', collectionName);
187
- const points = documents.map(doc => ({
229
+ const points = documents.map((doc) => ({
188
230
  id: {
189
231
  pointIdOptions: {
190
- case: 'uuid',
191
- value: doc.id,
232
+ case: 'num',
233
+ value: this.convertToNumericId(doc.id),
192
234
  },
193
235
  },
194
236
  vectors: {
@@ -238,12 +280,12 @@ class QdrantVectorDatabase extends base_vector_database_1.BaseVectorDatabase {
238
280
  throw new Error('BM25 generator is not trained. The caller must explicitly train it via `getBM25Generator().learn(corpus)` before calling `insertHybrid`.');
239
281
  }
240
282
  // Generate sparse vectors for all documents
241
- const sparseVectors = documents.map(doc => this.bm25Generator.generate(doc.content));
283
+ const sparseVectors = documents.map((doc) => this.bm25Generator.generate(doc.content));
242
284
  const points = documents.map((doc, index) => ({
243
285
  id: {
244
286
  pointIdOptions: {
245
- case: 'uuid',
246
- value: doc.id,
287
+ case: 'num',
288
+ value: this.convertToNumericId(doc.id),
247
289
  },
248
290
  },
249
291
  vectors: {
@@ -297,12 +339,11 @@ class QdrantVectorDatabase extends base_vector_database_1.BaseVectorDatabase {
297
339
  console.log('[QdrantDB] 🔍 Searching in collection:', collectionName);
298
340
  const searchParams = {
299
341
  collectionName,
300
- vector: {
301
- name: this.DENSE_VECTOR_NAME,
302
- data: queryVector,
303
- },
342
+ vector: queryVector,
343
+ vectorName: this.DENSE_VECTOR_NAME,
304
344
  limit: BigInt(options?.topK || 10),
305
- withPayload: { enable: true },
345
+ // For gRPC API, omitting withPayload returns all payload fields
346
+ // Using withPayload causes "No PayloadSelector" error
306
347
  };
307
348
  // Apply filter if provided
308
349
  if (options?.filterExpr && options.filterExpr.trim().length > 0) {
@@ -331,8 +372,8 @@ class QdrantVectorDatabase extends base_vector_database_1.BaseVectorDatabase {
331
372
  await this.ensureLoaded(collectionName);
332
373
  console.log('[QdrantDB] 🔍 Performing hybrid search in collection:', collectionName);
333
374
  // Extract dense vector and query text from search requests by inspecting data types
334
- const denseQueryReq = searchRequests.find(req => Array.isArray(req.data));
335
- const textQueryReq = searchRequests.find(req => typeof req.data === 'string');
375
+ const denseQueryReq = searchRequests.find((req) => Array.isArray(req.data));
376
+ const textQueryReq = searchRequests.find((req) => typeof req.data === 'string');
336
377
  if (!denseQueryReq || !textQueryReq) {
337
378
  throw new Error('Hybrid search requires one dense vector request (number[] data) and one text request (string data).');
338
379
  }
@@ -347,50 +388,112 @@ class QdrantVectorDatabase extends base_vector_database_1.BaseVectorDatabase {
347
388
  : { indices: [], values: [] };
348
389
  console.log('[QdrantDB] 🔍 Dense query vector length:', denseQuery.length);
349
390
  console.log('[QdrantDB] 🔍 Sparse query terms:', sparseQuery.indices.length);
350
- // Qdrant query API with prefetch for hybrid search
391
+ console.log('[QdrantDB] 🔍 Sparse query indices:', sparseQuery.indices.slice(0, 5));
392
+ console.log('[QdrantDB] 🔍 Sparse query values:', sparseQuery.values.slice(0, 5));
393
+ // Validate sparse query has valid data
394
+ if (sparseQuery.indices.length === 0
395
+ || sparseQuery.values.length === 0
396
+ || sparseQuery.indices.length !== sparseQuery.values.length) {
397
+ console.warn('[QdrantDB] ⚠️ Invalid or empty sparse query. Falling back to dense-only search.');
398
+ console.warn(`[QdrantDB] ⚠️ indices.length=${sparseQuery.indices.length}, values.length=${sparseQuery.values.length}`);
399
+ return await this.search(collectionName, denseQuery, {
400
+ topK: options?.limit || 10,
401
+ filterExpr: options?.filterExpr,
402
+ });
403
+ }
404
+ // Validate all values are positive (Qdrant requirement for sparse vectors)
405
+ const hasNegativeValues = sparseQuery.values.some((v) => v <= 0);
406
+ if (hasNegativeValues) {
407
+ console.error('[QdrantDB] ❌ Sparse query contains non-positive values! This should not happen.');
408
+ console.error('[QdrantDB] ❌ Falling back to dense-only search.');
409
+ return await this.search(collectionName, denseQuery, {
410
+ topK: options?.limit || 10,
411
+ filterExpr: options?.filterExpr,
412
+ });
413
+ }
414
+ console.log('[QdrantDB] ✅ Sparse query validated, proceeding with hybrid search');
415
+ // Qdrant query API with nested prefetch for hybrid search
416
+ // Using RRF (Reciprocal Rank Fusion) to combine sparse and dense results
417
+ // Structure: prefetch contains one item with nested prefetch for dense/sparse, then fusion
418
+ //
419
+ // Note: Using plain objects that match the protobuf structure defined in:
420
+ // @qdrant/js-client-grpc/dist/types/proto/points_pb.d.ts
421
+ //
422
+ // QueryPoints structure:
423
+ // - collectionName: string
424
+ // - prefetch: PrefetchQuery[]
425
+ // - limit: bigint
426
+ //
427
+ // PrefetchQuery structure:
428
+ // - prefetch?: PrefetchQuery[] (nested prefetches)
429
+ // - query?: Query (query to apply)
430
+ // - using?: string (vector name)
431
+ // - limit?: bigint
432
+ //
433
+ // Query structure (oneof variant):
434
+ // - variant: { case: 'nearest', value: VectorInput } | { case: 'fusion', value: Fusion } | ...
435
+ //
436
+ // VectorInput structure (oneof variant):
437
+ // - variant: { case: 'dense', value: DenseVector } | { case: 'sparse', value: SparseVector } | ...
438
+ //
439
+ // DenseVector: { data: number[] }
440
+ // SparseVector: { indices: number[], values: number[] }
441
+ // Fusion enum: RRF = 0, DBSF = 1
351
442
  const queryParams = {
352
443
  collectionName,
353
444
  prefetch: [
354
445
  {
446
+ // Dense vector prefetch
355
447
  query: {
356
- query: {
357
- case: 'sparseIndices',
448
+ variant: {
449
+ case: 'nearest',
358
450
  value: {
359
- indices: {
360
- data: sparseQuery.indices.map(i => BigInt(i)),
361
- },
362
- values: {
363
- data: sparseQuery.values,
451
+ variant: {
452
+ case: 'dense',
453
+ value: {
454
+ data: denseQuery,
455
+ },
364
456
  },
365
457
  },
366
458
  },
367
459
  },
368
- using: this.SPARSE_VECTOR_NAME,
369
- limit: BigInt(textQueryReq.limit || 20),
460
+ using: this.DENSE_VECTOR_NAME,
461
+ limit: BigInt(denseQueryReq.limit || 25),
370
462
  },
371
463
  {
464
+ // Sparse vector prefetch
372
465
  query: {
373
- query: {
466
+ variant: {
374
467
  case: 'nearest',
375
468
  value: {
376
- vector: {
377
- data: denseQuery,
469
+ variant: {
470
+ case: 'sparse',
471
+ value: {
472
+ indices: sparseQuery.indices.map((i) => Number(i)),
473
+ values: sparseQuery.values,
474
+ },
378
475
  },
379
476
  },
380
477
  },
381
478
  },
382
- using: this.DENSE_VECTOR_NAME,
383
- limit: BigInt(denseQueryReq.limit || 20),
479
+ using: this.SPARSE_VECTOR_NAME,
480
+ limit: BigInt(textQueryReq.limit || 25),
384
481
  },
385
482
  ],
483
+ // Fusion query to combine results from prefetches
386
484
  query: {
387
- query: {
485
+ variant: {
388
486
  case: 'fusion',
389
- value: 1, // RRF = 1
487
+ value: 0, // Fusion.RRF = 0
390
488
  },
391
489
  },
392
490
  limit: BigInt(options?.limit || 10),
393
- withPayload: { enable: true },
491
+ withPayload: {
492
+ selectorOptions: {
493
+ case: 'enable',
494
+ value: true,
495
+ },
496
+ },
394
497
  };
395
498
  // Apply filter if provided
396
499
  if (options?.filterExpr && options.filterExpr.trim().length > 0) {
@@ -401,13 +504,13 @@ class QdrantVectorDatabase extends base_vector_database_1.BaseVectorDatabase {
401
504
  return results.result.map((result) => ({
402
505
  document: {
403
506
  id: result.id?.str || result.id?.num?.toString() || '',
404
- content: result.payload?.content?.stringValue || '',
507
+ content: result.payload?.content?.kind?.value || '',
405
508
  vector: [],
406
- relativePath: result.payload?.relativePath?.stringValue || '',
407
- startLine: Number(result.payload?.startLine?.integerValue || 0),
408
- endLine: Number(result.payload?.endLine?.integerValue || 0),
409
- fileExtension: result.payload?.fileExtension?.stringValue || '',
410
- metadata: JSON.parse(result.payload?.metadata?.stringValue || '{}'),
509
+ relativePath: result.payload?.relativePath?.kind?.value || '',
510
+ startLine: Number(result.payload?.startLine?.kind?.value || 0),
511
+ endLine: Number(result.payload?.endLine?.kind?.value || 0),
512
+ fileExtension: result.payload?.fileExtension?.kind?.value || '',
513
+ metadata: JSON.parse(result.payload?.metadata?.kind?.value || '{}'),
411
514
  },
412
515
  score: result.score,
413
516
  }));
@@ -426,10 +529,10 @@ class QdrantVectorDatabase extends base_vector_database_1.BaseVectorDatabase {
426
529
  pointsSelectorOneOf: {
427
530
  case: 'points',
428
531
  value: {
429
- ids: ids.map(id => ({
532
+ ids: ids.map((id) => ({
430
533
  pointIdOptions: {
431
- case: 'uuid',
432
- value: id,
534
+ case: 'num',
535
+ value: this.convertToNumericId(id),
433
536
  },
434
537
  })),
435
538
  },
@@ -445,14 +548,13 @@ class QdrantVectorDatabase extends base_vector_database_1.BaseVectorDatabase {
445
548
  await this.ensureInitialized();
446
549
  await this.ensureLoaded(collectionName);
447
550
  console.log('[QdrantDB] 📋 Querying collection:', collectionName);
551
+ // Build scroll parameters
552
+ // For gRPC API, omitting withPayload returns all payload fields
553
+ // Using withPayload: true causes "No PayloadSelector" error
448
554
  const scrollParams = {
449
555
  collectionName,
450
556
  limit: limit || 100,
451
- // Use outputFields to specify which payload fields to retrieve
452
- withPayload: outputFields.length > 0
453
- ? { include: { fields: outputFields } }
454
- : { enable: true },
455
- withVectors: { enable: false },
557
+ withVector: false,
456
558
  };
457
559
  // Parse filter expression if provided
458
560
  if (filter && filter.trim().length > 0) {
@@ -461,25 +563,59 @@ class QdrantVectorDatabase extends base_vector_database_1.BaseVectorDatabase {
461
563
  const results = await this.client.api('points').scroll(scrollParams);
462
564
  // Dynamically map results based on requested outputFields
463
565
  return results.result.map((point) => {
566
+ // Extract ID from protobuf structure
567
+ // In gRPC API, id can be: {pointIdOptions: {case: 'num', value: bigint}} or {case: 'str', value: string}
568
+ let idValue = '';
569
+ if (point.id?.pointIdOptions?.case === 'num') {
570
+ idValue = point.id.pointIdOptions.value.toString();
571
+ }
572
+ else if (point.id?.pointIdOptions?.case === 'str') {
573
+ idValue = point.id.pointIdOptions.value;
574
+ }
575
+ else if (point.id?.num !== undefined) {
576
+ // Fallback for backward compatibility
577
+ idValue = point.id.num.toString();
578
+ }
579
+ else if (point.id?.str !== undefined) {
580
+ idValue = point.id.str;
581
+ }
464
582
  const result = {
465
- id: point.id?.str || point.id?.num?.toString() || '',
583
+ id: idValue,
466
584
  };
467
585
  // If no specific fields requested, return all known fields
468
586
  if (outputFields.length === 0) {
469
- result.content = point.payload?.content?.stringValue;
470
- result.relativePath = point.payload?.relativePath?.stringValue;
471
- result.startLine = Number(point.payload?.startLine?.integerValue || 0);
472
- result.endLine = Number(point.payload?.endLine?.integerValue || 0);
473
- result.fileExtension = point.payload?.fileExtension?.stringValue;
474
- result.metadata = JSON.parse(point.payload?.metadata?.stringValue || '{}');
587
+ // In gRPC client, payload values are wrapped in {kind: {case: 'stringValue', value: '...'}}
588
+ result.content = point.payload?.content?.kind?.value || point.payload?.content?.stringValue;
589
+ result.relativePath = point.payload?.relativePath?.kind?.value || point.payload?.relativePath?.stringValue;
590
+ result.startLine = Number(point.payload?.startLine?.kind?.value || point.payload?.startLine?.integerValue || 0);
591
+ result.endLine = Number(point.payload?.endLine?.kind?.value || point.payload?.endLine?.integerValue || 0);
592
+ result.fileExtension = point.payload?.fileExtension?.kind?.value || point.payload?.fileExtension?.stringValue;
593
+ const metadataStr = point.payload?.metadata?.kind?.value || point.payload?.metadata?.stringValue;
594
+ result.metadata = JSON.parse(metadataStr || '{}');
475
595
  }
476
596
  else {
477
597
  // Only include requested fields
478
598
  for (const field of outputFields) {
479
599
  if (point.payload?.[field]) {
480
600
  const value = point.payload[field];
481
- // Handle different value types
482
- if (value.stringValue !== undefined) {
601
+ // Handle different value types based on protobuf structure
602
+ // In gRPC client, value is wrapped in {kind: {case: 'stringValue', value: '...'}}
603
+ if (value.kind?.case === 'stringValue') {
604
+ result[field] = field === 'metadata'
605
+ ? JSON.parse(value.kind.value || '{}')
606
+ : value.kind.value;
607
+ }
608
+ else if (value.kind?.case === 'integerValue') {
609
+ result[field] = Number(value.kind.value);
610
+ }
611
+ else if (value.kind?.case === 'doubleValue') {
612
+ result[field] = value.kind.value;
613
+ }
614
+ else if (value.kind?.case === 'boolValue') {
615
+ result[field] = value.kind.value;
616
+ }
617
+ // Fallback for direct value access (backward compatibility)
618
+ else if (value.stringValue !== undefined) {
483
619
  result[field] = field === 'metadata'
484
620
  ? JSON.parse(value.stringValue || '{}')
485
621
  : value.stringValue;
@@ -524,7 +660,7 @@ class QdrantVectorDatabase extends base_vector_database_1.BaseVectorDatabase {
524
660
  const field = match[1];
525
661
  const values = match[2]
526
662
  .split(',')
527
- .map(v => v.trim().replace(/['"]/g, ''));
663
+ .map((v) => v.trim().replace(/['"]/g, ''));
528
664
  // For "IN" operator, use a "must" clause with "any" match for better performance
529
665
  return {
530
666
  must: [{
@@ -536,13 +672,13 @@ class QdrantVectorDatabase extends base_vector_database_1.BaseVectorDatabase {
536
672
  matchValue: {
537
673
  case: 'any',
538
674
  value: {
539
- values: values.map(value => ({ kind: { case: 'stringValue', value } }))
540
- }
541
- }
542
- }
543
- }
544
- }
545
- }]
675
+ values: values.map((value) => ({ kind: { case: 'stringValue', value } })),
676
+ },
677
+ },
678
+ },
679
+ },
680
+ },
681
+ }],
546
682
  };
547
683
  }
548
684
  }
@@ -562,11 +698,11 @@ class QdrantVectorDatabase extends base_vector_database_1.BaseVectorDatabase {
562
698
  match: {
563
699
  matchValue: {
564
700
  case: 'keyword',
565
- value: value
566
- }
567
- }
568
- }
569
- }
701
+ value,
702
+ },
703
+ },
704
+ },
705
+ },
570
706
  },
571
707
  ],
572
708
  };
@@ -576,12 +712,101 @@ class QdrantVectorDatabase extends base_vector_database_1.BaseVectorDatabase {
576
712
  console.warn('[QdrantDB] ⚠️ Could not parse filter expression:', expr);
577
713
  return undefined;
578
714
  }
715
+ /**
716
+ * Convert chunk ID to numeric ID for Qdrant
717
+ * Extracts the hex hash from chunk_XXXXXXXXXXXXXXXX and converts to bigint
718
+ *
719
+ * Example: chunk_edf5558e3dbbf10b -> 17141645883789484811n
720
+ */
721
+ convertToNumericId(chunkId) {
722
+ // Extract hex portion from chunk_XXXXXXXXXXXXXXXX format
723
+ const hex = chunkId.replace('chunk_', '');
724
+ // Convert hex string to bigint (16 hex chars = 64 bits)
725
+ return BigInt(`0x${hex}`);
726
+ }
579
727
  /**
580
728
  * Get BM25 generator (for testing/debugging)
581
729
  */
582
730
  getBM25Generator() {
583
731
  return this.bm25Generator;
584
732
  }
733
+ /**
734
+ * Get BM25 model file path for a collection
735
+ */
736
+ getBM25ModelPath(collectionName) {
737
+ const homeDir = os.homedir();
738
+ const modelDir = path.join(homeDir, '.context', 'bm25');
739
+ return path.join(modelDir, `${collectionName}.json`);
740
+ }
741
+ /**
742
+ * Save BM25 model to disk
743
+ */
744
+ async saveBM25Model(collectionName) {
745
+ if (!this.bm25Generator.isTrained()) {
746
+ console.log('[QdrantDB] ⚠️ BM25 model is not trained, skipping save');
747
+ return;
748
+ }
749
+ try {
750
+ const modelPath = this.getBM25ModelPath(collectionName);
751
+ const modelDir = path.dirname(modelPath);
752
+ // Ensure directory exists
753
+ await fs.mkdir(modelDir, { recursive: true });
754
+ // Serialize and save BM25 model
755
+ const modelJson = this.bm25Generator.toJSON();
756
+ await fs.writeFile(modelPath, modelJson, 'utf-8');
757
+ console.log(`[QdrantDB] 💾 Saved BM25 model to: ${modelPath}`);
758
+ }
759
+ catch (error) {
760
+ console.error(`[QdrantDB] ❌ Failed to save BM25 model:`, error);
761
+ throw error;
762
+ }
763
+ }
764
+ /**
765
+ * Load BM25 model from disk
766
+ */
767
+ async loadBM25Model(collectionName) {
768
+ try {
769
+ const modelPath = this.getBM25ModelPath(collectionName);
770
+ // Check if model file exists
771
+ try {
772
+ await fs.access(modelPath);
773
+ }
774
+ catch {
775
+ console.log(`[QdrantDB] ℹ️ No saved BM25 model found at: ${modelPath}`);
776
+ return false;
777
+ }
778
+ // Load and deserialize BM25 model
779
+ const modelJson = await fs.readFile(modelPath, 'utf-8');
780
+ this.bm25Generator = simple_bm25_1.SimpleBM25.fromJSON(modelJson);
781
+ console.log(`[QdrantDB] 📂 Loaded BM25 model from: ${modelPath}`);
782
+ return true;
783
+ }
784
+ catch (error) {
785
+ console.error(`[QdrantDB] ❌ Failed to load BM25 model:`, error);
786
+ return false;
787
+ }
788
+ }
789
+ /**
790
+ * Delete saved BM25 model
791
+ */
792
+ async deleteBM25Model(collectionName) {
793
+ try {
794
+ const modelPath = this.getBM25ModelPath(collectionName);
795
+ // Check if model file exists
796
+ try {
797
+ await fs.access(modelPath);
798
+ }
799
+ catch {
800
+ // File doesn't exist, nothing to delete
801
+ return;
802
+ }
803
+ await fs.unlink(modelPath);
804
+ console.log(`[QdrantDB] 🗑️ Deleted BM25 model at: ${modelPath}`);
805
+ }
806
+ catch (error) {
807
+ console.warn(`[QdrantDB] ⚠️ Failed to delete BM25 model:`, error);
808
+ }
809
+ }
585
810
  }
586
811
  exports.QdrantVectorDatabase = QdrantVectorDatabase;
587
812
  //# sourceMappingURL=qdrant-vectordb.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"qdrant-vectordb.js","sourceRoot":"","sources":["../../src/vectordb/qdrant-vectordb.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"qdrant-vectordb.js","sourceRoot":"","sources":["../../src/vectordb/qdrant-vectordb.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- export * from './types';
2
- export * from './sparse-vector-generator';
3
1
  export * from './simple-bm25';
2
+ export * from './sparse-vector-generator';
3
+ export * from './types';
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/vectordb/sparse/index.ts"],"names":[],"mappings":"AACA,cAAc,SAAS,CAAC;AAGxB,cAAc,2BAA2B,CAAC;AAG1C,cAAc,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/vectordb/sparse/index.ts"],"names":[],"mappings":"AACA,cAAc,eAAe,CAAA;AAG7B,cAAc,2BAA2B,CAAA;AAGzC,cAAc,SAAS,CAAA"}