@mastra/lance 1.4.0 → 1.5.0-alpha.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.
- package/dist/docs/SKILL.md +1 -1
- package/dist/docs/assets/SOURCE_MAP.json +1 -1
- package/dist/docs/references/reference-vectors-lance.md +56 -10
- package/dist/index.cjs +153 -5
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +153 -5
- package/dist/index.js.map +1 -1
- package/dist/vector/index.d.ts +33 -1
- package/dist/vector/index.d.ts.map +1 -1
- package/dist/vector/types.d.ts +1 -1
- package/dist/vector/types.d.ts.map +1 -1
- package/package.json +5 -5
package/dist/vector/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ConnectionOptions, CreateTableOptions, Table, TableLike } from '@lancedb/lancedb';
|
|
1
|
+
import type { ConnectionOptions, CreateTableOptions, OptimizeStats, Table, TableLike } from '@lancedb/lancedb';
|
|
2
2
|
import type { CreateIndexParams, DeleteIndexParams, DeleteVectorParams, DescribeIndexParams, IndexStats, QueryResult, QueryVectorParams, UpdateVectorParams, UpsertVectorParams, DeleteVectorsParams } from '@mastra/core/vector';
|
|
3
3
|
import { MastraVector } from '@mastra/core/vector';
|
|
4
4
|
import type { LanceVectorFilter } from './filter.js';
|
|
@@ -25,8 +25,27 @@ interface LanceQueryVectorParams extends QueryVectorParams<LanceVectorFilter> {
|
|
|
25
25
|
*/
|
|
26
26
|
metric?: 'cosine' | 'euclidean' | 'dotproduct';
|
|
27
27
|
}
|
|
28
|
+
export interface LanceTableTargetParams {
|
|
29
|
+
tableName?: string;
|
|
30
|
+
/** Used as the table name when `tableName` is omitted, matching `upsert` and `query`. */
|
|
31
|
+
indexName?: string;
|
|
32
|
+
}
|
|
33
|
+
export interface LanceOptimizeParams extends LanceTableTargetParams {
|
|
34
|
+
/** Remove table versions older than this date. Defaults to LanceDB's retention (7 days). */
|
|
35
|
+
cleanupOlderThan?: Date;
|
|
36
|
+
/** Also delete unverified files newer than 7 days. Only safe when no other writer is active. Defaults to `false`. */
|
|
37
|
+
deleteUnverified?: boolean;
|
|
38
|
+
}
|
|
39
|
+
export interface LanceIndexCoverage {
|
|
40
|
+
indexName: string;
|
|
41
|
+
indexType: string;
|
|
42
|
+
columns: string[];
|
|
43
|
+
numIndexedRows: number;
|
|
44
|
+
numUnindexedRows: number;
|
|
45
|
+
}
|
|
28
46
|
export declare class LanceVectorStore extends MastraVector<LanceVectorFilter> {
|
|
29
47
|
private lanceClient;
|
|
48
|
+
private optimizeInFlight;
|
|
30
49
|
/**
|
|
31
50
|
* Creates a new instance of LanceVectorStore
|
|
32
51
|
* @param uri The URI to connect to LanceDB
|
|
@@ -112,6 +131,19 @@ export declare class LanceVectorStore extends MastraVector<LanceVectorFilter> {
|
|
|
112
131
|
listIndexes(): Promise<string[]>;
|
|
113
132
|
describeIndex({ indexName }: DescribeIndexParams): Promise<IndexStats>;
|
|
114
133
|
deleteIndex({ indexName }: DeleteIndexParams): Promise<void>;
|
|
134
|
+
private openExistingTable;
|
|
135
|
+
/**
|
|
136
|
+
* Runs LanceDB table maintenance: compacts fragments, adds unindexed rows to existing indexes
|
|
137
|
+
* (without retraining them), and prunes old table versions.
|
|
138
|
+
*
|
|
139
|
+
* Never runs implicitly. Concurrent calls for the same table share a single in-flight run.
|
|
140
|
+
*/
|
|
141
|
+
optimize(params: LanceOptimizeParams): Promise<OptimizeStats>;
|
|
142
|
+
/**
|
|
143
|
+
* Reports how many rows each index on a table covers. Rows written after an index was built
|
|
144
|
+
* stay unindexed until `optimize()` runs; use this to decide when to optimize.
|
|
145
|
+
*/
|
|
146
|
+
getIndexCoverage(params: LanceTableTargetParams): Promise<LanceIndexCoverage[]>;
|
|
115
147
|
/**
|
|
116
148
|
* Deletes all tables in the database
|
|
117
149
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vector/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/vector/index.ts"],"names":[],"mappings":"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"}
|
package/dist/vector/types.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/vector/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/vector/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,MAAM,CAAC;AAErD,UAAU,SAAS;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,UAAU,UAAU;IAClB,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,IAAI,CAAC,EAAE,UAAU,CAAC;CACnB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mastra/lance",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.5.0-alpha.0",
|
|
4
4
|
"description": "Lance provider for Mastra - includes both vector and db storage capabilities",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -31,10 +31,10 @@
|
|
|
31
31
|
"tsx": "^4.23.1",
|
|
32
32
|
"typescript": "^7.0.2",
|
|
33
33
|
"vitest": "4.1.11",
|
|
34
|
-
"@internal/
|
|
35
|
-
"@
|
|
36
|
-
"@internal/
|
|
37
|
-
"@
|
|
34
|
+
"@internal/storage-test-utils": "0.0.136",
|
|
35
|
+
"@internal/types-builder": "0.0.115",
|
|
36
|
+
"@internal/lint": "0.0.140",
|
|
37
|
+
"@mastra/core": "^1.75.0-alpha.8"
|
|
38
38
|
},
|
|
39
39
|
"peerDependencies": {
|
|
40
40
|
"@mastra/core": ">=1.53.0-0 <2.0.0-0"
|