@infino-ai/infino 0.1.3 → 0.1.5

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/infino/index.d.ts CHANGED
@@ -27,6 +27,15 @@ export interface ConnectOptions {
27
27
  cacheDir?: string;
28
28
  /** Disk-cache budget in bytes. */
29
29
  cacheBudgetBytes?: number;
30
+ /**
31
+ * Per-connection heap budget in bytes: the working memory ingesting and
32
+ * querying use. Crossing it throws an Error whose message starts with
33
+ * `ConnectionMemoryBudgetError:`, instead of risking an out-of-memory crash.
34
+ * `0` or omitted measures without enforcing. Separate from `cacheBudgetBytes`
35
+ * (the disk cache). See
36
+ * https://infino.ai/docs/guides/storage#connection-memory-budget
37
+ */
38
+ connectionMemoryBudgetBytes?: number;
30
39
  /** How cold misses are serviced. */
31
40
  coldFetchMode?: "hybrid_with_prefetch" | "range_only" | "lazy_foreground_with_background_fill";
32
41
  /**
@@ -65,6 +74,9 @@ export interface OptimizeOptions {
65
74
  minFillPercent?: number;
66
75
  /** Target merged-superfile size, in MB. */
67
76
  targetSuperfileSizeMb?: number;
77
+ /** How old a sealed tombstone sidecar has to be, in milliseconds,
78
+ * before compaction treats its owner as dead and takes over. */
79
+ staleSealTimeoutMs?: number;
68
80
  }
69
81
  export interface Bm25SearchOptions {
70
82
  mode?: BoolMode;
@@ -129,12 +141,16 @@ export declare class Table {
129
141
  * append == one commit.
130
142
  */
131
143
  append(data: AppendData): void;
132
- /** Ranked BM25 search; rows as records (or an Arrow `Table`). */
144
+ /** Ranked BM25 search; rows as records (or an Arrow `Table`). `score` is a
145
+ * similarity (higher is better) — opposite direction from `vectorSearch`'s
146
+ * distance. Fuse with `hybridSearch`. */
133
147
  bm25Search(column: string, query: string, k: number, opts: Bm25SearchOptions & {
134
148
  arrow: true;
135
149
  }): arrow.Table;
136
150
  bm25Search(column: string, query: string, k: number, opts?: Bm25SearchOptions): RowRecord[];
137
- /** Vector kNN; rows as records (or an Arrow `Table`). */
151
+ /** Vector kNN; rows as records (or an Arrow `Table`). `score` is a distance
152
+ * (`0.0` = perfect match) — opposite direction from `bm25Search`'s
153
+ * similarity. Fuse with `hybridSearch`. */
138
154
  vectorSearch(column: string, query: number[] | Float32Array, k: number, opts: VectorSearchOptions & {
139
155
  arrow: true;
140
156
  }): arrow.Table;
@@ -19,6 +19,11 @@ export interface ConnectOptions {
19
19
  cacheDir?: string
20
20
  /** Disk-cache budget in bytes (a JS number; up to 2^53). */
21
21
  cacheBudgetBytes?: number
22
+ /**
23
+ * Per-connection heap budget in bytes (a JS number; up to 2^53). `0` or
24
+ * omitted measures usage without enforcing.
25
+ */
26
+ connectionMemoryBudgetBytes?: number
22
27
  /**
23
28
  * Cold-miss strategy: `"hybrid_with_prefetch"` | `"range_only"` |
24
29
  * `"lazy_foreground_with_background_fill"`.
@@ -38,6 +43,11 @@ export interface OptimizeOptions {
38
43
  minFillPercent?: number
39
44
  /** Target merged-superfile size, in MB. */
40
45
  targetSuperfileSizeMb?: number
46
+ /**
47
+ * How old a sealed tombstone sidecar has to be, in milliseconds,
48
+ * before compaction treats its owner as dead and takes over.
49
+ */
50
+ staleSealTimeoutMs?: number
41
51
  }
42
52
  /** Row counts from an `update` / `delete`. */
43
53
  export interface MutationStats {
@@ -139,6 +149,8 @@ export declare class Table {
139
149
  * IPC `Buffer` (read with `tableFromIPC`). `mode` is `"or"` (default)
140
150
  * or `"and"`. `projection` selects the returned columns — pass
141
151
  * `["_id", "score"]` for just id + score, or omit for full rows.
152
+ * `score` is a similarity (higher is better) — opposite direction
153
+ * from `vectorSearch`'s distance. Fuse with `hybridSearch`.
142
154
  */
143
155
  bm25Search(column: string, query: string, k: number, mode?: string | undefined | null, projection?: Array<string> | undefined | null): Buffer
144
156
  /**
@@ -146,7 +158,9 @@ export declare class Table {
146
158
  * (crosses by reference — no copy). Returns matching rows as an Arrow
147
159
  * IPC `Buffer` (read with `tableFromIPC`). `projection` selects the
148
160
  * returned columns (`["_id", "score"]` for just id + score, or omit
149
- * for full rows).
161
+ * for full rows). `score` is a distance (`0.0` = perfect match) —
162
+ * opposite direction from `bm25Search`'s similarity. Fuse with
163
+ * `hybridSearch`.
150
164
  */
151
165
  vectorSearch(column: string, query: Float32Array, k: number, nprobe?: number | undefined | null, rerankMult?: number | undefined | null, projection?: Array<string> | undefined | null, filter?: VectorFilter | undefined | null): Buffer
152
166
  /**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@infino-ai/infino",
3
- "version": "0.1.3",
3
+ "version": "0.1.5",
4
4
  "description": "Fast search on object storage — SQL, full-text, and vector search.",
5
5
  "license": "Apache-2.0",
6
6
  "publishConfig": {
@@ -82,12 +82,12 @@
82
82
  "apache-arrow": "^17"
83
83
  },
84
84
  "optionalDependencies": {
85
- "infx-darwin-x64": "0.1.3",
86
- "infx-darwin-arm64": "0.1.3",
87
- "infx-linux-x64-gnu": "0.1.3",
88
- "infx-linux-arm64-gnu": "0.1.3",
89
- "infx-linux-x64-musl": "0.1.3",
90
- "infx-linux-arm64-musl": "0.1.3"
85
+ "infx-darwin-x64": "0.1.5",
86
+ "infx-darwin-arm64": "0.1.5",
87
+ "infx-linux-x64-gnu": "0.1.5",
88
+ "infx-linux-arm64-gnu": "0.1.5",
89
+ "infx-linux-x64-musl": "0.1.5",
90
+ "infx-linux-arm64-musl": "0.1.5"
91
91
  },
92
92
  "devDependencies": {
93
93
  "@napi-rs/cli": "^2.18.0",