rknpu

Deploy and validate RK1 NPU inference pool configurations on TuringPi 2 clusters.

1|Updated Apr 3, 2026
One-click install
npx skills add https://github.com/villadalmine/infra --skill rknpu
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: rknpu
Source: https://github.com/villadalmine/infra/tree/main/.agents/skills/rknpu
Command: npx skills add https://github.com/villadalmine/infra --skill rknpu

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill removes the guesswork from deploying and operating the RK1 NPU inference pool, helping you avoid broken mounts, invalid model files, and unstable routing.

Core Features & Use Cases

  • RK1 NPU device mapping for the correct renderD129 target and privileged /dev/dri access.
  • Modelfile validation for rkllama using FROM and HUGGINGFACE_PATH in the expected key-value format.
  • Pool operations and checks for four-node inference deployments, LiteLLM least_busy routing, and context-limit-safe configuration.
  • Use case: bring up or troubleshoot a TuringPi 2 RK1 inference stack and confirm each node serves requests correctly.

Quick Start

Ask the assistant to deploy or verify the RK1 NPU pool for your cluster, checking device mapping, Modelfile format, context limits, and LiteLLM routing end to end.

Frequently Asked Questions about rknpu

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I configure RK1 NPU device mapping for a TuringPi 2 rkllama inference pool?

Configuring the RK1 NPU inference pool requires mapping the /dev/dri/renderD129 target and mounting the full /dev/dri directory into privileged pods to ensure correct NPU device allocation.

What is the correct Modelfile format for running rkllama on an RK1 NPU cluster?

The correct Modelfile format for rkllama uses a key-value structure that must include FROM and HUGGINGFACE_PATH entries to properly locate and load the model on the NPU.

Does LiteLLM least_busy routing work with a four-node RK1 NPU inference deployment?

LiteLLM least_busy routing is supported for four-node RK1 NPU inference deployments, distributing end-to-end inference requests across available rkllama servers to balance the load effectively.

Why does rkllama inference fail when num_ctx exceeds 4096 on the RK1 NPU?

RK1 NPU inference fails when num_ctx exceeds 4096 because the context-limit-safe configuration for the NPU pool strictly enforces a maximum context length of 4096 to maintain stability.

What's the best way to verify end-to-end node requests in a TuringPi 2 RK1 cluster?

The best way to verify end-to-end node requests in a TuringPi 2 RK1 cluster is to validate the complete inference stack, checking device mapping, Modelfile format, context limits, and LiteLLM routing.