> 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 AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.nvidia.com/nemo/relay/_mcp/server.

# Struct EndLlm Handle Params

> Builder parameters for `NemoRelayContextState::build_llm_end_event`.

Generated from `cargo doc --no-deps -p nemo-relay -p nemo-relay-adaptive -p nemo-relay-pii-redaction -p nemo-relay-ffi -p nemo-relay-types -p nemo-relay-plugin -p nemo-relay-worker-proto -p nemo-relay-worker`.

<pre />

Builder parameters for [`NemoRelayContextState::build_llm_end_event`](/reference/api/rust-library-reference/nemo-relay/api/runtime/state/struct-nemorelaycontextstate).

## Fields

### `handle: &'a LlmHandle`

LLM handle to serialize into the emitted end event.

### `data: Option<Json>`

Optional data payload merged over the handle data.

### `metadata: Option<Json>`

Optional metadata payload merged over the handle metadata.

### `annotated_response: Option<Arc<AnnotatedLlmResponse>>`

Optional normalized response annotation produced by a response codec.

### `timestamp: Option<DateTime<Utc>>`

Optional timestamp recorded on the emitted end event. When omitted, the runtime records the current UTC time, or one microsecond after the handle start time if the current time is not later.

## Implementations

### `impl<'a> EndLlmHandleParams<'a>`

<pre />

#### `builder`

<pre />

Create a builder for building `EndLlmHandleParams`. On the builder, call `.handle(...)`, `.data(...)`(optional), `.metadata(...)`(optional), `.annotated_response(...)`(optional), `.timestamp(...)`(optional) to set the values of the fields. Finally, call `.build()` to create the instance of `EndLlmHandleParams`.

## Trait Implementations

### `impl<'a> Clone for EndLlmHandleParams<'a>`

<pre />

#### `clone`

<pre />

#### `clone_from`

<pre />