For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
  • About NVIDIA NeMo Relay
    • Overview
    • Architecture
    • Ecosystem
    • Concepts
    • Release Notes
  • Getting Started
    • Agent Runtime Primer
    • Prerequisites
    • Installation
    • Configuration / Setup
    • Quick Start
  • NVIDIA NeMo Relay CLI
    • About
    • Basic Usage
    • Claude Code
    • Codex
    • Cursor
    • Hermes Agent
  • Supported Integrations
    • About
    • OpenClaw Plugin Guide
    • LangChain Integration Guide
    • LangGraph Integration Guide
    • Deep Agents Integration Guide
  • Instrument Applications
    • About
    • Adding Scopes and Marks
    • Instrument a Tool Call
    • Instrument an LLM Call
    • Add Middleware
    • Code Examples
  • Observability Plugin
    • About
    • Configuration
    • Agent Trajectory Interchange Format (ATIF)
    • Agent Trajectory Observability Format (ATOF)
    • OpenTelemetry
    • OpenInference
  • Adaptive Plugin
    • About
    • Configuration
    • Adaptive Cache Governor (ACG)
    • Adaptive Hints
  • NeMo Guardrails Plugin
    • About
    • Configuration
  • Integrate into Frameworks
    • About
    • Adding Scopes
    • Wrap Tool Calls
    • Wrap LLM Calls
    • Handle Non-Serializable Data
    • Using Codecs
    • Provider Codecs
    • Provider Response Codecs
    • Code Examples
  • Build Plugins
    • About
    • Define a Plugin
    • Validate Plugin Configuration
    • Plugin Configuration Files
    • Register Plugin Behavior
    • Design Plugin Configuration
    • NeMo Guardrails Example Plugin
    • Code Examples
  • Contribute
    • About
    • Development Setup
    • Workflow and Reviews
    • Testing and Documentation
  • Reference
    • APIs
      • Python Library Reference
      • Node.js Library Reference
      • Rust Library Reference
        • nemo-relay
          • api
            • event
              • BaseEvent
              • CategoryProfile
              • DataSchema
              • EventCategory
              • MarkEvent
              • ScopeEvent
              • Event
              • ScopeCategory
              • ATOF_VERSION
              • attributes_from_handle
              • llm_attributes_to_strings
              • scope_attributes_to_strings
              • tool_attributes_to_strings
            • llm
            • registry
            • runtime
            • scope
            • subscriber
            • tool
          • codec
          • config_editor
          • error
          • json
          • observability
          • plugin
          • plugins
          • stream
          • editor_config
        • nemo-relay-adaptive
        • nemo-relay-ffi
    • Performance
  • Resources
    • Support and FAQs
    • Glossary
    • Troubleshooting Guide
    • Community
    • Legal
NVIDIANVIDIA
Developer-friendly docs for your API
Privacy Policy | Your Privacy Choices | Terms of Service | Accessibility | Corporate Policies | Product Security | Contact

Copyright © 2026, NVIDIA Corporation.

LogoLogo
On this page
  • Fields
  • model_name: Option<String>
  • tool_call_id: Option<String>
  • subtype: Option<String>
  • extra: BTreeMap<String, Json>
  • annotated_request: Option<Arc<AnnotatedLlmRequest>>
  • annotated_response: Option<Arc<AnnotatedLlmResponse>>
  • Implementations
  • impl CategoryProfile
  • builder
  • impl CategoryProfile
  • is_wire_empty
  • Returns
  • Trait Implementations
  • impl Clone for CategoryProfile
  • clone
  • clone_from
  • impl Debug for CategoryProfile
  • fmt
  • impl Default for CategoryProfile
  • default
  • impl<'de> Deserialize<'de> for CategoryProfile
  • deserialize
  • impl PartialEq for CategoryProfile
  • eq
  • ne
  • impl Serialize for CategoryProfile
  • serialize
  • impl StructuralPartialEq for CategoryProfile
ReferenceAPIsRust Library Referencenemo-relayapievent

Struct Category Profile

||View as Markdown|
Previous

Struct Base Event

Next

Struct Data Schema

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

pub struct CategoryProfile {
    pub model_name: Option<String>,
    pub tool_call_id: Option<String>,
    pub subtype: Option<String>,
    pub extra: BTreeMap<String, Json>,
    pub annotated_request: Option<Arc<AnnotatedLlmRequest>>,
    pub annotated_response: Option<Arc<AnnotatedLlmResponse>>,
}

Category-specific profile data.

Unknown wire keys are preserved in extra. LLM annotations are serialized under category_profile when a codec captures them.

Fields

model_name: Option<String>

Normalized model identifier for LLM events.

tool_call_id: Option<String>

LLM-provider correlation ID for Tool events.

subtype: Option<String>

Vendor subtype required when category == "custom".

extra: BTreeMap<String, Json>

Unknown category-profile keys preserved from newer producers.

annotated_request: Option<Arc<AnnotatedLlmRequest>>

Normalized request annotation for LLM start events.

annotated_response: Option<Arc<AnnotatedLlmResponse>>

Normalized response annotation for LLM end events.

Implementations

impl CategoryProfile

impl CategoryProfile

builder

pub fn builder() -> CategoryProfileBuilder<((), (), (), (), (), ())>

Create a builder for building CategoryProfile. On the builder, call .model_name(...)(optional), .tool_call_id(...)(optional), .subtype(...)(optional), .extra(...)(optional), .annotated_request(...)(optional), .annotated_response(...)(optional) to set the values of the fields. Finally, call .build() to create the instance of CategoryProfile.

impl CategoryProfile

impl CategoryProfile

is_wire_empty

pub fn is_wire_empty(&self) -> bool

Return true when the profile has no wire-serialized fields.

Returns

true when no profile fields would be serialized on the wire.

Trait Implementations

impl Clone for CategoryProfile

impl Clone for CategoryProfile

clone

fn clone(&self) -> CategoryProfile

clone_from

fn clone_from(&mut self, source: &Self)

impl Debug for CategoryProfile

impl Debug for CategoryProfile

fmt

fn fmt(&self, f: &mut Formatter<'_>) -> Result

impl Default for CategoryProfile

impl Default for CategoryProfile

default

fn default() -> CategoryProfile

impl<'de> Deserialize<'de> for CategoryProfile

impl<'de> Deserialize<'de> for CategoryProfile

deserialize

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
    __D: Deserializer<'de>,

impl PartialEq for CategoryProfile

impl PartialEq for CategoryProfile

eq

fn eq(&self, other: &CategoryProfile) -> bool

ne

fn ne(&self, other: &Rhs) -> bool

impl Serialize for CategoryProfile

impl Serialize for CategoryProfile

serialize

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>where
    __S: Serializer,

impl StructuralPartialEq for CategoryProfile

impl StructuralPartialEq for CategoryProfile