A distributed, multimodal data engine built on DuckDB and Ray
Project description
A high-performance, multimodal-native engine for AI workloads
Vane unifies multimodal data, intelligence, and continuous learning with Python and SQL interfaces, seamlessly scaling from local environments to Ray clusters.
[!NOTE] Project status
- Vane Data — Supports most of the capabilities described below and is under active development, but is not yet production-ready. Its interfaces and internals may continue to evolve as the codebase is reviewed and hardened.
- Vane RL and Vane Agent — In the early stages of design and implementation. Their source code will be released in future updates.
- Vibe Coding and Agentic Engineering — Some parts of our system were initially built through Vibe Coding. We are now continuously analyzing, understanding, and improving the codebase, applying an Agentic Engineering approach to drive iterative optimization and enhance the quality, maintainability, and efficiency of the system.
Vane Data
Vane Data is a high-performance, multimodal-native data engine for AI workloads. Built on a fork of DuckDB, it extends the core execution engine with native multimodal processing and a unified framework for local and distributed execution.
Key Features
- Multimodal-native processing — Process images, video, audio, text, documents, events, sensor data, and tables through a unified type system. Dynamic batching and backpressure control handle variations in data size and computational cost.
- Python and SQL interfaces — Build data and AI pipelines with DuckDB SQL or the Python Relation API.
- Built-in AI operations — Invoke LLMs, generate embeddings, and run batch inference through OpenAI and Anthropic APIs or native vLLM integration. Prefix-aware bucketing improves vLLM prefix-cache hit rates and inference throughput.
- Heterogeneous execution — Overlap CPU, GPU, I/O, and model inference workloads through asynchronous scheduling.
- Local-to-cloud execution — Run the same pipeline locally or across distributed Ray clusters, with a foundation for future edge-cloud coordination.
- Designed for production AI workloads — Build multimodal training-data preprocessing pipelines and enterprise-scale batch inference workflows.
Getting Started
Installation
Vane supports Python 3.10, 3.11, and 3.12. Python 3.12 is recommended and is the primary development version.
Install the vane-ai package from PyPI:
pip install vane-ai
For more details, see the Installation Guide.
Quick Start
Follow the Quickstart guide to build and run your first Vane pipeline.
More Resources
Multimodal Inference Benchmarks
Hardware configuration: 1 node, 36 CPU cores, 64 GB memory, and 1× NVIDIA GeForce RTX 2080 Ti (22 GB VRAM).
We use the Ray Data benchmark suite to compare Vane with Ray Data and Daft. The benchmark source code is included in this repository.
The Ray runner targets distributed workloads. The current results are single-node only; validation on the multi-node environments used in the Ray Data benchmarks is still pending.
See the benchmarking page for detailed results.
Contributing
Contributions and collaborations are welcome. Contribution guidelines and community channels will be published as the project opens further.
License
Vane is distributed under the Apache License 2.0. See LICENSE and NOTICE for details and third-party attributions.
Acknowledgements
Vane Data is built on top of DuckDB and inspired by infrastructure systems such as Ray Data, Daft, and Trino.
- DuckDB: The core modular architecture and inspiration. A high-performance analytical database system. It is designed to be fast, reliable, portable, and easy to use.
- DuckDB-Python: The core modular architecture and inspiration. The DuckDB Python package.
- Ray Data: A scalable data processing library for AI workloads built on Ray
- Daft: High-Performance Data Engine for AI and Multimodal Workloads
- Trino: A fast distributed SQL query engine for big data analytics.
Special thanks to these projects.
Give Vane a ⭐️ if it helps you!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file vane_ai-0.1.0a1.tar.gz.
File metadata
- Download URL: vane_ai-0.1.0a1.tar.gz
- Upload date:
- Size: 13.4 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a2b74ea06157130f9302b6eccb6f204a4b850f6f9f9954dcf36c2e08bc0bce2e
|
|
| MD5 |
0c479bf3916f85a5011b6e64c27d511f
|
|
| BLAKE2b-256 |
8977d00e2e5ea4caebbd9db92c66a455c86c50484cdd590e8d85857af6800337
|
File details
Details for the file vane_ai-0.1.0a1-cp312-cp312-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: vane_ai-0.1.0a1-cp312-cp312-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 36.0 MB
- Tags: CPython 3.12, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e1fa616b4325e329c4d1df2d9f567a9cbe58ab6d977054ef096d84bd388cdaf5
|
|
| MD5 |
a4923483b9d0017096322095b6073130
|
|
| BLAKE2b-256 |
d6dd2afc7d8c471b08e2b7d10fc0d334a2c06d8feb6d10cf64a6d5ebcff704f2
|
File details
Details for the file vane_ai-0.1.0a1-cp311-cp311-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: vane_ai-0.1.0a1-cp311-cp311-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 35.9 MB
- Tags: CPython 3.11, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
85b744a60f3cf493f66b2acd86e52c2b39e19cfab2f3e6d8b272473211418b98
|
|
| MD5 |
433b24083e07553ec44ad90eec546d9d
|
|
| BLAKE2b-256 |
8c2e5398aa9f639f78a4b11f2ac3ab993cca10a4ed37195356c092320b2be71c
|
File details
Details for the file vane_ai-0.1.0a1-cp310-cp310-manylinux_2_28_x86_64.whl.
File metadata
- Download URL: vane_ai-0.1.0a1-cp310-cp310-manylinux_2_28_x86_64.whl
- Upload date:
- Size: 35.9 MB
- Tags: CPython 3.10, manylinux: glibc 2.28+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3d41e23f12547160887a13aac96371b0d44c00e85f995abbdb50dd33682179be
|
|
| MD5 |
a5547036efda0ad010fb3d66054d9683
|
|
| BLAKE2b-256 |
7f9a33882f73c2ab7485156eefae971e47f7201b07bbed22a4116664b62c2336
|