spiceai/spiceai
Add a real-time analytics node to your operational database. Spice is a portable, accelerated SQL query, search, and LLM-inference engine in Rust for data-grounded AI apps and agents.
解决的问题
Spice 通过消除对复杂数据流水线和胶水代码的需求,解决了构建数据驱动型 AI 应用和智能体的复杂性。它通过提供一个可以作为本地 sidecar 或分布式集群运行的高性能引擎,解决了查询大规模数据集的延迟问题,提供毫秒级的延迟数据和 AI 推理访问。
工作原理
Spice 使用集群 sidecar 架构,轻量级运行时在应用程序旁的 localhost 运行,以极低的延迟提供数据和服务。它使用分层延迟模型:本地结果缓存、本地工作集,以及针对大型查询向分布式集群进行的透明委派。该引擎使用 Rust 构建,并利用了 Apache DataFusion、Arrow 和 Iceberg 等基础架构。它还具有实时 CDC(变更数据捕获)机制,可以在不影响生产负载的情况下,为 PostgreSQL、MySQL 和 MongoDB 等运营数据库创建沙盒化的、可用于分析的副本。
适用对象
- AI 应用开发人员:构建需要快速、基于数据的检索和推理的智能体。
- 数据工程师:希望在不使用传统 ETL 流程的情况下,在运营数据库上实现实时分析。
- 企业团队:需要具有内置可观测性和密钥管理的安全性、多租户 AI 运行时。
亮点
- AI 原生运行时:提供与 OpenAI 兼容的 API、text-to-SQL (NSQL) 以及集成的向量/文本搜索原语。
- 混合搜索:支持使用 Amazon S3 Vectors、Tantivy BM25 和 DuckDB HNSW 进行 PB 级混合搜索。
- 实时 CDC:以约 2 秒的新鲜度维护数据库的分析就绪副本,且零生产负载。
- 高性能:具有 Cayenne 数据加速器,与 DuckDB 相比,查询速度更快且内存占用更低。
- 联邦数据访问:通过查询下推功能连接到包括 Snowflake、Databricks、S3 和 Kafka 在内的 30 多个数据源。