NeMo Flow
nemo-flow-adaptive is the Rust companion crate for adaptive NeMo Flow
runtime behavior. Use it with nemo-flow when an agent runtime should learn
from observed executions, inject runtime hints, or persist adaptive state.
Adaptive behavior is installed through the same plugin system used by the core runtime, so applications can enable it without changing their orchestration framework.
Why Use It?
- ⚙️ Install adaptive behavior through plugins: Enable adaptive runtime components through the same configuration path as other NeMo Flow plugins.
- 📈 Learn from observed executions: Derive runtime hints from scope, tool, and LLM events without replacing the application framework.
- 💾 Choose local or shared state: Use in-memory state for local runs or the optional Redis backend for shared persistence.
- 🧩 Keep adaptive behavior reusable: Package telemetry, hint injection, tool parallelism, and cache-governor behavior behind stable component settings.
What You Get
- ✅
AdaptiveConfig: A canonical config contract for the top-leveladaptiveplugin component. - ✅ Built-in component settings: Typed config helpers for telemetry, adaptive hints, tool parallelism, and the Adaptive Cache Governor.
- ✅ State backends: In-memory state by default and Redis-backed state behind
the
redis-backendfeature. - ✅ Learning primitives: Runtime helpers and learners built on NeMo Flow events.
- ✅ Adaptive Cache Governor (ACG) module surface: The canonical
nemo_flow_adaptive::acgmodule for PromptIR, provider plugins, stability analysis, and cache telemetry normalization.
Installation
Install the published crate alongside the core runtime:
Enable Redis-backed state only when the application needs shared persistence:
For local source development:
Getting Started
Create a default adaptive config and select the in-memory backend:
use ;
let config = AdaptiveConfig ;
Register the adaptive plugin component before validating or initializing plugin
configuration that includes an adaptive component:
register_adaptive_component?;
Feature Flags
redis-backend: Enables the Redis-backed storage implementation.
Builds without redis-backend still support the in-memory backend and the rest
of the adaptive pipeline.
Documentation
NeMo Flow Documentation: https://nvidia.github.io/NeMo-Flow