@zilliz/milvus2-sdk-node 2.3.5 → 2.4.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 (121) hide show
  1. package/README.md +154 -35
  2. package/dist/milvus/HttpClient.d.ts +165 -2
  3. package/dist/milvus/HttpClient.js +17 -3
  4. package/dist/milvus/HttpClient.js.map +1 -1
  5. package/dist/milvus/MilvusClient.d.ts +3 -3
  6. package/dist/milvus/MilvusClient.js +42 -8
  7. package/dist/milvus/MilvusClient.js.map +1 -1
  8. package/dist/milvus/const/client.d.ts +4 -3
  9. package/dist/milvus/const/client.js +4 -3
  10. package/dist/milvus/const/client.js.map +1 -1
  11. package/dist/milvus/const/defaults.d.ts +5 -4
  12. package/dist/milvus/const/defaults.js +14 -13
  13. package/dist/milvus/const/defaults.js.map +1 -1
  14. package/dist/milvus/const/error.js +1 -1
  15. package/dist/milvus/const/error.js.map +1 -1
  16. package/dist/milvus/const/milvus.d.ts +47 -8
  17. package/dist/milvus/const/milvus.js +42 -3
  18. package/dist/milvus/const/milvus.js.map +1 -1
  19. package/dist/milvus/grpc/BaseClient.d.ts +11 -9
  20. package/dist/milvus/grpc/BaseClient.js +59 -21
  21. package/dist/milvus/grpc/BaseClient.js.map +1 -1
  22. package/dist/milvus/grpc/Collection.d.ts +311 -366
  23. package/dist/milvus/grpc/Collection.js +355 -387
  24. package/dist/milvus/grpc/Collection.js.map +1 -1
  25. package/dist/milvus/grpc/Data.d.ts +244 -291
  26. package/dist/milvus/grpc/Data.js +402 -539
  27. package/dist/milvus/grpc/Data.js.map +1 -1
  28. package/dist/milvus/grpc/Database.d.ts +29 -41
  29. package/dist/milvus/grpc/Database.js +32 -44
  30. package/dist/milvus/grpc/Database.js.map +1 -1
  31. package/dist/milvus/grpc/GrpcClient.d.ts +34 -13
  32. package/dist/milvus/grpc/GrpcClient.js +80 -70
  33. package/dist/milvus/grpc/GrpcClient.js.map +1 -1
  34. package/dist/milvus/grpc/MilvusIndex.d.ts +127 -67
  35. package/dist/milvus/grpc/MilvusIndex.js +166 -70
  36. package/dist/milvus/grpc/MilvusIndex.js.map +1 -1
  37. package/dist/milvus/grpc/Partition.d.ts +78 -113
  38. package/dist/milvus/grpc/Partition.js +109 -119
  39. package/dist/milvus/grpc/Partition.js.map +1 -1
  40. package/dist/milvus/grpc/Resource.d.ts +63 -92
  41. package/dist/milvus/grpc/Resource.js +69 -98
  42. package/dist/milvus/grpc/Resource.js.map +1 -1
  43. package/dist/milvus/grpc/User.d.ts +263 -295
  44. package/dist/milvus/grpc/User.js +287 -310
  45. package/dist/milvus/grpc/User.js.map +1 -1
  46. package/dist/milvus/http/Alias.d.ts +37 -0
  47. package/dist/milvus/http/Alias.js +62 -0
  48. package/dist/milvus/http/Alias.js.map +1 -0
  49. package/dist/milvus/http/Collection.d.ts +15 -1
  50. package/dist/milvus/http/Collection.js +55 -9
  51. package/dist/milvus/http/Collection.js.map +1 -1
  52. package/dist/milvus/http/Import.d.ts +33 -0
  53. package/dist/milvus/http/Import.js +48 -0
  54. package/dist/milvus/http/Import.js.map +1 -0
  55. package/dist/milvus/http/MilvusIndex.d.ts +35 -0
  56. package/dist/milvus/http/MilvusIndex.js +55 -0
  57. package/dist/milvus/http/MilvusIndex.js.map +1 -0
  58. package/dist/milvus/http/Partition.d.ts +41 -0
  59. package/dist/milvus/http/Partition.js +76 -0
  60. package/dist/milvus/http/Partition.js.map +1 -0
  61. package/dist/milvus/http/Role.d.ts +39 -0
  62. package/dist/milvus/http/Role.js +69 -0
  63. package/dist/milvus/http/Role.js.map +1 -0
  64. package/dist/milvus/http/User.d.ts +41 -0
  65. package/dist/milvus/http/User.js +76 -0
  66. package/dist/milvus/http/User.js.map +1 -0
  67. package/dist/milvus/http/Vector.d.ts +5 -3
  68. package/dist/milvus/http/Vector.js +10 -7
  69. package/dist/milvus/http/Vector.js.map +1 -1
  70. package/dist/milvus/http/index.d.ts +6 -0
  71. package/dist/milvus/http/index.js +6 -0
  72. package/dist/milvus/http/index.js.map +1 -1
  73. package/dist/milvus/index.d.ts +0 -1
  74. package/dist/milvus/index.js +0 -1
  75. package/dist/milvus/index.js.map +1 -1
  76. package/dist/milvus/types/Client.d.ts +5 -0
  77. package/dist/milvus/types/Collection.d.ts +34 -9
  78. package/dist/milvus/types/Common.d.ts +1 -3
  79. package/dist/milvus/types/Data.d.ts +79 -23
  80. package/dist/milvus/types/Data.js +1 -0
  81. package/dist/milvus/types/Data.js.map +1 -1
  82. package/dist/milvus/types/HighLevel.d.ts +6 -3
  83. package/dist/milvus/types/Http.d.ts +191 -9
  84. package/dist/milvus/types/MilvusIndex.d.ts +17 -3
  85. package/dist/milvus/utils/Bytes.d.ts +84 -0
  86. package/dist/milvus/utils/Bytes.js +261 -0
  87. package/dist/milvus/utils/Bytes.js.map +1 -0
  88. package/dist/milvus/utils/Format.d.ts +126 -68
  89. package/dist/milvus/utils/Format.js +375 -94
  90. package/dist/milvus/utils/Format.js.map +1 -1
  91. package/dist/milvus/utils/Function.d.ts +4 -2
  92. package/dist/milvus/utils/Function.js +58 -25
  93. package/dist/milvus/utils/Function.js.map +1 -1
  94. package/dist/milvus/utils/Grpc.d.ts +3 -2
  95. package/dist/milvus/utils/Grpc.js +65 -98
  96. package/dist/milvus/utils/Grpc.js.map +1 -1
  97. package/dist/milvus/utils/Validate.d.ts +18 -3
  98. package/dist/milvus/utils/Validate.js +38 -12
  99. package/dist/milvus/utils/Validate.js.map +1 -1
  100. package/dist/milvus/utils/index.d.ts +1 -1
  101. package/dist/milvus/utils/index.js +1 -1
  102. package/dist/milvus/utils/index.js.map +1 -1
  103. package/dist/proto/proto/common.proto +26 -1
  104. package/dist/proto/proto/google/protobuf/descriptor.proto +90 -28
  105. package/dist/proto/proto/milvus.proto +168 -2
  106. package/dist/proto/proto/rg.proto +28 -0
  107. package/dist/proto/proto/schema.proto +34 -0
  108. package/dist/sdk.json +1 -1
  109. package/package.json +8 -5
  110. package/dist/milvus/OrmClient.d.ts +0 -19
  111. package/dist/milvus/OrmClient.js +0 -51
  112. package/dist/milvus/OrmClient.js.map +0 -1
  113. package/dist/milvus/orm/Collection.d.ts +0 -43
  114. package/dist/milvus/orm/Collection.js +0 -165
  115. package/dist/milvus/orm/Collection.js.map +0 -1
  116. package/dist/milvus/orm/index.d.ts +0 -1
  117. package/dist/milvus/orm/index.js +0 -18
  118. package/dist/milvus/orm/index.js.map +0 -1
  119. package/dist/milvus/utils/Blob.d.ts +0 -4
  120. package/dist/milvus/utils/Blob.js +0 -18
  121. package/dist/milvus/utils/Blob.js.map +0 -1
@@ -11,13 +11,13 @@ var __rest = (this && this.__rest) || function (s, e) {
11
11
  return t;
12
12
  };
13
13
  Object.defineProperty(exports, "__esModule", { value: true });
14
- exports.buildFieldData = exports.getAuthString = exports.buildFieldDataMap = exports.buildDynamicRow = exports.formatDescribedCol = exports.formatCollectionSchema = exports.cloneObj = exports.convertToDataType = exports.extractMethodName = exports.parseTimeToken = exports.assignTypeParams = exports.formatAddress = exports.stringToBase64 = exports.datetimeToHybrids = exports.unixtimeToHybridts = exports.hybridtsToUnixtime = exports.checkTimeParam = exports.formatNumberPrecision = exports.parseToKeyValue = exports.formatKeyValueData = void 0;
14
+ exports.formatSearchVector = exports.formatSearchResult = exports.buildSearchRequest = exports.convertRerankParams = exports.WeightedRanker = exports.RRFRanker = exports.buildSearchParams = exports.buildFieldData = exports.getAuthString = exports.buildFieldDataMap = exports.buildDynamicRow = exports.formatDescribedCol = exports.formatCollectionSchema = exports.cloneObj = exports.convertToDataType = exports.extractMethodName = exports.parseTimeToken = exports.assignTypeParams = exports.formatAddress = exports.stringToBase64 = exports.datetimeToHybrids = exports.unixtimeToHybridts = exports.hybridtsToUnixtime = exports.checkTimeParam = exports.formatNumberPrecision = exports.parseToKeyValue = exports.formatKeyValueData = void 0;
15
15
  const __1 = require("../");
16
16
  /**
17
- * parse [{key:"row_count",value:4}] to {row_count:4}
18
- * @param data key value pair array
19
- * @param keys all keys in data
20
- * @returns {key:value}
17
+ * Formats key-value data based on the provided keys.
18
+ * @param {KeyValuePair[]} data - The array of key-value pairs.
19
+ * @param {string[]} keys - The keys to include in the formatted result.
20
+ * @returns {Object} - The formatted key-value data as an object.
21
21
  */
22
22
  const formatKeyValueData = (data, keys) => {
23
23
  const result = {};
@@ -60,6 +60,12 @@ const formatNumberPrecision = (number, precision) => {
60
60
  exports.formatNumberPrecision = formatNumberPrecision;
61
61
  const LOGICAL_BITS = BigInt(18);
62
62
  // const LOGICAL_BITS_MASK = (1 << LOGICAL_BITS) - 1;
63
+ /**
64
+ * Checks if the given time parameter is valid.
65
+ *
66
+ * @param ts - The time parameter to be checked.
67
+ * @returns A boolean value indicating whether the time parameter is valid or not.
68
+ */
63
69
  const checkTimeParam = (ts) => {
64
70
  switch (typeof ts) {
65
71
  case 'bigint':
@@ -72,26 +78,10 @@ const checkTimeParam = (ts) => {
72
78
  };
73
79
  exports.checkTimeParam = checkTimeParam;
74
80
  /**
75
- * Convert a hybrid timestamp to UNIX Epoch time ignoring the logic part.
76
- *
77
- * @param data
78
- * | Property | Type | Description |
79
- * | :---------------- | :---- | :------------------------------- |
80
- * | hybridts | String or BigInt | The known hybrid timestamp to convert to UNIX Epoch time. Non-negative interger range from 0 to 18446744073709551615. |
81
- *
82
- *
83
- *
84
- * @returns
85
- * | Property | Description |
86
- * | :-----------| :------------------------------- |
87
- * | unixtime as string | The Unix Epoch time is the number of seconds that have elapsed since January 1, 1970 (midnight UTC/GMT). |
88
- *
89
- *
90
- * #### Example
91
- *
92
- * ```
93
- * const res = hybridtsToUnixtime("429642767925248000");
94
- * ```
81
+ * Converts a hybrid timestamp to Unix time.
82
+ * @param hybridts - The hybrid timestamp to convert.
83
+ * @returns The Unix time representation of the hybrid timestamp.
84
+ * @throws An error if the hybridts parameter fails the time parameter check.
95
85
  */
96
86
  const hybridtsToUnixtime = (hybridts) => {
97
87
  if (!(0, exports.checkTimeParam)(hybridts)) {
@@ -103,26 +93,10 @@ const hybridtsToUnixtime = (hybridts) => {
103
93
  };
104
94
  exports.hybridtsToUnixtime = hybridtsToUnixtime;
105
95
  /**
106
- * Generate a hybrid timestamp based on Unix Epoch time, timedelta and incremental time internval.
107
- *
108
- * @param data
109
- * | Property | Type | Description |
110
- * | :---------------- | :---- | :------------------------------- |
111
- * | unixtime | string or bigint | The known Unix Epoch time used to generate a hybrid timestamp. The Unix Epoch time is the number of seconds that have elapsed since January 1, 1970 (midnight UTC/GMT). |
112
- *
113
- *
114
- *
115
- * @returns
116
- * | Property | Type | Description |
117
- * | :-----------| :--- | :------------------------------- |
118
- * | Hybrid timetamp | String | Hybrid timetamp is a non-negative interger range from 0 to 18446744073709551615. |
119
- *
120
- *
121
- * #### Example
122
- *
123
- * ```
124
- * const res = unixtimeToHybridts("429642767925248000");
125
- * ```
96
+ * Converts a Unix timestamp to a hybrid timestamp.
97
+ * @param unixtime - The Unix timestamp to convert.
98
+ * @returns The hybrid timestamp as a string.
99
+ * @throws An error if the unixtime parameter fails the check.
126
100
  */
127
101
  const unixtimeToHybridts = (unixtime) => {
128
102
  if (!(0, exports.checkTimeParam)(unixtime)) {
@@ -134,26 +108,10 @@ const unixtimeToHybridts = (unixtime) => {
134
108
  };
135
109
  exports.unixtimeToHybridts = unixtimeToHybridts;
136
110
  /**
137
- * Generate a hybrid timestamp based on datetime。
138
- *
139
- * @param data
140
- * | Property | Type | Description |
141
- * | :---------------- | :---- | :------------------------------- |
142
- * | datetime | Date | The known datetime used to generate a hybrid timestamp. |
143
- *
144
- *
145
- *
146
- * @returns
147
- * | Property | Type | Description |
148
- * | :-----------| :--- | :------------------------------- |
149
- * | Hybrid timetamp | String | Hybrid timetamp is a non-negative interger range from 0 to 18446744073709551615. |
150
- *
151
- *
152
- * #### Example
153
- *
154
- * ```
155
- * const res = datetimeToHybrids("429642767925248000");
156
- * ```
111
+ * Converts a JavaScript Date object to a hybridts timestamp.
112
+ * @param datetime - The JavaScript Date object to be converted.
113
+ * @returns The hybridts timestamp.
114
+ * @throws An error if the input is not a valid Date object.
157
115
  */
158
116
  const datetimeToHybrids = (datetime) => {
159
117
  if (!(datetime instanceof Date)) {
@@ -282,7 +240,11 @@ exports.cloneObj = cloneObj;
282
240
  * @returns {Object} The formatted request payload.
283
241
  */
284
242
  const formatCollectionSchema = (data, fieldSchemaType) => {
285
- const { fields, collection_name, description, enable_dynamic_field, enableDynamicField, partition_key_field, } = data;
243
+ const { collection_name, description, enable_dynamic_field, enableDynamicField, partition_key_field, } = data;
244
+ let fields = data.fields;
245
+ if (data.schema) {
246
+ fields = data.schema;
247
+ }
286
248
  const payload = {
287
249
  name: collection_name,
288
250
  description: description || '',
@@ -291,11 +253,11 @@ const formatCollectionSchema = (data, fieldSchemaType) => {
291
253
  // Assign the typeParams property to the result of parseToKeyValue(type_params).
292
254
  const _a = (0, exports.assignTypeParams)(field), { type_params } = _a, rest = __rest(_a, ["type_params"]);
293
255
  const dataType = (0, exports.convertToDataType)(field.data_type);
294
- const createObj = Object.assign(Object.assign({}, rest), { typeParams: (0, exports.parseToKeyValue)(type_params), dataType: (0, exports.convertToDataType)(field.data_type), isPrimaryKey: !!field.is_primary_key, isPartitionKey: !!field.is_partition_key || field.name === partition_key_field });
256
+ const createObj = Object.assign(Object.assign({}, rest), { typeParams: (0, exports.parseToKeyValue)(type_params), dataType, isPrimaryKey: !!field.is_primary_key, isPartitionKey: !!field.is_partition_key || field.name === partition_key_field });
295
257
  // if element type exist and
296
258
  if (dataType === __1.DataType.Array &&
297
259
  typeof field.element_type !== 'undefined') {
298
- createObj.elementType = field.element_type;
260
+ createObj.elementType = (0, exports.convertToDataType)(field.element_type);
299
261
  }
300
262
  if (typeof field.default_value !== 'undefined') {
301
263
  const dataKey = (0, __1.getDataKey)(createObj.dataType, true);
@@ -359,7 +321,7 @@ exports.buildDynamicRow = buildDynamicRow;
359
321
  * If the field is a vector, split the data into chunks of the appropriate size.
360
322
  * If the field is a scalar, decode the JSON/array data if necessary.
361
323
  */
362
- const buildFieldDataMap = (fields_data) => {
324
+ const buildFieldDataMap = (fields_data, transformers) => {
363
325
  const fieldsDataMap = new Map();
364
326
  fields_data.forEach((item, i) => {
365
327
  var _a;
@@ -367,37 +329,71 @@ const buildFieldDataMap = (fields_data) => {
367
329
  let field_data;
368
330
  // parse vector data
369
331
  if (item.field === 'vectors') {
370
- const key = item.vectors.data;
371
- const vectorValue = key === 'float_vector'
372
- ? item.vectors[key].data
373
- : item.vectors[key].toJSON().data;
374
- // if binary vector , need use dim / 8 to split vector data
375
- const dim = ((_a = item.vectors) === null || _a === void 0 ? void 0 : _a.data) === 'float_vector'
376
- ? Number(item.vectors.dim)
377
- : Number(item.vectors.dim) / 8;
378
- field_data = [];
379
- // parse number[] to number[][] by dim
380
- vectorValue.forEach((v, i) => {
381
- const index = Math.floor(i / dim);
382
- if (!field_data[index]) {
383
- field_data[index] = [];
384
- }
385
- field_data[index].push(v);
386
- });
332
+ const dataKey = item.vectors.data;
333
+ switch (dataKey) {
334
+ case 'float_vector':
335
+ case 'binary_vector':
336
+ const vectorValue = dataKey === 'float_vector'
337
+ ? item.vectors[dataKey].data
338
+ : item.vectors[dataKey].toJSON().data;
339
+ // if binary vector , need use dim / 8 to split vector data
340
+ const dim = ((_a = item.vectors) === null || _a === void 0 ? void 0 : _a.data) === 'float_vector'
341
+ ? Number(item.vectors.dim)
342
+ : Number(item.vectors.dim) / 8;
343
+ field_data = [];
344
+ // parse number[] to number[][] by dim
345
+ vectorValue.forEach((v, i) => {
346
+ const index = Math.floor(i / dim);
347
+ if (!field_data[index]) {
348
+ field_data[index] = [];
349
+ }
350
+ field_data[index].push(v);
351
+ });
352
+ break;
353
+ case 'float16_vector':
354
+ case 'bfloat16_vector':
355
+ field_data = [];
356
+ const f16Dim = Number(item.vectors.dim) * 2; // float16 is 2 bytes, so we need to multiply dim with 2 = one element length
357
+ const f16Bytes = item.vectors[dataKey];
358
+ // split buffer data to float16 vector(bytes)
359
+ for (let i = 0; i < f16Bytes.byteLength; i += f16Dim) {
360
+ const slice = f16Bytes.slice(i, i + f16Dim);
361
+ const isFloat16 = dataKey === 'float16_vector';
362
+ let dataType;
363
+ dataType = isFloat16
364
+ ? __1.DataType.Float16Vector
365
+ : __1.DataType.BFloat16Vector;
366
+ const localTransformers = transformers || {
367
+ [__1.DataType.BFloat16Vector]: __1.bf16BytesToF32Array,
368
+ [__1.DataType.Float16Vector]: __1.f16BytesToF32Array,
369
+ };
370
+ field_data.push(localTransformers[dataType](slice));
371
+ }
372
+ break;
373
+ case 'sparse_float_vector':
374
+ const sparseVectorValue = item.vectors[dataKey].contents;
375
+ field_data = [];
376
+ sparseVectorValue.forEach((buffer, i) => {
377
+ field_data[i] = (0, __1.bytesToSparseRow)(buffer);
378
+ });
379
+ break;
380
+ default:
381
+ break;
382
+ }
387
383
  }
388
384
  else {
389
385
  // parse scalar data
390
- const key = item.scalars.data;
391
- field_data = item.scalars[key].data;
386
+ const dataKey = item.scalars.data;
387
+ field_data = item.scalars[dataKey].data;
392
388
  // we need to handle array element specifically here
393
- if (key === 'array_data') {
389
+ if (dataKey === 'array_data') {
394
390
  field_data = field_data.map((f) => {
395
- const key = f.data;
396
- return key ? f[key].data : [];
391
+ const dataKey = f.data;
392
+ return dataKey ? f[dataKey].data : [];
397
393
  });
398
394
  }
399
395
  // decode json
400
- switch (key) {
396
+ switch (dataKey) {
401
397
  case 'json_data':
402
398
  field_data.forEach((buffer, i) => {
403
399
  // console.log(JSON.parse(buffer.toString()));
@@ -441,20 +437,305 @@ exports.getAuthString = getAuthString;
441
437
  * @param {Field} column - The column information.
442
438
  * @returns {FieldData} The field data for the row and column.
443
439
  */
444
- const buildFieldData = (rowData, field) => {
440
+ const buildFieldData = (rowData, field, transformers) => {
445
441
  const { type, elementType, name } = field;
442
+ const isFloat32 = Array.isArray(rowData[name]);
446
443
  switch (__1.DataTypeMap[type]) {
447
444
  case __1.DataType.BinaryVector:
448
445
  case __1.DataType.FloatVector:
449
446
  return rowData[name];
447
+ case __1.DataType.BFloat16Vector:
448
+ const bf16Transformer = (transformers === null || transformers === void 0 ? void 0 : transformers[__1.DataType.BFloat16Vector]) || __1.f32ArrayToBf16Bytes;
449
+ return isFloat32
450
+ ? bf16Transformer(rowData[name])
451
+ : rowData[name];
452
+ case __1.DataType.Float16Vector:
453
+ const f16Transformer = (transformers === null || transformers === void 0 ? void 0 : transformers[__1.DataType.Float16Vector]) || __1.f32ArrayToF16Bytes;
454
+ return isFloat32
455
+ ? f16Transformer(rowData[name])
456
+ : rowData[name];
450
457
  case __1.DataType.JSON:
451
458
  return Buffer.from(JSON.stringify(rowData[name] || {}));
452
459
  case __1.DataType.Array:
453
460
  const elementField = Object.assign(Object.assign({}, field), { type: elementType });
454
- return (0, exports.buildFieldData)(rowData, elementField);
461
+ return (0, exports.buildFieldData)(rowData, elementField, transformers);
455
462
  default:
456
463
  return rowData[name];
457
464
  }
458
465
  };
459
466
  exports.buildFieldData = buildFieldData;
467
+ /**
468
+ * Builds search parameters based on the provided data.
469
+ * @param data - The data object containing search parameters.
470
+ * @returns The search parameters in key-value format.
471
+ */
472
+ const buildSearchParams = (data, anns_field) => {
473
+ var _a, _b, _c, _d, _e, _f;
474
+ // create search params
475
+ const search_params = {
476
+ anns_field: data.anns_field || anns_field,
477
+ params: JSON.stringify((_a = data.params) !== null && _a !== void 0 ? _a : {}),
478
+ topk: (_c = (_b = data.limit) !== null && _b !== void 0 ? _b : data.topk) !== null && _c !== void 0 ? _c : __1.DEFAULT_TOPK,
479
+ offset: (_d = data.offset) !== null && _d !== void 0 ? _d : 0,
480
+ metric_type: (_e = data.metric_type) !== null && _e !== void 0 ? _e : '',
481
+ ignore_growing: (_f = data.ignore_growing) !== null && _f !== void 0 ? _f : false,
482
+ };
483
+ // if group_by_field is set, add it to the search params
484
+ if (data.group_by_field) {
485
+ search_params.group_by_field = data.group_by_field;
486
+ }
487
+ return search_params;
488
+ };
489
+ exports.buildSearchParams = buildSearchParams;
490
+ /**
491
+ * Creates a RRFRanker object with the specified value of k.
492
+ * @param k - The value of k used in the RRFRanker strategy.
493
+ * @returns An object representing the RRFRanker strategy with the specified value of k.
494
+ */
495
+ const RRFRanker = (k = 60) => {
496
+ return {
497
+ strategy: __1.RANKER_TYPE.RRF,
498
+ params: {
499
+ k,
500
+ },
501
+ };
502
+ };
503
+ exports.RRFRanker = RRFRanker;
504
+ /**
505
+ * Creates a weighted ranker object.
506
+ * @param weights - An array of numbers representing the weights.
507
+ * @returns The weighted ranker object.
508
+ */
509
+ const WeightedRanker = (weights) => {
510
+ return {
511
+ strategy: __1.RANKER_TYPE.WEIGHTED,
512
+ params: {
513
+ weights,
514
+ },
515
+ };
516
+ };
517
+ exports.WeightedRanker = WeightedRanker;
518
+ /**
519
+ * Converts the rerank parameters object to a format suitable for API requests.
520
+ * @param rerank - The rerank parameters object.
521
+ * @returns The converted rerank parameters object.
522
+ */
523
+ const convertRerankParams = (rerank) => {
524
+ const r = (0, exports.cloneObj)(rerank);
525
+ r.params = JSON.stringify(r.params);
526
+ return r;
527
+ };
528
+ exports.convertRerankParams = convertRerankParams;
529
+ /**
530
+ * This method is used to build search request for a given data.
531
+ * It first fetches the collection info and then constructs the search request based on the data type.
532
+ * It also creates search vectors and a placeholder group for the search.
533
+ *
534
+ * @param {SearchReq | SearchSimpleReq | HybridSearchReq} data - The data for which to build the search request.
535
+ * @param {DescribeCollectionResponse} collectionInfo - The collection information.
536
+ * @param {Root} milvusProto - The milvus protocol object.
537
+ * @returns {Object} An object containing the search requests and search vectors.
538
+ * @returns {Object} return.params - The search requests used in the operation.
539
+ * @returns {string} return.params.collection_name - The name of the collection.
540
+ * @returns {string[]} return.params.partition_names - The partition names.
541
+ * @returns {string[]} return.params.output_fields - The output fields.
542
+ * @returns {number} return.params.nq - The number of query vectors.
543
+ * @returns {string} return.params.dsl - The domain specific language.
544
+ * @returns {string} return.params.dsl_type - The type of the domain specific language.
545
+ * @returns {Uint8Array} return.params.placeholder_group - The placeholder group.
546
+ * @returns {Object} return.params.search_params - The search parameters.
547
+ * @returns {string} return.params.consistency_level - The consistency level.
548
+ * @returns {Number[][]} return.searchVectors - The search vectors used in the operation.
549
+ * @returns {number} return.round_decimal - The score precision.
550
+ */
551
+ const buildSearchRequest = (data, collectionInfo, milvusProto) => {
552
+ var _a, _b, _c, _d, _e, _f, _g, _h;
553
+ // type cast
554
+ const searchReq = data;
555
+ const searchHybridReq = data;
556
+ const searchSimpleReq = data;
557
+ // Initialize requests array
558
+ const requests = [];
559
+ // detect if the request is hybrid search request
560
+ const isHybridSearch = !!(searchHybridReq.data &&
561
+ searchHybridReq.data.length &&
562
+ typeof searchHybridReq.data[0] === 'object' &&
563
+ searchHybridReq.data[0].anns_field);
564
+ // output fields(reference fields)
565
+ const default_output_fields = [];
566
+ // Iterate through collection fields, create search request
567
+ for (let i = 0; i < collectionInfo.schema.fields.length; i++) {
568
+ const field = collectionInfo.schema.fields[i];
569
+ const { name, dataType } = field;
570
+ // if field type is vector, build the request
571
+ if ((0, __1.isVectorType)(dataType)) {
572
+ let req = data;
573
+ if (isHybridSearch) {
574
+ const singleReq = searchHybridReq.data.find(d => d.anns_field === name);
575
+ // if it is hybrid search and no request target is not found, skip
576
+ if (!singleReq) {
577
+ continue;
578
+ }
579
+ // merge single request with hybrid request
580
+ req = Object.assign((0, exports.cloneObj)(data), singleReq);
581
+ }
582
+ else {
583
+ // if it is not hybrid search, and we have built one request, skip
584
+ const skip = requests.length === 1 ||
585
+ (typeof req.anns_field !== 'undefined' && req.anns_field !== name);
586
+ if (skip) {
587
+ continue;
588
+ }
589
+ }
590
+ // get search vectors
591
+ let searchingVector = isHybridSearch
592
+ ? req.data
593
+ : searchReq.vectors ||
594
+ searchSimpleReq.vectors ||
595
+ searchSimpleReq.vector ||
596
+ searchSimpleReq.data;
597
+ // format searching vector
598
+ searchingVector = (0, exports.formatSearchVector)(searchingVector, field.dataType);
599
+ // create search request
600
+ requests.push({
601
+ collection_name: req.collection_name,
602
+ partition_names: req.partition_names || [],
603
+ output_fields: req.output_fields || default_output_fields,
604
+ nq: searchReq.nq || searchingVector.length,
605
+ dsl: searchReq.expr || searchSimpleReq.filter || '',
606
+ dsl_type: __1.DslType.BoolExprV1,
607
+ placeholder_group: (0, __1.buildPlaceholderGroupBytes)(milvusProto, searchingVector, field.dataType),
608
+ search_params: (0, exports.parseToKeyValue)(searchReq.search_params || (0, exports.buildSearchParams)(req, name)),
609
+ consistency_level: req.consistency_level || collectionInfo.consistency_level,
610
+ });
611
+ }
612
+ else {
613
+ // if field is not vector, add it to output fields
614
+ default_output_fields.push(name);
615
+ }
616
+ }
617
+ /**
618
+ * It will decide the score precision.
619
+ * If round_decimal is 3, need return like 3.142
620
+ * And if Milvus return like 3.142, Node will add more number after this like 3.142000047683716.
621
+ * So the score need to slice by round_decimal
622
+ */
623
+ const round_decimal = (_d = (_b = (_a = searchReq.search_params) === null || _a === void 0 ? void 0 : _a.round_decimal) !== null && _b !== void 0 ? _b : (_c = searchSimpleReq.params) === null || _c === void 0 ? void 0 : _c.round_decimal) !== null && _d !== void 0 ? _d : -1;
624
+ return {
625
+ isHybridSearch,
626
+ request: isHybridSearch
627
+ ? {
628
+ collection_name: data.collection_name,
629
+ partition_names: data.partition_names,
630
+ requests: requests,
631
+ rank_params: [
632
+ ...(0, exports.parseToKeyValue)((0, exports.convertRerankParams)(searchHybridReq.rerank || (0, exports.RRFRanker)())),
633
+ { key: 'round_decimal', value: round_decimal },
634
+ {
635
+ key: 'limit',
636
+ value: (_f = (_e = searchSimpleReq.limit) !== null && _e !== void 0 ? _e : searchSimpleReq.topk) !== null && _f !== void 0 ? _f : __1.DEFAULT_TOPK,
637
+ },
638
+ ],
639
+ output_fields: (_g = requests[0]) === null || _g === void 0 ? void 0 : _g.output_fields,
640
+ consistency_level: (_h = requests[0]) === null || _h === void 0 ? void 0 : _h.consistency_level,
641
+ }
642
+ : requests[0],
643
+ nq: requests[0].nq,
644
+ round_decimal,
645
+ };
646
+ };
647
+ exports.buildSearchRequest = buildSearchRequest;
648
+ /**
649
+ * Formats the search results returned by Milvus into row data for easier use.
650
+ *
651
+ * @param {SearchRes} searchRes - The search results returned by Milvus.
652
+ * @param {Object} options - The options for formatting the search results.
653
+ * @param {number} options.round_decimal - The number of decimal places to which to round the scores.
654
+ *
655
+ * @returns {any[]} The formatted search results.
656
+ *
657
+ */
658
+ const formatSearchResult = (searchRes, options) => {
659
+ var _a;
660
+ const { round_decimal } = options;
661
+ // build final results array
662
+ const results = [];
663
+ const { topks, scores, fields_data, ids } = searchRes.results;
664
+ // build fields data map
665
+ const fieldsDataMap = (0, exports.buildFieldDataMap)(fields_data, options.transformers);
666
+ // build output name array
667
+ const output_fields = [
668
+ 'id',
669
+ ...(!!((_a = searchRes.results.output_fields) === null || _a === void 0 ? void 0 : _a.length)
670
+ ? searchRes.results.output_fields
671
+ : fields_data.map(f => f.field_name)),
672
+ ];
673
+ // vector id support int / str id.
674
+ const idData = ids ? ids[ids.id_field].data : {};
675
+ // add id column
676
+ fieldsDataMap.set('id', idData);
677
+ // fieldsDataMap.set('score', scores); TODO: fieldDataMap to support formatter
678
+ /**
679
+ * This code block formats the search results returned by Milvus into row data for easier use.
680
+ * Milvus supports multiple queries to search and returns all columns data, so we need to splice the data for each search result using the `topk` variable.
681
+ * The `topk` variable is the key we use to splice data for every search result.
682
+ * The `scores` array is spliced using the `topk` value, and the resulting scores are formatted to the specified precision using the `formatNumberPrecision` function. The resulting row data is then pushed to the `results` array.
683
+ */
684
+ topks.forEach((v, index) => {
685
+ const topk = Number(v);
686
+ scores.splice(0, topk).forEach((score, scoreIndex) => {
687
+ // get correct index
688
+ const i = index === 0 ? scoreIndex : scoreIndex + topk * index;
689
+ // fix round_decimal
690
+ const fixedScore = typeof round_decimal === 'undefined' || round_decimal === -1
691
+ ? score
692
+ : (0, exports.formatNumberPrecision)(score, round_decimal);
693
+ // init result object
694
+ const result = { score: fixedScore };
695
+ // build result,
696
+ output_fields.forEach(field_name => {
697
+ // Check if the field_name exists in the fieldsDataMap
698
+ const isFixedSchema = fieldsDataMap.has(field_name);
699
+ // Get the data for the field_name from the fieldsDataMap
700
+ // If the field_name is not in the fieldsDataMap, use the DEFAULT_DYNAMIC_FIELD
701
+ const data = fieldsDataMap.get(isFixedSchema ? field_name : __1.DEFAULT_DYNAMIC_FIELD);
702
+ // make dynamic data[i] safe
703
+ data[i] = isFixedSchema ? data[i] : data[i] || {};
704
+ // extract dynamic info from dynamic field if necessary
705
+ result[field_name] = isFixedSchema ? data[i] : data[i][field_name];
706
+ });
707
+ // init result slot
708
+ results[index] = results[index] || [];
709
+ // push result data
710
+ results[index].push(result);
711
+ });
712
+ });
713
+ return results;
714
+ };
715
+ exports.formatSearchResult = formatSearchResult;
716
+ /**
717
+ * Formats the search vector to match a specific data type.
718
+ * @param {VectorTypes | VectorTypes[]} searchVector - The search vector or array of vectors to be formatted.
719
+ * @param {DataType} dataType - The specified data type.
720
+ * @returns {VectorTypes[]} The formatted search vector or array of vectors.
721
+ */
722
+ const formatSearchVector = (searchVector, dataType) => {
723
+ switch (dataType) {
724
+ case __1.DataType.FloatVector:
725
+ case __1.DataType.BinaryVector:
726
+ case __1.DataType.Float16Vector:
727
+ case __1.DataType.BFloat16Vector:
728
+ if (!Array.isArray(searchVector)) {
729
+ return [searchVector];
730
+ }
731
+ case __1.DataType.SparseFloatVector:
732
+ const type = (0, __1.getSparseFloatVectorType)(searchVector);
733
+ if (type !== 'unknown') {
734
+ return [searchVector];
735
+ }
736
+ default:
737
+ return searchVector;
738
+ }
739
+ };
740
+ exports.formatSearchVector = formatSearchVector;
460
741
  //# sourceMappingURL=Format.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Format.js","sourceRoot":"","sources":["../../../milvus/utils/Format.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Format.js","sourceRoot":"","sources":["../../../milvus/utils/Format.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
- import { KeyValuePair, DataType } from '../';
1
+ import { KeyValuePair, DataType, SparseFloatVector } from '../';
2
+ import { Pool } from 'generic-pool';
2
3
  /**
3
4
  * Promisify a function call with optional timeout
4
5
  * @param obj - The object containing the target function
@@ -7,7 +8,7 @@ import { KeyValuePair, DataType } from '../';
7
8
  * @param timeout - Optional timeout in milliseconds
8
9
  * @returns A Promise that resolves with the result of the target function call
9
10
  */
10
- export declare function promisify(obj: any, target: string, params: any, timeout: number): Promise<any>;
11
+ export declare function promisify(pool: Pool<any>, target: string, params: any, timeout: number): Promise<any>;
11
12
  export declare const findKeyValue: (obj: KeyValuePair[], key: string) => string | number | undefined;
12
13
  export declare const sleep: (time: number) => Promise<unknown>;
13
14
  export declare const buildDefaultSchema: (data: {
@@ -30,3 +31,4 @@ export declare const buildDefaultSchema: (data: {
30
31
  autoID?: undefined;
31
32
  })[];
32
33
  export declare const getDataKey: (type: DataType, camelCase?: boolean) => string;
34
+ export declare const getSparseDim: (data: SparseFloatVector[]) => number;