SuperAPI AI 工具集

turbopuffer

智能体与模型

查看项目

更新于 10-16 00:05

技能介绍

用途:turbopuffer 是原生构建在对象存储上的搜索引擎,支持向量、全文、混合检索与过滤。对象存储是唯一事实来源,NVMe 与内存仅作缓存,因此静态成本低、热查询快、冷查询与写入较慢。适合 RAG/语义搜索、BM25+向量混合检索、按租户自然分区的数据,以及低成本大规模场景;不适合免费层(仅商业)、复杂首阶段排序逻辑(需自行重排)和以内置嵌入为主的工作流(需自带向量)。无本地模拟器与开源版本,测试需访问真实服务。

主要能力:命名空间是文档的隔离容器,首次写入时隐式创建,建议按共同查询的文档集划分(如每租户一个)。文档含 id、可选向量与属性,类型按命名空间一致。写入追加到对象存储上的预写日志,返回即持久且强一致可见;索引异步进行。查询默认强一致,向量索引用 SPFresh,全文用 BM25 倒排索引,过滤用倒排索引并与 ANN 协作。支持条件写入、聚合、分页、多查询 RRF 融合、命名空间分支与复制、缓存预热、多租户权限过滤。

使用方式:Go 客户端通过 go get github.com/turbopuffer/turbopuffer-go/v2 安装,用 turbopuffer.NewClient 创建客户端并复用,区域通过 option.WithRegion 或环境变量指定。写入用 ns.Write,支持 upsert、patch、delete、按过滤批量操作与条件写入;查询用 ns.Query,rank_by 可选 ANN、KNN、BM25、属性排序、稀疏向量等;混合检索用 ns.MultiQuery 配合 NewRerankByRrf。建议批量写入(单请求最大 512 MB),避免循环单条写。

限制:无导出端点,需按 id 分页;无自动备份,需自行调度复制;命名空间最多 2 个向量列且创建后固定;类型变更与属性删除需导出后重新写入新命名空间;聚合查询消耗 4 个并发槽,不宜用于热路径;未索引积压超过 2 GiB 时写入返回 429。具体收费、价格与平台细节暂未提供。