@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,290 @@
1
+ ---
2
+ name: nanogpt
3
+ description: Educational GPT implementation in ~300 lines. Reproduces GPT-2 (124M) on OpenWebText. Clean, hackable code for learning transformers. By Andrej Karpathy. Perfect for understanding GPT architecture from scratch. Train on Shakespeare (CPU) or OpenWebText (multi-GPU).
4
+ version: 1.0.0
5
+ author: Orchestra Research
6
+ license: MIT
7
+ tags: [Model Architecture, NanoGPT, GPT-2, Educational, Andrej Karpathy, Transformer, Minimalist, From Scratch, Training]
8
+ dependencies: [torch, transformers, datasets, tiktoken, wandb]
9
+ ---
10
+
11
+ # nanoGPT - Minimalist GPT Training
12
+
13
+ ## Quick start
14
+
15
+ nanoGPT is a simplified GPT implementation designed for learning and experimentation.
16
+
17
+ **Installation**:
18
+ ```bash
19
+ pip install torch numpy transformers datasets tiktoken wandb tqdm
20
+ ```
21
+
22
+ **Train on Shakespeare** (CPU-friendly):
23
+ ```bash
24
+ # Prepare data
25
+ python data/shakespeare_char/prepare.py
26
+
27
+ # Train (5 minutes on CPU)
28
+ python train.py config/train_shakespeare_char.py
29
+
30
+ # Generate text
31
+ python sample.py --out_dir=out-shakespeare-char
32
+ ```
33
+
34
+ **Output**:
35
+ ```
36
+ ROMEO:
37
+ What say'st thou? Shall I speak, and be a man?
38
+
39
+ JULIET:
40
+ I am afeard, and yet I'll speak; for thou art
41
+ One that hath been a man, and yet I know not
42
+ What thou art.
43
+ ```
44
+
45
+ ## Common workflows
46
+
47
+ ### Workflow 1: Character-level Shakespeare
48
+
49
+ **Complete training pipeline**:
50
+ ```bash
51
+ # Step 1: Prepare data (creates train.bin, val.bin)
52
+ python data/shakespeare_char/prepare.py
53
+
54
+ # Step 2: Train small model
55
+ python train.py config/train_shakespeare_char.py
56
+
57
+ # Step 3: Generate text
58
+ python sample.py --out_dir=out-shakespeare-char
59
+ ```
60
+
61
+ **Config** (`config/train_shakespeare_char.py`):
62
+ ```python
63
+ # Model config
64
+ n_layer = 6 # 6 transformer layers
65
+ n_head = 6 # 6 attention heads
66
+ n_embd = 384 # 384-dim embeddings
67
+ block_size = 256 # 256 char context
68
+
69
+ # Training config
70
+ batch_size = 64
71
+ learning_rate = 1e-3
72
+ max_iters = 5000
73
+ eval_interval = 500
74
+
75
+ # Hardware
76
+ device = 'cpu' # Or 'cuda'
77
+ compile = False # Set True for PyTorch 2.0
78
+ ```
79
+
80
+ **Training time**: ~5 minutes (CPU), ~1 minute (GPU)
81
+
82
+ ### Workflow 2: Reproduce GPT-2 (124M)
83
+
84
+ **Multi-GPU training on OpenWebText**:
85
+ ```bash
86
+ # Step 1: Prepare OpenWebText (takes ~1 hour)
87
+ python data/openwebtext/prepare.py
88
+
89
+ # Step 2: Train GPT-2 124M with DDP (8 GPUs)
90
+ torchrun --standalone --nproc_per_node=8 \
91
+ train.py config/train_gpt2.py
92
+
93
+ # Step 3: Sample from trained model
94
+ python sample.py --out_dir=out
95
+ ```
96
+
97
+ **Config** (`config/train_gpt2.py`):
98
+ ```python
99
+ # GPT-2 (124M) architecture
100
+ n_layer = 12
101
+ n_head = 12
102
+ n_embd = 768
103
+ block_size = 1024
104
+ dropout = 0.0
105
+
106
+ # Training
107
+ batch_size = 12
108
+ gradient_accumulation_steps = 5 * 8 # Total batch ~0.5M tokens
109
+ learning_rate = 6e-4
110
+ max_iters = 600000
111
+ lr_decay_iters = 600000
112
+
113
+ # System
114
+ compile = True # PyTorch 2.0
115
+ ```
116
+
117
+ **Training time**: ~4 days (8× A100)
118
+
119
+ ### Workflow 3: Fine-tune pretrained GPT-2
120
+
121
+ **Start from OpenAI checkpoint**:
122
+ ```python
123
+ # In train.py or config
124
+ init_from = 'gpt2' # Options: gpt2, gpt2-medium, gpt2-large, gpt2-xl
125
+
126
+ # Model loads OpenAI weights automatically
127
+ python train.py config/finetune_shakespeare.py
128
+ ```
129
+
130
+ **Example config** (`config/finetune_shakespeare.py`):
131
+ ```python
132
+ # Start from GPT-2
133
+ init_from = 'gpt2'
134
+
135
+ # Dataset
136
+ dataset = 'shakespeare_char'
137
+ batch_size = 1
138
+ block_size = 1024
139
+
140
+ # Fine-tuning
141
+ learning_rate = 3e-5 # Lower LR for fine-tuning
142
+ max_iters = 2000
143
+ warmup_iters = 100
144
+
145
+ # Regularization
146
+ weight_decay = 1e-1
147
+ ```
148
+
149
+ ### Workflow 4: Custom dataset
150
+
151
+ **Train on your own text**:
152
+ ```python
153
+ # data/custom/prepare.py
154
+ import numpy as np
155
+
156
+ # Load your data
157
+ with open('my_data.txt', 'r') as f:
158
+ text = f.read()
159
+
160
+ # Create character mappings
161
+ chars = sorted(list(set(text)))
162
+ stoi = {ch: i for i, ch in enumerate(chars)}
163
+ itos = {i: ch for i, ch in enumerate(chars)}
164
+
165
+ # Tokenize
166
+ data = np.array([stoi[ch] for ch in text], dtype=np.uint16)
167
+
168
+ # Split train/val
169
+ n = len(data)
170
+ train_data = data[:int(n*0.9)]
171
+ val_data = data[int(n*0.9):]
172
+
173
+ # Save
174
+ train_data.tofile('data/custom/train.bin')
175
+ val_data.tofile('data/custom/val.bin')
176
+ ```
177
+
178
+ **Train**:
179
+ ```bash
180
+ python data/custom/prepare.py
181
+ python train.py --dataset=custom
182
+ ```
183
+
184
+ ## When to use vs alternatives
185
+
186
+ **Use nanoGPT when**:
187
+ - Learning how GPT works
188
+ - Experimenting with transformer variants
189
+ - Teaching/education purposes
190
+ - Quick prototyping
191
+ - Limited compute (can run on CPU)
192
+
193
+ **Simplicity advantages**:
194
+ - **~300 lines**: Entire model in `model.py`
195
+ - **~300 lines**: Training loop in `train.py`
196
+ - **Hackable**: Easy to modify
197
+ - **No abstractions**: Pure PyTorch
198
+
199
+ **Use alternatives instead**:
200
+ - **HuggingFace Transformers**: Production use, many models
201
+ - **Megatron-LM**: Large-scale distributed training
202
+ - **LitGPT**: More architectures, production-ready
203
+ - **PyTorch Lightning**: Need high-level framework
204
+
205
+ ## Common issues
206
+
207
+ **Issue: CUDA out of memory**
208
+
209
+ Reduce batch size or context length:
210
+ ```python
211
+ batch_size = 1 # Reduce from 12
212
+ block_size = 512 # Reduce from 1024
213
+ gradient_accumulation_steps = 40 # Increase to maintain effective batch
214
+ ```
215
+
216
+ **Issue: Training too slow**
217
+
218
+ Enable compilation (PyTorch 2.0+):
219
+ ```python
220
+ compile = True # 2× speedup
221
+ ```
222
+
223
+ Use mixed precision:
224
+ ```python
225
+ dtype = 'bfloat16' # Or 'float16'
226
+ ```
227
+
228
+ **Issue: Poor generation quality**
229
+
230
+ Train longer:
231
+ ```python
232
+ max_iters = 10000 # Increase from 5000
233
+ ```
234
+
235
+ Lower temperature:
236
+ ```python
237
+ # In sample.py
238
+ temperature = 0.7 # Lower from 1.0
239
+ top_k = 200 # Add top-k sampling
240
+ ```
241
+
242
+ **Issue: Can't load GPT-2 weights**
243
+
244
+ Install transformers:
245
+ ```bash
246
+ pip install transformers
247
+ ```
248
+
249
+ Check model name:
250
+ ```python
251
+ init_from = 'gpt2' # Valid: gpt2, gpt2-medium, gpt2-large, gpt2-xl
252
+ ```
253
+
254
+ ## Advanced topics
255
+
256
+ **Model architecture**: See [references/architecture.md](references/architecture.md) for GPT block structure, multi-head attention, and MLP layers explained simply.
257
+
258
+ **Training loop**: See [references/training.md](references/training.md) for learning rate schedule, gradient accumulation, and distributed data parallel setup.
259
+
260
+ **Data preparation**: See [references/data.md](references/data.md) for tokenization strategies (character-level vs BPE) and binary format details.
261
+
262
+ ## Hardware requirements
263
+
264
+ - **Shakespeare (char-level)**:
265
+ - CPU: 5 minutes
266
+ - GPU (T4): 1 minute
267
+ - VRAM: <1GB
268
+
269
+ - **GPT-2 (124M)**:
270
+ - 1× A100: ~1 week
271
+ - 8× A100: ~4 days
272
+ - VRAM: ~16GB per GPU
273
+
274
+ - **GPT-2 Medium (350M)**:
275
+ - 8× A100: ~2 weeks
276
+ - VRAM: ~40GB per GPU
277
+
278
+ **Performance**:
279
+ - With `compile=True`: 2× speedup
280
+ - With `dtype=bfloat16`: 50% memory reduction
281
+
282
+ ## Resources
283
+
284
+ - GitHub: https://github.com/karpathy/nanoGPT ⭐ 48,000+
285
+ - Video: "Let's build GPT" by Andrej Karpathy
286
+ - Paper: "Attention is All You Need" (Vaswani et al.)
287
+ - OpenWebText: https://huggingface.co/datasets/Skylion007/openwebtext
288
+ - Educational: Best for understanding transformers from scratch
289
+
290
+
@@ -0,0 +1,383 @@
1
+ <!-- vendored from orchestra-research/AI-research-SKILLs@773a52944ba4747a18bd4ae9ade53fff041adcbc 01-model-architecture/nanogpt/references/architecture.md; MIT (c) Orchestra Research -->
2
+ # NanoGPT Architecture
3
+
4
+ ## Model Structure (~300 Lines)
5
+
6
+ NanoGPT implements a clean GPT-2 architecture in minimal code for educational purposes.
7
+
8
+ ### Complete Model (model.py)
9
+
10
+ ```python
11
+ import torch
12
+ import torch.nn as nn
13
+ from torch.nn import functional as F
14
+
15
+ class CausalSelfAttention(nn.Module):
16
+ """Multi-head masked self-attention layer."""
17
+
18
+ def __init__(self, config):
19
+ super().__init__()
20
+ assert config.n_embd % config.n_head == 0
21
+
22
+ # Key, query, value projections for all heads (batched)
23
+ self.c_attn = nn.Linear(config.n_embd, 3 * config.n_embd, bias=config.bias)
24
+ # Output projection
25
+ self.c_proj = nn.Linear(config.n_embd, config.n_embd, bias=config.bias)
26
+
27
+ # Regularization
28
+ self.attn_dropout = nn.Dropout(config.dropout)
29
+ self.resid_dropout = nn.Dropout(config.dropout)
30
+
31
+ self.n_head = config.n_head
32
+ self.n_embd = config.n_embd
33
+ self.dropout = config.dropout
34
+
35
+ # Flash attention flag
36
+ self.flash = hasattr(torch.nn.functional, 'scaled_dot_product_attention')
37
+
38
+ if not self.flash:
39
+ # Causal mask (lower triangular)
40
+ self.register_buffer("bias", torch.tril(
41
+ torch.ones(config.block_size, config.block_size)
42
+ ).view(1, 1, config.block_size, config.block_size))
43
+
44
+ def forward(self, x):
45
+ B, T, C = x.size() # batch, seq_len, embedding_dim
46
+
47
+ # Calculate Q, K, V for all heads in batch
48
+ q, k, v = self.c_attn(x).split(self.n_embd, dim=2)
49
+
50
+ # Reshape for multi-head attention
51
+ k = k.view(B, T, self.n_head, C // self.n_head).transpose(1, 2) # (B, nh, T, hs)
52
+ q = q.view(B, T, self.n_head, C // self.n_head).transpose(1, 2) # (B, nh, T, hs)
53
+ v = v.view(B, T, self.n_head, C // self.n_head).transpose(1, 2) # (B, nh, T, hs)
54
+
55
+ # Attention
56
+ if self.flash:
57
+ # Flash Attention (PyTorch 2.0+)
58
+ y = torch.nn.functional.scaled_dot_product_attention(
59
+ q, k, v,
60
+ attn_mask=None,
61
+ dropout_p=self.dropout if self.training else 0,
62
+ is_causal=True
63
+ )
64
+ else:
65
+ # Manual attention implementation
66
+ att = (q @ k.transpose(-2, -1)) * (1.0 / math.sqrt(k.size(-1)))
67
+ att = att.masked_fill(self.bias[:, :, :T, :T] == 0, float('-inf'))
68
+ att = F.softmax(att, dim=-1)
69
+ att = self.attn_dropout(att)
70
+ y = att @ v # (B, nh, T, hs)
71
+
72
+ # Reassemble all head outputs
73
+ y = y.transpose(1, 2).contiguous().view(B, T, C)
74
+
75
+ # Output projection
76
+ y = self.resid_dropout(self.c_proj(y))
77
+ return y
78
+
79
+
80
+ class MLP(nn.Module):
81
+ """Feedforward network (2-layer with GELU activation)."""
82
+
83
+ def __init__(self, config):
84
+ super().__init__()
85
+ self.c_fc = nn.Linear(config.n_embd, 4 * config.n_embd, bias=config.bias)
86
+ self.gelu = nn.GELU()
87
+ self.c_proj = nn.Linear(4 * config.n_embd, config.n_embd, bias=config.bias)
88
+ self.dropout = nn.Dropout(config.dropout)
89
+
90
+ def forward(self, x):
91
+ x = self.c_fc(x)
92
+ x = self.gelu(x)
93
+ x = self.c_proj(x)
94
+ x = self.dropout(x)
95
+ return x
96
+
97
+
98
+ class Block(nn.Module):
99
+ """Transformer block (attention + MLP with residuals)."""
100
+
101
+ def __init__(self, config):
102
+ super().__init__()
103
+ self.ln_1 = nn.LayerNorm(config.n_embd)
104
+ self.attn = CausalSelfAttention(config)
105
+ self.ln_2 = nn.LayerNorm(config.n_embd)
106
+ self.mlp = MLP(config)
107
+
108
+ def forward(self, x):
109
+ x = x + self.attn(self.ln_1(x)) # Pre-norm + residual
110
+ x = x + self.mlp(self.ln_2(x)) # Pre-norm + residual
111
+ return x
112
+
113
+
114
+ @dataclass
115
+ class GPTConfig:
116
+ """GPT model configuration."""
117
+ block_size: int = 1024 # Max sequence length
118
+ vocab_size: int = 50304 # GPT-2 vocab size (50257 rounded up for efficiency)
119
+ n_layer: int = 12 # Number of layers
120
+ n_head: int = 12 # Number of attention heads
121
+ n_embd: int = 768 # Embedding dimension
122
+ dropout: float = 0.0 # Dropout rate
123
+ bias: bool = True # Use bias in Linear and LayerNorm layers
124
+
125
+
126
+ class GPT(nn.Module):
127
+ """GPT Language Model."""
128
+
129
+ def __init__(self, config):
130
+ super().__init__()
131
+ assert config.vocab_size is not None
132
+ assert config.block_size is not None
133
+ self.config = config
134
+
135
+ self.transformer = nn.ModuleDict(dict(
136
+ wte=nn.Embedding(config.vocab_size, config.n_embd), # Token embeddings
137
+ wpe=nn.Embedding(config.block_size, config.n_embd), # Position embeddings
138
+ drop=nn.Dropout(config.dropout),
139
+ h=nn.ModuleList([Block(config) for _ in range(config.n_layer)]),
140
+ ln_f=nn.LayerNorm(config.n_embd),
141
+ ))
142
+ self.lm_head = nn.Linear(config.n_embd, config.vocab_size, bias=False)
143
+
144
+ # Weight tying (share embeddings and output projection)
145
+ self.transformer.wte.weight = self.lm_head.weight
146
+
147
+ # Initialize weights
148
+ self.apply(self._init_weights)
149
+ # Apply special scaled init to residual projections
150
+ for pn, p in self.named_parameters():
151
+ if pn.endswith('c_proj.weight'):
152
+ torch.nn.init.normal_(p, mean=0.0, std=0.02/math.sqrt(2 * config.n_layer))
153
+
154
+ def _init_weights(self, module):
155
+ if isinstance(module, nn.Linear):
156
+ torch.nn.init.normal_(module.weight, mean=0.0, std=0.02)
157
+ if module.bias is not None:
158
+ torch.nn.init.zeros_(module.bias)
159
+ elif isinstance(module, nn.Embedding):
160
+ torch.nn.init.normal_(module.weight, mean=0.0, std=0.02)
161
+
162
+ def forward(self, idx, targets=None):
163
+ device = idx.device
164
+ b, t = idx.size()
165
+ assert t <= self.config.block_size, f"Cannot forward sequence length {t}, max is {self.config.block_size}"
166
+
167
+ # Generate position indices
168
+ pos = torch.arange(0, t, dtype=torch.long, device=device).unsqueeze(0) # (1, t)
169
+
170
+ # Forward the GPT model
171
+ tok_emb = self.transformer.wte(idx) # Token embeddings (b, t, n_embd)
172
+ pos_emb = self.transformer.wpe(pos) # Position embeddings (1, t, n_embd)
173
+ x = self.transformer.drop(tok_emb + pos_emb)
174
+
175
+ for block in self.transformer.h:
176
+ x = block(x)
177
+
178
+ x = self.transformer.ln_f(x)
179
+
180
+ if targets is not None:
181
+ # Training mode: compute loss
182
+ logits = self.lm_head(x)
183
+ loss = F.cross_entropy(logits.view(-1, logits.size(-1)), targets.view(-1), ignore_index=-1)
184
+ else:
185
+ # Inference mode: only compute logits for last token
186
+ logits = self.lm_head(x[:, [-1], :]) # (b, 1, vocab_size)
187
+ loss = None
188
+
189
+ return logits, loss
190
+
191
+ @torch.no_grad()
192
+ def generate(self, idx, max_new_tokens, temperature=1.0, top_k=None):
193
+ """Generate new tokens autoregressively."""
194
+ for _ in range(max_new_tokens):
195
+ # Crop context if needed
196
+ idx_cond = idx if idx.size(1) <= self.config.block_size else idx[:, -self.config.block_size:]
197
+
198
+ # Forward pass
199
+ logits, _ = self(idx_cond)
200
+ logits = logits[:, -1, :] / temperature # Scale by temperature
201
+
202
+ # Optionally crop logits to top k
203
+ if top_k is not None:
204
+ v, _ = torch.topk(logits, min(top_k, logits.size(-1)))
205
+ logits[logits < v[:, [-1]]] = -float('Inf')
206
+
207
+ # Sample from distribution
208
+ probs = F.softmax(logits, dim=-1)
209
+ idx_next = torch.multinomial(probs, num_samples=1)
210
+
211
+ # Append to sequence
212
+ idx = torch.cat((idx, idx_next), dim=1)
213
+
214
+ return idx
215
+ ```
216
+
217
+ ## Key Design Decisions
218
+
219
+ ### 1. Pre-Norm vs Post-Norm
220
+
221
+ **NanoGPT uses Pre-Norm** (LayerNorm before sub-layers):
222
+
223
+ ```python
224
+ # Pre-norm (NanoGPT)
225
+ x = x + attn(ln(x))
226
+ x = x + mlp(ln(x))
227
+
228
+ # Post-norm (original Transformer)
229
+ x = ln(x + attn(x))
230
+ x = ln(x + mlp(x))
231
+ ```
232
+
233
+ **Why Pre-Norm?**
234
+ - More stable training (no gradient explosion)
235
+ - Used in GPT-2, GPT-3
236
+ - Standard for large language models
237
+
238
+ ### 2. Weight Tying
239
+
240
+ **Shared weights between embeddings and output**:
241
+
242
+ ```python
243
+ self.transformer.wte.weight = self.lm_head.weight
244
+ ```
245
+
246
+ **Why?**
247
+ - Reduces parameters: `vocab_size × n_embd` saved
248
+ - Improves training (same semantic space)
249
+ - Standard in GPT-2
250
+
251
+ ### 3. Scaled Residual Initialization
252
+
253
+ ```python
254
+ # Scale down residual projections by layer depth
255
+ std = 0.02 / math.sqrt(2 * n_layer)
256
+ torch.nn.init.normal_(c_proj.weight, mean=0.0, std=std)
257
+ ```
258
+
259
+ **Why?**
260
+ - Prevents gradient explosion in deep networks
261
+ - Each residual path contributes ~equally
262
+ - From GPT-2 paper
263
+
264
+ ### 4. Flash Attention
265
+
266
+ ```python
267
+ if hasattr(torch.nn.functional, 'scaled_dot_product_attention'):
268
+ # Use PyTorch 2.0 Flash Attention (2× faster!)
269
+ y = F.scaled_dot_product_attention(q, k, v, is_causal=True)
270
+ else:
271
+ # Fallback to manual attention
272
+ att = (q @ k.T) / sqrt(d)
273
+ att = masked_fill(att, causal_mask, -inf)
274
+ y = softmax(att) @ v
275
+ ```
276
+
277
+ **Speedup**: 2× faster with same accuracy
278
+
279
+ ## Model Sizes
280
+
281
+ | Model | n_layer | n_head | n_embd | Params | Config Name |
282
+ |-------|---------|--------|--------|--------|-------------|
283
+ | GPT-2 Small | 12 | 12 | 768 | 124M | `gpt2` |
284
+ | GPT-2 Medium | 24 | 16 | 1024 | 350M | `gpt2-medium` |
285
+ | GPT-2 Large | 36 | 20 | 1280 | 774M | `gpt2-large` |
286
+ | GPT-2 XL | 48 | 25 | 1600 | 1558M | `gpt2-xl` |
287
+
288
+ **NanoGPT default** (Shakespeare):
289
+ ```python
290
+ config = GPTConfig(
291
+ block_size=256, # Short context for char-level
292
+ vocab_size=65, # Small vocab (a-z, A-Z, punctuation)
293
+ n_layer=6, # Shallow network
294
+ n_head=6,
295
+ n_embd=384, # Small embeddings
296
+ dropout=0.2 # Regularization
297
+ )
298
+ # Total: ~10M parameters
299
+ ```
300
+
301
+ ## Attention Visualization
302
+
303
+ ```python
304
+ # What each token attends to (lower triangular)
305
+ # Token t can only attend to tokens 0...t
306
+
307
+ Attention Pattern (causal mask):
308
+ t=0 t=1 t=2 t=3
309
+ t=0 ✓ - - -
310
+ t=1 ✓ ✓ - -
311
+ t=2 ✓ ✓ ✓ -
312
+ t=3 ✓ ✓ ✓ ✓
313
+
314
+ # Prevents "cheating" by looking at future tokens
315
+ ```
316
+
317
+ ## Residual Stream
318
+
319
+ **Information flow through residuals**:
320
+
321
+ ```python
322
+ # Input
323
+ x = token_emb + pos_emb
324
+
325
+ # Block 1
326
+ x = x + attn_1(ln(x)) # Attention adds to residual
327
+ x = x + mlp_1(ln(x)) # MLP adds to residual
328
+
329
+ # Block 2
330
+ x = x + attn_2(ln(x))
331
+ x = x + mlp_2(ln(x))
332
+
333
+ # ... (repeat for all layers)
334
+
335
+ # Output
336
+ logits = lm_head(ln(x))
337
+ ```
338
+
339
+ **Key insight**: Each layer refines the representation, residuals preserve gradients
340
+
341
+ ## Tokenization
342
+
343
+ ### Character-Level (Shakespeare)
344
+
345
+ ```python
346
+ # data/shakespeare_char/prepare.py
347
+ text = open('input.txt', 'r').read()
348
+ chars = sorted(list(set(text))) # ['!', ',', '.', 'A', 'B', ..., 'z']
349
+ vocab_size = len(chars) # 65
350
+
351
+ stoi = {ch: i for i, ch in enumerate(chars)}
352
+ itos = {i: ch for i, ch in enumerate(chars)}
353
+
354
+ # Encode
355
+ encode = lambda s: [stoi[c] for c in s]
356
+ decode = lambda l: ''.join([itos[i] for i in l])
357
+
358
+ data = torch.tensor(encode(text), dtype=torch.long)
359
+ ```
360
+
361
+ ### BPE (GPT-2)
362
+
363
+ ```python
364
+ # data/openwebtext/prepare.py
365
+ import tiktoken
366
+
367
+ enc = tiktoken.get_encoding("gpt2") # GPT-2 BPE tokenizer
368
+ vocab_size = enc.n_vocab # 50257
369
+
370
+ # Encode
371
+ tokens = enc.encode_ordinary("Hello world") # [15496, 995]
372
+
373
+ # Decode
374
+ text = enc.decode(tokens) # "Hello world"
375
+ ```
376
+
377
+ ## Resources
378
+
379
+ - **GitHub**: https://github.com/karpathy/nanoGPT ⭐ 48,000+
380
+ - **Video**: "Let's build GPT" by Andrej Karpathy
381
+ - **Paper**: "Attention is All You Need" (Vaswani et al.)
382
+ - **Paper**: "Language Models are Unsupervised Multitask Learners" (GPT-2)
383
+ - **Code walkthrough**: https://github.com/karpathy/nanoGPT/blob/master/ARCHITECTURE.md