> 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.

# Module openai_responses

> Built-in codec for the OpenAI Responses API.

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

Built-in codec for the OpenAI Responses API.

Implements [`LlmCodec`](/reference/api/rust-library-reference/nemo-relay/codec/traits/trait-llmcodec) (request decode/encode) and [`LlmResponseCodec`](/reference/api/rust-library-reference/nemo-relay/codec/traits/trait-llmresponsecodec) (response decode) for the OpenAI Responses API format.

The Responses API differs significantly from Chat Completions:

* **Response**: Heterogeneous `output` array (message, function\_call, reasoning) instead of `choices[0].message`.
* **Finish reason**: Derived from `status` + `incomplete_details.reason` instead of `finish_reason` field.
* **Request**: Uses `input` (string or array) instead of `messages`, and `instructions` (top-level) instead of system message.
* **Max tokens**: `max_output_tokens` instead of `max_tokens`.

## Structs

* [OpenAIResponsesCodec](/reference/api/rust-library-reference/nemo-relay/codec/openai_responses/struct-openairesponsescodec): Built-in codec for the OpenAI Responses API.
* [OpenAIResponsesStreamingCodec](/reference/api/rust-library-reference/nemo-relay/codec/openai_responses/struct-openairesponsesstreamingcodec): Streaming counterpart to [`OpenAIResponsesCodec`](/reference/api/rust-library-reference/nemo-relay/codec/openai_responses/struct-openairesponsescodec).