Files
Hermes c4057c261e Initial: ComfyUI + Trellis2 on Rocky 9.x / RTX 4090
Documents all pitfalls encountered during setup:
- CUDA arch mismatch (sm_120 vs sm_89) — source rebuild needed
- utils3d empty pip package → GitHub fork required
- transformers v5 DINOv3 API change → sed patch
- xformers version pinning (0.0.33.post2 for torch 2.9.1)
- Missing Eigen headers for cumesh build
- visualbruno forks needed for o_voxel and cumesh (newer functions)
- /tmp disk space issues during pip builds

Includes:
- SETUP.md: Full step-by-step guide
- requirements.txt: Pinned dependency versions
- fix_transformers_v5.sh: Apply DINOv3 layer patch
- build_cuda_extensions.sh: One-shot source build of all CUDA extensions
2026-06-07 22:27:26 +00:00

34 lines
1.0 KiB
Bash

#!/bin/bash
# Apply transformers v5 API fix to ComfyUI-Trellis2
# Fixes: AttributeError: 'DINOv3ViTModel' object has no attribute 'layer'
# Reference: https://github.com/visualbruno/ComfyUI-Trellis2/issues/144
TRELLIS2_DIR="${1:-custom_nodes/ComfyUI-Trellis2/trellis2}"
if [ ! -d "$TRELLIS2_DIR" ]; then
echo "ERROR: Trellis2 directory not found: $TRELLIS2_DIR"
echo "Usage: $0 [path/to/ComfyUI-Trellis2/trellis2]"
exit 1
fi
echo "Patching DINOv3 model.layer → model.model.layer in:"
for f in \
modules/image_feature_extractor.py \
trainers/flow_matching/mixins/image_conditioned.py \
trainers/flow_matching/mixins/image_conditioned_proj.py
do
file="$TRELLIS2_DIR/$f"
if [ -f "$file" ]; then
if grep -q 'self\.model\.layer' "$file"; then
sed -i 's/self\.model\.layer/self.model.model.layer/g' "$file"
echo "$f"
else
echo " - $f (already patched)"
fi
else
echo "$f (not found)"
fi
done
echo "Done."