Skip to content

Mengxun326/Vexra

Repository files navigation

Vexra

SQLite for vectors — 嵌入式向量数据库
一个二进制 · 一个文件 · 零配置 · 边缘到云端

CI crates.io npm PyPI tests license


安装

# CLI
cargo install vexra-cli

# Python
pip install vexra

# JavaScript
npm install @mengxun326/vexra

5 秒上手

vexra init
vexra create-collection -n docs -d 384
vexra insert -c docs -v 0.1,0.2,...,0.384
vexra search -c docs --text "hello" -k 5
vexra serve
import vexra
db = vexra.Database("data.vexra")
col = db.create_collection("docs", 384)
col.insert([0.1]*384, id="doc1")
col.search([0.2]*384, top_k=5)
use vexra_core::{Database, CollectionConfig, Document, SearchQuery};
let db = Database::open("data.vexra")?;
db.create_collection(CollectionConfig::new("docs", 384))?;

功能

嵌入式引擎 进程内运行,单文件存储,零配置
HNSW 索引 近似搜索,比暴力快 10-100×
SIMD 加速 AVX2 (x86_64) + NEON (aarch64)
WAL 崩溃安全 预写日志 + 帧校验和
向量 & 元数据持久化 重启后完整恢复
元数据过滤 category = "tech" AND score > 5.0
文本向量化 SimpleEmbedder (哈希 n-gram) + ONNX 接口
BM25 混合搜索 Tantivy 稀疏检索 + RRF 融合
CLI 工具 8 个命令 (init, create, insert, search, info, stats, delete, serve)
HTTP API + Dashboard REST API + 内嵌 Web 管理面板
多语言 SDK Rust · Python (PyO3) · JavaScript (napi-rs)
C FFI C ABI, 支持 Go, Java, Zig 等

架构

vexra/
├── crates/
│   ├── vexra-core/        公共 API
│   ├── vexra-storage/     页格式, WAL, 页缓存
│   ├── vexra-index/       HNSW, Flat, SIMD
│   ├── vexra-metadata/    JSON 元数据, 过滤
│   ├── vexra-query/       BM25, RRF 融合
│   ├── vexra-embedding/   文本向量化
│   ├── vexra-ffi/         C ABI
│   ├── vexra-cli/         CLI
│   └── vexra-server/      HTTP + Dashboard
├── sdk/
│   ├── python/            pip install vexra
│   └── javascript/        npm install @mengxun326/vexra
└── .github/               CI/CD

社区

许可证

MIT

About

Vexra — SQLite for vectors. An embedded vector database. One binary, one file, zero config.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Packages

 
 
 

Contributors