Official NVIDIA-authored guidance for NVIDIA cuDF GPU DataFrames, pandas acceleration, dask-cuDF, ETL, joins, groupby, CSV/Parquet I/O, nullable semantics, and multi-GPU DataFrame workloads.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Not for writing library code (name that library skill). Use this skill whenever another DOCA skill says "prefer the structured tool per doca-structured-tools-contract", or when the user wants a one-shot answer that consolidates info multiple manual commands would produce — DOCA env / version / devices / capabilities / validate / host vs DPU state. Trigger even when the user does not explicitly mention "structured tool" or "doca-env --json" — typical implicit phrasings include "is there one command that tells me everything about my DOCA install", "what version is X capability available since", "every PF/VF/SF visible on this BlueField with PCIe address", "will this pipe pass validate before commit", "diff host vs DPU state", or "why does the agent give a one-line answer on host A and five commands on host B". Refuse and route elsewhere for general DOCA orientation, specific library API how-to, or install-from-scratch guidance — those belong to the per-library skill, doca-public-knowledge-map, or doca-setup.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
설치 방법 보기설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.
Where to start: Reach for this skill whenever a workflow in
another skill says "prefer the structured tool per
doca-structured-tools-contract". Read
## The agent behavior contract
first; then drill into the matching schema in ## Schemas.
If the host has the structured tool, prefer its output. If it does
not, fall back to the manual command chain in the same schema
section. Always report which path was taken so the user can fix
the gap (or so a future bundle update can detect that the structured
path was never tried).
Scope boundary. Writing library code ("write packet-steering code with the DOCA Flow API") is not a structured-tools question: name the library skill and stop. Checking a spec before commit ("is my DOCA Flow pipe spec valid before I commit it?") IS in scope: apply the validate-before-commit schema below.
See references/examples.md for the five
worked routing examples. Keep this loader focused on detection,
fallback behavior, and the authoritative schemas below.
Apply the validate-before-commit schema:
command -v doca-validate.
None ships today, so report "validation: skip (no read-only validator
installed)".doca_flow_pipe_validate call; do not invent one.
DOCA Flow validates at constructor time: a failing
doca_flow_pipe_create (DOCA_ERROR_INVALID_VALUE /
DOCA_ERROR_NOT_SUPPORTED) is the validation signal.doca-flow TASKS.md
## test on a test setup after its snapshot and safety preconditions,
never as a read-only probe from this contract.Load this skill whenever another skill's workflow tells the agent to prefer the structured tool, OR whenever the user's question implies they want a single one-shot answer that consolidates information multiple manual commands would otherwise produce.
Concretely:
Do not load this skill for general DOCA orientation, for
specific library API questions, or for install-from-scratch
guidance. For those, use the matching library skill +
doca-public-knowledge-map
Running probes and fallbacks requires shell access to the target host, either directly by the agent or through commands the user runs.
<helper> (path:
<path>)" OR "falling back to manual chain (structured
<helper> probe failed: <reason>)", substituting the helper
selected by the schema and the actual probe failure. Never report
a helper different from the one the schema selected.sudo is emitted for the user to run or executed only
through an already approved privileged channel. Never silently
elevate merely because the structured helper was absent. Do not
assume such a channel exists; if it does not, ask the user to run
the command or report the privileged-data gap.The contract is a four-step loop the agent runs every time a skill's Command appendix references this contract:
command -v doca-env,
test -f /opt/mellanox/doca/share/version-matrix.json,
command -v doca-capability-snapshot. Probes are read-only and
safe to run on any host. The executable helpers are deferred to
PR2, so until they ship, failed command probes are expected and
the manual chains are the operative path unless a helper was
installed separately.## Schemas.
It is authoritative only when parsing succeeds and every required
field has the documented type. Malformed JSON, missing fields, or
type mismatches make the structured path fail: report that exact
validation failure and use step 3. Ignore unexpected extra fields
as advisory per ground rule 5; do not expose them as contract
output. Do NOT run the manual chain merely "to double check" valid
structured output — valid structured output replaces the chain.doca-setup). If that
route cannot resolve the gap, name the missing commands or
artifacts, state that the consolidated answer cannot be completed,
and stop rather than presenting partial data as complete.<tool> (path: <path>)." — when the
probe succeeded and its output validated.<tool> probe
failed: <reason>)." — when the probe failed. Include the
actual probe command and failure reason; for command -v, note
that failure means the helper was not found on PATH, not that
it is definitively absent. Do not suggest installing the helper
(ground rule 6: none ships today).<tool> output failed schema
validation: <reason>)." — when the helper exists but its
output is malformed, missing required fields, or has invalid
field types.The report step proves the agent tried the helper before falling back.
Select the schema from the question shape: environment/install state
uses doca-env; capability minimum-version lookup uses
version-matrix; per-device library capabilities use
capability-snapshot; spec validation uses
validate-before-commit; and a host-versus-DPU state comparison uses
the two collect-state schemas. When a per-skill Command appendix names
a schema, use that schema directly.
Each subsection below names ONE structured tool the bundle expects to interoperate with, gives its detection probe, names its top-level JSON shape, and lists the manual command chain the agent walks when the probe fails.
Detection probe: command -v doca-env. The structured tool, if
installed, lives at the same $PATH location as doca_caps (i.e.
under the DOCA install tree's bin/).
Top-level shape (JSON object):
| Field | Type | Notes |
|---|---|---|
version | object | pkg_config / applications_version / doca_caps / bfb (string | null) / consistent (bool) |
devices | array of object | one entry per visible PCIe function: pcie_address (e.g. 0000:03:00.0), kind (PF | VF | SF), name, representor_of (string | null), state (active | down | unknown), mtu (number) |
libraries | array of object | one entry per public DOCA library: pkg_config_name, installed (bool), pc_path (string | null) |
sample_paths | array of object | one entry per library: library, path (the on-disk samples root) |
drivers | object | mlx5_core_loaded (bool), mlx5_ib_loaded (bool), kernel_version (string) |
hugepages | object | available_2m (number), available_1g (number), mount_point (string | null) |
host_kind | string | one of host | bluefield | unknown |
bf_mode | string | null | one of smartnic | dpu | switch | null (when host_kind != bluefield) |
Manual fallback chain (run in order; combine the outputs to synthesize the same answer):
pkg-config --modversion doca-common → version.pkg_configcat /opt/mellanox/doca/applications/VERSION → version.applications_versiondoca_caps --version → version.doca_capsdoca_caps --list-devs → devices array (parse PCIe address + kind + representor)doca-common.pc first. If find /opt/mellanox/doca -name doca-common.pc -print -quit returns empty, stop this row, surface the partial-install gap, and route to doca-setup; do not expand an empty directory glob. Otherwise derive PCDIR from that result and run for pc in "$PCDIR"/*.pc; do pkg-config --exists "$(basename "$pc" .pc)" && echo "$pc"; done → libraries array. If PCDIR is not a directory or no module resolves through pkg-config --exists, surface that gap and route to doca-setup. PCDIR is commonly /opt/mellanox/doca/lib/<arch>-linux-gnu/pkgconfig on DOCA 3.3+, or /opt/mellanox/doca/infrastructure/lib/pkgconfig on legacy / split-profile installs.ls /opt/mellanox/doca/samples/ → sample_paths arraylsmod | grep -E '^mlx5_(core|ib)' and uname -r → drivers objectcat /proc/meminfo | grep -i Huge → hugepages objectdmidecode -s system-product-name (or cat /proc/device-tree/model on BlueField) → host_kindmlxconfig -d <pcie> q INTERNAL_CPU_MODEL → bf_mode (when host_kind == bluefield)Detection probe: test -f /opt/mellanox/doca/share/version-matrix.json.
Top-level shape (JSON object):
| Field | Type | Notes |
|---|---|---|
schema_version | string | semver of THIS contract; bumps on schema changes |
generated_at | string | ISO-8601 timestamp of when the matrix was generated |
entries | array of object | one row per (library, capability) pair |
Per-entry shape:
| Field | Type | Notes |
|---|---|---|
library | string | pkg-config module name (doca-flow, doca-rdma, doca-comch, …) |
capability | string | machine-readable cap name; the per-library skill's Command appendix lists which doca_<lib>_cap_* query this maps to |
display_name | string | human-readable label; the agent quotes this when reporting |
min_doca_version | string | first DOCA release in which the capability was available (semver) |
max_doca_version | string | null | last DOCA release in which the capability was available (null = still available) |
source_url | string | the public docs URL the row was derived from |
source_quote | string | the exact prose from the public docs that established the row |
Manual fallback chain:
doca-public-knowledge-map.pkg-config --modversion doca-<library> on
the user's host; if the installed version is older than the
"available since" line, the capability is not on this install
regardless of what the public docs say.Detection probe: command -v doca-capability-snapshot. The
structured tool, if installed, lives at the same $PATH location as
doca_caps.
Top-level shape (JSON object):
| Field | Type | Notes |
|---|---|---|
snapshot_at | string | ISO-8601 timestamp |
doca_version | string | doca_caps --version at snapshot time |
host_kind | string | host | bluefield |
devices | array of object | one entry per doca_devinfo: pcie_address, library_capabilities (map of library → list of capability flags) |
Manual fallback chain:
doca_caps --list-devs → device enumerationdoca_caps --pci-addr <bdf> (side-effect
free; see doca-caps). Only if a capability that tool does not
print is required, use the library's own ## test workflow from
its shipped sample; never write new test code for a snapshot.Detection probe: command -v doca-validate. A library-specific
constructor-time validation surface is not a detection probe and may
mutate state. For example, the public Flow header at this release
ships no separate doca_flow_pipe_validate symbol: never invent one,
and never use doca_flow_pipe_create to test for the helper.
Top-level shape (JSON object):
| Field | Type | Notes |
|---|---|---|
library | string | which DOCA library the spec is for |
spec_path | string | path on disk to the spec being validated |
result | string | pass | fail | skip |
checks | array of object | per-check breakdown: name, status (pass | fail | skip), details (string), remediation (string | null) |
Manual fallback chain:
## test workflow. For some libs this is a dedicated _validate
call. Constructor-time checks embedded in a mutating _create
call are not read-only validators. In particular,
doca_flow_pipe_create belongs to doca-flow TASKS.md ## test
after that skill's snapshot/safety preconditions; do not invoke it
as a pre-commit probe. If the caller requires read-only validation
and the installed API exposes no dedicated validator, report
result: skip, route to the per-library ## test workflow, and
stop here (skip steps 2 and 3)._create) before any commit / create / submit call.DOCA_ERROR_INVALID_VALUE
and DOCA_ERROR_NOT_SUPPORTED are result: fail. Permission,
transport, unavailable-device, and other operational errors are
result: skip, with the exact doca_error_get_descr() text and
remediation in a checks entry. Never turn an inability to run
validation into a claim that the spec itself failed.Select the helper for the side where commands execute: host uses
doca-collect-host-state; BlueField uses doca-collect-dpu-state.
The presence of both binaries does not imply cross-side access. For a
diff, collect independently on each side and then compare the outputs.
Detection probes: command -v doca-collect-host-state (run on
the host side) and command -v doca-collect-dpu-state (run on the
BlueField side).
Top-level shape (JSON object), shared by both:
| Field | Type | Notes |
|---|---|---|
side | string | host | dpu |
doca_version | string | doca_caps --version |
firmware_version | string | output of flint -d <pcie> q (sudo) |
kernel_version | string | uname -r |
mlx5_modules | array of string | which mlx5_* modules are loaded |
bf_mode | string | null | smartnic | dpu | switch | null |
devices | array of object | per-PCIe-function record: pcie_address, kind (PF | VF | SF), state, mtu, representor_of |
Manual fallback chain (per side):
doca_caps --version → doca_versionuname -r → kernel_versionlsmod | grep mlx5 → mlx5_modulesdevlink dev show + lspci | grep Mellanox + ip -j link →
enumerate the devices array and its PCIe addressesflint -d <pcie> q
through the approved privileged channel → firmware_versionmlxconfig -d <pcie> q INTERNAL_CPU_MODEL → bf_modeThe two sides are deliberately symmetric so the agent can diff them trivially when diagnosing host ↔ BlueField mismatches.
No helper named in this contract ships yet (ground rule 6); when one lands it satisfies the schema above unchanged, so no other skill needs a retrofit.
아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.
로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.
아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.
Official NVIDIA-authored guidance for NVIDIA cuDF GPU DataFrames, pandas acceleration, dask-cuDF, ETL, joins, groupby, CSV/Parquet I/O, nullable semantics, and multi-GPU DataFrame workloads.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Customize NVIDIA Nemotron Voice Agent's Generic Pipecat example for healthcare appointment, five-field patient intake, or custom tool-calling workflows without a separate backend.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Calibrate a new dataset from live RTSP camera streams via the AutoMagicCalib REST API. Use when the user provides RTSP URLs or asks to calibrate live cameras; VIOS records clips, AMC ingests them, then runs calibration.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Run end-to-end calibration on the shipped sample dataset (sdg_08_2_sample_data_010926.zip) against a running AMC microservice. Use when user says 'test sample dataset', 'run sample calibration', 'verify AMC install', or 'launch and test'.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Calibrates pre-recorded `cam_*.mp4` datasets through the AutoMagicCalib REST API. Use for user-supplied local MP4s; route live RTSP streams to `amc-run-rtsp-calibration`.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Launch AutoMagicCalib microservice and web UI from NGC release images via Docker Compose. Use when user says 'deploy auto calibration', 'launch auto calibration', 'launch AMC', 'start MS+UI', or 'set up auto-magic-calib'. Requires NGC API key.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.