> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.nvidia.com/nemo/relay/llms.txt.
> For full documentation content, see https://docs.nvidia.com/nemo/relay/llms-full.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.nvidia.com/nemo/relay/_mcp/server.

# Enum Provider Feature

> Feature that a backend or model family may support.

Generated from `cargo doc --no-deps -p nemo-relay -p nemo-relay-adaptive -p nemo-relay-ffi`.

```rust
pub enum ProviderFeature {
    ExplicitCacheBreakpoints,
    AutomaticPrefixCaching,
    RetentionTiers,
    PriorityScheduling,
    ModelRouting,
    DeferredToolLoading,
    FileReferences,
    StructuredOutput,
    PrefixAffinityHints,
    StreamingTokenCounts,
}
```

Feature that a backend or model family may support.

Used by the capability registry and policy engine to determine which optimization intents can be expressed for a given target.

## Variants

### `ExplicitCacheBreakpoints`

<pre />

Backend supports explicit cache control breakpoints (e.g., Anthropic).

### `AutomaticPrefixCaching`

<pre />

Backend uses automatic prefix caching (e.g., OpenAI).

### `RetentionTiers`

<pre />

Backend supports retention tier control.

### `PriorityScheduling`

<pre />

Backend supports priority-based scheduling.

### `ModelRouting`

<pre />

Backend supports model routing/selection.

### `DeferredToolLoading`

<pre />

Backend supports deferred tool loading.

### `FileReferences`

<pre />

Backend supports file/artifact references in prompts.

### `StructuredOutput`

<pre />

Backend supports structured output schemas.

### `PrefixAffinityHints`

<pre />

Backend supports prefix-affinity routing hints.

### `StreamingTokenCounts`

<pre />

Backend reports per-chunk token counts in streaming responses.

## Trait Implementations

### `impl Clone for ProviderFeature`

<pre />

#### `clone`

<pre />

#### `clone_from`

<pre />

### `impl Debug for ProviderFeature`

<pre />

#### `fmt`

<pre />

### `impl<'de> Deserialize<'de> for ProviderFeature`

<pre />

#### `deserialize`

<pre />

### `impl Hash for ProviderFeature`

<pre />

#### `hash`

<pre />

#### `hash_slice`

<pre />

### `impl PartialEq for ProviderFeature`

<pre />

#### `eq`

<pre />

#### `ne`

<pre />

### `impl Serialize for ProviderFeature`

<pre />

#### `serialize`

<pre />

### `impl Copy for ProviderFeature`

<pre />

### `impl Eq for ProviderFeature`

<pre />

### `impl StructuralPartialEq for ProviderFeature`

<pre />