Seeed-Jetson-DevelopTool / deploy-deepseek-mlc
AGENTS.md57 starsChanged 4 months agoMITView on GitHub
Deploy DeepSeek on Jetson Orin using MLC (Machine Learning Compilation) for optimized edge inference. Uses Docker/jetson-containers. Requires Jetson with >8GB RAM and JetPack 5.1.1+.
- Pipes a download into a shell
- Installs packages
Where files are headingNew AGENTS.md files have more rules about keeping secrets out of the code, and fewer about code style.
Of the AGENTS.md files we read, the 31,843 first seen in the last six months, against the older ones: the kind of rule that gained most share, and the kind that lost most. About files like this in general, not this one, and an estimate, since a kind is a pattern in the words.
In this repository297 other files it gives its agents.
- AGENTS.mdAGENTS.md
- ai-nvrAGENTS.md
- allxon-ota-updateAGENTS.md
- allxon-setupAGENTS.md
- alwaysai-setupAGENTS.md
- backup-restoreAGENTS.md
- bsp-source-buildAGENTS.md
- clawdbot-developmentAGENTS.md
- cochl-sense-setupAGENTS.md
- cvedia-setupAGENTS.md
- dashcamnet-xavier-nx-multicameraAGENTS.md
- deciai-setupAGENTS.md
- deepseek-quick-deployAGENTS.md
- deploy-depth-anything-v3AGENTS.md
- deploy-diaAGENTS.md
- deploy-efficient-vision-engineAGENTS.md
- deploy-frigateAGENTS.md
- deploy-live-vlm-webuiAGENTS.md
- deploy-nvbloxAGENTS.md
- deploy-ollama-anythingllmAGENTS.md
- deploy-riva-llama2AGENTS.md
- developtool-deviceAGENTS.md
- disk-encryptionAGENTS.md
- diy-bsp-buildAGENTS.md
- ethercat-communicationAGENTS.md
- ethercat-setupAGENTS.md
- finetune-llm-llama-factoryAGENTS.md
- fix-browser-snap-jetsonAGENTS.md
- gapi-setupAGENTS.md
- generative-ai-introAGENTS.md
- gpt-oss-liveAGENTS.md
- gr00t-n1-5-deploy-thorAGENTS.md
- gr00t-n1-6-deploy-agxAGENTS.md
- hardhat-setupAGENTS.md
- hybrid-bsp-dk-to-recomputerAGENTS.md
- imx477-a603-setupAGENTS.md
- j501-viola-fruit-sortingAGENTS.md
- jetpack5-ssd-boot-fixAGENTS.md
- jetpack-flash-wsl2AGENTS.md
- jetpack-jetson-overviewAGENTS.md
- jetpack-ota-updateAGENTS.md
- jetson-ai-toolsAGENTS.md
- jetson-docker-setupAGENTS.md
- jetson-faqAGENTS.md
- jetson-pc-wired-shareAGENTS.md
- jetson-project-galleryAGENTS.md
- jetson-resource-indexAGENTS.md
- jetson-tutorial-exercisesAGENTS.md
- ko-module-buildAGENTS.md
- l4t-differencesAGENTS.md
- langchain-output-formattingAGENTS.md
- lerobot-env-setupAGENTS.md
- llama-cpp-rpc-distributedAGENTS.md
- llm-interface-controlAGENTS.md
- local-chatbot-multimodalAGENTS.md
- local-chatbot-physicalAGENTS.md
- local-llm-text-to-imageAGENTS.md
- local-rag-llamaindexAGENTS.md
- lumeo-setupAGENTS.md
- maskcam-nanoAGENTS.md
- The first 60 shown.
The file
We split this AGENTS.md into the rules it gives an agent
4 rules. About 0 are common, 2 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 12
Run one phase at a time. After each phase:
- Very specific: line 14
If output contains [STOP] → stop immediately, consult the failure decision tree below.
- Very specific: line 15
If output ends with [OK] → tell the user "Phase N complete" and proceed to the next phase.
- Distinctive: line 33
Verify JetPack version, available RAM, and disk space before touching Docker.
≈ “Common” is an estimate: at least 1 in 5 of the 40,246 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Deploy DeepSeek on Jetson with MLC
Execution model
Run one phase at a time. After each phase:
- Relay all command output to the user.
- If output contains
[STOP]→ stop immediately, consult the failure decision tree below. - If output ends with
[OK]→ tell the user "Phase N complete" and proceed to the next phase.
Prerequisites
| Requirement | Minimum |
| Hardware | reComputer J4012 (Jetson Orin NX 16GB) or equivalent |
| RAM | >8 GB (16 GB recommended for DeepSeek-R1 7B+) |
| JetPack | 5.1.1+ (JetPack 6.x preferred) |
| Storage | SSD strongly recommended — model weights are large |
| Internet | Required for Docker pull and model download |
Phase 1 — Preflight
Verify JetPack version, available RAM, and disk space before touching Docker.
cat /etc/nv_tegra_release
free -h
df -h /
df -h /ssd 2>/dev/null || trueExpected: L4T R35.x (JP5) or R36.x (JP6), ≥8 GB RAM free, ≥50 GB disk available. [OK] when all three pass. [STOP] if RAM or disk is insufficient.
Phase 2 — Install Docker + nvidia-container
sudo apt update
# JetPack 5.x
sudo apt install -y nvidia-container
# JetPack 6.x — also install curl, then Docker
sudo apt install -y nvidia-container curl
curl https://get.docker.com | sh
sudo systemctl --now enable docker
# Add current user to docker group
sudo usermod -aG docker $USER
newgrp dockerVerify:
docker --version
docker run --rm --runtime nvidia --gpus all ubuntu:22.04 nvidia-smiExpected: nvidia-smi output shows the Jetson GPU. [OK] when GPU is visible inside the container.
Move Docker storage to SSD (strongly recommended)
Edit /etc/docker/daemon.json:
{
"data-root": "/ssd/docker",
"runtimes": {
"nvidia": {
"path": "nvidia-container-runtime",
"runtimeArgs": []
}
}
}sudo systemctl restart docker
docker info | grep "Docker Root Dir"[OK] when Docker Root Dir points to your SSD path.
Phase 3 — Pull MLC container and download DeepSeek model
# JP5.x:
docker pull dustynv/mlc-llm:r35.4.1
# JP6.x:
docker pull dustynv/mlc-llm:r36.2.0
docker images | grep mlc-llmDownload model weights inside the container:
docker run -it --rm \
--runtime nvidia \
--network host \
-v /ssd/models:/models \
dustynv/mlc-llm:r36.2.0 \
bash -c "huggingface-cli download deepseek-ai/DeepSeek-R1-Distill-Qwen-7B --local-dir /models/deepseek-r1-7b"[OK] when model files are present under /ssd/models/. [STOP] if download fails — see failure decision tree.
Phase 4 — Launch inference
docker run -it --rm \
--runtime nvidia \
--network host \
-v /ssd/models:/models \
dustynv/mlc-llm:r36.2.0 \
python3 -m mlc_llm serve /models/deepseek-r1-7b \
--device cuda \
--host 0.0.0.0 \
--port 8080Test the endpoint:
curl http://localhost:8080/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{"model":"deepseek-r1-7b","messages":[{"role":"user","content":"Hello"}]}'[OK] when the API returns a JSON response with a completion.
For full step-by-step commands, screenshots, and model configuration options, read
references/source.body.md.
Failure decision tree
| Symptom | Action |
docker: command not found | Re-run the curl https://get.docker.com | sh step. Confirm sudo systemctl enable --now docker. |
nvidia-container install fails | Confirm JetPack version with cat /etc/nv_tegra_release. JP5 and JP6 have different package names — check references/source.body.md for the exact apt source. |
nvidia-smi not visible inside container | nvidia-container-runtime not configured. Verify /etc/docker/daemon.json has the nvidia runtime entry and restart Docker. |
| OOM / killed during inference | Model too large for available RAM. Try a smaller distill variant (1.5B or 7B). Ensure no other heavy processes are running. |
| Model download fails / times out | Check internet connectivity. Retry with huggingface-cli download --resume-download. If HuggingFace is blocked, use a mirror or pre-download on another machine. |
docker pull fails with no space | Docker root is on eMMC. Move Docker data root to SSD (Phase 2 SSD step). |
| Inference endpoint returns 500 | Model path inside container may be wrong. Verify the -v mount and the path passed to mlc_llm serve. |
Reference files
references/source.body.md— full original Seeed tutorial with complete MLC configuration, model options, and effect demonstration (reference only)
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

