@@ -123,21 +123,20 @@ const VectorSearch = () => {
123
123
*/
124
124
return searchResult && searchResult . length > 0
125
125
? Object . keys ( searchResult [ 0 ] )
126
- . filter ( item => {
127
- // if primary key field name is id, don't filter it
128
- const invalidItems =
129
- primaryKeyField === 'id' ? [ 'score' ] : [ 'id' , 'score' ] ;
130
- return ! invalidItems . includes ( item ) ;
131
- } )
132
- . map ( key => ( {
133
- id : key ,
134
- align : 'left' ,
135
- disablePadding : false ,
136
- label : key ,
137
- } ) )
126
+ . filter ( item => {
127
+ // if primary key field name is id, don't filter it
128
+ const invalidItems =
129
+ primaryKeyField === 'id' ? [ 'score' ] : [ 'id' , 'score' ] ;
130
+ return ! invalidItems . includes ( item ) ;
131
+ } )
132
+ . map ( key => ( {
133
+ id : key ,
134
+ align : 'left' ,
135
+ disablePadding : false ,
136
+ label : key ,
137
+ } ) )
138
138
: [ ] ;
139
139
} , [ searchResult , primaryKeyField ] ) ;
140
-
141
140
const {
142
141
metricType,
143
142
indexType,
@@ -157,7 +156,6 @@ const VectorSearch = () => {
157
156
index ?. _metricType || DEFAULT_METRIC_VALUE_MAP [ embeddingType ] ;
158
157
const indexParams = index ?. _indexParameterPairs || [ ] ;
159
158
const dim = selectedFieldInfo ?. dimension || 0 ;
160
-
161
159
return {
162
160
metricType : metric ,
163
161
indexType : index ?. _indexType || getDefaultIndexType ( embeddingType ) ,
@@ -187,10 +185,15 @@ const VectorSearch = () => {
187
185
if ( vectors === '' || selectedFieldDimension === 0 ) {
188
186
return true ;
189
187
}
188
+ const dim =
189
+ fieldType === DataTypeEnum . BinaryVector
190
+ ? selectedFieldDimension / 8
191
+ : selectedFieldDimension ;
192
+ console . log ( fieldType ) ;
190
193
const value = parseValue ( vectors ) ;
191
194
const isArray = Array . isArray ( value ) ;
192
- return isArray && value . length === selectedFieldDimension ;
193
- } , [ vectors , selectedFieldDimension ] ) ;
195
+ return isArray && value . length === dim ;
196
+ } , [ vectors , selectedFieldDimension , fieldType ] ) ;
194
197
195
198
const searchDisabled = useMemo ( ( ) => {
196
199
/**
@@ -374,7 +377,10 @@ const VectorSearch = () => {
374
377
{ ! vectorValueValid && (
375
378
< Typography variant = "caption" className = { classes . error } >
376
379
{ searchTrans ( 'vectorValueWarning' , {
377
- dimension : selectedFieldDimension ,
380
+ dimension :
381
+ fieldType === DataTypeEnum . BinaryVector
382
+ ? selectedFieldDimension / 8
383
+ : selectedFieldDimension ,
378
384
} ) }
379
385
</ Typography >
380
386
) }
@@ -421,8 +427,8 @@ const VectorSearch = () => {
421
427
metricType = { metricType ! }
422
428
embeddingType = {
423
429
embeddingType as
424
- | DataTypeEnum . BinaryVector
425
- | DataTypeEnum . FloatVector
430
+ | DataTypeEnum . BinaryVector
431
+ | DataTypeEnum . FloatVector
426
432
}
427
433
indexType = { indexType }
428
434
indexParams = { indexParams ! }
0 commit comments