Proposal: Dora AI Fabric — A Native AI/ML Execution Layer for Dora #3163
Replies: 1 comment 1 reply
|
Thanks for writing this up, @SaitejaKommi, and apologies for the slow reply. The framing in your conclusion is one I agree with: dora should not become an AI framework, and the infrastructure around models is where a dataflow runtime earns its keep. Where I land differently is on how much of this is new. Three of the four pillars already have a home in dora, so I'd rather point you at those, and be clear about what is and is not on the roadmap, than stand up an "AI Fabric" layer beside them. First, a mechanical problem: the post is a pasted HTML fragment and the middle is missing. It jumps from the "AI/ML Concern" table straight to "AI metadata should preferably be descriptive". The sections that presumably describe the four pillars (contracts, observability, reproducibility, interoperability) are not there, so nobody can review the actual design. Could you repost those in plain markdown? Taking your open questions in turn against 1. Should contracts build on the existing type mechanism? Yes, and there is more of it than the proposal assumes. 2. Which AI/ML types first? There is no 3. Pipeline profiling as first-class? Most of it exists. The daemon has an OpenTelemetry/OTLP exporter behind the 4. Offline 5. Existing roadmap to build on? Model identity and version belong in the node hub manifest ( 6 / 7. Reference workload and highest-value pillar? Contracts are the highest-value piece dora can take upstream today: the tensor types from question 2 are small, measurable, and slot into a mechanism that already exists. The mcap exporter is the highest-value piece for interop, but per question 4 that one is community-driven and demand-gated. For a reference pipeline, the What I'd decline: an "AI Fabric" as a named layer or crate. The title says "native execution layer" while the non-goals correctly say it executes nothing; what remains is metadata + tooling, and dora's pattern for that is small opt-in extensions with measured overhead. The node-hub proposal only moved once it became a concrete spec with a checklist; the same will be true here. If the mcap exporter and tensor types land and turn out to want a shared surface, that is the moment to name it. Happy to review a tensor-types PR or the profiling guide. If you build an mcap exporter and find users for it, bring the numbers and we can talk about where it lives. |
Uh oh!
There was an error while loading. Please reload this page.
Proposal: Dora AI Fabric — A Native AI/ML Execution Layer for Dora
Abstract
Dora already provides a strong foundation for building distributed, low-latency dataflows for robotics and real-time applications.
As AI systems become increasingly composed of multiple models and processing stages, there is an opportunity to make Dora a stronger infrastructure layer for modern AI/ML pipelines.
A typical AI application may look like:
Today, each component can already be implemented as a Dora node. However, AI/ML developers still need to reason about:
AI/ML Concern | Example -- | -- Tensor representation | Shape, dtype, layout Model compatibility | Input/output requirements Model metadata | Model identity and version Performance | Inference and end-to-end latency Profiling | Bottlenecks and throughput Reproducibility | Configuration and model versions Recording / replay | Reproducing failures Interoperability | AI/robotics toolingAI metadata should preferably be descriptive rather than transformational.
For example, describing:
should not require copying the tensor merely to validate its metadata.
Backward Compatibility
Existing Dora dataflows should continue working unchanged.
AI metadata should be optional.
AI-aware nodes could additionally provide:
This allows the ecosystem to adopt the capabilities incrementally.
Non-Goals
This proposal does not aim to:
Create a new deep-learning framework
Replace PyTorch
Replace TensorRT
Replace ONNX Runtime
Replace Hugging Face
Implement model training
Create a vector database
Replace Dora's transport layer
Immediately replace
.drecRequire every Dora node to become AI-aware
Introduce GPU-specific abstractions into the core runtime without evidence
Success Criteria
A first prototype should demonstrate a real AI pipeline, rather than only adding abstractions.
For example:
The prototype should demonstrate:
Contracts preventing invalid connections
Measurable end-to-end latency
Model metadata
Recording / replay
At least one external visualization or interoperability workflow
The prototype should also include benchmarks showing the overhead introduced by each capability.
Why This Could Be Valuable for Dora
Most AI frameworks primarily focus on model execution.
Dora has an opportunity to focus on something different:
A production AI system is rarely just a model.
It is usually:
The reliability and latency of the entire pipeline matter just as much as the performance of an individual model.
Dora already provides the dataflow foundation for connecting these components.
The proposed AI Fabric would make that foundation more useful to AI/ML developers without changing Dora's core identity.
Why I Am Interested in This
My primary background is in Machine Learning, Generative AI, and software engineering, rather than robotics.
While contributing to Dora's Rust codebase, I became interested in the boundary between:
I think this is an interesting area where my AI/ML experience can contribute while continuing to learn Dora's systems and robotics architecture.
I would rather validate the direction with the Dora maintainers and community before implementing a large feature.
Open Questions
I would especially appreciate feedback from the Dora maintainers and community on:
Should AI/ML contracts build on Dora's existing semantic output/type mechanisms?
Which AI/ML types would provide the most value initially?
Would AI pipeline profiling be useful as a first-class Dora capability?
Would an offline
.drec → .mcapexporter be a useful first interoperability project?Are there existing roadmap items or abstractions that this proposal should build upon?
Which real AI/robotics workloads would be the best reference implementation?
Of the four areas — contracts, observability, reproducibility, and interoperability — which one would provide the highest value to Dora users today?
Conclusion
I am proposing this as a direction for discussion rather than a fixed API design.
The core idea is:
I would start with a small, measurable prototype — potentially AI data contracts + pipeline observability — and expand only if the results demonstrate real value.
I would appreciate feedback from the maintainers and community on whether this direction fits Dora's roadmap and, more importantly:
@heyong4725 @phil-opp
All reactions