@r1z4x/tezgah 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (582) hide show
  1. package/CHANGELOG.md +738 -0
  2. package/LICENSE +21 -0
  3. package/MANIFEST +753 -0
  4. package/README.de.md +169 -0
  5. package/README.es.md +168 -0
  6. package/README.fr.md +166 -0
  7. package/README.md +161 -0
  8. package/README.tr.md +163 -0
  9. package/agents/tezgah-reviewer.md +70 -0
  10. package/bin/codegen +337 -0
  11. package/bin/consult +797 -0
  12. package/bin/tezgah-adhd +50 -0
  13. package/bin/tezgah-agents +45 -0
  14. package/bin/tezgah-capture +66 -0
  15. package/bin/tezgah-context +96 -0
  16. package/bin/tezgah-decisions +213 -0
  17. package/bin/tezgah-design +953 -0
  18. package/bin/tezgah-docs +1199 -0
  19. package/bin/tezgah-doctor +497 -0
  20. package/bin/tezgah-dsh +37 -0
  21. package/bin/tezgah-dsh.cmd +70 -0
  22. package/bin/tezgah-gate +75 -0
  23. package/bin/tezgah-import-ai-research +439 -0
  24. package/bin/tezgah-index +32 -0
  25. package/bin/tezgah-lessons +148 -0
  26. package/bin/tezgah-mcp +322 -0
  27. package/bin/tezgah-migrate +324 -0
  28. package/bin/tezgah-pony +50 -0
  29. package/bin/tezgah-research +772 -0
  30. package/bin/tezgah-rollback +93 -0
  31. package/bin/tezgah-route +124 -0
  32. package/bin/tezgah-setup +5798 -0
  33. package/bin/tezgah-status +383 -0
  34. package/bin/tezgah-task +607 -0
  35. package/bin/tezgah-taste +423 -0
  36. package/bin/tezgah-triage +485 -0
  37. package/bin/tezgah.js +36 -0
  38. package/commands/adhd.md +21 -0
  39. package/commands/ponytail.md +21 -0
  40. package/docs/README.md +112 -0
  41. package/docs/architecture.md +226 -0
  42. package/docs/citations-baseline.json +59 -0
  43. package/docs/clarity-baseline.json +116 -0
  44. package/docs/contract.md +416 -0
  45. package/docs/environment.md +141 -0
  46. package/docs/evidence.md +831 -0
  47. package/docs/feature-audit.md +139 -0
  48. package/docs/gate.md +407 -0
  49. package/docs/glossary.md +201 -0
  50. package/docs/hosts.md +400 -0
  51. package/docs/index.json +471 -0
  52. package/docs/judge.md +193 -0
  53. package/docs/layers.md +189 -0
  54. package/docs/models.md +160 -0
  55. package/docs/operations.md +666 -0
  56. package/docs/research.md +809 -0
  57. package/docs/results/paired-outcome-2026-10.jsonl +254 -0
  58. package/docs/results/paired-outcome-2026-10.md +204 -0
  59. package/docs/skills.md +236 -0
  60. package/docs/status-line.md +315 -0
  61. package/docs/testing.md +287 -0
  62. package/docs/vision.md +117 -0
  63. package/hooks/hooks.json +33 -0
  64. package/hooks/projects-auto-init.py +98 -0
  65. package/hooks/projects-posttooluse.py +149 -0
  66. package/hooks/projects-pretooluse.py +40 -0
  67. package/hooks/projects-stop.py +60 -0
  68. package/hooks/tezgah_agents.py +817 -0
  69. package/hooks/tezgah_apps.py +266 -0
  70. package/hooks/tezgah_attest.py +255 -0
  71. package/hooks/tezgah_clarity.py +171 -0
  72. package/hooks/tezgah_components.py +140 -0
  73. package/hooks/tezgah_context.py +2953 -0
  74. package/hooks/tezgah_embed.py +765 -0
  75. package/hooks/tezgah_gate.py +2736 -0
  76. package/hooks/tezgah_guard.py +177 -0
  77. package/hooks/tezgah_index.py +124 -0
  78. package/hooks/tezgah_integrity.py +5141 -0
  79. package/hooks/tezgah_judge.py +487 -0
  80. package/hooks/tezgah_lang.py +230 -0
  81. package/hooks/tezgah_lessons.py +210 -0
  82. package/hooks/tezgah_models.py +855 -0
  83. package/hooks/tezgah_paths.py +1132 -0
  84. package/hooks/tezgah_policy.py +1039 -0
  85. package/hooks/tezgah_rank.py +77 -0
  86. package/hooks/tezgah_replay.py +1109 -0
  87. package/hooks/tezgah_research.py +5176 -0
  88. package/hooks/tezgah_shapes.py +305 -0
  89. package/hooks/tezgah_skill_pick.py +227 -0
  90. package/hooks/tezgah_snapshot.py +490 -0
  91. package/hooks/tezgah_stopspec.py +320 -0
  92. package/hooks/tezgah_task.py +458 -0
  93. package/hooks/tezgah_taste.py +201 -0
  94. package/hooks/tezgah_untrusted.py +112 -0
  95. package/hooks/tezgah_update.py +430 -0
  96. package/hosts/codex/hook.py +268 -0
  97. package/hosts/codex/hooks.json +26 -0
  98. package/hosts/cursor/hook.py +461 -0
  99. package/hosts/cursor/hooks.json +44 -0
  100. package/hosts/dsh/hooks.json +21 -0
  101. package/hosts/dsh/statusline/lib/client.js +138 -0
  102. package/hosts/dsh/statusline/lib/index.js +104 -0
  103. package/hosts/dsh/statusline/package.json +28 -0
  104. package/hosts/omp/hook.py +277 -0
  105. package/hosts/omp/tezgah-hook.ts.in +701 -0
  106. package/hosts/opencode/plugins/tezgah.js +2742 -0
  107. package/hosts/opencode/tui/tezgah-tui.tsx +151 -0
  108. package/output-styles/tezgah.md +142 -0
  109. package/package.json +32 -0
  110. package/packaging/build.sh +342 -0
  111. package/packaging/install.ps1 +166 -0
  112. package/packaging/install.sh +56 -0
  113. package/packaging/upgrade.sh +142 -0
  114. package/skills/ai-research/0-autoresearch-skill/SKILL.md +411 -0
  115. package/skills/ai-research/0-autoresearch-skill/references/agent-continuity.md +95 -0
  116. package/skills/ai-research/0-autoresearch-skill/references/progress-reporting.md +166 -0
  117. package/skills/ai-research/0-autoresearch-skill/references/skill-routing.md +219 -0
  118. package/skills/ai-research/0-autoresearch-skill/templates/findings.md +44 -0
  119. package/skills/ai-research/0-autoresearch-skill/templates/research-log.md +41 -0
  120. package/skills/ai-research/01-model-architecture/litgpt/SKILL.md +469 -0
  121. package/skills/ai-research/01-model-architecture/litgpt/references/custom-models.md +569 -0
  122. package/skills/ai-research/01-model-architecture/litgpt/references/distributed-training.md +452 -0
  123. package/skills/ai-research/01-model-architecture/litgpt/references/supported-models.md +337 -0
  124. package/skills/ai-research/01-model-architecture/litgpt/references/training-recipes.md +620 -0
  125. package/skills/ai-research/01-model-architecture/mamba/SKILL.md +260 -0
  126. package/skills/ai-research/01-model-architecture/mamba/references/architecture-details.md +207 -0
  127. package/skills/ai-research/01-model-architecture/mamba/references/benchmarks.md +256 -0
  128. package/skills/ai-research/01-model-architecture/mamba/references/training-guide.md +389 -0
  129. package/skills/ai-research/01-model-architecture/nanogpt/SKILL.md +290 -0
  130. package/skills/ai-research/01-model-architecture/nanogpt/references/architecture.md +383 -0
  131. package/skills/ai-research/01-model-architecture/nanogpt/references/data.md +477 -0
  132. package/skills/ai-research/01-model-architecture/nanogpt/references/training.md +565 -0
  133. package/skills/ai-research/01-model-architecture/rwkv/SKILL.md +260 -0
  134. package/skills/ai-research/01-model-architecture/rwkv/references/architecture-details.md +345 -0
  135. package/skills/ai-research/01-model-architecture/rwkv/references/rwkv7.md +387 -0
  136. package/skills/ai-research/01-model-architecture/rwkv/references/state-management.md +370 -0
  137. package/skills/ai-research/01-model-architecture/torchtitan/SKILL.md +358 -0
  138. package/skills/ai-research/01-model-architecture/torchtitan/references/checkpoint.md +182 -0
  139. package/skills/ai-research/01-model-architecture/torchtitan/references/custom-models.md +259 -0
  140. package/skills/ai-research/01-model-architecture/torchtitan/references/float8.md +134 -0
  141. package/skills/ai-research/01-model-architecture/torchtitan/references/fsdp.md +127 -0
  142. package/skills/ai-research/02-tokenization/huggingface-tokenizers/SKILL.md +516 -0
  143. package/skills/ai-research/02-tokenization/huggingface-tokenizers/references/algorithms.md +654 -0
  144. package/skills/ai-research/02-tokenization/huggingface-tokenizers/references/integration.md +638 -0
  145. package/skills/ai-research/02-tokenization/huggingface-tokenizers/references/pipeline.md +724 -0
  146. package/skills/ai-research/02-tokenization/huggingface-tokenizers/references/training.md +566 -0
  147. package/skills/ai-research/02-tokenization/sentencepiece/SKILL.md +235 -0
  148. package/skills/ai-research/02-tokenization/sentencepiece/references/algorithms.md +201 -0
  149. package/skills/ai-research/02-tokenization/sentencepiece/references/training.md +305 -0
  150. package/skills/ai-research/03-fine-tuning/axolotl/SKILL.md +158 -0
  151. package/skills/ai-research/03-fine-tuning/axolotl/references/api.md +5549 -0
  152. package/skills/ai-research/03-fine-tuning/axolotl/references/dataset-formats.md +1030 -0
  153. package/skills/ai-research/03-fine-tuning/axolotl/references/index.md +16 -0
  154. package/skills/ai-research/03-fine-tuning/axolotl/references/other.md +3564 -0
  155. package/skills/ai-research/03-fine-tuning/llama-factory/SKILL.md +80 -0
  156. package/skills/ai-research/03-fine-tuning/llama-factory/references/_images.md +24 -0
  157. package/skills/ai-research/03-fine-tuning/llama-factory/references/advanced.md +1056 -0
  158. package/skills/ai-research/03-fine-tuning/llama-factory/references/getting_started.md +350 -0
  159. package/skills/ai-research/03-fine-tuning/llama-factory/references/index.md +20 -0
  160. package/skills/ai-research/03-fine-tuning/llama-factory/references/other.md +32 -0
  161. package/skills/ai-research/03-fine-tuning/peft/SKILL.md +431 -0
  162. package/skills/ai-research/03-fine-tuning/peft/references/advanced-usage.md +515 -0
  163. package/skills/ai-research/03-fine-tuning/peft/references/troubleshooting.md +481 -0
  164. package/skills/ai-research/03-fine-tuning/unsloth/SKILL.md +80 -0
  165. package/skills/ai-research/03-fine-tuning/unsloth/references/index.md +8 -0
  166. package/skills/ai-research/03-fine-tuning/unsloth/references/llms.md +83 -0
  167. package/skills/ai-research/04-mechanistic-interpretability/nnsight/SKILL.md +436 -0
  168. package/skills/ai-research/04-mechanistic-interpretability/nnsight/references/README.md +79 -0
  169. package/skills/ai-research/04-mechanistic-interpretability/nnsight/references/api.md +345 -0
  170. package/skills/ai-research/04-mechanistic-interpretability/nnsight/references/tutorials.md +301 -0
  171. package/skills/ai-research/04-mechanistic-interpretability/pyvene/SKILL.md +473 -0
  172. package/skills/ai-research/04-mechanistic-interpretability/pyvene/references/README.md +74 -0
  173. package/skills/ai-research/04-mechanistic-interpretability/pyvene/references/api.md +384 -0
  174. package/skills/ai-research/04-mechanistic-interpretability/pyvene/references/tutorials.md +377 -0
  175. package/skills/ai-research/04-mechanistic-interpretability/saelens/SKILL.md +386 -0
  176. package/skills/ai-research/04-mechanistic-interpretability/saelens/references/README.md +71 -0
  177. package/skills/ai-research/04-mechanistic-interpretability/saelens/references/api.md +334 -0
  178. package/skills/ai-research/04-mechanistic-interpretability/saelens/references/tutorials.md +319 -0
  179. package/skills/ai-research/04-mechanistic-interpretability/transformer-lens/SKILL.md +346 -0
  180. package/skills/ai-research/04-mechanistic-interpretability/transformer-lens/references/README.md +55 -0
  181. package/skills/ai-research/04-mechanistic-interpretability/transformer-lens/references/api.md +363 -0
  182. package/skills/ai-research/04-mechanistic-interpretability/transformer-lens/references/tutorials.md +340 -0
  183. package/skills/ai-research/05-data-processing/nemo-curator/SKILL.md +383 -0
  184. package/skills/ai-research/05-data-processing/nemo-curator/references/deduplication.md +88 -0
  185. package/skills/ai-research/05-data-processing/nemo-curator/references/filtering.md +103 -0
  186. package/skills/ai-research/05-data-processing/ray-data/SKILL.md +326 -0
  187. package/skills/ai-research/05-data-processing/ray-data/references/integration.md +83 -0
  188. package/skills/ai-research/05-data-processing/ray-data/references/transformations.md +84 -0
  189. package/skills/ai-research/06-post-training/grpo-rl-training/README.md +98 -0
  190. package/skills/ai-research/06-post-training/grpo-rl-training/SKILL.md +572 -0
  191. package/skills/ai-research/06-post-training/miles/SKILL.md +315 -0
  192. package/skills/ai-research/06-post-training/miles/references/api-reference.md +142 -0
  193. package/skills/ai-research/06-post-training/miles/references/troubleshooting.md +353 -0
  194. package/skills/ai-research/06-post-training/openrlhf/SKILL.md +249 -0
  195. package/skills/ai-research/06-post-training/openrlhf/references/algorithm-comparison.md +405 -0
  196. package/skills/ai-research/06-post-training/openrlhf/references/custom-rewards.md +531 -0
  197. package/skills/ai-research/06-post-training/openrlhf/references/hybrid-engine.md +288 -0
  198. package/skills/ai-research/06-post-training/openrlhf/references/multi-node-training.md +455 -0
  199. package/skills/ai-research/06-post-training/simpo/SKILL.md +219 -0
  200. package/skills/ai-research/06-post-training/simpo/references/datasets.md +479 -0
  201. package/skills/ai-research/06-post-training/simpo/references/hyperparameters.md +453 -0
  202. package/skills/ai-research/06-post-training/simpo/references/loss-functions.md +351 -0
  203. package/skills/ai-research/06-post-training/slime/SKILL.md +464 -0
  204. package/skills/ai-research/06-post-training/slime/references/api-reference.md +393 -0
  205. package/skills/ai-research/06-post-training/slime/references/troubleshooting.md +387 -0
  206. package/skills/ai-research/06-post-training/torchforge/SKILL.md +433 -0
  207. package/skills/ai-research/06-post-training/torchforge/references/api-reference.md +328 -0
  208. package/skills/ai-research/06-post-training/torchforge/references/troubleshooting.md +410 -0
  209. package/skills/ai-research/06-post-training/trl-fine-tuning/SKILL.md +455 -0
  210. package/skills/ai-research/06-post-training/trl-fine-tuning/references/dpo-variants.md +228 -0
  211. package/skills/ai-research/06-post-training/trl-fine-tuning/references/online-rl.md +83 -0
  212. package/skills/ai-research/06-post-training/trl-fine-tuning/references/reward-modeling.md +123 -0
  213. package/skills/ai-research/06-post-training/trl-fine-tuning/references/sft-training.md +169 -0
  214. package/skills/ai-research/06-post-training/verl/SKILL.md +391 -0
  215. package/skills/ai-research/06-post-training/verl/references/api-reference.md +302 -0
  216. package/skills/ai-research/06-post-training/verl/references/troubleshooting.md +392 -0
  217. package/skills/ai-research/07-safety-alignment/constitutional-ai/SKILL.md +290 -0
  218. package/skills/ai-research/07-safety-alignment/llamaguard/SKILL.md +337 -0
  219. package/skills/ai-research/07-safety-alignment/nemo-guardrails/SKILL.md +297 -0
  220. package/skills/ai-research/07-safety-alignment/prompt-guard/SKILL.md +312 -0
  221. package/skills/ai-research/08-distributed-training/accelerate/SKILL.md +332 -0
  222. package/skills/ai-research/08-distributed-training/accelerate/references/custom-plugins.md +454 -0
  223. package/skills/ai-research/08-distributed-training/accelerate/references/megatron-integration.md +490 -0
  224. package/skills/ai-research/08-distributed-training/accelerate/references/performance.md +526 -0
  225. package/skills/ai-research/08-distributed-training/deepspeed/SKILL.md +141 -0
  226. package/skills/ai-research/08-distributed-training/deepspeed/references/08.md +18 -0
  227. package/skills/ai-research/08-distributed-training/deepspeed/references/09.md +174 -0
  228. package/skills/ai-research/08-distributed-training/deepspeed/references/2020.md +379 -0
  229. package/skills/ai-research/08-distributed-training/deepspeed/references/2023.md +280 -0
  230. package/skills/ai-research/08-distributed-training/deepspeed/references/assets.md +180 -0
  231. package/skills/ai-research/08-distributed-training/deepspeed/references/index.md +36 -0
  232. package/skills/ai-research/08-distributed-training/deepspeed/references/mii.md +119 -0
  233. package/skills/ai-research/08-distributed-training/deepspeed/references/other.md +1192 -0
  234. package/skills/ai-research/08-distributed-training/megatron-core/SKILL.md +366 -0
  235. package/skills/ai-research/08-distributed-training/megatron-core/references/benchmarks.md +250 -0
  236. package/skills/ai-research/08-distributed-training/megatron-core/references/parallelism-guide.md +405 -0
  237. package/skills/ai-research/08-distributed-training/megatron-core/references/production-examples.md +474 -0
  238. package/skills/ai-research/08-distributed-training/megatron-core/references/training-recipes.md +548 -0
  239. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/SKILL.md +231 -0
  240. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_dcp_async_recipe.md +14 -0
  241. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_dcp_overview.md +19 -0
  242. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_dcp_recipe.md +18 -0
  243. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_ddp_notes.md +10 -0
  244. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_device_mesh_tutorial.md +22 -0
  245. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_examples_fsdp2.md +15 -0
  246. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_fsdp1_api.md +9 -0
  247. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_fsdp2_tutorial.md +45 -0
  248. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_fully_shard_api.md +49 -0
  249. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/pytorch_tp_tutorial.md +22 -0
  250. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/ray_train_fsdp2_example.md +13 -0
  251. package/skills/ai-research/08-distributed-training/pytorch-fsdp2/references/torchtitan_fsdp_notes.md +14 -0
  252. package/skills/ai-research/08-distributed-training/pytorch-lightning/SKILL.md +346 -0
  253. package/skills/ai-research/08-distributed-training/pytorch-lightning/references/callbacks.md +437 -0
  254. package/skills/ai-research/08-distributed-training/pytorch-lightning/references/distributed.md +491 -0
  255. package/skills/ai-research/08-distributed-training/pytorch-lightning/references/hyperparameter-tuning.md +557 -0
  256. package/skills/ai-research/08-distributed-training/ray-train/SKILL.md +406 -0
  257. package/skills/ai-research/08-distributed-training/ray-train/references/multi-node.md +629 -0
  258. package/skills/ai-research/09-infrastructure/lambda-labs/SKILL.md +545 -0
  259. package/skills/ai-research/09-infrastructure/lambda-labs/references/advanced-usage.md +612 -0
  260. package/skills/ai-research/09-infrastructure/lambda-labs/references/troubleshooting.md +531 -0
  261. package/skills/ai-research/09-infrastructure/modal/SKILL.md +341 -0
  262. package/skills/ai-research/09-infrastructure/modal/references/advanced-usage.md +504 -0
  263. package/skills/ai-research/09-infrastructure/modal/references/troubleshooting.md +495 -0
  264. package/skills/ai-research/09-infrastructure/skypilot/SKILL.md +509 -0
  265. package/skills/ai-research/09-infrastructure/skypilot/references/advanced-usage.md +492 -0
  266. package/skills/ai-research/09-infrastructure/skypilot/references/troubleshooting.md +571 -0
  267. package/skills/ai-research/10-optimization/awq/SKILL.md +310 -0
  268. package/skills/ai-research/10-optimization/awq/references/advanced-usage.md +325 -0
  269. package/skills/ai-research/10-optimization/awq/references/troubleshooting.md +345 -0
  270. package/skills/ai-research/10-optimization/bitsandbytes/SKILL.md +411 -0
  271. package/skills/ai-research/10-optimization/bitsandbytes/references/memory-optimization.md +522 -0
  272. package/skills/ai-research/10-optimization/bitsandbytes/references/qlora-training.md +522 -0
  273. package/skills/ai-research/10-optimization/bitsandbytes/references/quantization-formats.md +448 -0
  274. package/skills/ai-research/10-optimization/flash-attention/SKILL.md +367 -0
  275. package/skills/ai-research/10-optimization/flash-attention/references/benchmarks.md +216 -0
  276. package/skills/ai-research/10-optimization/flash-attention/references/transformers-integration.md +294 -0
  277. package/skills/ai-research/10-optimization/gguf/SKILL.md +427 -0
  278. package/skills/ai-research/10-optimization/gguf/references/advanced-usage.md +505 -0
  279. package/skills/ai-research/10-optimization/gguf/references/troubleshooting.md +443 -0
  280. package/skills/ai-research/10-optimization/gptq/SKILL.md +450 -0
  281. package/skills/ai-research/10-optimization/gptq/references/calibration.md +338 -0
  282. package/skills/ai-research/10-optimization/gptq/references/integration.md +130 -0
  283. package/skills/ai-research/10-optimization/gptq/references/troubleshooting.md +96 -0
  284. package/skills/ai-research/10-optimization/hqq/SKILL.md +445 -0
  285. package/skills/ai-research/10-optimization/hqq/references/advanced-usage.md +529 -0
  286. package/skills/ai-research/10-optimization/hqq/references/troubleshooting.md +504 -0
  287. package/skills/ai-research/10-optimization/ml-training-recipes/SKILL.md +319 -0
  288. package/skills/ai-research/10-optimization/ml-training-recipes/references/architecture.md +320 -0
  289. package/skills/ai-research/10-optimization/ml-training-recipes/references/biomedical.md +498 -0
  290. package/skills/ai-research/10-optimization/ml-training-recipes/references/domain-specific.md +626 -0
  291. package/skills/ai-research/10-optimization/ml-training-recipes/references/experiment-loop.md +129 -0
  292. package/skills/ai-research/10-optimization/ml-training-recipes/references/optimizers.md +330 -0
  293. package/skills/ai-research/10-optimization/ml-training-recipes/references/scaling-and-selection.md +428 -0
  294. package/skills/ai-research/11-evaluation/bigcode-evaluation-harness/SKILL.md +405 -0
  295. package/skills/ai-research/11-evaluation/bigcode-evaluation-harness/references/benchmarks.md +394 -0
  296. package/skills/ai-research/11-evaluation/bigcode-evaluation-harness/references/custom-tasks.md +425 -0
  297. package/skills/ai-research/11-evaluation/bigcode-evaluation-harness/references/issues.md +395 -0
  298. package/skills/ai-research/11-evaluation/lm-evaluation-harness/SKILL.md +490 -0
  299. package/skills/ai-research/11-evaluation/lm-evaluation-harness/references/api-evaluation.md +491 -0
  300. package/skills/ai-research/11-evaluation/lm-evaluation-harness/references/benchmark-guide.md +489 -0
  301. package/skills/ai-research/11-evaluation/lm-evaluation-harness/references/custom-tasks.md +603 -0
  302. package/skills/ai-research/11-evaluation/lm-evaluation-harness/references/distributed-eval.md +520 -0
  303. package/skills/ai-research/11-evaluation/nemo-evaluator/SKILL.md +494 -0
  304. package/skills/ai-research/11-evaluation/nemo-evaluator/references/adapter-system.md +341 -0
  305. package/skills/ai-research/11-evaluation/nemo-evaluator/references/configuration.md +448 -0
  306. package/skills/ai-research/11-evaluation/nemo-evaluator/references/custom-benchmarks.md +316 -0
  307. package/skills/ai-research/11-evaluation/nemo-evaluator/references/execution-backends.md +362 -0
  308. package/skills/ai-research/12-inference-serving/llama-cpp/SKILL.md +258 -0
  309. package/skills/ai-research/12-inference-serving/llama-cpp/references/optimization.md +90 -0
  310. package/skills/ai-research/12-inference-serving/llama-cpp/references/quantization.md +214 -0
  311. package/skills/ai-research/12-inference-serving/llama-cpp/references/server.md +126 -0
  312. package/skills/ai-research/12-inference-serving/sglang/SKILL.md +442 -0
  313. package/skills/ai-research/12-inference-serving/sglang/references/deployment.md +491 -0
  314. package/skills/ai-research/12-inference-serving/sglang/references/radix-attention.md +414 -0
  315. package/skills/ai-research/12-inference-serving/sglang/references/structured-generation.md +542 -0
  316. package/skills/ai-research/12-inference-serving/tensorrt-llm/SKILL.md +187 -0
  317. package/skills/ai-research/12-inference-serving/tensorrt-llm/references/multi-gpu.md +299 -0
  318. package/skills/ai-research/12-inference-serving/tensorrt-llm/references/optimization.md +243 -0
  319. package/skills/ai-research/12-inference-serving/tensorrt-llm/references/serving.md +471 -0
  320. package/skills/ai-research/12-inference-serving/vllm/SKILL.md +364 -0
  321. package/skills/ai-research/12-inference-serving/vllm/references/optimization.md +227 -0
  322. package/skills/ai-research/12-inference-serving/vllm/references/quantization.md +285 -0
  323. package/skills/ai-research/12-inference-serving/vllm/references/server-deployment.md +256 -0
  324. package/skills/ai-research/12-inference-serving/vllm/references/troubleshooting.md +448 -0
  325. package/skills/ai-research/13-mlops/mlflow/SKILL.md +704 -0
  326. package/skills/ai-research/13-mlops/mlflow/references/deployment.md +745 -0
  327. package/skills/ai-research/13-mlops/mlflow/references/model-registry.md +771 -0
  328. package/skills/ai-research/13-mlops/mlflow/references/tracking.md +681 -0
  329. package/skills/ai-research/13-mlops/swanlab/SKILL.md +406 -0
  330. package/skills/ai-research/13-mlops/swanlab/references/integrations.md +305 -0
  331. package/skills/ai-research/13-mlops/swanlab/references/visualization.md +234 -0
  332. package/skills/ai-research/13-mlops/tensorboard/SKILL.md +629 -0
  333. package/skills/ai-research/13-mlops/tensorboard/references/integrations.md +639 -0
  334. package/skills/ai-research/13-mlops/tensorboard/references/profiling.md +546 -0
  335. package/skills/ai-research/13-mlops/tensorboard/references/visualization.md +621 -0
  336. package/skills/ai-research/13-mlops/weights-and-biases/SKILL.md +590 -0
  337. package/skills/ai-research/13-mlops/weights-and-biases/references/artifacts.md +585 -0
  338. package/skills/ai-research/13-mlops/weights-and-biases/references/integrations.md +701 -0
  339. package/skills/ai-research/13-mlops/weights-and-biases/references/sweeps.md +848 -0
  340. package/skills/ai-research/14-agents/a-evolve/SKILL.md +383 -0
  341. package/skills/ai-research/14-agents/a-evolve/references/README.md +831 -0
  342. package/skills/ai-research/14-agents/a-evolve/references/api.md +594 -0
  343. package/skills/ai-research/14-agents/a-evolve/references/architecture.md +417 -0
  344. package/skills/ai-research/14-agents/a-evolve/references/design-patterns.md +462 -0
  345. package/skills/ai-research/14-agents/a-evolve/references/examples.md +352 -0
  346. package/skills/ai-research/14-agents/a-evolve/references/issues.md +591 -0
  347. package/skills/ai-research/14-agents/a-evolve/references/releases.md +112 -0
  348. package/skills/ai-research/14-agents/a-evolve/references/tutorials.md +819 -0
  349. package/skills/ai-research/14-agents/autogpt/SKILL.md +403 -0
  350. package/skills/ai-research/14-agents/autogpt/references/advanced-usage.md +536 -0
  351. package/skills/ai-research/14-agents/autogpt/references/troubleshooting.md +421 -0
  352. package/skills/ai-research/14-agents/crewai/SKILL.md +498 -0
  353. package/skills/ai-research/14-agents/crewai/references/flows.md +439 -0
  354. package/skills/ai-research/14-agents/crewai/references/tools.md +430 -0
  355. package/skills/ai-research/14-agents/crewai/references/troubleshooting.md +481 -0
  356. package/skills/ai-research/14-agents/langchain/SKILL.md +480 -0
  357. package/skills/ai-research/14-agents/langchain/references/agents.md +500 -0
  358. package/skills/ai-research/14-agents/langchain/references/integration.md +563 -0
  359. package/skills/ai-research/14-agents/langchain/references/rag.md +601 -0
  360. package/skills/ai-research/14-agents/llamaindex/SKILL.md +569 -0
  361. package/skills/ai-research/14-agents/llamaindex/references/agents.md +84 -0
  362. package/skills/ai-research/14-agents/llamaindex/references/data_connectors.md +109 -0
  363. package/skills/ai-research/14-agents/llamaindex/references/query_engines.md +407 -0
  364. package/skills/ai-research/15-rag/chroma/SKILL.md +406 -0
  365. package/skills/ai-research/15-rag/chroma/references/integration.md +39 -0
  366. package/skills/ai-research/15-rag/faiss/SKILL.md +221 -0
  367. package/skills/ai-research/15-rag/faiss/references/index_types.md +281 -0
  368. package/skills/ai-research/15-rag/pinecone/SKILL.md +358 -0
  369. package/skills/ai-research/15-rag/pinecone/references/deployment.md +182 -0
  370. package/skills/ai-research/15-rag/qdrant/SKILL.md +493 -0
  371. package/skills/ai-research/15-rag/qdrant/references/advanced-usage.md +649 -0
  372. package/skills/ai-research/15-rag/qdrant/references/troubleshooting.md +632 -0
  373. package/skills/ai-research/15-rag/sentence-transformers/SKILL.md +255 -0
  374. package/skills/ai-research/15-rag/sentence-transformers/references/models.md +124 -0
  375. package/skills/ai-research/16-prompt-engineering/dspy/SKILL.md +590 -0
  376. package/skills/ai-research/16-prompt-engineering/dspy/references/examples.md +664 -0
  377. package/skills/ai-research/16-prompt-engineering/dspy/references/modules.md +476 -0
  378. package/skills/ai-research/16-prompt-engineering/dspy/references/optimizers.md +567 -0
  379. package/skills/ai-research/16-prompt-engineering/guidance/SKILL.md +572 -0
  380. package/skills/ai-research/16-prompt-engineering/guidance/references/backends.md +555 -0
  381. package/skills/ai-research/16-prompt-engineering/guidance/references/constraints.md +675 -0
  382. package/skills/ai-research/16-prompt-engineering/guidance/references/examples.md +768 -0
  383. package/skills/ai-research/16-prompt-engineering/instructor/SKILL.md +740 -0
  384. package/skills/ai-research/16-prompt-engineering/instructor/references/examples.md +108 -0
  385. package/skills/ai-research/16-prompt-engineering/instructor/references/providers.md +71 -0
  386. package/skills/ai-research/16-prompt-engineering/instructor/references/validation.md +607 -0
  387. package/skills/ai-research/16-prompt-engineering/outlines/SKILL.md +652 -0
  388. package/skills/ai-research/16-prompt-engineering/outlines/references/backends.md +616 -0
  389. package/skills/ai-research/16-prompt-engineering/outlines/references/examples.md +774 -0
  390. package/skills/ai-research/16-prompt-engineering/outlines/references/json_generation.md +653 -0
  391. package/skills/ai-research/17-observability/langsmith/SKILL.md +422 -0
  392. package/skills/ai-research/17-observability/langsmith/references/advanced-usage.md +549 -0
  393. package/skills/ai-research/17-observability/langsmith/references/troubleshooting.md +538 -0
  394. package/skills/ai-research/17-observability/phoenix/SKILL.md +475 -0
  395. package/skills/ai-research/17-observability/phoenix/references/advanced-usage.md +620 -0
  396. package/skills/ai-research/17-observability/phoenix/references/troubleshooting.md +539 -0
  397. package/skills/ai-research/18-multimodal/audiocraft/SKILL.md +564 -0
  398. package/skills/ai-research/18-multimodal/audiocraft/references/advanced-usage.md +667 -0
  399. package/skills/ai-research/18-multimodal/audiocraft/references/troubleshooting.md +505 -0
  400. package/skills/ai-research/18-multimodal/blip-2/SKILL.md +564 -0
  401. package/skills/ai-research/18-multimodal/blip-2/references/advanced-usage.md +681 -0
  402. package/skills/ai-research/18-multimodal/blip-2/references/troubleshooting.md +527 -0
  403. package/skills/ai-research/18-multimodal/clip/SKILL.md +253 -0
  404. package/skills/ai-research/18-multimodal/clip/references/applications.md +208 -0
  405. package/skills/ai-research/18-multimodal/cosmos-policy/SKILL.md +402 -0
  406. package/skills/ai-research/18-multimodal/cosmos-policy/references/libero-commands.md +175 -0
  407. package/skills/ai-research/18-multimodal/cosmos-policy/references/robocasa-commands.md +147 -0
  408. package/skills/ai-research/18-multimodal/llava/SKILL.md +304 -0
  409. package/skills/ai-research/18-multimodal/llava/references/training.md +198 -0
  410. package/skills/ai-research/18-multimodal/openpi/SKILL.md +480 -0
  411. package/skills/ai-research/18-multimodal/openpi/references/checkpoints-and-env-map.md +86 -0
  412. package/skills/ai-research/18-multimodal/openpi/references/config-recipes.md +50 -0
  413. package/skills/ai-research/18-multimodal/openpi/references/pytorch-gotchas.md +49 -0
  414. package/skills/ai-research/18-multimodal/openpi/references/remote-client-pattern.md +48 -0
  415. package/skills/ai-research/18-multimodal/openpi/references/training-debugging.md +46 -0
  416. package/skills/ai-research/18-multimodal/openvla-oft/SKILL.md +441 -0
  417. package/skills/ai-research/18-multimodal/openvla-oft/references/aloha-workflow.md +141 -0
  418. package/skills/ai-research/18-multimodal/openvla-oft/references/config-troubleshooting.md +97 -0
  419. package/skills/ai-research/18-multimodal/openvla-oft/references/libero-workflow.md +115 -0
  420. package/skills/ai-research/18-multimodal/openvla-oft/references/paper-and-checkpoints.md +84 -0
  421. package/skills/ai-research/18-multimodal/segment-anything/SKILL.md +500 -0
  422. package/skills/ai-research/18-multimodal/segment-anything/references/advanced-usage.md +590 -0
  423. package/skills/ai-research/18-multimodal/segment-anything/references/troubleshooting.md +485 -0
  424. package/skills/ai-research/18-multimodal/stable-diffusion/SKILL.md +519 -0
  425. package/skills/ai-research/18-multimodal/stable-diffusion/references/advanced-usage.md +717 -0
  426. package/skills/ai-research/18-multimodal/stable-diffusion/references/troubleshooting.md +556 -0
  427. package/skills/ai-research/18-multimodal/whisper/SKILL.md +317 -0
  428. package/skills/ai-research/18-multimodal/whisper/references/languages.md +190 -0
  429. package/skills/ai-research/19-emerging-techniques/knowledge-distillation/SKILL.md +458 -0
  430. package/skills/ai-research/19-emerging-techniques/knowledge-distillation/references/minillm.md +335 -0
  431. package/skills/ai-research/19-emerging-techniques/long-context/SKILL.md +536 -0
  432. package/skills/ai-research/19-emerging-techniques/long-context/references/extension_methods.md +469 -0
  433. package/skills/ai-research/19-emerging-techniques/long-context/references/fine_tuning.md +612 -0
  434. package/skills/ai-research/19-emerging-techniques/long-context/references/rope.md +403 -0
  435. package/skills/ai-research/19-emerging-techniques/model-merging/SKILL.md +497 -0
  436. package/skills/ai-research/19-emerging-techniques/model-merging/references/coefficient-tuning.md +415 -0
  437. package/skills/ai-research/19-emerging-techniques/model-merging/references/evaluation.md +463 -0
  438. package/skills/ai-research/19-emerging-techniques/model-merging/references/examples.md +429 -0
  439. package/skills/ai-research/19-emerging-techniques/model-merging/references/methods.md +353 -0
  440. package/skills/ai-research/19-emerging-techniques/model-pruning/SKILL.md +495 -0
  441. package/skills/ai-research/19-emerging-techniques/model-pruning/references/wanda.md +348 -0
  442. package/skills/ai-research/19-emerging-techniques/moe-training/SKILL.md +526 -0
  443. package/skills/ai-research/19-emerging-techniques/moe-training/references/architectures.md +433 -0
  444. package/skills/ai-research/19-emerging-techniques/moe-training/references/inference.md +349 -0
  445. package/skills/ai-research/19-emerging-techniques/moe-training/references/training.md +426 -0
  446. package/skills/ai-research/19-emerging-techniques/speculative-decoding/SKILL.md +467 -0
  447. package/skills/ai-research/19-emerging-techniques/speculative-decoding/references/lookahead.md +310 -0
  448. package/skills/ai-research/19-emerging-techniques/speculative-decoding/references/medusa.md +351 -0
  449. package/skills/ai-research/20-ml-paper-writing/academic-plotting/SKILL.md +479 -0
  450. package/skills/ai-research/20-ml-paper-writing/academic-plotting/references/data-visualization.md +509 -0
  451. package/skills/ai-research/20-ml-paper-writing/academic-plotting/references/diagram-generation.md +395 -0
  452. package/skills/ai-research/20-ml-paper-writing/academic-plotting/references/style-guide.md +305 -0
  453. package/skills/ai-research/20-ml-paper-writing/ml-paper-writing/SKILL.md +982 -0
  454. package/skills/ai-research/20-ml-paper-writing/ml-paper-writing/references/checklists.md +348 -0
  455. package/skills/ai-research/20-ml-paper-writing/ml-paper-writing/references/citation-workflow.md +563 -0
  456. package/skills/ai-research/20-ml-paper-writing/ml-paper-writing/references/reviewer-guidelines.md +349 -0
  457. package/skills/ai-research/20-ml-paper-writing/ml-paper-writing/references/sources.md +165 -0
  458. package/skills/ai-research/20-ml-paper-writing/ml-paper-writing/references/writing-guide.md +477 -0
  459. package/skills/ai-research/20-ml-paper-writing/presenting-conference-talks/SKILL.md +298 -0
  460. package/skills/ai-research/20-ml-paper-writing/presenting-conference-talks/references/slide-templates.md +505 -0
  461. package/skills/ai-research/20-ml-paper-writing/systems-paper-writing/SKILL.md +270 -0
  462. package/skills/ai-research/20-ml-paper-writing/systems-paper-writing/references/checklist.md +279 -0
  463. package/skills/ai-research/20-ml-paper-writing/systems-paper-writing/references/reviewer-guidelines.md +116 -0
  464. package/skills/ai-research/20-ml-paper-writing/systems-paper-writing/references/section-blueprints.md +400 -0
  465. package/skills/ai-research/20-ml-paper-writing/systems-paper-writing/references/systems-conferences.md +261 -0
  466. package/skills/ai-research/20-ml-paper-writing/systems-paper-writing/references/writing-patterns.md +231 -0
  467. package/skills/ai-research/21-research-ideation/brainstorming-research-ideas/SKILL.md +384 -0
  468. package/skills/ai-research/21-research-ideation/creative-thinking-for-research/SKILL.md +366 -0
  469. package/skills/ai-research/22-agent-native-research-artifact/compiler/SKILL.md +245 -0
  470. package/skills/ai-research/22-agent-native-research-artifact/compiler/references/ara-schema.md +439 -0
  471. package/skills/ai-research/22-agent-native-research-artifact/compiler/references/exploration-tree-spec.md +125 -0
  472. package/skills/ai-research/22-agent-native-research-artifact/compiler/references/validation-checklist.md +149 -0
  473. package/skills/ai-research/22-agent-native-research-artifact/research-manager/SKILL.md +324 -0
  474. package/skills/ai-research/22-agent-native-research-artifact/research-manager/references/event-taxonomy.md +124 -0
  475. package/skills/ai-research/22-agent-native-research-artifact/research-manager/references/provenance-tags.md +190 -0
  476. package/skills/ai-research/22-agent-native-research-artifact/research-manager/references/session-protocol.md +162 -0
  477. package/skills/ai-research/22-agent-native-research-artifact/rigor-reviewer/SKILL.md +322 -0
  478. package/skills/ai-research/22-agent-native-research-artifact/rigor-reviewer/references/review-dimensions.md +182 -0
  479. package/skills/ai-research/SKILL.md +101 -0
  480. package/skills/ai-research/SOURCE +38 -0
  481. package/skills/ai-research/index/1-frame.md +18 -0
  482. package/skills/ai-research/index/2-data.md +21 -0
  483. package/skills/ai-research/index/3-train.md +48 -0
  484. package/skills/ai-research/index/4-measure.md +25 -0
  485. package/skills/ai-research/index/5-run.md +23 -0
  486. package/skills/ai-research/index/6-write.md +35 -0
  487. package/skills/ai-research/library.json +3456 -0
  488. package/skills/analyze-app/EVALS.md +82 -0
  489. package/skills/analyze-app/SKILL.md +188 -0
  490. package/skills/design-contract/EVALS.md +80 -0
  491. package/skills/design-contract/SKILL.md +171 -0
  492. package/skills/design-library/EVALS.md +85 -0
  493. package/skills/design-library/INDEX.md +59 -0
  494. package/skills/design-library/SKILL.md +58 -0
  495. package/skills/design-library/SOURCE +131 -0
  496. package/skills/design-library/adaptive-interfaces/skills/colour-independence/SKILL.md +90 -0
  497. package/skills/design-library/adaptive-interfaces/skills/flexible-typography/SKILL.md +83 -0
  498. package/skills/design-library/adaptive-interfaces/skills/information-density/SKILL.md +87 -0
  499. package/skills/design-library/adaptive-interfaces/skills/preference-audit/SKILL.md +70 -0
  500. package/skills/design-library/adaptive-interfaces/skills/responsive-accessibility/SKILL.md +86 -0
  501. package/skills/design-library/adaptive-interfaces/skills/responsive-review/SKILL.md +76 -0
  502. package/skills/design-library/adaptive-interfaces/skills/simplified-views/SKILL.md +97 -0
  503. package/skills/design-library/adaptive-interfaces/skills/specify/SKILL.md +63 -0
  504. package/skills/design-library/adaptive-interfaces/skills/user-preference-respect/SKILL.md +100 -0
  505. package/skills/design-library/cognitive-accessibility/skills/adaptive-personalisation/SKILL.md +61 -0
  506. package/skills/design-library/cognitive-accessibility/skills/assess-load/SKILL.md +48 -0
  507. package/skills/design-library/cognitive-accessibility/skills/cognitive-load-assessment/SKILL.md +60 -0
  508. package/skills/design-library/cognitive-accessibility/skills/contextual-help-design/SKILL.md +61 -0
  509. package/skills/design-library/cognitive-accessibility/skills/error-prevention-recovery/SKILL.md +71 -0
  510. package/skills/design-library/cognitive-accessibility/skills/focus-attention-design/SKILL.md +67 -0
  511. package/skills/design-library/cognitive-accessibility/skills/memory-load-reduction/SKILL.md +60 -0
  512. package/skills/design-library/cognitive-accessibility/skills/plain-language-design/SKILL.md +78 -0
  513. package/skills/design-library/cognitive-accessibility/skills/review/SKILL.md +56 -0
  514. package/skills/design-library/cognitive-accessibility/skills/simplify/SKILL.md +39 -0
  515. package/skills/design-library/cognitive-accessibility/skills/wayfinding-navigation/SKILL.md +64 -0
  516. package/skills/design-library/design-research/skills/behavioural-analytics/SKILL.md +33 -0
  517. package/skills/design-library/design-research/skills/qual-quant-triangulation/SKILL.md +33 -0
  518. package/skills/design-library/inclusive-interaction/skills/audit/SKILL.md +50 -0
  519. package/skills/design-library/inclusive-interaction/skills/design-flow/SKILL.md +58 -0
  520. package/skills/design-library/inclusive-interaction/skills/feedback-and-status/SKILL.md +76 -0
  521. package/skills/design-library/inclusive-interaction/skills/gesture-alternatives/SKILL.md +70 -0
  522. package/skills/design-library/inclusive-interaction/skills/keyboard-navigation/SKILL.md +99 -0
  523. package/skills/design-library/inclusive-interaction/skills/keyboard-review/SKILL.md +54 -0
  524. package/skills/design-library/inclusive-interaction/skills/motion-sensitivity/SKILL.md +79 -0
  525. package/skills/design-library/inclusive-interaction/skills/multi-modal-input/SKILL.md +70 -0
  526. package/skills/design-library/inclusive-interaction/skills/touch-target-design/SKILL.md +71 -0
  527. package/skills/design-library/inclusive-interaction/skills/voice-interaction/SKILL.md +68 -0
  528. package/skills/design-library/visual-critique/skills/critique-affordance/SKILL.md +45 -0
  529. package/skills/design-library/visual-critique/skills/critique-brand-consistency/SKILL.md +42 -0
  530. package/skills/design-library/visual-critique/skills/critique-color/SKILL.md +44 -0
  531. package/skills/design-library/visual-critique/skills/critique-composition/SKILL.md +46 -0
  532. package/skills/design-library/visual-critique/skills/critique-information-density/SKILL.md +45 -0
  533. package/skills/design-library/visual-critique/skills/critique-typography/SKILL.md +45 -0
  534. package/skills/design-library/visual-critique/skills/critique-visual-hierarchy/SKILL.md +40 -0
  535. package/skills/feature-audit/EVALS.md +83 -0
  536. package/skills/feature-audit/SKILL.md +326 -0
  537. package/skills/harness/EVALS.md +81 -0
  538. package/skills/harness/SKILL.md +88 -0
  539. package/skills/i-have-adhd/EVALS.md +80 -0
  540. package/skills/i-have-adhd/SKILL.md +183 -0
  541. package/skills/no-ai-slop/EVALS.md +89 -0
  542. package/skills/no-ai-slop/SKILL.md +209 -0
  543. package/skills/no-ai-slop/eval.md +52 -0
  544. package/skills/plan-add/EVALS.md +79 -0
  545. package/skills/plan-add/SKILL.md +179 -0
  546. package/skills/plan-add/render_table.py +72 -0
  547. package/skills/plan-status/EVALS.md +78 -0
  548. package/skills/plan-status/SKILL.md +52 -0
  549. package/skills/plan-sync/EVALS.md +80 -0
  550. package/skills/plan-sync/SKILL.md +69 -0
  551. package/skills/pm-frameworks/SKILL.md +33 -0
  552. package/skills/pm-frameworks/SOURCE +39 -0
  553. package/skills/pm-frameworks/intended-vs-implemented/SKILL.md +42 -0
  554. package/skills/pm-frameworks/opportunity-solution-tree/SKILL.md +64 -0
  555. package/skills/ponytail/EVALS.md +80 -0
  556. package/skills/ponytail/SKILL.md +124 -0
  557. package/skills/product-analysis/EVALS.md +103 -0
  558. package/skills/product-analysis/SKILL.md +361 -0
  559. package/skills/research/EVALS.md +104 -0
  560. package/skills/research/SKILL.md +570 -0
  561. package/skills/rl-env/SKILL.md +53 -0
  562. package/skills/rl-env/SOURCE +41 -0
  563. package/skills/rl-env/generate-nemo-gym-env/SKILL.md +169 -0
  564. package/skills/rl-env/generate-nemo-gym-env/references/architecture.md +114 -0
  565. package/skills/rl-env/generate-openenv-env/SKILL.md +183 -0
  566. package/skills/rl-env/generate-openenv-env/references/architecture.md +82 -0
  567. package/skills/rl-env/generate-ors-env/SKILL.md +209 -0
  568. package/skills/rl-env/generate-ors-env/references/architecture.md +113 -0
  569. package/skills/rl-env/generate-verifiers-env/SKILL.md +188 -0
  570. package/skills/rl-env/generate-verifiers-env/references/architecture.md +119 -0
  571. package/skills/rl-env/rl-env-from-description/SKILL.md +124 -0
  572. package/skills/rl-env/rl-env-from-description/references/interview.md +75 -0
  573. package/skills/rl-env/rl-env-from-description/references/nemo_gym.md +41 -0
  574. package/skills/rl-env/rl-env-from-description/references/openenv.md +35 -0
  575. package/skills/rl-env/rl-env-from-description/references/ors.md +50 -0
  576. package/skills/rl-env/rl-env-from-description/references/verifiers.md +39 -0
  577. package/skills/tezgah-contract/EVALS.md +78 -0
  578. package/skills/tezgah-contract/SKILL.md +792 -0
  579. package/statusline.py +129 -0
  580. package/workflows/graph-impact.js +153 -0
  581. package/workflows/graph-map.js +158 -0
  582. package/workflows/graph-review.js +170 -0
@@ -0,0 +1,626 @@
1
+ <!-- vendored from orchestra-research/AI-research-SKILLs@773a52944ba4747a18bd4ae9ade53fff041adcbc 10-optimization/ml-training-recipes/references/domain-specific.md; MIT (c) Orchestra Research -->
2
+ # Domain-Specific Training Patterns
3
+
4
+ Patterns for vision, diffusion, and other non-LLM training scenarios. Referenced from SKILL.md.
5
+
6
+ ## Table of Contents
7
+
8
+ 1. [Computer Vision Training](#computer-vision-training)
9
+ 2. [Diffusion Model Training](#diffusion-model-training)
10
+ 3. [EMA (Exponential Moving Average) Models](#ema-models)
11
+ 4. [Contrastive / Self-Supervised Learning](#contrastive--self-supervised-learning)
12
+ 5. [Fine-Tuning & Transfer Learning](#fine-tuning--transfer-learning)
13
+ 6. [Multi-GPU / Distributed Training](#multi-gpu--distributed-training)
14
+ 7. [Checkpointing](#checkpointing)
15
+ 8. [Data Loading for Images](#data-loading-for-images)
16
+
17
+ ---
18
+
19
+ ## Computer Vision Training
20
+
21
+ ### Data augmentation pipeline
22
+
23
+ Data augmentation is often more impactful than architecture changes in vision:
24
+
25
+ ```python
26
+ import torchvision.transforms.v2 as T
27
+
28
+ train_transform = T.Compose([
29
+ T.RandomResizedCrop(224, scale=(0.08, 1.0)),
30
+ T.RandomHorizontalFlip(),
31
+ T.RandAugment(num_ops=2, magnitude=9), # automated augmentation
32
+ T.ToImage(),
33
+ T.ToDtype(torch.float32, scale=True),
34
+ T.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]),
35
+ ])
36
+
37
+ val_transform = T.Compose([
38
+ T.Resize(256),
39
+ T.CenterCrop(224),
40
+ T.ToImage(),
41
+ T.ToDtype(torch.float32, scale=True),
42
+ T.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]),
43
+ ])
44
+ ```
45
+
46
+ ### MixUp and CutMix
47
+
48
+ Regularization via input mixing — very effective for classification:
49
+
50
+ ```python
51
+ from torchvision.transforms.v2 import MixUp, CutMix
52
+
53
+ mixup = MixUp(alpha=0.2, num_classes=num_classes)
54
+ cutmix = CutMix(alpha=1.0, num_classes=num_classes)
55
+ # Apply randomly to each batch
56
+ mix_fn = T.RandomChoice([mixup, cutmix])
57
+
58
+ for images, targets in train_loader:
59
+ images, targets = mix_fn(images, targets)
60
+ # targets are now soft labels (one-hot blended)
61
+ loss = F.cross_entropy(model(images), targets)
62
+ ```
63
+
64
+ ### Stochastic depth (drop path)
65
+
66
+ Randomly drop residual blocks during training — better than dropout for vision:
67
+
68
+ ```python
69
+ class DropPath(nn.Module):
70
+ def __init__(self, drop_prob=0.0):
71
+ super().__init__()
72
+ self.drop_prob = drop_prob
73
+
74
+ def forward(self, x):
75
+ if not self.training or self.drop_prob == 0.0:
76
+ return x
77
+ keep_prob = 1 - self.drop_prob
78
+ shape = (x.shape[0],) + (1,) * (x.ndim - 1)
79
+ mask = torch.bernoulli(torch.full(shape, keep_prob, device=x.device))
80
+ return x * mask / keep_prob
81
+ ```
82
+
83
+ Use linearly increasing drop rates: layer 0 gets 0%, last layer gets max (e.g., 0.2):
84
+
85
+ ```python
86
+ drop_rates = [x.item() for x in torch.linspace(0, 0.2, num_layers)]
87
+ ```
88
+
89
+ ### Label smoothing
90
+
91
+ ```python
92
+ loss = F.cross_entropy(logits, targets, label_smoothing=0.1)
93
+ ```
94
+
95
+ ### Progressive resizing
96
+
97
+ Train at low resolution first, then increase — saves compute and acts as regularization:
98
+
99
+ ```python
100
+ # Phase 1: 160x160, lr=1e-3, epochs 0-60
101
+ # Phase 2: 224x224, lr=3e-4, epochs 60-90
102
+ # Phase 3: 288x288, lr=1e-4, epochs 90-100
103
+ ```
104
+
105
+ ### Vision optimizer recipes
106
+
107
+ ```python
108
+ # ViT / Vision Transformer
109
+ optimizer = torch.optim.AdamW(params, lr=1e-3, weight_decay=0.05, betas=(0.9, 0.999))
110
+ # + cosine LR decay, 5-epoch warmup, batch_size=1024
111
+
112
+ # ConvNeXt / CNN
113
+ optimizer = torch.optim.AdamW(params, lr=4e-3, weight_decay=0.05)
114
+ # + cosine LR decay, 20-epoch warmup, layer-wise LR decay
115
+
116
+ # ResNet (classic SGD recipe)
117
+ optimizer = torch.optim.SGD(params, lr=0.1, momentum=0.9, weight_decay=1e-4)
118
+ # + step LR decay (0.1x at epoch 30, 60, 90)
119
+ ```
120
+
121
+ ---
122
+
123
+ ## Diffusion Model Training
124
+
125
+ ### Training loop for DDPM-style
126
+
127
+ ```python
128
+ import torch.nn.functional as F
129
+
130
+ def train_step(model, x_0, noise_schedule):
131
+ B = x_0.shape[0]
132
+ # Sample random timesteps
133
+ t = torch.randint(0, noise_schedule.num_timesteps, (B,), device=x_0.device)
134
+
135
+ # Sample noise
136
+ noise = torch.randn_like(x_0)
137
+
138
+ # Forward diffusion: add noise
139
+ x_t = noise_schedule.q_sample(x_0, t, noise)
140
+
141
+ # Predict noise (or v, or x_0)
142
+ pred = model(x_t, t)
143
+
144
+ # Simple MSE loss on noise prediction
145
+ loss = F.mse_loss(pred, noise)
146
+ return loss
147
+ ```
148
+
149
+ ### Noise schedules
150
+
151
+ ```python
152
+ # Linear schedule (DDPM original)
153
+ betas = torch.linspace(1e-4, 0.02, 1000)
154
+
155
+ # Cosine schedule (improved DDPM — better for high-res)
156
+ def cosine_schedule(timesteps, s=0.008):
157
+ steps = timesteps + 1
158
+ x = torch.linspace(0, timesteps, steps)
159
+ alphas_cumprod = torch.cos((x / timesteps + s) / (1 + s) * torch.pi * 0.5) ** 2
160
+ alphas_cumprod = alphas_cumprod / alphas_cumprod[0]
161
+ betas = 1 - alphas_cumprod[1:] / alphas_cumprod[:-1]
162
+ return torch.clamp(betas, 0.0001, 0.9999)
163
+ ```
164
+
165
+ ### Flow matching (modern, simpler)
166
+
167
+ ```python
168
+ def flow_matching_loss(model, x_0):
169
+ """Conditional flow matching — simpler than DDPM, often better."""
170
+ t = torch.rand(x_0.shape[0], 1, 1, 1, device=x_0.device) # uniform [0, 1]
171
+ noise = torch.randn_like(x_0)
172
+
173
+ # Interpolate between noise and data
174
+ x_t = (1 - t) * noise + t * x_0
175
+
176
+ # Target velocity: data - noise
177
+ target = x_0 - noise
178
+
179
+ # Predict velocity
180
+ pred = model(x_t, t.squeeze())
181
+ return F.mse_loss(pred, target)
182
+ ```
183
+
184
+ ### v-prediction (better for low SNR regions)
185
+
186
+ ```python
187
+ # v = alpha * noise - sigma * x_0
188
+ # Better than epsilon-prediction for high-resolution images
189
+ def v_prediction_loss(model, x_0, alpha, sigma):
190
+ noise = torch.randn_like(x_0)
191
+ x_t = alpha * x_0 + sigma * noise
192
+ v_target = alpha * noise - sigma * x_0
193
+ v_pred = model(x_t, t)
194
+ return F.mse_loss(v_pred, v_target)
195
+ ```
196
+
197
+ ### Classifier-free guidance training
198
+
199
+ ```python
200
+ def train_step_cfg(model, x_0, condition, p_uncond=0.1):
201
+ """Train with random condition dropout for classifier-free guidance."""
202
+ # Randomly drop condition with probability p_uncond
203
+ mask = torch.rand(x_0.shape[0]) < p_uncond
204
+ condition_masked = condition.clone()
205
+ condition_masked[mask] = 0 # or null embedding
206
+
207
+ t = torch.randint(0, T, (x_0.shape[0],), device=x_0.device)
208
+ noise = torch.randn_like(x_0)
209
+ x_t = q_sample(x_0, t, noise)
210
+
211
+ pred = model(x_t, t, condition_masked)
212
+ return F.mse_loss(pred, noise)
213
+ ```
214
+
215
+ ### Diffusion model tips
216
+
217
+ - **EMA is essential** — use EMA weights for inference (see EMA section below)
218
+ - **Large batch sizes** work well (256-2048 for image diffusion)
219
+ - **AdamW** with lr=1e-4, no weight decay on biases/norms
220
+ - **No LR warmup** needed for most diffusion models (just constant LR works)
221
+ - **Train for many steps** — diffusion models are hungry (1M+ steps for ImageNet quality)
222
+ - **Monitor FID** every N steps on a fixed set of samples, not every step (expensive)
223
+
224
+ ---
225
+
226
+ ## EMA Models
227
+
228
+ Exponential Moving Average of weights produces smoother, higher-quality models for inference.
229
+ Essential for diffusion models, also useful for any generative model or self-supervised learning.
230
+
231
+ ```python
232
+ class EMA:
233
+ def __init__(self, model, decay=0.9999):
234
+ self.decay = decay
235
+ self.shadow = {name: param.clone().detach()
236
+ for name, param in model.named_parameters()}
237
+
238
+ @torch.no_grad()
239
+ def update(self, model):
240
+ for name, param in model.named_parameters():
241
+ self.shadow[name].lerp_(param.data, 1 - self.decay)
242
+
243
+ def apply(self, model):
244
+ """Swap model weights with EMA weights for inference."""
245
+ self.backup = {name: param.clone()
246
+ for name, param in model.named_parameters()}
247
+ for name, param in model.named_parameters():
248
+ param.data.copy_(self.shadow[name])
249
+
250
+ def restore(self, model):
251
+ """Restore original weights after inference."""
252
+ for name, param in model.named_parameters():
253
+ param.data.copy_(self.backup[name])
254
+ ```
255
+
256
+ ### Usage in training loop
257
+
258
+ ```python
259
+ ema = EMA(model, decay=0.9999)
260
+
261
+ for step, (x, y) in enumerate(train_loader):
262
+ loss = model(x, y)
263
+ loss.backward()
264
+ optimizer.step()
265
+ optimizer.zero_grad()
266
+
267
+ ema.update(model) # update EMA after each step
268
+
269
+ # For evaluation: temporarily swap to EMA weights
270
+ if step % eval_interval == 0:
271
+ ema.apply(model)
272
+ val_metric = evaluate(model, val_loader)
273
+ ema.restore(model)
274
+ ```
275
+
276
+ ### EMA decay warmup
277
+
278
+ Start with lower decay and ramp up to avoid the EMA lagging during early fast learning:
279
+
280
+ ```python
281
+ def ema_decay_schedule(step, base_decay=0.9999, warmup_steps=2000):
282
+ return min(base_decay, 1 - (1 - base_decay) * (1 + step) / (1 + warmup_steps))
283
+ ```
284
+
285
+ ---
286
+
287
+ ## Contrastive / Self-Supervised Learning
288
+
289
+ ### SimCLR-style contrastive loss
290
+
291
+ ```python
292
+ def contrastive_loss(z1, z2, temperature=0.5):
293
+ """NT-Xent loss for contrastive learning."""
294
+ z1 = F.normalize(z1, dim=1)
295
+ z2 = F.normalize(z2, dim=1)
296
+
297
+ B = z1.shape[0]
298
+ z = torch.cat([z1, z2], dim=0) # [2B, D]
299
+ sim = z @ z.T / temperature # [2B, 2B]
300
+
301
+ # Mask out self-similarity
302
+ mask = ~torch.eye(2 * B, dtype=torch.bool, device=z.device)
303
+ sim = sim.masked_fill(~mask, -1e9)
304
+
305
+ # Positive pairs: (i, i+B) and (i+B, i)
306
+ labels = torch.cat([torch.arange(B, 2*B), torch.arange(B)], dim=0).to(z.device)
307
+ return F.cross_entropy(sim, labels)
308
+ ```
309
+
310
+ ### Key patterns for self-supervised
311
+
312
+ - **Two augmented views** of same image → attract; different images → repel
313
+ - **Large batch sizes** critical (4096+ for SimCLR) — more negatives = better
314
+ - **Projection head** (MLP) between backbone and loss — discard after pretraining
315
+ - **LARS/LAMB optimizer** for very large batch training
316
+ - **Momentum encoder** (MoCo, BYOL) — use EMA of encoder as the target network
317
+
318
+ ---
319
+
320
+ ## Fine-Tuning & Transfer Learning
321
+
322
+ ### Layer-wise LR decay
323
+
324
+ Deeper (earlier) layers get smaller LR — they need less adaptation:
325
+
326
+ ```python
327
+ def get_layer_lrs(model, base_lr, decay_factor=0.65, num_layers=12):
328
+ """Assign exponentially decaying LR to each layer."""
329
+ param_groups = []
330
+ for i in range(num_layers):
331
+ lr = base_lr * (decay_factor ** (num_layers - 1 - i))
332
+ layer_params = get_layer_params(model, i) # implement per architecture
333
+ param_groups.append({"params": layer_params, "lr": lr})
334
+
335
+ # Head gets full LR
336
+ param_groups.append({"params": model.head.parameters(), "lr": base_lr})
337
+ return param_groups
338
+ ```
339
+
340
+ ### Freezing strategies
341
+
342
+ ```python
343
+ # Strategy 1: Freeze all, unfreeze head only
344
+ for param in model.parameters():
345
+ param.requires_grad = False
346
+ for param in model.head.parameters():
347
+ param.requires_grad = True
348
+
349
+ # Strategy 2: Gradual unfreezing (from top layers down)
350
+ def unfreeze_layers(model, num_layers_to_unfreeze):
351
+ layers = list(model.children())
352
+ for layer in layers[-num_layers_to_unfreeze:]:
353
+ for param in layer.parameters():
354
+ param.requires_grad = True
355
+
356
+ # Strategy 3: LoRA (low-rank adaptation) — efficient for large models
357
+ # Only train small low-rank matrices added to existing weights
358
+ # Saves memory and prevents catastrophic forgetting
359
+ ```
360
+
361
+ ### Fine-tuning tips
362
+
363
+ - **Lower LR** than pretraining (10-100x smaller)
364
+ - **Shorter training** (5-20 epochs typically)
365
+ - **Freeze BatchNorm** statistics: `model.eval()` for BN layers but `model.train()` for dropout
366
+ - **Warmup is important** — prevents destroying pretrained features early on
367
+
368
+ ---
369
+
370
+ ## Multi-GPU / Distributed Training
371
+
372
+ ### DDP (DistributedDataParallel) — most common
373
+
374
+ ```python
375
+ import torch.distributed as dist
376
+ from torch.nn.parallel import DistributedDataParallel as DDP
377
+
378
+ # Init process group
379
+ dist.init_process_group(backend="nccl")
380
+ local_rank = int(os.environ["LOCAL_RANK"])
381
+ torch.cuda.set_device(local_rank)
382
+
383
+ # Wrap model
384
+ model = model.to(local_rank)
385
+ model = DDP(model, device_ids=[local_rank])
386
+
387
+ # Use DistributedSampler for data
388
+ sampler = torch.utils.data.distributed.DistributedSampler(dataset)
389
+ loader = DataLoader(dataset, sampler=sampler, batch_size=per_gpu_batch)
390
+
391
+ # Remember to set epoch for proper shuffling
392
+ for epoch in range(num_epochs):
393
+ sampler.set_epoch(epoch)
394
+ ```
395
+
396
+ ### FSDP (Fully Sharded Data Parallel) — for large models
397
+
398
+ ```python
399
+ from torch.distributed.fsdp import FullyShardedDataParallel as FSDP
400
+
401
+ model = FSDP(
402
+ model,
403
+ auto_wrap_policy=size_based_auto_wrap_policy, # wrap layers > threshold
404
+ mixed_precision=MixedPrecision(
405
+ param_dtype=torch.bfloat16,
406
+ reduce_dtype=torch.bfloat16,
407
+ buffer_dtype=torch.bfloat16,
408
+ ),
409
+ )
410
+ ```
411
+
412
+ ### Scaling rules
413
+
414
+ - **Linear scaling**: When scaling batch_size by k, scale LR by k (up to a point)
415
+ - **Square root scaling**: `lr_new = lr_base * sqrt(batch_new / batch_base)` — more conservative, often works better
416
+ - **Warmup**: Scale warmup duration with batch size increase
417
+ - **Gradient accumulation**: Equivalent to larger batch size without more GPUs
418
+
419
+ ---
420
+
421
+ ## Checkpointing
422
+
423
+ ### Save/load with proper state
424
+
425
+ ```python
426
+ def save_checkpoint(model, optimizer, scheduler, step, path):
427
+ torch.save({
428
+ 'step': step,
429
+ 'model_state_dict': model.state_dict(),
430
+ 'optimizer_state_dict': optimizer.state_dict(),
431
+ 'scheduler_state_dict': scheduler.state_dict() if scheduler else None,
432
+ 'rng_state': torch.cuda.get_rng_state(),
433
+ }, path)
434
+
435
+ def load_checkpoint(model, optimizer, scheduler, path):
436
+ ckpt = torch.load(path, map_location='cpu', weights_only=False)
437
+ model.load_state_dict(ckpt['model_state_dict'])
438
+ optimizer.load_state_dict(ckpt['optimizer_state_dict'])
439
+ if scheduler and ckpt.get('scheduler_state_dict'):
440
+ scheduler.load_state_dict(ckpt['scheduler_state_dict'])
441
+ torch.cuda.set_rng_state(ckpt['rng_state'])
442
+ return ckpt['step']
443
+ ```
444
+
445
+ ### Best practices
446
+
447
+ - Save every N steps (not just every epoch) — long epochs can lose hours of work
448
+ - Keep last K checkpoints + best checkpoint (by val metric)
449
+ - Save optimizer state for exact resumption — without it, training dynamics change
450
+ - For DDP/FSDP: save only on rank 0, load on all ranks
451
+
452
+ ---
453
+
454
+ ## Data Loading for Images
455
+
456
+ ### Efficient ImageFolder with workers
457
+
458
+ ```python
459
+ from torch.utils.data import DataLoader
460
+ from torchvision.datasets import ImageFolder
461
+
462
+ train_dataset = ImageFolder(root="data/train", transform=train_transform)
463
+
464
+ train_loader = DataLoader(
465
+ train_dataset,
466
+ batch_size=256,
467
+ shuffle=True,
468
+ num_workers=8, # rule of thumb: 4 * num_GPUs
469
+ pin_memory=True, # faster CPU→GPU transfer
470
+ persistent_workers=True, # avoid re-spawning workers each epoch
471
+ prefetch_factor=2, # prefetch 2 batches per worker
472
+ drop_last=True, # avoid small last batch (bad for BatchNorm)
473
+ )
474
+ ```
475
+
476
+ ### WebDataset for large-scale (millions of images)
477
+
478
+ ```python
479
+ import webdataset as wds
480
+
481
+ dataset = (
482
+ wds.WebDataset("data/train-{000000..000099}.tar")
483
+ .shuffle(1000)
484
+ .decode("pil")
485
+ .to_tuple("jpg", "cls")
486
+ .map_tuple(train_transform, lambda x: x)
487
+ .batched(256)
488
+ )
489
+ ```
490
+
491
+ ### FFCV for maximum throughput
492
+
493
+ ```python
494
+ # FFCV can be 3-7x faster than standard PyTorch DataLoader
495
+ # Writes data to a custom binary format, then reads with zero-copy
496
+ from ffcv.loader import Loader, OrderOption
497
+ from ffcv.fields.decoders import RandomResizedCropRGBImageDecoder
498
+
499
+ loader = Loader(
500
+ "data/train.beton",
501
+ batch_size=256,
502
+ order=OrderOption.QUASI_RANDOM,
503
+ num_workers=8,
504
+ pipelines={
505
+ "image": [RandomResizedCropRGBImageDecoder((224, 224))],
506
+ "label": [IntDecoder(), ToTensor(), ToDevice(device)],
507
+ },
508
+ )
509
+ ```
510
+
511
+ ---
512
+
513
+ ## LLM Data Loading
514
+
515
+ ### Pinned buffers for zero-copy transfers
516
+
517
+ ```python
518
+ # Pre-allocate pinned CPU + GPU buffers
519
+ cpu_buffer = torch.empty(2 * B * T, dtype=torch.long, pin_memory=True)
520
+ gpu_buffer = torch.empty(2 * B * T, dtype=torch.long, device="cuda")
521
+ gpu_buffer.copy_(cpu_buffer, non_blocking=True)
522
+ ```
523
+
524
+ ### Best-fit packing (no padding)
525
+
526
+ Instead of padding sequences to fixed length (wastes compute), pack documents tightly:
527
+ 1. Maintain a buffer of tokenized documents
528
+ 2. For each row, greedily fit the largest document that fits remaining space
529
+ 3. If nothing fits, crop the shortest to fill exactly
530
+ 4. Every row starts with BOS token
531
+ 5. Result: 100% utilization, no wasted tokens
532
+
533
+ ### Infinite iterators
534
+
535
+ ```python
536
+ def make_dataloader(split):
537
+ """Yields (x, y, epoch) forever, cycling through data."""
538
+ epoch = 1
539
+ while True:
540
+ for batch in data_source:
541
+ yield process(batch), epoch
542
+ epoch += 1
543
+ ```
544
+
545
+ ---
546
+
547
+ ## Architecture Pattern Tables
548
+
549
+ ### Transformer / LLM components
550
+
551
+ | Component | Recommended | Why |
552
+ |-----------|------------|-----|
553
+ | Normalization | RMSNorm | ~same quality as LayerNorm, fewer ops |
554
+ | Position encoding | RoPE | Relative, extrapolates well, standard |
555
+ | Attention | Flash Attention 3 | Memory-efficient, faster, exact |
556
+ | Activation | ReluSquared or SwiGLU | ReluSquared: sparse. SwiGLU: better quality |
557
+ | Residual | Learnable scaling + x0 skip | Stabilizes deep networks |
558
+ | Logit cap | Soft capping | `softcap * tanh(logits / softcap)` |
559
+ | Init | Zero-init output projections | Residual stream starts clean |
560
+ | KV heads | GQA | Saves memory with minimal quality loss |
561
+
562
+ ### Vision (CNN / ViT) components
563
+
564
+ | Component | Recommended | Why |
565
+ |-----------|------------|-----|
566
+ | Backbone | ConvNeXt v2 or ViT | ConvNeXt: modern CNN. ViT: scalable |
567
+ | Data augmentation | RandAugment + MixUp + CutMix | More impactful than architecture |
568
+ | Regularization | Stochastic depth + label smoothing | Better than dropout for vision |
569
+ | Optimizer | AdamW (ViT) / SGD+momentum (CNN) | ViTs need adaptive methods |
570
+ | Resolution | Progressive resizing | Train small → finetune large |
571
+
572
+ ### Diffusion model components
573
+
574
+ | Component | Recommended | Why |
575
+ |-----------|------------|-----|
576
+ | Architecture | U-Net or DiT | DiT scales better |
577
+ | Noise schedule | Cosine or flow matching | Flow matching: simpler, state-of-art |
578
+ | Loss | MSE on noise or v-prediction | v-prediction better at low SNR |
579
+ | EMA | Keep EMA model for inference | Higher quality samples |
580
+ | Sampling | DDIM / DPM-Solver++ | Faster than DDPM |
581
+
582
+ ### General supervised
583
+
584
+ | Component | Recommended | Why |
585
+ |-----------|------------|-----|
586
+ | Optimizer | AdamW | Safe default |
587
+ | Early stopping | Patience 5-10 epochs | Prevents overfitting |
588
+ | Class imbalance | Weighted loss or oversampling | Weighted loss is simpler |
589
+
590
+ ---
591
+
592
+ ## BPB Evaluation for Language Models
593
+
594
+ ```python
595
+ @torch.no_grad()
596
+ def evaluate_bpb(model, val_loader, token_bytes):
597
+ total_nats, total_bytes = 0.0, 0
598
+ for x, y in val_loader:
599
+ loss_per_token = F.cross_entropy(..., reduction='none').view(-1)
600
+ nbytes = token_bytes[y.view(-1)]
601
+ mask = nbytes > 0
602
+ total_nats += (loss_per_token * mask).sum().item()
603
+ total_bytes += nbytes.sum().item()
604
+ return total_nats / (math.log(2) * total_bytes)
605
+ ```
606
+
607
+ ### EMA smoothed loss
608
+
609
+ ```python
610
+ ema_beta = 0.9
611
+ smooth_loss = 0
612
+ for step in range(num_steps):
613
+ smooth_loss = ema_beta * smooth_loss + (1 - ema_beta) * loss.item()
614
+ debiased = smooth_loss / (1 - ema_beta ** (step + 1))
615
+ ```
616
+
617
+ ### Final summary format
618
+
619
+ Print structured output for easy parsing:
620
+ ```
621
+ val_bpb: 0.997900
622
+ training_seconds: 300.1
623
+ peak_vram_mb: 45060.2
624
+ mfu_percent: 39.80
625
+ total_tokens_M: 499.6
626
+ ```