Thêm hỗ trợ kiểu uint cho PyTorch
Kỹ năng cập nhật macro AT_DISPATCH_V2 để thêm hỗ trợ uint16/uint32/uint64 cho các toán tử PyTorch.
Lập trìnhNâng cao★ 382⑂ 52Điểm AI 8/10Cập nhật lần cuối: 3 thg 7, 2026
Làm được gì
Tìm các macro AT_DISPATCH_V2 trong mã C++ của PyTorch và thêm hỗ trợ kiểu số nguyên không dấu (kUInt16, kUInt32, kUInt64).
- Hai cách xử lý: thêm rõ ràng
AT_EXPAND(AT_BAREBONES_UNSIGNED_TYPES)hoặc đổiAT_INTEGRAL_TYPESthànhAT_INTEGRAL_TYPES_V2 - Nếu file còn dùng macro
AT_DISPATCH_*cũ, hướng dẫn chuyển sang V2 trước (dùng kỹ năng at-dispatch-v2) - Quét toàn bộ điểm dispatch trong file (CPU/CUDA, nhiều hàm) để sửa nhất quán
- Có quy tắc cho trường hợp đặc biệt: toán tử chỉ dùng số thực, file đã có uint, có kiểu complex
Dành cho ai
- Người đóng góp trực tiếp vào mã nguồn PyTorch (ATen/native)
- Kỹ sư hạ tầng ML bảo trì bản fork PyTorch nội bộ
- Lập trình viên C++ cần refactor hàng loạt mã dispatch dựa trên macro/template
Ví dụ sử dụng
- Mở kernel reduce min/max CUDA và yêu cầu "thêm hỗ trợ uint" → tất cả điểm dispatch được chèn
AT_EXPAND(AT_BAREBONES_UNSIGNED_TYPES) - File dùng
AT_INTEGRAL_TYPES+AT_FLOATING_TYPES→ thay bằngAT_INTEGRAL_TYPES_V2gọn hơn - Mã cũ
AT_DISPATCH_ALL_TYPES_AND2(...)→ chuyển sang V2 rồi mới thêm kiểu unsigned
· · · Hướng dẫn cài đặt · · ·
Dùng thử ngay, không cần cài
Dán đoạn dưới vào Claude là dùng được skill này mà không cần cài đặt.
Hãy đọc hướng dẫn trong tệp này và làm theo để giúp mình: https://raw.githubusercontent.com/Microck/ordinary-claude-skills/HEAD/skills_all/add-uint-support/SKILL.md Mình muốn: (viết việc bạn cần ở đây)
Nếu Claude không mở được liên kết, hãy mở liên kết và copy nội dung vào rồi dán.
↓ Thấy hữu ích thì tải ZIP bên dưới và cài. Sau đó skill tự chạy, không phải dán lại mỗi lần.
Cài vào ứng dụng Claude (không cần terminal)
- Tải tệp ZIP bằng nút bên dưới.
- Trong Claude, mở Settings → Capabilities và bật 'Code execution and file creation'. (chỉ một lần)
- Vào Customize → Skills → + → 'Upload a skill' rồi tải tệp ZIP lên.
Cài vào Claude Code
Để Claude làm — dán câu dưới đây vào Claude Code
Hãy cài skill mình tìm thấy trên Claude Skill Mart. Copy thư mục skills_all/add-uint-support từ repo GitHub Microck/ordinary-claude-skills vào ~/.claude/skills/add-uint-support/ của mình. Sau khi cài xong, cho mình biết skill này làm được gì trong một câu.
Cài bằng lệnh thủ công
git clone https://github.com/Microck/ordinary-claude-skills.git && mkdir -p ~/.claude/skills && cp -r ordinary-claude-skills/skills_all/add-uint-support ~/.claude/skills/⚠ Đây là skill do người khác tạo. Hãy kiểm tra repo gốc trước khi cài.
- Mở terminal và chuyển tới thư mục làm việc của bạn.
- Clone repo:
git clone https://github.com/Microck/ordinary-claude-skills.git - Tạo thư mục kỹ năng:
mkdir -p ~/.claude/skills - Sao chép kỹ năng:
cp -r ordinary-claude-skills/skills_all/add-uint-support ~/.claude/skills/ - Nên sao chép luôn kỹ năng
at-dispatch-v2để xử lý các macro dispatch phiên bản cũ. - Chạy Claude Code trong thư mục mã nguồn PyTorch và yêu cầu "thêm hỗ trợ uint16/32/64 cho kernel này".
- Sau khi sửa, hãy tự build và chạy test để xác minh kết quả.
Xem mã nguồn trên GitHub ↗Giấy phép: NOASSERTION