一句话定位
Memvid 是一个单文件记忆层,替代复杂的 RAG 管道和服务器级向量数据库。它把数据、embeddings、搜索结构和元数据打包成一个可移动的 .mv2 文件,AI Agent 可以直接从文件中快速检索,无需任何后端服务。
核心特性
| 特性 | 说明 |
|---|
| 单文件存储 | 数据 + embeddings + 索引 + 元数据 全在一个文件 |
| 无服务器 | 不需要 Postgres、Redis 或向量数据库 |
| 模型无关 | 与具体 LLM 无关,任何 Agent 都可使用 |
| 离线支持 | 完全本地运行,无需网络 |
| 版本化 | 支持时间旅行调试,可回退、重放任意记忆状态 |
| 增量写入 | append-only 设计,不修改既有数据 |
Benchmark
| 指标 | 表现 |
|---|
| LoCoMo 准确率 | +35% SOTA |
| 多跳推理 | +76% vs 行业平均 |
| 时序推理 | +56% vs 行业平均 |
| P50 延迟 | 0.025ms |
| P99 延迟 | 0.075ms |
| 吞吐量 | 比标准方案高 1,372 倍 |
SDK 与安装
| 语言 | 安装命令 |
|---|
| CLI | npm install -g memvid-cli |
| Node.js | npm install @memvid/sdk |
| Python | pip install memvid-sdk |
| Rust | cargo add memvid-core |
Rust 快速开始
use memvid_core::{Memvid, PutOptions, SearchRequest};
fn main() -> memvid_core::Result<()> {
let mut mem = Memvid::create("knowledge.mv2")?;
mem.put_bytes_with_options(
b"Q4 planning discussion...",
PutOptions::builder()
.title("Meeting Notes")
.tag("project", "alpha")
.build()
)?;
mem.commit()?;
let resp = mem.search(SearchRequest {
query: "planning".into(),
top_k: 10,
..Default::default()
})?;
for hit in resp.hits {
println!("{}: {}", hit.title.unwrap_or_default(), hit.text);
}
Ok(())
}
Feature Flags
| Feature | 功能 |
|---|
lex | 全文搜索 + BM25 排序 |
vec | HNSW 向量搜索 + 本地文本 embeddings |
clip | CLIP 图像搜索 |
whisper | 音频转录 |
encryption | 密码加密胶囊 |
temporal_track | 自然语言日期解析 |
适用场景
- 长期运行的 AI Agent
- 企业知识库
- 离线 AI 系统
- 客户支持 Agent
- 个人知识助手
- 可审计 AI 工作流
项目数据
- 15.1k stars / 1.3k forks
- 256 commits
- Apache 2.0 许可
链接