EXOKERN Skill v0.1.1 — Robust Contact-Rich Peg Insertion
Pre-trained Diffusion Policy for the contact-rich Peg Insertion task, trained on the domain-randomized ContactBench v0.1.1 dataset.
This skill demonstrates Level 1 (Sim-Validated + Out-of-Distribution) of the EXOKERN Quality Pyramid. It achieves a 100% success rate under severe domain randomization, establishing a robust baseline for force-aware manipulation.
Part of the EXOKERN Skill Platform — unlocking the "Kontakt-Foundation Model" for industrial assembly.
Architecture
This repository contains two variants of a 71.3M parameter Vision-Language-Action (VLA) style Visuomotor Diffusion Policy, adapted for low-dimensional proprietary state spaces:
full_ft(22-dim input): Includes the 6-axis end-effector wrench.no_ft(16-dim input): Ablated baseline without force/torque data.
Both networks use a 1D Temporal CNN backbone + DDIM (16 diffusion steps).
Evaluation Results: 600-Episode Multi-Seed Deep Dive
We evaluated both the full_ft and no_ft policies across 3 distinct training seeds (42, 123, 7). Each policy was evaluated for 100 episodes under severe domain randomization (friction, mass, gains).
Key Finding: Domain Randomization is the Great Equalizer
| Metric | v0 (Fixed Env) | v0.1.1 (Severe DR) |
|---|---|---|
| Success Rate | 100% | 100% |
full_ft Avg Force |
3.7 N | 3.67 N |
no_ft Avg Force |
5.3 N | 3.37 N |
| F/T Force Reduction | 30% | -9% (Inconclusive) |
Analysis:
In our v0 baseline (fixed environment), providing force/torque data reduced contact forces by 30%. However, under v0.1.1's severe Domain Randomization, the no_ft policy was forced to learn significantly more robust, compliant behaviors from visual/proprioceptive cues alone.
As a result, DR reduced the no_ft contact force by 36% (5.3N -> 3.37N), effectively neutralizing the F/T advantage on this specific, relatively simple task. This confirms our roadmap strategy: F/T sensing becomes critical primarily on harder tasks (e.g., tighter tolerances, screw driving, snap-fits), which is the focus of our upcoming v0.2 release.
Detailed Multi-Seed Results
| Seed | Condition | Success Rate | Avg Force (N) | Peak Force (N) | Avg Time (s) |
|---|---|---|---|---|---|
| 42 | full_ft |
100.0% | 3.2 | 10.4 | 25.6 |
| 42 | no_ft |
100.0% | 3.4 | 10.4 | 25.7 |
| 123 | full_ft |
100.0% | 4.1 | 10.6 | 25.7 |
| 123 | no_ft |
100.0% | 3.3 | 10.3 | 25.8 |
| 7 | full_ft |
100.0% | 3.7 | 10.9 | 25.5 |
| 7 | no_ft |
100.0% | 3.4 | 10.3 | 25.7 |
| Mean | full_ft |
100.0% | 3.67 ± 0.45 | 10.63 | 25.6 |
| Mean | no_ft |
100.0% | 3.37 ± 0.06 | 10.33 | 25.7 |
Note: The no_ft policy exhibited significantly lower variance across seeds (±0.06N vs ±0.45N), indicating higher training stability under these specific DR conditions.
Usage with exokern-eval
Evaluate this exact checkpoint in your own Isaac Lab environment using our CLI tool:
pip install exokern-eval
# Download the model weights
wget https://huggingface.co/EXOKERN/skill-forge-peginsert-v0.1.1/resolve/main/full_ft_best_model.pt
# Run the evaluation
exokern-eval \
--policy full_ft_best_model.pt \
--env Isaac-Forge-PegInsert-Direct-v0 \
--episodes 100
Inference Code Example
import torch
import numpy as np
# Use EXOKERN's safe_load utility to prevent unpickling vulnerabilities
# https://github.com/Exokern/exokern/blob/main/Skill_Training/safe_load.py
from safe_load import safe_load_checkpoint
# Load the model directly from HF Hub
from huggingface_hub import hf_hub_download
model_path = hf_hub_download(repo_id="EXOKERN/skill-forge-peginsert-v0.1.1", filename="full_ft_best_model.pt")
ckpt = safe_load_checkpoint(model_path, device="cuda")
model = ckpt["model"]
# Create dummy observation (22-dim)
# See Dataset card for tensor layout
obs_dict = {
"observation.state": torch.randn(1, 22).cuda()
}
# Run inference
with torch.no_grad():
action = model(obs_dict)
print(f"Predicted action (7-DOF): {action.shape}")
Security Notice (torch.load Vulnerability)
In PyTorch, torch.load with weights_only=False can execute arbitrary code during unpickling (CVE-2025-32434).
Always use weights_only=True when loading untrusted checkpoints.
This repository provides a safe_load_checkpoint script configured to safely allowlist necessary numpy types (like np.dtypes.Float64DType) required to read the EXOKERN checkpoint statistics. Download it from our GitHub repository.
Intended Use
Primary Use Case: Sim-to-real research, benchmarking imitation learning algorithms, and studying the effect of Force/Torque modalities under domain randomization.
Out of Scope: Direct deployment on physical hardware without comprehensive safety bridging, limit definition, and real-world calibration. This model was trained exclusively in simulation.
License
- Code & Architecture: Apache 2.0
- Model Weights: CC-BY-NC 4.0 (Free for research & non-commercial use)
For commercial licensing of the "Kontakt-Foundation Model" or custom Skill porting, please contact EXOKERN.
EXOKERN — Bridging the Haptic Gap in Robotic Manipulation exokern.com | github.com/Exokern
- Downloads last month
- 3

