endee 1.7.1 → 1.8.0-dev.2

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/dist/index.js CHANGED
@@ -1,8 +1,10 @@
1
1
  /**
2
- * Main export file for Endee-DB
2
+ * Main export file for the Endee client (v2 Collections API).
3
3
  */
4
- export { Endee } from './endee.class.js';
5
- export { Index, Index as Collection } from './index.class.js';
4
+ export { Endee } from './endee.js';
5
+ export { Collection } from './collection.js';
6
+ export { rerank } from './reranker.js';
6
7
  export * from './exceptions.js';
7
8
  export * from './types/index.js';
9
+ export * from './constants.js';
8
10
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACzC,OAAO,EAAE,KAAK,EAAE,KAAK,IAAI,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9D,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Reranking utilities for the Endee client.
3
+ *
4
+ * Fuses the per-field ranked hits from `search()` into a single ranked list
5
+ * using Reciprocal Rank Fusion.
6
+ */
7
+ import type { RerankOptions, RerankResponse, SearchResponse } from './types/index.js';
8
+ /**
9
+ * Fuse the per-field results from `search()` into a single ranked list.
10
+ *
11
+ * Uses Reciprocal Rank Fusion over each field's decoded `SearchHit[]`: a hit at
12
+ * rank `r` (1-based) in field `f` contributes `fieldWeights[f] / (rrfK + r)` to
13
+ * that object's score. Scores are summed across fields (deduped by `id`) and the
14
+ * top `limit` hits are returned, sorted by fused score descending.
15
+ *
16
+ * @example
17
+ * const res = await col.search({ fields: { embedding: { query: v }, keywords: { query: s } }, limit: 10 });
18
+ * const fused = rerank(res, { name: 'rrf', limit: 10, fieldWeights: { embedding: 0.6, keywords: 0.4 } });
19
+ */
20
+ export declare function rerank(searchResults: SearchResponse, options: RerankOptions): RerankResponse;
21
+ //# sourceMappingURL=reranker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reranker.d.ts","sourceRoot":"","sources":["../src/reranker.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAa,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAsBjG;;;;;;;;;;;GAWG;AACH,wBAAgB,MAAM,CAAC,aAAa,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa,GAAG,cAAc,CAmC5F"}
@@ -0,0 +1,68 @@
1
+ /**
2
+ * Reranking utilities for the Endee client.
3
+ *
4
+ * Fuses the per-field ranked hits from `search()` into a single ranked list
5
+ * using Reciprocal Rank Fusion.
6
+ */
7
+ import { DEFAULT_RRF_RANK_CONSTANT, DEFAULT_TOP_K } from './constants.js';
8
+ /** Resolve and validate per-field weights against the fields present. */
9
+ function resolveFieldWeights(fieldNames, fieldWeights) {
10
+ if (fieldWeights === null || fieldWeights === undefined) {
11
+ const n = fieldNames.length;
12
+ return Object.fromEntries(fieldNames.map((f) => [f, 1.0 / n]));
13
+ }
14
+ const missing = fieldNames.filter((f) => !(f in fieldWeights));
15
+ if (missing.length > 0) {
16
+ throw new Error(`fieldWeights missing entries for: ${missing.sort().join(', ')}`);
17
+ }
18
+ const total = fieldNames.reduce((s, f) => s + fieldWeights[f], 0);
19
+ if (Math.abs(total - 1.0) > 1e-6) {
20
+ throw new Error(`fieldWeights must sum to 1.0 (got ${total})`);
21
+ }
22
+ return fieldWeights;
23
+ }
24
+ /**
25
+ * Fuse the per-field results from `search()` into a single ranked list.
26
+ *
27
+ * Uses Reciprocal Rank Fusion over each field's decoded `SearchHit[]`: a hit at
28
+ * rank `r` (1-based) in field `f` contributes `fieldWeights[f] / (rrfK + r)` to
29
+ * that object's score. Scores are summed across fields (deduped by `id`) and the
30
+ * top `limit` hits are returned, sorted by fused score descending.
31
+ *
32
+ * @example
33
+ * const res = await col.search({ fields: { embedding: { query: v }, keywords: { query: s } }, limit: 10 });
34
+ * const fused = rerank(res, { name: 'rrf', limit: 10, fieldWeights: { embedding: 0.6, keywords: 0.4 } });
35
+ */
36
+ export function rerank(searchResults, options) {
37
+ const { name, limit = DEFAULT_TOP_K, rrfK = DEFAULT_RRF_RANK_CONSTANT } = options;
38
+ if (name !== 'rrf') {
39
+ throw new Error("rerank: name must be 'rrf'");
40
+ }
41
+ const perField = searchResults?.results;
42
+ if (perField === null || typeof perField !== 'object' || Array.isArray(perField)) {
43
+ throw new Error('rerank: expected search results to be a per-field map of hits');
44
+ }
45
+ const fieldNames = Object.keys(perField);
46
+ if (fieldNames.length === 0)
47
+ throw new Error('rerank: no fields to fuse');
48
+ const weights = resolveFieldWeights(fieldNames, options.fieldWeights);
49
+ const scores = new Map();
50
+ const hitById = new Map();
51
+ for (const fname of fieldNames) {
52
+ const weight = weights[fname] ?? 0.0;
53
+ let rank = 1;
54
+ for (const hit of perField[fname] ?? []) {
55
+ const id = hit.id;
56
+ scores.set(id, (scores.get(id) ?? 0.0) + weight / (rrfK + rank));
57
+ if (!hitById.has(id))
58
+ hitById.set(id, hit);
59
+ rank += 1;
60
+ }
61
+ }
62
+ const results = Array.from(scores.entries())
63
+ .sort((a, b) => b[1] - a[1])
64
+ .slice(0, limit)
65
+ .map(([id, score]) => ({ ...hitById.get(id), similarity: score }));
66
+ return { results };
67
+ }
68
+ //# sourceMappingURL=reranker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reranker.js","sourceRoot":"","sources":["../src/reranker.ts"],"names":[],"mappings":"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"}
@@ -1,115 +1,166 @@
1
1
  /**
2
- * Type definitions for Endee-DB
2
+ * Type definitions for the Endee client (v2 Collections API).
3
3
  */
4
4
  export type SpaceType = 'cosine' | 'l2' | 'ip';
5
5
  export declare enum Precision {
6
6
  BINARY = "binary",
7
7
  INT8 = "int8",
8
+ INT8E = "int8e",
8
9
  INT16 = "int16",
9
10
  FLOAT16 = "float16",
10
11
  FLOAT32 = "float32"
11
12
  }
12
- export interface CreateIndexOptions {
13
- name: string;
14
- dimension: number;
15
- spaceType?: SpaceType;
13
+ export type FieldType = 'vector' | 'sparse' | 'multi_vector';
14
+ /** HNSW / quantization params for a `vector` or `multi_vector` field. */
15
+ export interface FieldParams {
16
+ dimension?: number;
17
+ space_type?: SpaceType;
18
+ precision?: Precision | string;
19
+ /** Required for multi_vector fields. */
20
+ pooling?: 'mean' | 'max';
21
+ /** Optional HNSW build params. */
16
22
  M?: number;
17
- precision?: Precision;
18
- efCon?: number;
19
- version?: number;
20
- sparseModel?: string | null;
23
+ ef_con?: number;
24
+ [key: string]: unknown;
25
+ }
26
+ /**
27
+ * A field definition sent to the server as-is on `createCollection`.
28
+ *
29
+ * - `vector` → requires `params` ({ dimension, space_type, precision, ... }).
30
+ * - `sparse` → requires top-level `sparse_model` ("default" | "endee_bm25").
31
+ * - `multi_vector` → requires `params` including `pooling`.
32
+ */
33
+ export interface FieldDefinition {
34
+ name: string;
35
+ type: FieldType;
36
+ params?: FieldParams;
37
+ sparse_model?: string;
38
+ [key: string]: unknown;
39
+ }
40
+ /** Sparse vector value: parallel `indices` / `values` arrays. */
41
+ export interface SparseValue {
42
+ indices?: number[];
43
+ values?: number[];
44
+ /** Aliases also accepted on input (mirrors the Python client). */
45
+ sparse_indices?: number[];
46
+ sparse_values?: number[];
47
+ position?: number[];
21
48
  }
22
- export interface VectorItem {
49
+ /** A per-object field value: dense vector, sparse, or multi-vector. */
50
+ export type FieldValue = number[] | number[][] | SparseValue;
51
+ /** One object to upsert. */
52
+ export interface ObjectInput {
23
53
  id: string;
24
- vector: number[];
25
- sparseIndices?: number[];
26
- sparseValues?: number[];
27
- meta?: Record<string, unknown>;
28
- filter?: Record<string, unknown>;
29
- }
30
- export interface QueryOptions {
31
- vector?: number[];
32
- topK: number;
54
+ meta?: Record<string, unknown> | null;
55
+ filter?: Record<string, unknown> | string | null;
56
+ fields?: Record<string, FieldValue>;
57
+ }
58
+ /**
59
+ * Per-field search config. The query value is required; `limit` is the max
60
+ * number of hits to return for this field (defaults to `DEFAULT_TOP_K`).
61
+ */
62
+ export interface FieldQueryConfig {
63
+ query: FieldValue;
64
+ /** Max hits to return for this field (1..MAX_TOP_K_ALLOWED). Defaults to DEFAULT_TOP_K. */
65
+ limit?: number;
66
+ ef_search?: number;
67
+ [key: string]: unknown;
68
+ }
69
+ /** A field's query in a search request: always the config-dict form. */
70
+ export type SearchFieldValue = FieldQueryConfig;
71
+ export interface SearchOptions {
72
+ fields: Record<string, SearchFieldValue>;
33
73
  filter?: Array<Record<string, unknown>> | null;
34
- ef?: number;
35
- includeVectors?: boolean;
36
- sparseIndices?: number[];
37
- sparseValues?: number[];
74
+ efSearch?: number;
75
+ /**
76
+ * Filtered search only. Cardinality below which the search switches from HNSW
77
+ * filtered search to brute-force prefiltering. Default 10,000; range
78
+ * 1,000–1,000,000. Raise to favor exhaustive scan, lower to favor HNSW.
79
+ */
38
80
  prefilterCardinalityThreshold?: number;
81
+ /**
82
+ * Filtered search only. Percentage by which to expand the HNSW candidate pool
83
+ * before filtering, to compensate for filtered-out candidates. Default 0
84
+ * (no boost); max 100 (doubles the pool).
85
+ */
39
86
  filterBoostPercentage?: number;
40
- denseRrfWeight?: number;
41
- rrfRankConstant?: number;
42
87
  }
43
- export interface QueryResult {
88
+ /** Options for the standalone `rerank()` fusion of per-field search results. */
89
+ export interface RerankOptions {
90
+ /** Reranker algorithm. Only `'rrf'` is supported. */
91
+ name: 'rrf';
92
+ /** Max number of fused hits to return. */
93
+ limit?: number;
94
+ /** Per-field RRF weights; must sum to 1.0. Defaults to uniform. */
95
+ fieldWeights?: Record<string, number> | null;
96
+ /** RRF rank constant. */
97
+ rrfK?: number;
98
+ }
99
+ /** A single search result hit. */
100
+ export interface SearchHit {
44
101
  id: string;
45
102
  similarity: number;
46
- distance: number;
47
- meta?: Record<string, unknown>;
48
- filter?: Record<string, unknown>;
49
- norm?: number;
50
- vector?: number[];
103
+ meta: Record<string, unknown>;
104
+ filter: Record<string, unknown>;
51
105
  }
52
- export interface IndexInfo {
53
- name: string;
54
- spaceType: SpaceType;
55
- dimension: number;
56
- total_elements?: number;
57
- precision: Precision;
58
- M?: number;
59
- efCon?: number;
60
- checksum?: number;
61
- libToken?: string;
62
- version?: number;
63
- sparseDimension?: number;
64
- sparseModel?: string | null;
106
+ /**
107
+ * `search()` always returns one ranked list per queried field, keyed by field
108
+ * name. Use `rerank()` to fuse these into a single ranked list.
109
+ */
110
+ export type SearchResults = Record<string, SearchHit[]>;
111
+ export interface SearchResponse {
112
+ results: SearchResults;
65
113
  }
66
- export interface IndexDescription {
67
- name: string;
68
- spaceType: SpaceType;
69
- dimension: number;
70
- isHybrid: boolean;
71
- count: number;
72
- precision: Precision;
73
- M: number;
74
- efCon: number;
75
- sparseModel: string | null;
76
- }
77
- export interface VectorInfo {
114
+ /** A fused, single-list result as returned by `rerank()`. */
115
+ export interface RerankResponse {
116
+ results: SearchHit[];
117
+ }
118
+ /** A full object as returned by `getObjects`. */
119
+ export interface FullObject {
78
120
  id: string;
79
121
  meta: Record<string, unknown>;
80
122
  filter: Record<string, unknown>;
81
- norm: number;
82
- vector: number[];
83
- sparseIndices?: number[];
84
- sparseValues?: number[];
123
+ vectors: Record<string, number[]>;
124
+ sparses: Record<string, {
125
+ indices: number[];
126
+ values: number[];
127
+ }>;
128
+ multi_vectors: Record<string, number[][]>;
129
+ }
130
+ /** Collection metadata returned by `describe()` / `getCollection`. */
131
+ export interface CollectionMetadata {
132
+ name?: string;
133
+ fields: FieldDefinition[];
134
+ created_at?: number | string;
135
+ layout_version?: number;
136
+ [key: string]: unknown;
85
137
  }
86
- export interface UpdateFilterParams {
138
+ export interface UpdateFilterEntry {
87
139
  id: string;
88
140
  filter: Record<string, unknown>;
89
141
  }
90
142
  export interface RebuildOptions {
91
- M?: number;
143
+ field: string;
144
+ m?: number;
92
145
  efCon?: number;
93
146
  }
94
- export interface RebuildResult {
95
- status: string;
96
- previous_config: {
97
- M: number;
98
- ef_con: number;
99
- };
100
- new_config: {
101
- M: number;
102
- ef_con: number;
103
- };
104
- total_vectors: number;
105
- }
106
- export interface RebuildStatus {
107
- status: 'idle' | 'in_progress' | 'completed' | 'failed';
108
- vectors_processed?: number;
109
- total_vectors?: number;
110
- percent_complete?: number;
111
- started_at?: string;
112
- completed_at?: string;
113
- error?: string;
147
+ /** Database tier for admin database operations. */
148
+ export type DbType = 'starter' | 'pro' | 'scale' | 'enterprise';
149
+ /** Token type: read-write (`rw`) or read-only (`r`). */
150
+ export type TokenType = 'rw' | 'r';
151
+ /** A database entry as returned by `listDatabases()`. */
152
+ export interface DatabaseInfo {
153
+ db_name: string;
154
+ db_type?: DbType | string;
155
+ is_active?: boolean;
156
+ created_at?: number | string;
157
+ [key: string]: unknown;
158
+ }
159
+ /** A token entry as returned by `listTokens()` / `listMyTokens()` (no secret). */
160
+ export interface TokenInfo {
161
+ name: string;
162
+ token_type?: TokenType | string;
163
+ created_at?: number | string;
164
+ [key: string]: unknown;
114
165
  }
115
166
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
1
  /**
2
- * Type definitions for Endee-DB
2
+ * Type definitions for the Endee client (v2 Collections API).
3
3
  */
4
4
  export var Precision;
5
5
  (function (Precision) {
6
6
  Precision["BINARY"] = "binary";
7
7
  Precision["INT8"] = "int8";
8
+ Precision["INT8E"] = "int8e";
8
9
  Precision["INT16"] = "int16";
9
10
  Precision["FLOAT16"] = "float16";
10
11
  Precision["FLOAT32"] = "float32";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,CAAN,IAAY,SAMX;AAND,WAAY,SAAS;IACnB,8BAAiB,CAAA;IACjB,0BAAa,CAAA;IACb,4BAAe,CAAA;IACf,gCAAmB,CAAA;IACnB,gCAAmB,CAAA;AACrB,CAAC,EANW,SAAS,KAAT,SAAS,QAMpB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,CAAN,IAAY,SAOX;AAPD,WAAY,SAAS;IACnB,8BAAiB,CAAA;IACjB,0BAAa,CAAA;IACb,4BAAe,CAAA;IACf,4BAAe,CAAA;IACf,gCAAmB,CAAA;IACnB,gCAAmB,CAAA;AACrB,CAAC,EAPW,SAAS,KAAT,SAAS,QAOpB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "endee",
3
- "version": "1.7.1",
3
+ "version": "1.8.0-dev.2",
4
4
  "description": "TypeScript client for encrypted vector database with maximum security and speed",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,18 +0,0 @@
1
- import { Index } from './index.class.js';
2
- import { type CreateIndexOptions } from './types/index.js';
3
- export declare class Endee {
4
- private token;
5
- private baseUrl;
6
- private version;
7
- constructor(token?: string | null);
8
- setBaseUrl(url: string): string;
9
- createCollection(options: CreateIndexOptions): Promise<string>;
10
- createIndex(options: CreateIndexOptions): Promise<string>;
11
- listCollections(): Promise<unknown>;
12
- listIndexes(): Promise<unknown>;
13
- deleteCollection(name: string): Promise<string>;
14
- deleteIndex(name: string): Promise<string>;
15
- getCollection(name: string): Promise<Index>;
16
- getIndex(name: string): Promise<Index>;
17
- }
18
- //# sourceMappingURL=endee.class.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"endee.class.d.ts","sourceRoot":"","sources":["../src/endee.class.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,OAAO,EAAa,KAAK,kBAAkB,EAAkB,MAAM,kBAAkB,CAAC;AAEtF,qBAAa,KAAK;IAChB,OAAO,CAAC,KAAK,CAAgB;IAC7B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,OAAO,CAAS;gBAEZ,KAAK,GAAE,MAAM,GAAG,IAAW;IAavC,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAKzB,gBAAgB,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;IAgE9D,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;IAiEzD,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC;IAgBnC,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAgB/B,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAuB/C,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAuB1C,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;IAoC3C,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;CAmC7C"}