sqlite-vss Go package
This package wraps the go-sqlite3 driver and automatically loads extensions when opening a database connection.
package main
import (
"fmt"
"log"
vss "github.com/asg017/sqlite-vss"
)
func main() {
// /usr/local/lib/sqlite/ext/sqlite-vss is where vss0 and vector0 are stored.
db, err := vss.Open("vss-example.db", "/usr/local/lib/sqlite/ext/sqlite-vss")
if err != nil {
log.Fatal()
}
defer db.Close()
r := db.QueryRow("select vss_version(), vss();")
if err := r.Err(); err != nil {
log.Fatal(err)
}
var versions any
if err := r.Scan(&versions); err != nil {
log.Fatal(err)
}
fmt.Println(versions)
}
Installing
go install github.com/asg017/sqlite-vss