You've already forked node-redis
mirror of
https://github.com/redis/node-redis.git
synced 2025-09-11 18:50:46 +03:00
feat(integer 8 vector support): Changed ft create vector types to union, added support for int8/uint8 (#2911)
* [CAE-827] Changed ft create vector types to union, added support for int8/uint8 * [CAE-827] Moved test cases
This commit is contained in:
@@ -473,4 +473,87 @@ describe('FT.CREATE', () => {
|
||||
'OK'
|
||||
);
|
||||
}, GLOBAL.SERVERS.OPEN);
|
||||
|
||||
testUtils.testWithClientIfVersionWithinRange([[7], 'LATEST'], 'client.ft.create vector types big floats', async client => {
|
||||
assert.equal(
|
||||
await client.ft.create("index_float32", {
|
||||
field: {
|
||||
ALGORITHM: "FLAT",
|
||||
TYPE: "FLOAT32",
|
||||
DIM: 1,
|
||||
DISTANCE_METRIC: 'COSINE',
|
||||
type: 'VECTOR'
|
||||
},
|
||||
}),
|
||||
"OK"
|
||||
);
|
||||
|
||||
assert.equal(
|
||||
await client.ft.create("index_float64", {
|
||||
field: {
|
||||
ALGORITHM: "FLAT",
|
||||
TYPE: "FLOAT64",
|
||||
DIM: 1,
|
||||
DISTANCE_METRIC: 'COSINE',
|
||||
type: 'VECTOR'
|
||||
},
|
||||
}),
|
||||
"OK"
|
||||
);
|
||||
}, GLOBAL.SERVERS.OPEN);
|
||||
|
||||
|
||||
testUtils.testWithClientIfVersionWithinRange([[8], 'LATEST'], 'client.ft.create vector types small floats and ints', async client => {
|
||||
assert.equal(
|
||||
await client.ft.create("index_float16", {
|
||||
field: {
|
||||
ALGORITHM: "FLAT",
|
||||
TYPE: "FLOAT16",
|
||||
DIM: 1,
|
||||
DISTANCE_METRIC: 'COSINE',
|
||||
type: 'VECTOR'
|
||||
},
|
||||
}),
|
||||
"OK"
|
||||
);
|
||||
|
||||
assert.equal(
|
||||
await client.ft.create("index_bloat16", {
|
||||
field: {
|
||||
ALGORITHM: "FLAT",
|
||||
TYPE: "BFLOAT16",
|
||||
DIM: 1,
|
||||
DISTANCE_METRIC: 'COSINE',
|
||||
type: 'VECTOR'
|
||||
},
|
||||
}),
|
||||
"OK"
|
||||
);
|
||||
|
||||
assert.equal(
|
||||
await client.ft.create("index_int8", {
|
||||
field: {
|
||||
ALGORITHM: "FLAT",
|
||||
TYPE: "INT8",
|
||||
DIM: 1,
|
||||
DISTANCE_METRIC: 'COSINE',
|
||||
type: 'VECTOR'
|
||||
},
|
||||
}),
|
||||
"OK"
|
||||
);
|
||||
|
||||
assert.equal(
|
||||
await client.ft.create("index_uint8", {
|
||||
field: {
|
||||
ALGORITHM: "FLAT",
|
||||
TYPE: "UINT8",
|
||||
DIM: 1,
|
||||
DISTANCE_METRIC: 'COSINE',
|
||||
type: 'VECTOR'
|
||||
},
|
||||
}),
|
||||
"OK"
|
||||
);
|
||||
}, GLOBAL.SERVERS.OPEN);
|
||||
});
|
||||
|
@@ -61,7 +61,7 @@ export type SchemaVectorFieldAlgorithm = typeof SCHEMA_VECTOR_FIELD_ALGORITHM[ke
|
||||
|
||||
interface SchemaVectorField extends SchemaField<typeof SCHEMA_FIELD_TYPE['VECTOR']> {
|
||||
ALGORITHM: SchemaVectorFieldAlgorithm;
|
||||
TYPE: string;
|
||||
TYPE: 'FLOAT32' | 'FLOAT64' | 'BFLOAT16' | 'FLOAT16' | 'INT8' | 'UINT8';
|
||||
DIM: number;
|
||||
DISTANCE_METRIC: 'L2' | 'IP' | 'COSINE';
|
||||
INITIAL_CAP?: number;
|
||||
|
Reference in New Issue
Block a user