@lancedb/lancedb 0.22.2-beta.1 → 0.22.2-beta.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/arrow.js +21 -5
- package/package.json +9 -9
package/dist/arrow.js
CHANGED
|
@@ -1048,17 +1048,33 @@ function validateSchemaEmbeddings(schema, data, embeddings) {
|
|
|
1048
1048
|
if (isFixedSizeList(field.type)) {
|
|
1049
1049
|
field = (0, sanitize_1.sanitizeField)(field);
|
|
1050
1050
|
if (data.length !== 0 && data?.[0]?.[field.name] === undefined) {
|
|
1051
|
+
// Check if there's an embedding function registered for this field
|
|
1052
|
+
let hasEmbeddingFunction = false;
|
|
1053
|
+
// Check schema metadata for embedding functions
|
|
1051
1054
|
if (schema.metadata.has("embedding_functions")) {
|
|
1052
1055
|
const embeddings = JSON.parse(schema.metadata.get("embedding_functions"));
|
|
1053
|
-
if (
|
|
1054
1056
|
// biome-ignore lint/suspicious/noExplicitAny: we don't know the type of `f`
|
|
1055
|
-
embeddings.find((f) => f["vectorColumn"] === field.name)
|
|
1056
|
-
|
|
1057
|
-
missingEmbeddingFields.push(field);
|
|
1057
|
+
if (embeddings.find((f) => f["vectorColumn"] === field.name)) {
|
|
1058
|
+
hasEmbeddingFunction = true;
|
|
1058
1059
|
}
|
|
1059
1060
|
}
|
|
1061
|
+
// Check passed embedding function parameter
|
|
1062
|
+
if (embeddings && embeddings.vectorColumn === field.name) {
|
|
1063
|
+
hasEmbeddingFunction = true;
|
|
1064
|
+
}
|
|
1065
|
+
// If the field is nullable AND there's no embedding function, allow undefined/omitted values
|
|
1066
|
+
if (field.nullable && !hasEmbeddingFunction) {
|
|
1067
|
+
fields.push(field);
|
|
1068
|
+
}
|
|
1060
1069
|
else {
|
|
1061
|
-
|
|
1070
|
+
// Either not nullable OR has embedding function - require explicit values
|
|
1071
|
+
if (hasEmbeddingFunction) {
|
|
1072
|
+
// Don't add to missingEmbeddingFields since this is expected to be filled by embedding function
|
|
1073
|
+
fields.push(field);
|
|
1074
|
+
}
|
|
1075
|
+
else {
|
|
1076
|
+
missingEmbeddingFields.push(field);
|
|
1077
|
+
}
|
|
1062
1078
|
}
|
|
1063
1079
|
}
|
|
1064
1080
|
else {
|
package/package.json
CHANGED
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
"ann"
|
|
12
12
|
],
|
|
13
13
|
"private": false,
|
|
14
|
-
"version": "0.22.2-beta.
|
|
14
|
+
"version": "0.22.2-beta.2",
|
|
15
15
|
"main": "dist/index.js",
|
|
16
16
|
"exports": {
|
|
17
17
|
".": "./dist/index.js",
|
|
@@ -100,14 +100,14 @@
|
|
|
100
100
|
"reflect-metadata": "^0.2.2"
|
|
101
101
|
},
|
|
102
102
|
"optionalDependencies": {
|
|
103
|
-
"@lancedb/lancedb-darwin-x64": "0.22.2-beta.
|
|
104
|
-
"@lancedb/lancedb-darwin-arm64": "0.22.2-beta.
|
|
105
|
-
"@lancedb/lancedb-linux-x64-gnu": "0.22.2-beta.
|
|
106
|
-
"@lancedb/lancedb-linux-arm64-gnu": "0.22.2-beta.
|
|
107
|
-
"@lancedb/lancedb-linux-x64-musl": "0.22.2-beta.
|
|
108
|
-
"@lancedb/lancedb-linux-arm64-musl": "0.22.2-beta.
|
|
109
|
-
"@lancedb/lancedb-win32-x64-msvc": "0.22.2-beta.
|
|
110
|
-
"@lancedb/lancedb-win32-arm64-msvc": "0.22.2-beta.
|
|
103
|
+
"@lancedb/lancedb-darwin-x64": "0.22.2-beta.2",
|
|
104
|
+
"@lancedb/lancedb-darwin-arm64": "0.22.2-beta.2",
|
|
105
|
+
"@lancedb/lancedb-linux-x64-gnu": "0.22.2-beta.2",
|
|
106
|
+
"@lancedb/lancedb-linux-arm64-gnu": "0.22.2-beta.2",
|
|
107
|
+
"@lancedb/lancedb-linux-x64-musl": "0.22.2-beta.2",
|
|
108
|
+
"@lancedb/lancedb-linux-arm64-musl": "0.22.2-beta.2",
|
|
109
|
+
"@lancedb/lancedb-win32-x64-msvc": "0.22.2-beta.2",
|
|
110
|
+
"@lancedb/lancedb-win32-arm64-msvc": "0.22.2-beta.2"
|
|
111
111
|
},
|
|
112
112
|
"peerDependencies": {
|
|
113
113
|
"apache-arrow": ">=15.0.0 <=18.1.0"
|