Announcing the release of Spice v1.6.0! 🔥
Spice 1.6.0 upgrades DataFusion to v48, reducing expressions memory footprint by ~50% for faster planning and lower memory usage, eliminating unnecessary projections in queries, optimizing string functions like ascii
and character_length
for up to 3x speedup, and accelerating unbounded aggregate window functions by 5.6x. The release adds Kafka and MongoDB connectors for real-time streaming and NoSQL data acceleration, supports OpenAI Responses API for advanced model interactions including OpenAI-hosted tools like web_search
and code_interpreter
, improves the OpenAI Embeddings Connector with usage tier configuration for higher throughput via increased concurrent requests, introduces Model2Vec embeddings for ultra-low-latency encoding, and improves the Amazon S3 Vectors engine to support multi-column primary keys.
Spice.ai is built on the DataFusion query engine. The v48 release brings:
Performance & Size Improvements 🚀: Expressions memory footprint was reduced by ~50% resulting in faster planning and lower memory usage, with planning times improved by 10-20%. There are now fewer unnecessary projections in queries. The string functions, ascii
and character_length
were optimized for improved performance, with character_length
achieving up to 3x speedup. Queries with unbounded aggregate window functions have improved performance by 5.6 times via avoided unnecessary computation for constant results across partitions. The Expr
struct size was reduced from 272 to 144 bytes.
New Features & Enhancements ✨: Support was added for ORDER BY ALL
for easy ordering of all columns in a query.
See the Apache DataFusion 48.0.0 Blog for details.
Amazon S3 Vectors Multi-Column Primary Keys: The Amazon S3 Vectors engine now supports datasets with multi-column primary keys. This enables vector indexes for datasets where more than one column forms the primary key, such as those splitting documents into chunks for retrieval contexts. For multi-column keys, Spice serializes the keys using arrow-json format, storing them as single string keys in the vector index.
Model2Vec Embeddings: Spice now supports model2vec static embeddings with a new model2vec
embeddings provider, for sentence transformers up to 500x faster and 15x smaller, enabling scenarios requiring low latency and high-throughput encoding.
Learn more in the Model2Dev Embeddings documentation.
Kafka Data Connector: Use from: kafka:<topic>
to ingest data directly from Kafka topics for integration with existing Kafka-based event streaming infrastructure, providing real-time data acceleration and query without additional middleware.
Example Spicepod.yml
:
Learn more in the Kafka Data Connector documentation.
MongoDB Data Connector: Use from: mongodb:<dataset>
to access and accelerate data stored in MongoDB, deployed on-premises or in the cloud.
Example spicepod.yml
:
Learn more in the MongoDB Data Connector documentation.
OpenAI Responses API Support: The OpenAI Responses API (/v1/responses
) is now supported, which is OpenAI's most advanced interface for generating model responses.
To enable the /v1/responses
HTTP endpoint, set the responses_api
parameter to enabled
:
Example spicepod.yml
:
Example curl
request:
To use responses in spice chat
, use the --responses
flag.
Example:
Use OpenAI-hosted tools supported by Open AI's Responses API by specifying the openai_responses_tools
parameter:
Example spicepod.yml
:
These OpenAI-specific tools are only available from the /v1/responses
endpoint. Any other tools specified via the tools
parameter are available from both the /v1/chat/completions
and /v1/responses
endpoints.
Learn more in the OpenAI Model Provider documentation.
OpenAI Embeddings & Models Connectors Usage Tier: The OpenAI Embeddings and Models Connectors now supports specifying account usage tier for embeddings and model requests, improving the performance of generating text embeddings or calling models during dataset load and search by increasing concurrent requests.
Example spicepod.yml
:
By setting the usage tier to the matching usage tier for your OpenAI account, the Embeddings and Models Connector will increase the maximum number of concurrent requests to match the specified tier.
Learn more in the OpenAI Model Provider documentation.
No breaking changes.
The Spice Cookbook includes 77 recipes to help you get started with Spice quickly and easily.
To upgrade to v1.6.0, use one of the following methods:
CLI:
Homebrew:
Docker:
Pull the spiceai/spiceai:1.6.0
image:
For available tags, see DockerHub.
Helm:
AWS Marketplace:
🎉 Spice is also now available in the AWS Marketplace!
compute_index
to the acceleration (#6792) by @phillipleblanc in #6792Responses
trait and LLM registry for model providers that support the OpenAI Responses API (#6798) by @Advayp in #6798VectorScanTableProvider
and VectorQueryTableProvider
support multi-column primary keys (#6757) by @Jeadie in #6757