@aalis/plugin-vectorstore-lancedb 0.1.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/README.md +21 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +157 -0
- package/dist/index.js.map +1 -0
- package/package.json +38 -0
package/README.md
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# @aalis/plugin-vectorstore-lancedb
|
|
2
|
+
|
|
3
|
+
运行时插件
|
|
4
|
+
|
|
5
|
+
## 角色
|
|
6
|
+
|
|
7
|
+
运行时插件
|
|
8
|
+
|
|
9
|
+
## 安装
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
pnpm add @aalis/plugin-vectorstore-lancedb
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## 文档
|
|
16
|
+
|
|
17
|
+
详见 [docs/plugins/plugin-vectorstore-lancedb.md](../../docs/plugins/plugin-vectorstore-lancedb.md)。
|
|
18
|
+
|
|
19
|
+
## 许可
|
|
20
|
+
|
|
21
|
+
见仓库根目录 LICENSE。
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { ConfigSchema, Context } from '@aalis/core';
|
|
2
|
+
export declare const name = "@aalis/plugin-vectorstore-lancedb";
|
|
3
|
+
export declare const displayName = "LanceDB \u5411\u91CF\u5E93";
|
|
4
|
+
export declare const subsystem = "embedding";
|
|
5
|
+
export declare const provides: string[];
|
|
6
|
+
export declare const configSchema: ConfigSchema;
|
|
7
|
+
export declare const defaultConfig: {
|
|
8
|
+
path: string;
|
|
9
|
+
tableName: string;
|
|
10
|
+
};
|
|
11
|
+
export declare function apply(ctx: Context, config: Record<string, unknown>): Promise<void>;
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAgBzD,eAAO,MAAM,IAAI,sCAAsC,CAAC;AACxD,eAAO,MAAM,WAAW,+BAAgB,CAAC;AACzC,eAAO,MAAM,SAAS,cAAc,CAAC;AACrC,eAAO,MAAM,QAAQ,UAAkB,CAAC;AAExC,eAAO,MAAM,YAAY,EAAE,YAQ1B,CAAC;AAEF,eAAO,MAAM,aAAa;;;CAGzB,CAAC;AA8HF,wBAAsB,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAyBxF"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import { createStorageGateway } from '@aalis/plugin-storage-api';
|
|
2
|
+
import { connect } from '@lancedb/lancedb';
|
|
3
|
+
function toUri(input) {
|
|
4
|
+
const s = String(input ?? '').trim();
|
|
5
|
+
if (!s)
|
|
6
|
+
return 'data:/lancedb';
|
|
7
|
+
if (s.includes(':/'))
|
|
8
|
+
return s;
|
|
9
|
+
const cleaned = s.replace(/^\.?\/+/, '');
|
|
10
|
+
const idx = cleaned.indexOf('/');
|
|
11
|
+
return idx > 0 ? `${cleaned.slice(0, idx)}:/${cleaned.slice(idx + 1)}` : `data:/${cleaned}`;
|
|
12
|
+
}
|
|
13
|
+
// ===== 插件元数据 =====
|
|
14
|
+
export const name = '@aalis/plugin-vectorstore-lancedb';
|
|
15
|
+
export const displayName = 'LanceDB 向量库';
|
|
16
|
+
export const subsystem = 'embedding';
|
|
17
|
+
export const provides = ['vectorstore'];
|
|
18
|
+
export const configSchema = {
|
|
19
|
+
path: {
|
|
20
|
+
type: 'string',
|
|
21
|
+
label: '数据库目录',
|
|
22
|
+
default: 'data:/lancedb',
|
|
23
|
+
description: 'LanceDB 数据存储 storage URI(也兼容裸名/相对路径)',
|
|
24
|
+
},
|
|
25
|
+
tableName: { type: 'string', label: '表名', default: 'vectors', description: '向量表名称' },
|
|
26
|
+
};
|
|
27
|
+
export const defaultConfig = {
|
|
28
|
+
path: 'data:/lancedb',
|
|
29
|
+
tableName: 'vectors',
|
|
30
|
+
};
|
|
31
|
+
// ===== LanceDB 向量存储实现 =====
|
|
32
|
+
class LanceDBVectorStore {
|
|
33
|
+
db;
|
|
34
|
+
table = null;
|
|
35
|
+
dbPath;
|
|
36
|
+
tableName;
|
|
37
|
+
logger;
|
|
38
|
+
constructor(dbPath, tableName, logger) {
|
|
39
|
+
this.dbPath = dbPath;
|
|
40
|
+
this.tableName = tableName;
|
|
41
|
+
this.logger = logger;
|
|
42
|
+
}
|
|
43
|
+
/** 初始化连接(必须在使用前调用) */
|
|
44
|
+
async init() {
|
|
45
|
+
this.db = await connect(this.dbPath);
|
|
46
|
+
// 尝试打开已有表
|
|
47
|
+
const tableNames = await this.db.tableNames();
|
|
48
|
+
if (tableNames.includes(this.tableName)) {
|
|
49
|
+
this.table = await this.db.openTable(this.tableName);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
async add(vector, metadata) {
|
|
53
|
+
const record = {
|
|
54
|
+
vector,
|
|
55
|
+
metadata_json: JSON.stringify(metadata),
|
|
56
|
+
};
|
|
57
|
+
if (!this.table) {
|
|
58
|
+
// 首次写入时创建表
|
|
59
|
+
this.table = await this.db.createTable(this.tableName, [record]);
|
|
60
|
+
this.logger?.info(`LanceDB 表 "${this.tableName}" 已创建`);
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
await this.table.add([record]);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
async search(queryVector, topK) {
|
|
67
|
+
if (!this.table)
|
|
68
|
+
return [];
|
|
69
|
+
const count = await this.table.countRows();
|
|
70
|
+
if (count === 0)
|
|
71
|
+
return [];
|
|
72
|
+
const results = await this.table.search(queryVector).limit(topK).toArray();
|
|
73
|
+
return results.map(row => ({
|
|
74
|
+
score: 1 - (row._distance ?? 0), // LanceDB 返回 L2 距离,转换为相似度
|
|
75
|
+
metadata: JSON.parse(row.metadata_json),
|
|
76
|
+
}));
|
|
77
|
+
}
|
|
78
|
+
async size() {
|
|
79
|
+
if (!this.table)
|
|
80
|
+
return 0;
|
|
81
|
+
return this.table.countRows();
|
|
82
|
+
}
|
|
83
|
+
async clear() {
|
|
84
|
+
if (this.table) {
|
|
85
|
+
this.table.close();
|
|
86
|
+
this.table = null;
|
|
87
|
+
}
|
|
88
|
+
// 删除旧表并重置
|
|
89
|
+
const tableNames = await this.db.tableNames();
|
|
90
|
+
if (tableNames.includes(this.tableName)) {
|
|
91
|
+
await this.db.dropTable(this.tableName);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
async deleteByFilter(filter) {
|
|
95
|
+
if (!this.table)
|
|
96
|
+
return 0;
|
|
97
|
+
const before = await this.table.countRows();
|
|
98
|
+
if (before === 0)
|
|
99
|
+
return 0;
|
|
100
|
+
// LanceDB 的 metadata 存储在 metadata_json 字段中,需要通过全表扫描过滤
|
|
101
|
+
// 读取全部记录,过滤后重建表
|
|
102
|
+
const allRows = await this.table.query().toArray();
|
|
103
|
+
const keep = allRows.filter(row => {
|
|
104
|
+
const meta = JSON.parse(row.metadata_json);
|
|
105
|
+
// 保留条件:filter 中任一 key 不匹配则保留(即全部匹配才删除)
|
|
106
|
+
return Object.entries(filter).some(([key, value]) => meta[key] !== value);
|
|
107
|
+
});
|
|
108
|
+
const deleted = before - keep.length;
|
|
109
|
+
if (deleted > 0 && keep.length > 0) {
|
|
110
|
+
// 将 Arrow 格式行转换为纯 JS 对象,避免 schema 推断失败
|
|
111
|
+
const plainRows = keep.map(row => ({
|
|
112
|
+
vector: Array.from(row.vector),
|
|
113
|
+
metadata_json: row.metadata_json,
|
|
114
|
+
}));
|
|
115
|
+
// 重建表
|
|
116
|
+
this.table.close();
|
|
117
|
+
await this.db.dropTable(this.tableName);
|
|
118
|
+
this.table = await this.db.createTable(this.tableName, plainRows);
|
|
119
|
+
}
|
|
120
|
+
else if (deleted > 0 && keep.length === 0) {
|
|
121
|
+
await this.clear();
|
|
122
|
+
}
|
|
123
|
+
return deleted;
|
|
124
|
+
}
|
|
125
|
+
async save() {
|
|
126
|
+
// LanceDB 自动持久化,无需手动 save
|
|
127
|
+
}
|
|
128
|
+
async close() {
|
|
129
|
+
if (this.table) {
|
|
130
|
+
this.table.close();
|
|
131
|
+
this.table = null;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
// ===== 插件入口 =====
|
|
136
|
+
export async function apply(ctx, config) {
|
|
137
|
+
const cfg = {
|
|
138
|
+
path: config.path ?? 'data:/lancedb',
|
|
139
|
+
tableName: config.tableName ?? 'vectors',
|
|
140
|
+
};
|
|
141
|
+
const storage = createStorageGateway(ctx);
|
|
142
|
+
const dbUri = toUri(cfg.path);
|
|
143
|
+
if (!storage.resolveLocalPath) {
|
|
144
|
+
ctx.logger.error('存储实现未提供 resolveLocalPath 能力,无法初始化 LanceDB');
|
|
145
|
+
return;
|
|
146
|
+
}
|
|
147
|
+
const dbPath = await storage.resolveLocalPath(dbUri, 'write');
|
|
148
|
+
const store = new LanceDBVectorStore(dbPath, cfg.tableName, ctx.logger);
|
|
149
|
+
await store.init();
|
|
150
|
+
const count = await store.size();
|
|
151
|
+
ctx.logger.info(`LanceDB 向量数据库已加载: ${count} 条记录, URI=${dbUri}, 表=${cfg.tableName}`);
|
|
152
|
+
ctx.provide('vectorstore', store, { priority: 10 });
|
|
153
|
+
ctx.onDispose(async () => {
|
|
154
|
+
await store.close();
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@aalis/plugin-vectorstore-lancedb",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"type": "module",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"aalis-plugin"
|
|
7
|
+
],
|
|
8
|
+
"main": "dist/index.js",
|
|
9
|
+
"types": "dist/index.d.ts",
|
|
10
|
+
"files": [
|
|
11
|
+
"dist"
|
|
12
|
+
],
|
|
13
|
+
"dependencies": {
|
|
14
|
+
"@lancedb/lancedb": "^0.27.1",
|
|
15
|
+
"apache-arrow": "^18.0.0",
|
|
16
|
+
"@aalis/plugin-storage-api": "^0.1.0"
|
|
17
|
+
},
|
|
18
|
+
"devDependencies": {
|
|
19
|
+
"@types/node": "^22.0.0",
|
|
20
|
+
"typescript": "^5.7.0",
|
|
21
|
+
"@aalis/core": "0.1.0",
|
|
22
|
+
"@aalis/plugin-vectorstore-api": "0.1.0"
|
|
23
|
+
},
|
|
24
|
+
"peerDependencies": {
|
|
25
|
+
"@aalis/core": "^0.1.0"
|
|
26
|
+
},
|
|
27
|
+
"aalis": {
|
|
28
|
+
"service": {
|
|
29
|
+
"provides": [
|
|
30
|
+
"vectorstore"
|
|
31
|
+
]
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
"scripts": {
|
|
35
|
+
"build": "tsc",
|
|
36
|
+
"dev": "tsc --watch"
|
|
37
|
+
}
|
|
38
|
+
}
|