訓練強化學習代理需要高效能平行環境和高效能演算法。PufferLib 提供優化的 PPO+LSTM 訓練,透過向量化、共享記憶體緩衝區和多代理支援,實現 2-10 倍的加速。
تنزيل ZIP المهارة
رفع في Claude
اذهب إلى Settings → Capabilities → Skills → Upload skill
فعّل وابدأ الاستخدام
اختبرها
استخدام "pufferlib". 使用 pufferlib 在 CartPole 上訓練 PPO
النتيجة المتوقعة:
- 環境:gym-CartPole-v1,256 個平行環境
- 策略:2 層 MLP(256 個隱藏單元),使用 layer_init
- 訓練:10,000 次疊代,批次大小 32768
- 檢查點:儲存至 checkpoints/checkpoint_1000.pt
- 最終吞吐量:GPU 上每秒 120 萬步
استخدام "pufferlib". 建立多代理環境
النتيجة المتوقعة:
- 多代理設定:4 個代理在協作導航任務中
- 觀察空間:包含位置、目標和其他代理位置的字典
- 動作空間:5 個離散動作(4 個方向 + 停留)
- 共享策略骨幹以實現高效學習
- 使用 PuffeRL 以每秒 80 萬步進行訓練
التدقيق الأمني
آمنAll 331 static findings are FALSE POSITIVES. This is a legitimate open-source reinforcement learning library. The static analyzer incorrectly flagged bash command examples in markdown documentation (SKILL.md, references/*.md) as dangerous backtick execution. No actual command injection, credential exfiltration, or malicious patterns exist in the codebase. Verified via grep - no hashlib, subprocess, or actual dangerous execution patterns found.
عوامل الخطر
درجة الجودة
ماذا يمكنك بناءه
快速基準測試
在 Ocean 環境上使用每秒數百萬步的吞吐量快速基準測試新演算法
遊戲環境訓練
使用最佳化向量化和高效率 PPO 在 Atari、Procgen 或 NetHack 上訓練代理
協作代理團隊
使用 PettingZoo 整合和共享策略選項建置和訓練多代理系統
جرّب هذه الموجهات
使用 pufferlib 在 procgen-coinrun 環境上訓練 PPO 代理,使用 256 個平行環境。顯示訓練迴圈以及如何儲存檢查點。
幫我建立一個用於 4 個離散動作的網格世界任務的自訂 PufferEnv。顯示 reset、step 和觀察空間定義。
使用 pufferlib 在 PettingZoo 環境上訓練多個代理。顯示如何處理字典觀察和共享策略。
最佳化我的 pufferlib 訓練設定以獲得最大吞吐量。對於 4 個 GPU,應該使用哪些向量化設定和超參數?
أفضل الممارسات
- 先使用 Ocean 環境或 Gymnasium 整合,再建置自訂環境
- 盡早分析每秒步數以識別瓶頸,再進行擴展
- 使用 torch.compile 和 CUDA 以獲得最大訓練吞吐量
تجنب
- 避免對大規模訓練使用 CPU,應使用具有足夠 VRAM 的 GPU
- 不要在擴展到多個平行環境之前跳過環境驗證
- 避免硬編碼超參數,應使用 CLI 參數以確保可重現性
الأسئلة المتكررة
pufferlib 支援哪些環境?
pufferlib 與標準實作相比有多快?
我可以在自訂環境中使用 pufferlib 嗎?
pufferlib 支援多 GPU 訓練嗎?
哪些日誌框架可以與 pufferlib 整合?
如何儲存和繼續訓練?
تفاصيل المطور
المؤلف
K-Dense-AIالترخيص
MIT license
المستودع
https://github.com/K-Dense-AI/claude-scientific-skills/tree/main/scientific-skills/pufferlibمرجع
main
بنية الملفات