Improved HNSW recall tests - #535

This commit is contained in:
Andrew Kane
2024-04-26 13:08:48 -07:00
parent 78d32943ac
commit 48e68e5e42
6 changed files with 16 additions and 12 deletions

View File

@@ -8,6 +8,7 @@ my $node;
my @queries = ();
my @expected;
my $limit = 20;
my $array_sql = join(",", ('random() * random()') x 3);
sub test_recall
{
@@ -54,7 +55,7 @@ $node->start;
$node->safe_psql("postgres", "CREATE EXTENSION vector;");
$node->safe_psql("postgres", "CREATE TABLE tst (i int4, v sparsevec(3));");
$node->safe_psql("postgres",
"INSERT INTO tst SELECT i, ARRAY[random(), random(), random()]::vector::sparsevec FROM generate_series(1, 10000) i;"
"INSERT INTO tst SELECT i, ARRAY[$array_sql]::vector::sparsevec FROM generate_series(1, 10000) i;"
);
# Generate queries
@@ -90,7 +91,7 @@ for my $i (0 .. $#operators)
));
# Test approximate results
my $min = $operator eq "<#>" ? 0.80 : 0.99;
my $min = 0.99;
test_recall($min, $operator);
$node->safe_psql("postgres", "DROP INDEX idx;");