nemo-relay-instrument-calls

작성자: nvidia

애플리케이션 도구 호출 및 LLM/제공자 호출을 NeMo Relay 범위와 관리형 실행 API로 래핑합니다.

npx skills add https://github.com/nvidia/nemo-relay --skill nemo-relay-instrument-calls

Instrument Tool And LLM Calls

Use this skill when an app already has tool functions or model/provider calls and needs to run them through NeMo Relay correctly. Keep the original callable behavior stable while adding Relay lifecycle capture.

Default Guidance

  • Put a scope around the natural agent, request, workflow, or graph boundary.
  • Use managed execution APIs first:
    • Rust: tool_call_execute(ToolCallExecuteParams::builder()...), llm_call_execute(LlmCallExecuteParams::builder()...)
    • Python: tools.execute(...), llm.execute(...)
    • Node.js: toolCallExecute(...), llmCallExecute(...)
    • Go: tools.Execute(...), llm.Execute(...) or the top-level wrappers
  • Use manual lifecycle APIs only when the host framework cannot be wrapped by the managed execute helpers.

Embedded Runtime Semantics

  • Managed tool and LLM execution runs conditional-execution guardrails first on the raw input. If rejected, the runtime emits a standalone mark event and does not run request intercepts or the callable.
  • Request intercepts run after conditional guardrails and rewrite the real input that reaches execution intercepts and the callback.
  • Sanitize-request guardrails affect emitted start-event payloads only. They do not rewrite the caller-visible request or arguments.
  • Execution intercepts wrap the callback with the middleware next pattern and may short-circuit by returning their own result.
  • Sanitize-response guardrails affect emitted end-event payloads only. The value returned to application code remains the raw callback or execution-intercept result.
  • If execution fails after the start event has been emitted, the runtime still emits an end event without a semantic output payload.
  • Tool calls are named operations with JSON-compatible arguments and results. Keep the original tool callable responsible for business logic; let NeMo Relay own lifecycle events, middleware, and metadata.
  • LLM calls use an LLMRequest made of metadata plus content. Pass model names and stable call identifiers when they matter for trace export or diagnostics.
  • Manual lifecycle APIs are for framework adapters that already own execution. If you use them, every start call needs a matching end or error path with the relevant semantic payloads supplied explicitly.
  • Partial middleware APIs such as request_intercepts(...) and conditional_execution(...) are for advanced adapters that need one middleware family before calling a provider manually.
  • Streaming LLM wrappers collect chunks and finalize a response at stream end; dropping the stream early can prevent finalizers and subscribers from seeing a complete output.

Checklist

  • Scope boundary chosen before the first tool or LLM call
  • Existing tool function wrapped without losing its original arguments/result
  • Existing LLM/provider call wrapped at the right abstraction layer
  • Optional metadata, attributes, or model name attached where useful
  • Context propagation handled if the call hops threads or async tasks

Use Another Skill When

Choose another skill when the task requires a neighboring workflow:

  • Use nemo-relay-plugin-observability for traces, ATIF, or export setup.
  • Use nemo-relay-debug-runtime-integration to debug missing events or load failures.
  • Use nemo-relay-instrument-context-isolation for per-request isolation or worker-pool guidance.
  • Use nemo-relay-plugin-build for reusable, configuration-activated runtime behavior.

Related Skills

Use these skills for adjacent workflows:

  • Start onboarding with nemo-relay-get-started.
  • Add typed wrappers with nemo-relay-instrument-typed-wrappers.
  • Configure export with nemo-relay-plugin-observability.
  • Package reusable behavior with nemo-relay-plugin-build.

nvidia의 다른 스킬

compileiq-debug
nvidia
무언가 잘못되었을 때 사용: Search()가 멈추거나, 모든 평가가 INVALID_SCORE를 반환하거나, 점수가 개선되지 않거나, 모든 설정이 동일한 숫자를 반환하거나, ptxas 오류 등이 발생할 때
create-github-pr
nvidia
gh CLI를 사용하여 GitHub 풀 리퀘스트를 생성합니다. 사용자가 새 PR을 만들거나, 코드 리뷰를 제출하거나, 풀 리퀘스트를 열고자 할 때 사용합니다. 트리거 키워드 -…
nemoclaw-maintainer-cross-issue-sweep
nvidia
다른 열린 이슈들을 스캔하여 주어진 PR이 함께 수정하거나 실수로 망가뜨릴 수 있는 이슈를 찾습니다. 인접 수정 기회와 모순 위험을 file:line…과 함께 출력합니다.
fhir-basics
nvidia
에이전트에게 FHIR R4 API의 작동 방식, 사용 가능한 리소스, 검색 매개변수를 사용한 쿼리 방법, 모든 응답 형식을 올바르게 파싱하는 방법을 가르칩니다…
compileiq-validate-result
nvidia
검색이 완료된 후, 속도 향상을 청구하거나 ACF를 발송하기 전에 사용합니다. dump_results CSV를 로드하고, 상위 K개 후보(단일 목표)를 추출합니다…
changelog-audit
nvidia
릴리스 전에 Warp CHANGELOG.md를 감사합니다: 누락된 항목 복구, 사용자 영향별 정렬, 항목 언어 다듬기, 줄 바꿈, (릴리스 브랜치 모드) 비교 업데이트…
maintain-dynamic-plugins
nvidia
NeMo Relay 동적 플러그인 로더, 매니페스트, Rust 네이티브 SDK, gRPC 워커 프로토콜, Python 워커 SDK, 문서, 테스트 및 릴리스 워크플로 커버리지를 유지 관리합니다.
dgx-diagnose
nvidia
일반적인 DGX Station GB300 문제 진단 — CUDA 충돌, 잘못된 GPU 타겟팅, vLLM/SGLang 컨테이너 버그, MIG 상태 문제, NVLink/Fabric Manager 오류,…