mirror of
https://github.com/asg017/sqlite-vec.git
synced 2026-04-25 00:36:56 +02:00
example updates
This commit is contained in:
parent
12c96fc6fe
commit
85fac4c5ef
10 changed files with 112 additions and 76 deletions
|
|
@ -22,21 +22,25 @@ int main(int argc, char *argv[]) {
|
|||
printf("sqlite_version=%s, vec_version=%s\n", sqlite3_column_text(stmt, 0), sqlite3_column_text(stmt, 1));
|
||||
sqlite3_finalize(stmt);
|
||||
|
||||
rc = sqlite3_prepare_v2(db, "CREATE VIRTUAL TABLE vec_items USING vec0(embedding float[8])", -1, &stmt, NULL);
|
||||
static const struct {
|
||||
sqlite3_int64 id;
|
||||
float vector[4];
|
||||
} items[] = {
|
||||
{1, {0.1, 0.1, 0.1, 0.1}},
|
||||
{2, {0.2, 0.2, 0.2, 0.2}},
|
||||
{3, {0.3, 0.3, 0.3, 0.3}},
|
||||
{4, {0.4, 0.4, 0.4, 0.4}},
|
||||
{5, {0.5, 0.5, 0.5, 0.5}},
|
||||
};
|
||||
float query[4] = {0.3, 0.3, 0.3, 0.3};
|
||||
|
||||
|
||||
rc = sqlite3_prepare_v2(db, "CREATE VIRTUAL TABLE vec_items USING vec0(embedding float[4])", -1, &stmt, NULL);
|
||||
assert(rc == SQLITE_OK);
|
||||
rc = sqlite3_step(stmt);
|
||||
assert(rc == SQLITE_DONE);
|
||||
sqlite3_finalize(stmt);
|
||||
|
||||
|
||||
static const struct {
|
||||
sqlite3_int64 id;
|
||||
float vector[8];
|
||||
} items[] = {
|
||||
{1, {0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8}},
|
||||
{2, {0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8}},
|
||||
};
|
||||
|
||||
rc = sqlite3_exec(db, "BEGIN", NULL, NULL, NULL);
|
||||
assert(rc == SQLITE_OK);
|
||||
rc = sqlite3_prepare_v2(db, "INSERT INTO vec_items(rowid, embedding) VALUES (?, ?)", -1, &stmt, NULL);
|
||||
|
|
@ -52,7 +56,6 @@ int main(int argc, char *argv[]) {
|
|||
rc = sqlite3_exec(db, "COMMIT", NULL, NULL, NULL);
|
||||
assert(rc == SQLITE_OK);
|
||||
|
||||
|
||||
rc = sqlite3_prepare_v2(db,
|
||||
"SELECT "
|
||||
" rowid, "
|
||||
|
|
@ -60,11 +63,10 @@ int main(int argc, char *argv[]) {
|
|||
"FROM vec_items "
|
||||
"WHERE embedding MATCH ?1 "
|
||||
"ORDER BY distance "
|
||||
"LIMIT 5 "
|
||||
"LIMIT 3 "
|
||||
, -1, &stmt, NULL);
|
||||
assert(rc == SQLITE_OK);
|
||||
|
||||
float query[8] = {0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8};
|
||||
sqlite3_bind_blob(stmt, 1, query, sizeof(query), SQLITE_STATIC);
|
||||
|
||||
while(1) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue