{"id":"torchtune-pytorch--gh-pytorch-torchtune","name":"torchtune (PyTorch)","url":"https://github.com/meta-pytorch/torchtune","page":"https://mrpeppersdev.github.io/agent-infrastructure-landscape/systems/torchtune-pytorch--gh-pytorch-torchtune","family":"models-ops","section":"Training infrastructure","sections":["Training infrastructure"],"tier":2,"last_verified_at":"2026-10-29","lifecycle":{"status":"archived","severity":3,"note":"repository archived (read-only)"},"taxonomy":null,"cells":{"type":{"value":"Native PyTorch LLM fine-tuning","citation":"https://github.com/pytorch/torchtune","status":"real-data","tier":"T1","source_class":"repo"},"desc":{"value":"Pure-PyTorch library for fine-tuning LLMs — Llama/Mistral/Phi/Gemma recipes; native FSDP2 + memory-efficient training. From Meta PyTorch team. Per its README, torchtune is no longer actively maintained; active development ended in 2025.","citation":"https://github.com/pytorch/torchtune","status":"real-data","tier":"T1","source_class":"repo"},"claims":{"value":"PyTorch-native LLM fine-tuning library; LoRA/QLoRA/full FT for Llama/Mistral/Phi; Meta PyTorch team maintained.","citation":"https://github.com/pytorch/torchtune","status":"real-data","tier":"T1","source_class":"repo"},"modalities":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"created":{"value":"2024","citation":"https://github.com/pytorch/torchtune","status":"real-data","tier":"T1","last_verified_at":"2026-05-12","source_class":"repo"},"latest-release":{"value":"v0.6.1 (2025-04-07) — torchtune","citation":"https://pypi.org/project/torchtune/","status":"real-data","tier":"T2","last_verified_at":"2026-10-27","source_class":"registry"},"license":{"value":"BSD-3-Clause","citation":"https://github.com/pytorch/torchtune","status":"real-data","tier":"T1","source_class":"repo"},"gh":{"value":"meta-pytorch/torchtune (linked from pytorch/torchtune) — ~5.8k stars, last commit 2026-04","citation":"https://github.com/pytorch/torchtune","status":"real-data","tier":"T1","last_verified_at":"2026-10-27","source_class":"repo"},"mindshare":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","last_verified_at":"2026-05-12","source_class":"repo"},"citations":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","last_verified_at":"2026-05-12","source_class":"repo"},"funding":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","last_verified_at":"2026-05-12","source_class":"repo"},"customers":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"pricing":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"compliance":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"data-handling":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"deployment":{"value":"Self-hosted only — library","citation":"https://github.com/pytorch/torchtune","status":"real-data","tier":"T1","source_class":"repo"},"hq":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"founders":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"volume":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"perf":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"repro":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"code-release":{"value":"Active — last commit 2026-05 · 5,751★","citation":"https://github.com/pytorch/torchtune","status":"real-data","tier":"T1","source_class":"repo"},"api-surface":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"latency":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"throughput":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"backend-storage":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"multi-tenancy":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"encryption":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"sso-rbac":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"embedding-model":{"value":"not applicable — not a memory product","citation":null,"status":"not-applicable","tier":"T3"},"consistency":{"value":"not applicable — not a memory product","citation":null,"status":"not-applicable","tier":"T3"},"versioning":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"tombstoning":{"value":"not applicable — not a memory product","citation":null,"status":"not-applicable","tier":"T3"},"schema-evolution":{"value":"not applicable — not a memory product","citation":null,"status":"not-applicable","tier":"T3"},"namespace":{"value":"not applicable — not a memory product","citation":null,"status":"not-applicable","tier":"T3"},"contradiction":{"value":"not applicable — not a memory product","citation":null,"status":"not-applicable","tier":"T3"},"forgetting":{"value":"not applicable — not a memory product","citation":null,"status":"not-applicable","tier":"T3"},"mcp-support":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"a2a-support":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"otel":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"webhooks":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"import-export":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"integration-count":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"orchestration":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"programmatic-control":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"vendor-benchmarks":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","last_verified_at":"2026-05-12","source_class":"repo"},"pricing-specifics":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"agent-abstraction":{"value":"not applicable — wrong section","citation":null,"status":"not-applicable","tier":"T3"},"memory-primitives":{"value":"not applicable — wrong section","citation":null,"status":"not-applicable","tier":"T3"},"llm-lock":{"value":"not applicable — wrong section","citation":null,"status":"not-applicable","tier":"T3"},"runtimes":{"value":"not applicable — wrong section","citation":null,"status":"not-applicable","tier":"T3"},"session-handling":{"value":"not applicable — wrong section","citation":null,"status":"not-applicable","tier":"T3"},"validated-verticals":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"time-to-running":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"anti-fit":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"optimised-for":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"adjacent-infrastructure":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"pros":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"cons":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"links":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"obs-langsmith":{"value":"","citation":null,"status":"no-data","tier":"T3","last_verified_at":"2026-05-14"},"obs-opentelemetry":{"value":"","citation":null,"status":"no-data","tier":"T3","last_verified_at":"2026-05-14"},"obs-datadog":{"value":"","citation":null,"status":"no-data","tier":"T3","last_verified_at":"2026-05-14"},"obs-helicone":{"value":"","citation":null,"status":"no-data","tier":"T3","last_verified_at":"2026-05-14"},"obs-weave":{"value":"","citation":null,"status":"no-data","tier":"T3","last_verified_at":"2026-05-14"},"obs-langfuse":{"value":"","citation":null,"status":"no-data","tier":"T3","last_verified_at":"2026-05-14"},"obs-arize":{"value":"","citation":null,"status":"no-data","tier":"T3","last_verified_at":"2026-05-14"},"obs-custom":{"value":"","citation":null,"status":"no-data","tier":"T3","last_verified_at":"2026-05-14"},"cost-token-budget":{"value":"","citation":null,"status":"no-data","tier":"T3","last_verified_at":"2026-05-14"},"cost-prompt-caching":{"value":"","citation":null,"status":"no-data","tier":"T3","last_verified_at":"2026-05-14"},"cost-semantic-caching":{"value":"","citation":null,"status":"no-data","tier":"T3","last_verified_at":"2026-05-14"},"cost-batching":{"value":"","citation":null,"status":"no-data","tier":"T3","last_verified_at":"2026-05-14"},"cost-model-routing":{"value":"","citation":null,"status":"no-data","tier":"T3","last_verified_at":"2026-05-14"},"cost-streaming-only":{"value":"","citation":null,"status":"no-data","tier":"T3","last_verified_at":"2026-05-14"},"cost-observability-cost-attribution":{"value":"","citation":null,"status":"no-data","tier":"T3","last_verified_at":"2026-05-14"},"eval-langsmith-evals":{"value":"","citation":null,"status":"no-data","tier":"T3","last_verified_at":"2026-05-14"},"eval-braintrust":{"value":"","citation":null,"status":"no-data","tier":"T3","last_verified_at":"2026-05-14"},"eval-weights-and-biases-agent":{"value":"","citation":null,"status":"no-data","tier":"T3","last_verified_at":"2026-05-14"},"eval-helicone-evals":{"value":"","citation":null,"status":"no-data","tier":"T3","last_verified_at":"2026-05-14"},"eval-custom-test-harness":{"value":"","citation":null,"status":"no-data","tier":"T3","last_verified_at":"2026-05-14"},"eval-human-loop":{"value":"","citation":null,"status":"no-data","tier":"T3","last_verified_at":"2026-05-14"},"eval-production-traffic-replay":{"value":"","citation":null,"status":"no-data","tier":"T3","last_verified_at":"2026-05-14"},"commit-trajectory":{"value":"[{\"ym\":\"2024-04\",\"cum\":497},{\"ym\":\"2024-05\",\"cum\":536},{\"ym\":\"2024-06\",\"cum\":573},{\"ym\":\"2024-07\",\"cum\":628},{\"ym\":\"2024-08\",\"cum\":712},{\"ym\":\"2024-09\",\"cum\":854},{\"ym\":\"2024-10\",\"cum\":937},{\"ym\":\"2024-11\",\"cum\":1006},{\"ym\":\"2024-12\",\"cum\":1051},{\"ym\":\"2025-01\",\"cum\":1094},{\"ym\":\"2025-02\",\"cum\":1141},{\"ym\":\"2025-03\",\"cum\":1174},{\"ym\":\"2025-04\",\"cum\":1219},{\"ym\":\"2025-05\",\"cum\":1275},{\"ym\":\"2025-06\",\"cum\":1306},{\"ym\":\"2025-07\",\"cum\":1320},{\"ym\":\"2025-08\",\"cum\":1327},{\"ym\":\"2025-12\",\"cum\":1328},{\"ym\":\"2026-01\",\"cum\":1330},{\"ym\":\"2026-02\",\"cum\":1335},{\"ym\":\"2026-03\",\"cum\":1336},{\"ym\":\"2026-04\",\"cum\":1339}]","citation":"https://github.com/pytorch/torchtune","status":"real-data","tier":"T1","last_verified_at":"2026-05-14","source_class":"repo"},"citation-trajectory":{"value":"not applicable — non-paper row","citation":null,"status":"not-applicable","tier":"T3","last_verified_at":"2026-05-14"},"download-trajectory":{"value":"not applicable — not published as a package","citation":null,"status":"not-applicable","tier":"T3","last_verified_at":"2026-05-14"},"cost-input-usd-per-mtok":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"cost-output-usd-per-mtok":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"cost-tier":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"cost-pricing-model":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"cost-last-verified":{"value":"searched not found","citation":"https://github.com/pytorch/torchtune","status":"depth-floor-reached","tier":"T1","source_class":"repo"},"capability-composite-score":{"value":"not applicable — LLM fine-tuning library, not a capable system","citation":null,"status":"not-applicable","tier":"T3"},"capability-band":{"value":"not applicable — LLM fine-tuning library, not a capable system","citation":null,"status":"not-applicable","tier":"T3"},"capability-benchmark-sources":{"value":"not applicable — LLM fine-tuning library, not a capable system","citation":null,"status":"not-applicable","tier":"T3"},"capability-last-verified":{"value":"not applicable — LLM fine-tuning library, not a capable system","citation":null,"status":"not-applicable","tier":"T3"},"use-case-tags":{"value":"not applicable — native PyTorch fine-tuning library, not a deployable agent/memory use case","citation":null,"status":"not-applicable","tier":"T3"},"use-case-anti-tags":{"value":"not applicable — training infrastructure, no inference-time use case to flag against","citation":null,"status":"not-applicable","tier":"T3"},"adoption-accelerator":{"value":"","citation":null,"status":"no-data","tier":"T3"},"architecture-deployment-locus":{"value":"local","citation":"https://raw.githubusercontent.com/meta-pytorch/torchtune/main/README.md","status":"real-data","tier":"T2","source_class":"repo"},"licensing-bucket":{"value":"open-source","citation":"https://github.com/pytorch/torchtune","status":"real-data","tier":"T1","source_class":"repo"},"positioning-platform-vs-product":{"value":"platform","citation":"https://raw.githubusercontent.com/meta-pytorch/torchtune/main/README.md","status":"real-data","tier":"T2","source_class":"repo"},"taxonomy-three-layer-rollup":{"value":"model-infra","citation":"https://github.com/MrPeppersDev/agent-infrastructure-landscape/blob/main/docs/schema/section-to-three-layer-rollup.json","status":"real-data","tier":"T1","source_class":"repo"},"developer-activity-opendigger":{"value":"{\"activity\":13.38,\"as_of\":\"2026-09\",\"openrank_12mo\":18.5,\"openrank_current\":0.56,\"participants\":6}","citation":"https://oss.open-digger.cn/github/meta-pytorch/torchtune/openrank.json","status":"real-data","tier":"T2","last_verified_at":"2026-10-28","source_class":"third-party"},"freshness-date":{"value":"2026-10-29","citation":"https://mrpeppersdev.github.io/agent-infrastructure-landscape/systems/torchtune-pytorch--gh-pytorch-torchtune","status":"real-data","tier":"T2","source_class":"catalog"},"compliance-certifications":{"value":"","citation":null,"status":"no-data","tier":"T3"},"sdk-languages":{"value":"","citation":null,"status":"no-data","tier":"T3"},"protocol-support":{"value":"","citation":null,"status":"no-data","tier":"T3"},"maturity":{"value":"","citation":null,"status":"no-data","tier":"T3"}},"corroboration":{"cited_cells":15,"third_party_cells":1},"edges":{"outgoing":[],"incoming":[]},"history":[{"date":"2026-10-29","commit":"a5ff184341","pr":305,"kind":"lifecycle","changes":[{"field":"decay_cause","label":"Lifecycle","from":"","to":"archived","first":true}]},{"date":"2026-10-28","commit":"5a32740ae5","pr":291,"kind":"update","changes":[{"field":"url","label":"Homepage","from":"https://github.com/pytorch/torchtune","to":"https://github.com/meta-pytorch/torchtune"}]},{"date":"2026-10-27","commit":"1cb64f4c58","pr":272,"kind":"update","changes":[{"field":"latest-release","label":"Latest release","from":"","to":"v0.6.1 (2025-04-07) — torchtune","first":true,"source":"https://pypi.org/project/torchtune/"},{"field":"deployment","label":"Deployment","from":"","to":"Self-hosted only — library","first":true,"source":"https://github.com/pytorch/torchtune"}]}],"license":"CC-BY-4.0","source":"https://github.com/MrPeppersDev/agent-infrastructure-landscape/blob/main/data/landscape.json"}