Embedded AI Deployment
matlab/agent-skills-playground
Deploy AI models to embedded hardware using MathWorks tools (MATLAB, Simulink, Embedded Coder).
Inspect a target ONNX model and prepare metadata for Quark ONNX PTQ planning.
$ npx skills add amd/Quark --skill quark-onnx-model-intake -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install amd/Quark quark-onnx-model-intake --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/amd/Quark.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills-impl/l1-atomic/onnx/quark-onnx-model-intake .claude/skills/quark-onnx-model-intake && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "quark-onnx-model-intake" agent skill from https://github.com/amd/Quark/tree/release%2F0.13/.claude/skills-impl/l1-atomic/onnx/quark-onnx-model-intake into .claude/skills/quark-onnx-model-intake/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "quark-onnx-model-intake", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/amd/Quark/tree/release%2F0.13/.claude/skills-impl/l1-atomic/onnx/quark-onnx-model-intakeType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add amd/Quark --skill quark-onnx-model-intake -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install amd/Quark quark-onnx-model-intake --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/amd/Quark.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills-impl/l1-atomic/onnx/quark-onnx-model-intake .agents/skills/quark-onnx-model-intake && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "quark-onnx-model-intake" agent skill from https://github.com/amd/Quark/tree/release%2F0.13/.claude/skills-impl/l1-atomic/onnx/quark-onnx-model-intake into .agents/skills/quark-onnx-model-intake/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "quark-onnx-model-intake", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add amd/Quark --skill quark-onnx-model-intake -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install amd/Quark quark-onnx-model-intake --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/amd/Quark.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills-impl/l1-atomic/onnx/quark-onnx-model-intake .cursor/skills/quark-onnx-model-intake && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "quark-onnx-model-intake" agent skill from https://github.com/amd/Quark/tree/release%2F0.13/.claude/skills-impl/l1-atomic/onnx/quark-onnx-model-intake into .cursor/skills/quark-onnx-model-intake/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "quark-onnx-model-intake", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/amd/Quark.git --path .claude/skills-impl/l1-atomic/onnx/quark-onnx-model-intake--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add amd/Quark --skill quark-onnx-model-intake -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install amd/Quark quark-onnx-model-intake --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/amd/Quark.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills-impl/l1-atomic/onnx/quark-onnx-model-intake .gemini/skills/quark-onnx-model-intake && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "quark-onnx-model-intake" agent skill from https://github.com/amd/Quark/tree/release%2F0.13/.claude/skills-impl/l1-atomic/onnx/quark-onnx-model-intake into .gemini/skills/quark-onnx-model-intake/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "quark-onnx-model-intake", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install amd/Quark quark-onnx-model-intakeInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add amd/Quark --skill quark-onnx-model-intake -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/amd/Quark.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills-impl/l1-atomic/onnx/quark-onnx-model-intake .github/skills/quark-onnx-model-intake && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "quark-onnx-model-intake" agent skill from https://github.com/amd/Quark/tree/release%2F0.13/.claude/skills-impl/l1-atomic/onnx/quark-onnx-model-intake into .github/skills/quark-onnx-model-intake/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "quark-onnx-model-intake", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add amd/Quark --skill quark-onnx-model-intake -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install amd/Quark quark-onnx-model-intake --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/amd/Quark.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills-impl/l1-atomic/onnx/quark-onnx-model-intake .opencode/skills/quark-onnx-model-intake && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "quark-onnx-model-intake" agent skill from https://github.com/amd/Quark/tree/release%2F0.13/.claude/skills-impl/l1-atomic/onnx/quark-onnx-model-intake into .opencode/skills/quark-onnx-model-intake/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "quark-onnx-model-intake", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
quark-onnx-model-intakeInspect a target ONNX model and prepare metadata for Quark ONNX PTQ planning.
Quark Onnx Model Intake is an agent skill from amd/Quark. Inspect a target ONNX model and prepare metadata for Quark ONNX PTQ planning. Use when the user needs .onnx path validation, opset / IR version detection, input/output shape and dtype discovery, op-type histogram, quantizable-op counting, deployment-target compatibility checks (CPU / CUDA / ROCm / AMD NPU CNN / AMD NPU Transformer), or risk assessment before planning PTQ. Trigger for "analyze my ONNX model", "check this onnx model", "what opset is this", "can Quark quantize this .onnx", "is my model…
Its SKILL.md is about 4.3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in AI & LLM Engineering, covering LLM inference and serving and Deployment. It works with ONNX and CUDA. The licence is MIT.
7 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 313cb0b. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
pythonpython3From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Quark Onnx Model Intake loads about 4.3k tokens when it runs. Until then it costs about 171 tokens; SKILL.md has 1,276 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from amd/Quark at commit 313cb0b, republished under its MIT licence (© amd). 1,276 words, ~4,326 tokens.
.claude/skills/quark-onnx-model-intake/SKILL.md (or your agent's skills folder).Validate the target .onnx model and extract the structural facts that an ONNX quant plan needs
to make correct quantization decisions. This step exists because different ONNX models have very
different quantization requirements — a CNN destined for AMD NPU CNN needs NHWC layout and PoF2
scales, an LLM exported to ONNX needs MatMulNBits or SmoothQuant + GPTQ, a >2 GB model needs
external-data handling, and a model that already contains QDQ nodes (or Quark's custom-op domains)
must not be silently re-quantized.
.onnx file, or a directory containing model.onnx plus its
model.onnx_data / external-weight blobsenv_context.json for Python and accelerator constraints (CUDA major / ROCm major / NPU
presence)workspace_context.json for the validated model pathonnx_install_result.json (optional) — the installed onnxruntime* variant determines which
execution providers are realistic deployment targetsCaptures the model's graph metadata, op-type coverage, quantizable-op count, deployment-target
compatibility, and risks. Schema is shared with the Torch intake; ONNX-specific fields live under
model.onnx_specific and quantization_targets.onnx_specific.
Schema: model_analysis.schema.json
{
"analysis_status": "complete",
"model": {
"model_path": "/data/models/resnet50/model.onnx",
"model_type": "onnx",
"loading_class": "onnx.load",
"estimated_size_gb": 0.10,
"onnx_specific": {
"ir_version": 8,
"producer_name": "pytorch",
"producer_version": "2.5.1",
"opsets": [{"domain": "ai.onnx", "version": 17}],
"uses_external_data": false,
"external_data_files": [],
"input_layout_guess": "NCHW",
"inputs": [
{"name": "input", "dtype": "float32", "shape": [1, 3, 224, 224]}
],
"outputs": [
{"name": "output", "dtype": "float32", "shape": [1, 1000]}
],
"has_dynamic_dims": false,
"has_qdq_already": false,
"has_quark_custom_ops": false,
"architecture_guess": "cnn"
}
},
"quantization_targets": {
"linear_layer_count": 53,
"onnx_specific": {
"op_counts": {"Conv": 53, "BatchNormalization": 53, "Relu": 49, "MaxPool": 1, "GlobalAveragePool": 1, "Gemm": 1},
"quantizable_op_counts": {"Conv": 53, "Gemm": 1, "MatMul": 0, "Add": 16, "Mul": 0},
"preset_candidates": ["XINT8", "A8W8", "INT8_CNN_DEFAULT"],
"exclude_defaults": []
}
},
"risks": [
{
"severity": "low",
"message": "Inputs are NCHW. AMD NPU CNN target expects NHWC.",
"recovery_hint": "Run quark.onnx.tools.convert_nchw_to_nhwc before quantization."
}
]
}Quark ONNX ships a large DefaultConfigMapping of named presets in
quark/onnx/quantization/config/custom_config.py. The intake should narrow the candidate set
based on what the model actually looks like:
| Category | Representative presets | When to suggest |
|---|---|---|
| AMD NPU CNN (XINT8 family) | XINT8, XINT8_ADAROUND, XINT8_ADAQUANT, XINT8_WEIGHTSONLY_ADAROUND | Model is Conv-heavy (CNN), inputs are 4D, deployment target is npu_cnn; requires PoF2 scales and (usually) NHWC layout |
| AMD NPU Transformer (INT16 transformer) | INT16_TRANSFORMER_DEFAULT, INT16_TRANSFORMER_ACCURATE | Model is MatMul/Gemm-heavy, deployment target is npu_transformer |
| General CPU/GPU INT8 | A8W8, A8W8_ADAROUND, A8W8_ADAQUANT, INT8_CNN_DEFAULT, INT8_CNN_ACCURATE | Generic INT8 deployment on CPU/CUDA/ROCm |
| A16W8 / wide activations | A16W8, A16W8_ADAROUND, A16W8_ADAQUANT | Activations need 16-bit headroom (outlier-heavy models) |
| Block formats (custom-ops required) | BFP16, BFP16_ADAQUANT, MX4, MX6, MX9, MXFP4, MXFP6, MXFP8, BF16_MIXED_BFP16, BF16_MIXED_MXINT8 | Modern AMD accelerators with quark.onnx.operators.custom_ops available |
| Float fallbacks | FP16, BF16, FP16_ADAQUANT, BF16_ADAQUANT | Accuracy-first; no INT quant |
preset_candidates in model_analysis.json should list the 1–3 presets that are realistic given
architecture + deployment target; never list all of them.
model.ir_versionmodel.producer_name, model.producer_version[(opset.domain or 'ai.onnx', opset.version) for opset in model.opset_import] —
for QDQ insertion, ai.onnx opset must be ≥ 13 (≥ 19 recommended for full INT4/FP8 support)com.amd.quark or com.microsoft indicates the model has
already been processed by Quark or ORT and should not be naively re-quantizedos.path.exists(model_path + '_data') or any tensor with
tensor.data_location == TensorProto.EXTERNAL; total file size > 2 GB without external data is
invalidtype.tensor_type.elem_type), shape (dim_value or
symbolic dim_param)dim_param or dim_value == 0 in inputs → flag as risk for NPU targetsConv, Gemm, MatMul, ConvTranspose, Add, Mul,
BatchNormalization (will be folded into Conv during pre-processing)linear_layer_count: sum of MatMul + Gemm + Conv (the canonical "linear ops" in
ONNX)exclude_defaults: usually empty for ONNX (Quark doesn't have a lm_head-equivalent
default), but flag the final classifier Gemm/MatMul if accuracy is at riskQuantizeLinear / DequantizeLinear /
BFPQuantizeDequantize / MXQuantizeDequantize / ExtendedQuantizeLinear → set
model.onnx_specific.has_qdq_already = true or has_quark_custom_ops = trueCross-reference op types against the chosen target:
enable_npu_cnn=True, XINT8): expects NHWC, PoF2 scales, per-tensor symmetric
INT8, no MatMul-based attention. Flag NCHW inputs, dynamic dims, MatMul-heavy graphs.enable_npu_transformer=True): QDQ on Gemm/MatMul only; flag heavy use
of unsupported ops (e.g. custom attention kernels).onnx_install_result.json shows the custom-ops compile failed, suppress these
presets from preset_candidates and emit a risk.Surface what the user must prepare separately:
CalibrationDataReader must yield batches keyed by these
names with these dtypesoptimize_mem=True is
neededFlag anything that could cause failures downstream:
onnx.version_converter.convert_version(model, 13+)quark.onnx.tools.fix_shapesquark.onnx.tools.convert_nchw_to_nhwcquark.onnx.tools.convert_fp16_to_fp32 firstquark.onnx.tools.remove_qdq or treat as a no-opcom.microsoft, third-party) → flag, may require
op_types_to_quantize curationonnx.ModelProto rather than a path (see input_check.py:137)python3 - <<'PY'
import json, os, sys, collections
import onnx
from onnx import TensorProto
MODEL_PATH = "<MODEL_PATH>"
# load_external_data=False so we never pull the >GB tensors into memory
model = onnx.load(MODEL_PATH, load_external_data=False)
# basic metadata
opsets = [{"domain": o.domain or "ai.onnx", "version": o.version} for o in model.opset_import]
producer = {"name": model.producer_name, "version": model.producer_version, "ir_version": model.ir_version}
def fmt_shape(t):
return [(d.dim_value if d.dim_value else (d.dim_param or "?")) for d in t.type.tensor_type.shape.dim]
dtype_map = {v: k for k, v in TensorProto.DataType.items()}
def fmt_dtype(t):
return dtype_map.get(t.type.tensor_type.elem_type, "UNKNOWN")
inputs = [{"name": i.name, "dtype": fmt_dtype(i), "shape": fmt_shape(i)} for i in model.graph.input]
outputs = [{"name": o.name, "dtype": fmt_dtype(o), "shape": fmt_shape(o)} for o in model.graph.output]
# op-type histogram
op_counts = collections.Counter(n.op_type for n in model.graph.node)
# external data check
file_size_bytes = os.path.getsize(MODEL_PATH)
uses_external = any(init.data_location == TensorProto.EXTERNAL for init in model.graph.initializer)
# already-quantized check
qdq_ops = {"QuantizeLinear", "DequantizeLinear"}
quark_ops = {"BFPQuantizeDequantize", "MXQuantizeDequantize",
"ExtendedQuantizeLinear", "ExtendedDequantizeLinear"}
has_qdq = any(n.op_type in qdq_ops for n in model.graph.node)
has_quark_custom = any(n.op_type in quark_ops for n in model.graph.node)
# dynamic dim check
has_dynamic = any(isinstance(d, str) or d == "?" for inp in inputs for d in inp["shape"])
# architecture guess (very rough)
arch = "unknown"
if op_counts.get("Conv", 0) > 5 * op_counts.get("MatMul", 0):
arch = "cnn"
elif op_counts.get("MatMul", 0) + op_counts.get("Gemm", 0) > 5 * op_counts.get("Conv", 0):
arch = "transformer"
elif {"LSTM", "GRU", "RNN"} & set(op_counts):
arch = "recurrent"
elif op_counts.get("Conv", 0) and op_counts.get("MatMul", 0):
arch = "hybrid"
info = {
"ir_version": producer["ir_version"],
"producer_name": producer["name"],
"producer_version": producer["version"],
"opsets": opsets,
"file_size_bytes": file_size_bytes,
"uses_external_data": uses_external,
"inputs": inputs,
"outputs": outputs,
"has_dynamic_dims": has_dynamic,
"has_qdq_already": has_qdq,
"has_quark_custom_ops": has_quark_custom,
"architecture_guess": arch,
"op_counts": dict(op_counts.most_common(30)),
"quantizable_op_counts": {k: op_counts.get(k, 0) for k in ("Conv", "Gemm", "MatMul", "ConvTranspose", "Add", "Mul", "BatchNormalization")},
}
print(json.dumps(info, indent=2))
PYpython3 - <<'PY'
import onnx
MODEL_PATH = "<MODEL_PATH>"
model = onnx.load(MODEL_PATH, load_external_data=False)
onnx.checker.check_model(model, full_check=False) # raises on schema errors
inferred = onnx.shape_inference.infer_shapes(model) # may reveal shape issues
print("checker: OK, shapes inferred")
PYdu -sh /path/to/model.onnx
ls -lh /path/to/model.onnx* # picks up model.onnx_dataONNX Model Analysis:
Model path: <path>
File size: <human-readable> external-data: Yes/No
IR / Opset: ir=<n>, ai.onnx=<n> (custom domains: <list or "None">)
Architecture: <cnn | transformer | recurrent | hybrid | unknown>
Inputs: <name>: <dtype> <shape>
Outputs: <name>: <dtype> <shape>
Quantizable ops: Conv=<n>, MatMul=<n>, Gemm=<n> (linear_layer_count=<sum>)
Already QDQ: Yes/No Already Quark custom ops: Yes/No
Preset candidates: [<top 1–3 from DefaultConfigMapping>]
Risks: <list or "None">quark-workspace-validate first to confirm .onnx and adjacent
.onnx_data paths are valid before attempting to parse the model.load_external_data=False to onnx.load. The intake reads
graph metadata only; loading multi-GB tensor blobs is the quantizer's job.has_qdq_already or has_quark_custom_ops is true,
emit a high-severity risk and require the user to confirm intent (likely they want
quark.onnx.tools.remove_qdq first, or they meant to quantize a different file)..onnx or a directory of
external-data shards. Note both possibilities and let the user resolve.preset_candidates by deployment target and custom-op availability. Never suggest
BFP/MX presets when onnx_install_result.json shows the custom-ops library failed to compile.
Never suggest XINT8 outside an NPU CNN target.model_analysis.json under risks and asking
quark-onnx-router to add them to session_context.json's open_questions. Do not write
directly to env_context.json.quantize_static / ModelQuantizer.quantize_model here. Intake is read-only..onnx or a directory? Are there
.onnx_data shards present? Check if quark-workspace-validate already confirmed the path.session_context.json.constraints.deployment_target
(or ask if missing), narrow preset_candidates to viable options.model_analysis.json. Surface any new constraints back to quark-onnx-router
so they land in session_context.json.analysis_status: "partial" — some facts were extracted but the model could not be fully
inspected. Common causes: external-data files missing, ProtoBuf > 2 GB without external data,
or onnx.checker raised a schema error.has_qdq_already == true or has_quark_custom_ops == true — do not proceed to PTQ
planning. Recommend python -m quark.onnx.tools.remove_qdq (or equivalent) and re-run intake
on the cleaned model.opsets[ai.onnx] < 13 — recommend
onnx.version_converter.convert_version(model, 13) (or 19+ for INT4/FP8) and re-run intake.has_dynamic_dims == true for an NPU target — recommend
python -m quark.onnx.tools.fix_shapes --input model.onnx --output model_fixed.onnx --input_shape "input:1,3,224,224" and re-run intake.input_layout_guess == "NCHW" and target is npu_cnn — recommend
python -m quark.onnx.tools.convert_nchw_to_nhwc and re-run intake.python -m quark.onnx.tools.convert_fp16_to_fp32 and re-run intake.© amd, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .claude/skills-impl/l1-atomic/onnx/quark-onnx-model-intake of amd/Quark.
Open the folder on GitHubat commit 313cb0b
Quark Onnx Model Intake next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Quark Onnx Model Intake this skillamd/Quark | 181 | — | ~4.3k | Automated safety check: Pass | MIT | |
| Embedded AI Deploymentmatlab/agent-skills-playground | 183 | — | ~3.4k | Automated safety check: Pass | Custom licence | |
| Matlab Use Visual Inspectionmatlab/matlab-agentic-toolkit | 1.1k | — | ~3.1k | Automated safety check: Pass | Custom licence | |
| SageMaker Serving Image Selectionhuggingface/skills | 11k | 1 repos | ~4.6k | Automated safety check: Pass | Apache-2.0 | |
| Kernel Microbenchmarkguqiong96/Lvllm | 465 | 2 repos | ~1.5k | Automated safety check: Pass | Apache-2.0 | |
| Model Serving MinefieldBlackwellboy/model-serving-minefield | 135 | — | ~2.1k | Automated safety check: Pass | MIT |
matlab/agent-skills-playground
Deploy AI models to embedded hardware using MathWorks tools (MATLAB, Simulink, Embedded Coder).
matlab/matlab-agentic-toolkit
Build machine vision inspection systems with MATLAB Visual Inspection Toolbox.
huggingface/skills
Chooses the right serving container and current image URI for deploying a Hugging Face model to a SageMaker endpoint, preferring Hugging Face images over generic ones.
guqiong96/Lvllm
Build, debug, and interpret vLLM GPU kernel microbenchmarks for CUDA, Triton, and CuteDSL, including CUPTI timing, correctness checks, generated-code inspection, multi-GPU measurements, and SOL…
Blackwellboy/model-serving-minefield
Diagnose OpenAI-compatible model-serving failures from symptoms, endpoint reports, explicit configuration files, or logs while preserving evidence status and requiring confirm/refute checks.
graphsignal/graphsignal
Profile AI inference workloads (vLLM, SGLang, TensorRT-LLM, PyTorch, any GPU application) with the Graphsignal profiler and read the results from its local /signals JSON endpoint.
amd/Quark
Author or restructure a Quark Agent Skill so it conforms to this project's template, contracts, and layer rules.
amd/Quark
Run, resume, monitor, diagnose, and report Quark Quant-Perf workflows for PyTorch and HuggingFace transformers models.
amd/Quark
Author a new ShapeShifter graph-transformation pass for AMD Quark (ONNX or PyTorch) so it conforms to the pass framework's conventions and auto-registers.
amd/Quark
Collect and normalize environment facts (OS, Python, GPU, CUDA/ROCm, container state) before Quark installation or PTQ planning.
amd/Quark
Install or verify the AMD Quark package and its dependencies.
amd/Quark
L3 recipe that runs quark.onnx.AutoSearchPro end-to-end on a user .onnx model: intake → preset selection (or custom search space) → calibration / eval data reader → standalone autosearch script…
Categories
Inspect a target ONNX model and prepare metadata for Quark ONNX PTQ planning. Quark Onnx Model Intake is an agent skill from amd/Quark. Inspect a target ONNX model and prepare metadata for Quark ONNX PTQ planning.
Quark Onnx Model Intake fits situations like: the user needs .onnx path validation; opset / IR version detection; input/output shape and dtype discovery; op-type histogram.
Run `npx skills add amd/Quark --skill quark-onnx-model-intake -a claude-code`. Or copy the skill folder (.claude/skills-impl/l1-atomic/onnx/quark-onnx-model-intake in amd/Quark) into .claude/skills/quark-onnx-model-intake in your project. Claude Code loads it when a task matches its description.
Run `npx skills add amd/Quark --skill quark-onnx-model-intake -a codex`. Or copy the skill folder (.claude/skills-impl/l1-atomic/onnx/quark-onnx-model-intake in amd/Quark) into .agents/skills/quark-onnx-model-intake in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add amd/Quark --skill quark-onnx-model-intake -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/quark-onnx-model-intake, .gemini/skills/quark-onnx-model-intake, .github/skills/quark-onnx-model-intake and .opencode/skills/quark-onnx-model-intake in your project.
Going by SKILL.md and its folder, Quark Onnx Model Intake needs the command-line tools its instructions call (python and python3). Our summary lists: Python 3.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Quark Onnx Model Intake is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 4.3k tokens (SKILL.md is roughly 17k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Quark Onnx Model Intake: Embedded AI Deployment (matlab/agent-skills-playground, 183 stars), Matlab Use Visual Inspection (matlab/matlab-agentic-toolkit, 1.1k stars), SageMaker Serving Image Selection (huggingface/skills, 11k stars) and Kernel Microbenchmark (guqiong96/Lvllm, 465 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
amd (a GitHub organization) maintains it in amd/Quark, which has 181 GitHub stars. The repository holds 37 skills in this directory. The repository was last updated on September 28, 2026.
Source: amd/Quark on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.