@mcptoolshop/backpropagate 1.3.0 → 1.5.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.
package/README.hi.md CHANGED
@@ -15,9 +15,9 @@
15
15
  <a href="https://mcp-tool-shop-org.github.io/backpropagate/"><img src="https://img.shields.io/badge/Landing_Page-live-blue" alt="Landing Page"></a>
16
16
  </p>
17
17
 
18
- # एक एडाप्टर को प्रशिक्षित करें। इसे ओलामा पर भेजें। आगे बढ़ें।
18
+ # एक एडाप्टर को प्रशिक्षित करें। इसे ओलामा में भेजें। आगे बढ़ें।
19
19
 
20
- बैकप्रोपैगेट एक पायथन लाइब्रेरी है जो बड़े भाषा मॉडल को एक सिंगल जीपीयू पर फाइन-ट्यून करने के लिए उपयोग की जाती है। तीन पंक्तियों के कोड से 7 बिलियन पैरामीटर वाला मॉडल 16 जीबी के कार्ड पर प्रशिक्षित किया जा सकता है। एक और कमांड इसे ओलामा पर एक्सपोर्ट कर देता है ताकि आप `ollama run` कमांड का उपयोग करके अपने फाइन-ट्यून मॉडल को चला सकें। यह विंडोज पर भी आसानी से काम करता है।
20
+ बैकप्रोपैगेट एक पायथन लाइब्रेरी है जिसका उपयोग एकल जीपीयू पर बड़े भाषा मॉडल को ठीक करने के लिए किया जाता है। तीन पंक्तियों के कोड से 16GB कार्ड पर 7B मॉडल को प्रशिक्षित किया जा सकता है। एक और कमांड इसे ओलामा में निर्यात करता है ताकि आप अपने फाइनट्यून को `ollama run` के साथ चला सकें। यह विंडोज पर बेहतरीन तरीके से काम करता है।
21
21
 
22
22
  ```python
23
23
  from backpropagate import Trainer
@@ -28,11 +28,11 @@ trainer.export("gguf", quantization="q4_k_m")
28
28
  ```
29
29
 
30
30
  ```bash
31
- backprop ollama register ./output/lora --name my-model
31
+ backprop export ./output/lora --format gguf --quantization q4_k_m --ollama --ollama-name my-model
32
32
  ollama run my-model
33
33
  ```
34
34
 
35
- बस इतना ही। इसमें कोई YAML कॉन्फ़िगरेशन फ़ाइल नहीं है। कोई `accelerate launch` प्रक्रिया नहीं है। कोई अलग "अब इसे GGUF में बदलें" ट्यूटोरियल नहीं है। यदि आपके पास एक CUDA जीपीयू है और आपके प्रशिक्षण डेटा के साथ एक JSONL फ़ाइल है, तो आप केवल तीन पंक्तियों से एक काम करने वाला फाइन-ट्यून मॉडल प्राप्त कर सकते हैं।
35
+ बस इतना ही। कोई YAML कॉन्फ़िगरेशन फ़ाइल नहीं है। कोई `accelerate launch` समारोह नहीं है। कोई अलग "अब इसे GGUF में बदलें" ट्यूटोरियल नहीं है। यदि आपके पास एक CUDA GPU और आपके प्रशिक्षण डेटा वाली एक JSONL फ़ाइल है, तो आप एक कार्यात्मक फाइनट्यून से केवल तीन पंक्तियों की दूरी पर हैं।
36
36
 
37
37
  ## इंस्टॉल करें
38
38
 
@@ -47,78 +47,83 @@ uv tool install backpropagate
47
47
  pip install backpropagate
48
48
  ```
49
49
 
50
- यदि आप वैकल्पिक सुविधाओं का उपयोग करना चाहते हैं, तो इंस्टॉलेशन को इनमें से किसी एक से बदलें:
50
+ यदि आप वैकल्पिक सुविधाओं को चाहते हैं, तो इंस्टॉलेशन को इनमें से किसी एक से बदलें:
51
51
 
52
52
  ```bash
53
53
  pipx install "backpropagate[standard]" # adds Unsloth (2x faster training) + the web UI
54
54
  pipx install "backpropagate[full]" # adds everything: unsloth, ui, monitoring, export, etc.
55
55
  ```
56
56
 
57
- क्या आप डॉकर का उपयोग करना पसंद करते हैं? `docker pull ghcr.io/mcp-tool-shop-org/backpropagate:latest` भी काम करता है। इमेज `linux/amd64` और `linux/arm64` दोनों के लिए उपलब्ध हैं, इसलिए Apple Silicon और ARM Linux उपयोगकर्ताओं को एक देशी इमेज मिलती है। "UI एक कंटेनर में" के लिए एक मानक `compose.yaml` फ़ाइल रिपॉजिटरी के रूट पर मौजूद है - `docker compose up` कमांड वेब UI को `http://localhost:7860` पर चलाता है, जिसमें एक स्थायी `~/.backpropagate` वॉल्यूम माउंट भी होता है।
57
+ क्या आप डॉकर का उपयोग करना पसंद करते हैं? `docker pull ghcr.io/mcp-tool-shop-org/backpropagate:latest` भी काम करेगा। दोनों `linux/amd64` और `linux/arm64` के लिए इमेज उपलब्ध हैं, इसलिए Apple सिलिकॉन और ARM लिनक्स उपयोगकर्ताओं को एक मूल इमेज मिलेगी। "कंटेनर में UI" के लिए एक मानक `compose.yaml` रिपॉजिटरी की रूट में मौजूद है - `docker compose up` वेब UI को `http://localhost:7860` पर एक स्थायी `~/.backpropagate` वॉल्यूम माउंट के साथ लाता है।
58
58
 
59
- ## बैकप्रोपैगेट कहाँ फिट बैठता है
59
+ ## बैकप्रोपैगेट किस क्षेत्र में काम करता है
60
60
 
61
- बड़े भाषा मॉडल (LLMs) को फाइन-ट्यून करने के लिए कई अच्छी लाइब्रेरी उपलब्ध हैं। प्रत्येक लाइब्रेरी अलग-अलग कार्यों में उत्कृष्ट है:
61
+ LLM को ठीक करने के लिए कई अच्छी लाइब्रेरी उपलब्ध हैं। वे सभी अलग-अलग चीजों में उत्कृष्ट हैं:
62
62
 
63
- - **[Axolotl](https://github.com/OpenAccess-AI-Collective/axolotl)** यदि आपको YAML कॉन्फ़िगरेशन पसंद हैं और आप कॉपी करने के लिए व्यंजनों का एक समुदाय चाहते हैं।
64
- - **[LLaMA-Factory](https://github.com/hiyouga/LLaMA-Factory)** यदि आप एक वेब GUI और DPO/PPO/RLHF के लिए अंतर्निहित समर्थन चाहते हैं।
65
- - **[Unsloth](https://github.com/unslothai/unsloth)** यदि आपको सबसे तेज़ प्रशिक्षण की आवश्यकता है और आप एक समर्थित मॉडल परिवार का उपयोग कर रहे हैं।
66
- - **[torchtune](https://github.com/pytorch/torchtune)** यदि आप मेटा के पहले-पार्टी PyTorch-देशी व्यंजनों को संपादित करना चाहते हैं।
63
+ - **[Axolotl](https://github.com/OpenAccess-AI-Collective/axolotl)** - यदि आप YAML कॉन्फ़िगरेशन पसंद करते हैं और आपको कॉपी करने के लिए व्यंजनों का एक समुदाय चाहिए।
64
+ - **[LLaMA-Factory](https://github.com/hiyouga/LLaMA-Factory)** - यदि आप DPO/PPO/RLHF और एक वेब GUI चाहते हैं।
65
+ - **[Unsloth](https://github.com/unslothai/unsloth)** - यदि आपको सबसे तेज़ प्रशिक्षण की आवश्यकता है और आप समर्थित मॉडल परिवार पर हैं।
66
+ - **[torchtune](https://github.com/pytorch/torchtune)** - यदि आप मेटा के पहले-पक्षीय PyTorch-नेटिव व्यंजनों को संपादित करना चाहते हैं।
67
67
 
68
- बैकप्रोपैगेट एक लापता विकल्प है: **एक सिंगल उपभोक्ता जीपीयू पर काम करने वाले ऑपरेटरों के लिए 3-पंक्ति पायथन एपीआई, जो एक एडाप्टर को प्रशिक्षित करना और उसे भेजना चाहते हैं।** इसमें कोई YAML, कोई GUI, कोई DPO/PPO, और कोई मल्टी-नोड सिस्टम नहीं है। इसमें केवल वह लूप है जिसकी वास्तव में सभी को आवश्यकता होती है, और वह एक्सपोर्ट स्टेप जो बाधा उत्पन्न करता है।
68
+ बैकप्रोपैगेट वह विकल्प है जिसकी कमी थी: **एक एकल उपभोक्ता GPU पर अकेले ऑपरेटरों के लिए 3-पंक्ति पायथन API जो एक एडाप्टर को प्रशिक्षित करना और उसे भेजना चाहते हैं।** कोई YAML नहीं, कोई GUI नहीं, कोई ऑनलाइन RL (PPO/GRPO) नहीं, कोई मल्टी-नोड नहीं। बस वह लूप जिसकी वास्तव में हर किसी को आवश्यकता है और वह निर्यात चरण जो बाधा डालता है।
69
69
 
70
- यदि आपने ऊपर दी गई लाइब्रेरी में से किसी एक को आज़माया है और कॉन्फ़िगरेशन फ़ाइल प्रक्रिया से निराश हो गए हैं, या किसी मॉडल परिवार की सीमा का सामना किया है, या विंडोज-फर्स्ट डिफ़ॉल्ट सेटिंग्स चाहते हैं - तो बैकप्रोपैगेट आपके लिए है।
70
+ यदि आपने ऊपर दी गई लाइब्रेरी में से किसी एक को आज़माया और कॉन्फ़िगरेशन-फ़ाइल समारोह से निराश हो गए, या मॉडल-परिवार की कमी का सामना किया, या विंडोज-प्रथम डिफ़ॉल्ट्स चाहते थे - तो बैकप्रोपैगेट आपके लिए है।
71
71
 
72
- ## 16 जीबी के उपभोक्ता जीपीयू पर आप क्या फाइन-ट्यून कर सकते हैं
72
+ ## आप 16GB उपभोक्ता GPU पर क्या ठीक कर सकते हैं
73
73
 
74
- यहां 16 जीबी के कार्ड (RTX 4080 / 5080 / 4070 Ti Super) पर व्यावहारिक सीमाएं दी गई हैं:
74
+ यहां 16GB कार्ड (RTX 4080 / 5080 / 4070 Ti Super) पर व्यावहारिक सीमा दी गई है:
75
75
 
76
76
  | मॉडल | विधि | स्थिति |
77
77
  |---|---|---|
78
- | Qwen-3.5-4B / Phi-4-mini-3.8B / SmolLM3-3B | LoRA / QLoRA / DoRA | आरामदायक। पूर्ण सीक्वेंस लंबाई, अतिरिक्त जगह। |
79
- | Qwen-2.5-7B / Llama-3.1-8B / Mistral-7B | QLoRA | मानक। लगभग 7-8 जीबी। बैकप्रोपैगेट की डिफ़ॉल्ट सेटिंग्स। |
80
- | Llama-3 13B | QLoRA + सैंपल पैकिंग | कठिन लेकिन काम करता है। छोटे सीक्वेंस का उपयोग करें। |
81
- | Mixtral 8x7B (कुल 47 बिलियन पैरामीटर) | AQLM 2-बिट + LoRA | v1.4 में प्रायोगिक। 16 जीबी के कार्ड पर आप जिस सबसे बड़े मॉडल को चला सकते हैं। |
78
+ | Qwen-3.5-4B / Phi-4-mini-3.8B / SmolLM3-3B | LoRA / QLoRA / DoRA | आरामदायक। पूरी अनुक्रम लंबाई, अतिरिक्त जगह। |
79
+ | SmolLM3-3B / Qwen2.5-3B / Llama-3.2-3B / Llama-3.2-1B | `mode="full"` (पूर्ण फाइन-ट्यूनिंग) | v1.4 - `backprop train` या `Trainer(..., mode="full")` पर `--mode=full` पास करें। पूर्ण-सटीक (bf16) भार लोड करता है - कोई 4-बिट नहीं, कोई एडाप्टर नहीं; ग्रेडिएंट चेकपॉइंटिंग + पेज्ड 8-बिट एडम इसे 16GB के भीतर रखता है। |
80
+ | Qwen-2.5-7B / Llama-3.1-8B / Mistral-7B | QLoRA | मानक। ~7-8 GB। बैकप्रोपैगेट के डिफ़ॉल्ट प्रीसेट। |
81
+ | Llama-3 13B | QLoRA + नमूना पैकिंग | तंग लेकिन काम करता है। कम अनुक्रमों का उपयोग करें। |
82
+ | Mixtral 8x7B (कुल 47B पैरामीटर) | — | दायरे से बाहर - 2-बिट (AQLM / QuIP#) मर्ज करने योग्य-एडाप्टर + GGUF-निर्यात अनुबंध को तोड़ता है, इसलिए इसे [v1.5 प्रक्षेपवक्र संक्षिप्त](docs/V1_5_BRIEF.md) में वापस ले लिया गया। 16GB कार्ड पर, ≤8B बेस का उपयोग करें। |
83
+
84
+ `mode="full"` 4B तक के मॉडल को स्वीकार करता है। ऊपर दी गई पूर्ण-एफटी पंक्ति में चार प्रीसेट वास्तविक ~3B (सत्य पैरामीटर गणना 3.08-3.24B) हैं और 16GB कार्ड पर फिट होते हैं। 3.8-4B वर्ग (Phi-4-mini-3.8B, Qwen-3.5-4B) भी सीमा द्वारा स्वीकार किया जाता है, लेकिन पूर्ण FT के लिए 24GB+ कार्ड की आवश्यकता होती है - भार + ग्रेडिएंट अकेले 16GB तक पहुंचते हैं, इससे पहले कि ऑप्टिमाइज़र और सक्रियण - इसलिए 16GB कार्ड पर उन पर `mode="lora"` का उपयोग करें (वे LoRA पंक्ति में हैं)। 4B से अधिक मॉडल `RUNTIME_FULL_FT_MODEL_TOO_LARGE` के साथ बाहर निकल जाते हैं।
85
+
86
+ 2-बिट परिमाणीकरण (AQLM / QuIP#) **दायरे से बाहर है।** इसे v1.4 के लिए निर्धारित किया गया था, फिर [v1.5 प्रक्षेपवक्र संक्षिप्त](docs/V1_5_BRIEF.md) में वापस ले लिया गया: 2-बिट बेस को पूर्ण-सटीक भार में साफ-सुथरा तरीके से वापस मर्ज नहीं किया जा सकता है, जो बैकप्रोपैगेट के मर्ज करने योग्य-एडाप्टर → GGUF → ओलामा निर्यात अनुबंध को तोड़ता है (पाइपलाइन का पूरा बिंदु)। इसके बजाय बैकप्रोपैगेट द्वारा भेजे जाने वाले हेडरूम लीवर v1.5 **FP8 कंप्यूट पथ** (`--fp8`, ब्लैकवेल/हॉपर) और ≤4B मॉडल के लिए `mode="full"` हैं - दोनों मर्ज करने योग्य और निर्यात करने योग्य बने रहते हैं।
82
87
 
83
- 3 बिलियन और उससे छोटे मॉडलों के लिए, 16 जीबी पर पूर्ण फाइन-ट्यूनिंग (केवल LoRA नहीं) संभव है, और इसे v1.4 के लिए `mode="full"` विकल्प के रूप में योजनाबद्ध किया गया है। 7 बिलियन या उससे बड़े मॉडलों के लिए, पूर्ण फाइन-ट्यूनिंग के लिए 24 जीबी या उससे अधिक जीपीयू की आवश्यकता होती है - एक A100 क्लाउड रेंटल पर विचार करें, या LoRA का उपयोग करें, जो हाल के शोध से पता चलता है कि यह अधिकांश पोस्ट-ट्रेनिंग कार्यों पर पूर्ण फाइन-ट्यूनिंग की गुणवत्ता से मेल खाता है (अधिक उद्धरणों के लिए [इस अनुभाग](#what-backpropagate-is-not-for) देखें)।
88
+ 3B और उससे छोटे मॉडल के लिए, 16GB पर पूर्ण फाइन-ट्यूनिंग (केवल LoRA नहीं) संभव है और अब v1.4 में `mode="full"` के रूप में उपलब्ध है। इसे सक्षम करने के लिए `Trainer(..., mode="full")` या `backprop train --mode=full --model phi-4-mini-3.8b` पास करें। एक कठोर गेट > 4B मॉडल के लिए मोड को `RUNTIME_FULL_FT_MODEL_TOO_LARGE` के साथ अस्वीकार करता है, LoRA + 4B से कम प्रीसेट को रिकवरी विकल्पों के रूप में नामित करता है। कॉन्फ़िगरेशन गणित + बिडरमैन 2024 / थिंकिंग मशीन 2025 गुणवत्ता तुलना के लिए [पूर्ण फाइन-ट्यूनिंग हैंडबुक पृष्ठ](https://mcp-tool-shop-org.github.io/backpropagate/handbook/full-fine-tuning/) देखें। 7B+ मॉडल के लिए, पूर्ण फाइन-ट्यूनिंग के लिए 24GB+ GPU की आवश्यकता होती है - A100 क्लाउड रेंटल पर विचार करें, या LoRA के साथ बने रहें, जो हालिया शोध से पता चलता है कि अधिकांश पोस्ट-ट्रेनिंग कार्यों पर पूर्ण फाइन-ट्यूनिंग गुणवत्ता से मेल खाता है (संदर्भ के लिए [एंटी-पिच अनुभाग](#what-backpropagate-is-not-for) देखें)।
84
89
 
85
90
  ## बैकप्रोपैगेट किसके लिए नहीं है
86
91
 
87
- ईमानदार स्कोप हर किसी की मदद करता है। बैकप्रोपैगेट इन चीजों को नहीं करता है, और इसे ऐसा करने की कोशिश करना सही उपकरण का उपयोग करने से भी बदतर अनुभव होगा:
92
+ यदि आपका उपयोग मामला नीचे दिया गया है, तो आपको किसी अन्य लाइब्रेरी के साथ बेहतर अनुभव होगा - बैकप्रोपैगेट सही विकल्प नहीं है और इसे काम करने की कोशिश करने से सही उपकरण तक पहुंचने से अधिक खर्च आएगा। शुरू करने से पहले इस अनुभाग को पढ़ने से इंस्टॉलेशन-और-वापस जाने के चक्र से बचा जा सकता है:
88
93
 
89
- - **7B+ मॉडलों का पूर्ण-पैरामीटर फाइन-ट्यूनिंग:** बैकप्रोपगेट LoRA/QLoRA का उपयोग करता है, जो प्रत्येक वेट को अपडेट करने के बजाय एक छोटे एडाप्टर को प्रशिक्षित करता है। 7B और उससे बड़े मॉडलों के लिए, पूर्ण फाइन-ट्यूनिंग के लिए 24GB+ GPU मेमोरी की आवश्यकता होती है और यह 16GB के उपभोक्ता कार्ड पर फिट नहीं होता है। 3B और उससे छोटे मॉडलों के लिए, 16GB पर पूर्ण फाइन-ट्यूनिंग संभव है; v1.4 के लिए `mode="full"` विकल्प की योजना है। बड़ी तस्वीर: हाल के शोध (Biderman 2024, Thinking Machines 2025) से पता चलता है कि LoRA सही कॉन्फ़िगरेशन के साथ अधिकांश पोस्ट-ट्रेनिंग कार्यों (निर्देशों का पालन, डोमेन अनुकूलन, व्यक्तित्व/शैली) में पूर्ण फाइन-ट्यूनिंग की गुणवत्ता से मेल खाता है, और यह 67% कम कंप्यूटिंग संसाधनों का उपयोग करता है। इसलिए, अधिकांश ऑपरेटरों के लिए जो काम वे वास्तव में करना चाहते हैं, LoRA का उपयोग करने से उन्हें कोई नुकसान नहीं होता है। यदि आपको वास्तव में 7B+ मॉडल की पूर्ण फाइन-ट्यूनिंग की आवश्यकता है, तो HuggingFace `transformers.Trainer` को सीधे 24GB+ कार्ड पर उपयोग करें।
90
- - **DPO/PPO/GRPO/पसंद ट्यूनिंग:** बैकप्रोपगेट केवल सिंगल-स्टेज सुपरवाइज्ड फाइन-ट्यूनिंग करता है। पसंद सीखने के लिए, सीधे TRL या LLaMA-Factory का उपयोग करें।
91
- - **मल्टी-नोड प्रशिक्षण:** केवल एक मशीन पर एक GPU। एक मशीन पर मल्टी-GPU काम करता है (accelerate launch के माध्यम से), लेकिन यह आधिकारिक तौर पर समर्थित नहीं है।
92
- - **macOS पर प्रशिक्षण:** Apple Silicon में CUDA नहीं है, इसलिए प्रशिक्षण को Linux या Windows बॉक्स पर NVIDIA GPU के साथ चलाना होगा। आप प्रशिक्षित मॉडल को Ollama के माध्यम से Mac पर चला सकते हैं।
93
- - **परीक्षण किए गए मॉडल परिवारों के बाहर की कोई भी चीज़:** Qwen 2.5/3.5 (7B/4B), Phi-4-mini-3.8B, SmolLM3-3B, Llama 3.2 (3B/1B), Mistral 7B। अन्य मॉडल अक्सर काम करते हैं लेकिन CI में पिन नहीं किए गए हैं।
94
+ - **7B+ मॉडल का पूर्ण-पैरामीटर फाइन-ट्यूनिंग** बैकप्रोपगेट LoRA / QLoRA का उपयोग करता है, जो हर वेट को अपडेट करने के बजाय एक छोटे एडाप्टर को प्रशिक्षित करता है। 7B और उससे बड़े मॉडल के लिए, पूर्ण फाइन-ट्यूनिंग के लिए 24GB+ GPU मेमोरी की आवश्यकता होती है और यह 16GB उपभोक्ता कार्ड पर फिट नहीं होता है। 3B और उससे छोटे मॉडल के लिए, पूर्ण फाइन-ट्यूनिंग 16GB पर संभव है और v1.4 में `mode="full"` के रूप में उपलब्ध है (CLI पर `Trainer(..., mode="full")` या `--mode=full` पास करें; एक हार्ड गेट 4B से बड़े मॉडल के लिए `RUNTIME_FULL_FT_MODEL_TOO_LARGE` उत्पन्न करता है और 4B से छोटे मॉडल के लिए LoRA + प्रीसेट को रिकवरी के रूप में नामित करता है)। मुख्य बात: हालिया शोध ([बिडरमैन 2024](https://arxiv.org/abs/2405.09673), [थिंकिंग मशीन्स 2025](https://thinkingmachines.ai/blog/lora/)) दर्शाता है कि सही कॉन्फ़िगरेशन पर LoRA, अधिकांश पोस्ट-ट्रेनिंग कार्यों (निर्देश-अनुपालन, डोमेन अनुकूलन, व्यक्तित्व/शैली) पर पूर्ण फाइन-ट्यूनिंग गुणवत्ता से मेल खाता है, जो 67% कंप्यूट शक्ति का उपयोग करता है इसलिए, अधिकांश ऑपरेटरों द्वारा वास्तव में वांछित कार्य के लिए, LoRA का उपयोग करने से कोई नुकसान नहीं होता है। `mode="full"` उन मामलों के लिए मौजूद है जहां आपने गुणवत्ता में अंतर मापा है और अतिरिक्त कंप्यूट शक्ति खर्च करने का निर्णय लिया है। यदि आपको वास्तव में 7B+ मॉडल के पूर्ण फाइन-ट्यूनिंग की आवश्यकता है, तो HuggingFace `transformers.Trainer` को सीधे 24GB+ कार्ड पर उपयोग करें।
95
+ - **ऑनलाइन RL — PPO / GRPO / RLVR** — बैकप्रोपगेट सिंगल-स्टेज SFT प्लस संदर्भ-मुक्त प्राथमिकता ट्यूनिंग करता है (ORPO v1.5 में उपलब्ध है; SimPO/KTO की योजना बनाई जा रही है)। यह जो *नहीं* करता है, वह है ऑनलाइन रीइन्फोर्समेंट लर्निंग — PPO, GRPO, या RLVR — जिसके लिए एक इनाम मॉडल या प्रशिक्षण चरण के शीर्ष पर एक पीढ़ी-और-स्कोरिंग लूप की आवश्यकता होती है। उन कार्यों के लिए, TRL या LLaMA-Factory का सीधे उपयोग करें। (संदर्भ-मुक्त प्राथमिकता ट्यूनिंग सिंगल-स्टेज एनवेलप में फिट बैठता है क्योंकि मेमोरी में रखने के लिए कोई अलग संदर्भ मॉडल नहीं है; [क्विक स्टार्ट](#quick-start) के तहत ORPO नोट देखें)।
96
+ - **मल्टी-नोड प्रशिक्षण** केवल एक मशीन पर एक GPU। एक मशीन पर मल्टी-GPU काम करता है ( `accelerate launch` के माध्यम से) लेकिन आधिकारिक तौर पर समर्थित नहीं है।
97
+ - **CUDA रेल पर macOS प्रशिक्षण** — Apple Silicon में CUDA नहीं है, इसलिए CUDA पथ को NVIDIA GPU वाले Linux या Windows बॉक्स पर चलाना होगा। आप अभी भी प्रशिक्षित मॉडल को Ollama के माध्यम से Mac पर चला सकते हैं। **v1.5 में नया:** एक प्रायोगिक MLX रेल (`--backend mlx`) Apple Silicon पर मूल रूप से LoRA एडाप्टर को प्रशिक्षित करता है — [Apple Silicon (MLX)](#apple-silicon-mlx--experimental-v15) देखें। यह केवल LoRA-SFT है और वास्तविक सिलिकॉन पर बनाया गया है, लेकिन अभी तक पूरी तरह से सत्यापित नहीं है, इसलिए LoRA SFT (ORPO, पूर्ण फाइन-ट्यून, FP8, मल्टी-रन) से परे किसी भी चीज़ के लिए, आप अभी भी CUDA रेल का उपयोग करना चाहेंगे।
98
+ - **परीक्षण किए गए मॉडल परिवारों के बाहर कुछ भी** Qwen 2.5 / 3.5 (7B / 4B), Phi-4-mini-3.8B, SmolLM3-3B, Llama 3.2 (3B / 1B), Mistral 7B। अन्य मॉडल अक्सर काम करते हैं लेकिन CI में पिन नहीं किए गए हैं।
94
99
 
95
100
  यदि आपको इनमें से किसी भी चीज़ की आवश्यकता है, तो ऊपर सूचीबद्ध पुस्तकालयों में से किसी एक का उपयोग करें। वे इसमें बेहतर हैं।
96
101
 
97
- ## बैकप्रोपगेट आपको क्या देता है
102
+ ## बैकप्रोपगेट आपको क्या प्रदान करता है
98
103
 
99
- एक इंस्टॉलेशन में, चार चीजें:
104
+ एक इंस्टॉलेशन में चार चीजें:
100
105
 
101
- **1. एक वास्तविक 3-पंक्ति API जो किसी कॉन्फ़िगरेशन फ़ाइल के बिना चलता है।**
102
- इस README के शीर्ष पर दिया गया स्निपेट एंड-टू-एंड चलता है। कोई `accelerate config` नहीं, कोई YAML नहीं, कोई Hydra ओवरराइड नहीं। बस `Trainer(model).train(data)` और आपके पास फाइन-ट्यूनिंग है।
106
+ **1. एक वास्तविक 3-लाइन API जो बिना कॉन्फ़िगरेशन फ़ाइल के चलता है।**
107
+ इस README के शीर्ष पर दिया गया स्निपेट एंड-टू-एंड चलता है। कोई `accelerate config`, कोई YAML, कोई हाइड्रा ओवरराइड नहीं। बस `Trainer(model).train(data)` और आपके पास एक फाइन-ट्यून मॉडल है।
103
108
 
104
109
  **2. विंडोज जो वास्तव में काम करता है।**
105
- अधिकांश ML लाइब्रेरी विंडोज को एक afterthought के रूप में मानते हैं। बैकप्रोपगेट का परीक्षण Windows + RTX 5080 पर पहले दर्जे का किया गया है। लाइब्रेरी आपके लिए रनटाइम की विचित्रताओं को संभालती है - यह जानता है कि आपके डेटा को कैसे प्री-टोकनाइज़ करना है ताकि विंडोज मल्टीप्रोसेसिंग क्रैश न हो, यह स्वचालित रूप से RTX 40/50 कार्ड पर xformers को अक्षम कर देता है जहां यह खराब हो जाता है, और यह डेटालोडर सेटिंग्स चुनता है जो खराब नहीं होती हैं। आपको इनमें से कुछ भी जानने की आवश्यकता नहीं है। यह बस चलता है।
110
+ अधिकांश ML पुस्तकालय विंडोज को एक afterthought के रूप में मानते हैं। बैकप्रोपगेट को विंडोज + RTX 5080 पर पहले से परीक्षण किया गया है। पुस्तकालय आपके लिए रनटाइम की विशिष्टताओं को संभालता है यह जानता है कि आपके डेटा को पहले से कैसे टोकनाइज़ करना है ताकि विंडोज मल्टीप्रोसेसिंग क्रैश न हो, यह स्वचालित रूप से RTX 40/50 कार्ड पर xformers को अक्षम कर देता है जहां यह विफल हो जाएगा, और यह डेटा लोडर सेटिंग्स चुनता है जो विफल नहीं होते हैं। आपको इनमें से किसी भी चीज़ को जानने की आवश्यकता नहीं है। यह बस चलता है।
106
111
 
107
- **3. बिना पर्यवेक्षण के चलने के लिए बनाया गया।**
108
- प्रशिक्षण में घंटों लगते हैं। आप इसका ध्यान नहीं रखना चाहते। बैकप्रोपगेट को चलने के लिए डिज़ाइन किया गया है:
112
+ **3. बिना निगरानी वाले रनों के लिए बनाया गया।**
113
+ प्रशिक्षण में घंटों लगते हैं। आप इसकी निगरानी नहीं करना चाहते हैं। बैकप्रोपगेट को लगातार चलने के लिए डिज़ाइन किया गया है:
109
114
 
110
- - यदि आपके पास GPU मेमोरी खत्म हो जाती है, तो यह स्वचालित रूप से बैच आकार को आधा कर देता है और पुनः प्रयास करता है - अधिकतम तीन बार। कोई मैनुअल ट्यूनिंग नहीं।
111
- - यदि आपका GPU बहुत गर्म हो जाता है, तो यह तब तक रुक जाता है जब तक कि चीजें ठंडी न हो जाएं और फिर जारी रहता है।
112
- - प्रत्येक चेकपॉइंट को परमाणु रूप से लिखा जाता है - यदि आपका लैपटॉप बचत के दौरान क्रैश हो जाता है, तो पिछला अच्छा चेकपॉइंट अभी भी बरकरार रहता है।
113
- - प्रत्येक प्रशिक्षण रन को एक अद्वितीय ID मिलता है जो प्रत्येक लॉग लाइन, प्रत्येक चेकपॉइंट और प्रत्येक Weights & Biases प्रविष्टि पर अंकित होता है। यदि कुछ गलत होता है, तो एक ID एक रखरखावकर्ता को सब कुछ सहसंबंधित करने की अनुमति देता है।
114
- - त्रुटियां स्थिर कोड के साथ आती हैं (`RUNTIME_GPU_OOM`, `DEP_OLLAMA_REGISTRATION_FAILED`, आदि) ताकि आप अपने लॉग को खोज सकें और [समस्या निवारण गाइड](https://mcp-tool-shop-org.github.io/backpropagate/handbook/troubleshooting/) में समाधान ढूंढ सकें। CUDA-विशिष्ट विफलताओं के लिए एक समर्पित [CUDA समस्या निवारण पृष्ठ](https://mcp-tool-shop-org.github.io/backpropagate/handbook/troubleshooting-cuda/) है।
115
+ - यदि आपके पास GPU मेमोरी कम हो जाती है, तो यह स्वचालित रूप से बैच आकार को आधा कर देता है और तीन बार तक पुनः प्रयास करता है। कोई मैन्युअल ट्यूनिंग नहीं।
116
+ - यदि आपका GPU बहुत गर्म हो जाता है, तो यह तब तक रुक जाता है जब तक कि चीजें शांत न हो जाएं और फिर जारी रहता है।
117
+ - प्रत्येक चेकपॉइंट को परमाणु रूप से लिखा जाता है यदि आपका लैपटॉप मध्य-सहेजते समय क्रैश हो जाता है, तो पिछला अच्छा चेकपॉइंट अभी भी बरकरार रहता है।
118
+ - प्रत्येक प्रशिक्षण रन को एक अद्वितीय ID मिलता है जो प्रत्येक लॉग लाइन, प्रत्येक चेकपॉइंट और प्रत्येक वेट्स एंड बायसेस प्रविष्टि पर मुद्रित होता है। यदि कुछ गलत हो जाता है, तो एक ID एक रखरखावकर्ता को सब कुछ सहसंबंधित करने की अनुमति देता है।
119
+ - त्रुटियां स्थिर कोड के साथ आती हैं (`RUNTIME_GPU_OOM`, `DEP_OLLAMA_REGISTRATION_FAILED`, आदि) ताकि आप अपने लॉग और [समस्या निवारण मार्गदर्शिका](https://mcp-tool-shop-org.github.io/backpropagate/handbook/troubleshooting/) में समाधान खोज सकें। CUDA-विशिष्ट विफलताओं के लिए एक समर्पित [CUDA समस्या निवारण पृष्ठ](https://mcp-tool-shop-org.github.io/backpropagate/handbook/troubleshooting-cuda/) है।
115
120
 
116
121
  **4. प्रशिक्षित एडाप्टर से `ollama run` तक एक कमांड।**
117
- कई लाइब्रेरी एक मॉडल को प्रशिक्षित करती हैं। उनमें से बहुत कम ही आपको तब भी रास्ता देते हैं जब आप वास्तव में इसका उपयोग करना चाहते हैं। बैकप्रोपगेट GGUF (वह प्रारूप जिसका उपयोग Ollama करता है) में निर्यात करता है और एक कमांड में एक Ollama मॉडल को पंजीकृत करता है। आप "प्रशिक्षण पूरा हुआ" से "मैं अपने फाइन-ट्यून मॉडल के साथ चैट कर सकता हूं" तक लगभग 30 सेकंड में पहुँच जाते हैं।
122
+ कई पुस्तकालय एक मॉडल को प्रशिक्षित करते हैं। उनमें से कुछ ही आपको वास्तव में इसका उपयोग करने पर रास्ते से हटते हैं। बैकप्रोपगेट GGUF (Ollama द्वारा उपयोग किया जाने वाला प्रारूप) में निर्यात करता है और एक कमांड में एक Ollama मॉडल को पंजीकृत करता है। आप "प्रशिक्षण पूरा" से "मैं अपने फाइन-ट्यून मॉडल के साथ चैट कर सकता हूं" लगभग 30 सेकंड में जा सकते हैं।
118
123
 
119
- ## शुरुआत कैसे करें।
124
+ ## त्वरित शुरुआत
120
125
 
121
- यह रिपॉजिटरी एक छोटा उदाहरण डेटासेट प्रदान करता है, ताकि इस README फ़ाइल के शीर्ष पर दिया गया कोड एक नए इंस्टॉलेशन पर भी चल सके:
126
+ रिपो एक छोटा सा उदाहरण डेटासेट भेजता है ताकि इस README के शीर्ष पर दिया गया स्निपेट एक स्वच्छ इंस्टॉलेशन पर चले:
122
127
 
123
128
  ```bash
124
129
  pipx install "backpropagate[standard]"
@@ -131,31 +136,78 @@ trainer.export('gguf', quantization='q4_k_m')
131
136
  "
132
137
  ```
133
138
 
134
- यह 5 छोटे ShareGPT-प्रारूप वाले वार्तालापों पर Qwen 2.5 7B एडेप्टर को प्रशिक्षित करता है, और फिर परिणाम को GGUF प्रारूप में निर्यात करता है। अपने स्वयं के डेटा के लिए, अपने JSONL फ़ाइल को एक उदाहरण प्रति पंक्ति के प्रारूप में व्यवस्थित करें:
139
+ यह 5 छोटे ShareGPT-प्रारूप वार्तालापों पर Qwen 2.5 7B एडाप्टर को प्रशिक्षित करता है, फिर परिणाम को GGUF में निर्यात करता है। अपने स्वयं के डेटा के लिए, अपने JSONL को एक पंक्ति में एक उदाहरण के रूप में स्वरूपित करें:
135
140
 
136
141
  ```jsonl
137
142
  {"conversations": [{"from": "human", "value": "What is Python?"}, {"from": "gpt", "value": "A programming language."}]}
138
143
  {"conversations": [{"from": "human", "value": "Explain recursion."}, {"from": "gpt", "value": "A function that calls itself."}]}
139
144
  ```
140
145
 
141
- Alpaca (`instruction` / `output`), OpenAI चैट (`messages`), और कच्चे टेक्स्ट प्रारूप भी काम करते हैं - Backpropagate स्वचालित रूप से प्रारूप का पता लगाता है।
146
+ अल्पाका (`instruction` / `output`), OpenAI चैट (`messages`), और कच्चे पाठ प्रारूप भी काम करते हैं बैकप्रोपगेट प्रारूप का स्वचालित रूप से पता लगाता है।
147
+
148
+ ### प्राथमिकता ट्यूनिंग (ORPO)
149
+
150
+ v1.5 में नया: सादे प्रदर्शनों के बजाय प्राथमिकताओं पर प्रशिक्षित करें। ORPO संदर्भ-मुक्त और सिंगल-स्टेज है — यह प्राथमिकता संकेत को SFT चरण में जोड़ता है, इसलिए कोई अलग इनाम या संदर्भ मॉडल नहीं है और 3-लाइन आकार अपरिवर्तित रहता है। `--method orpo` (CLI) या `method="orpo"` (Python) पास करें और `{prompt, chosen, rejected}` (या केवल `{chosen, rejected}`) पंक्तियों के एक डेटासेट को फीड करें:
151
+
152
+ ```jsonl
153
+ {"prompt": "What is Python?", "chosen": "A high-level programming language known for readability.", "rejected": "idk look it up"}
154
+ {"prompt": "Explain recursion.", "chosen": "A function that calls itself with a smaller input until a base case.", "rejected": "when something repeats"}
155
+ ```
156
+
157
+ ```python
158
+ from backpropagate import Trainer
159
+
160
+ trainer = Trainer("Qwen/Qwen2.5-7B-Instruct", method="orpo")
161
+ trainer.train("preferences.jsonl", steps=100)
162
+ trainer.export("gguf", quantization="q4_k_m")
163
+ ```
164
+
165
+ ```bash
166
+ backprop train --data preferences.jsonl --method orpo --steps 100
167
+ ```
142
168
 
143
- अधिक एंड-टू-एंड वर्कफ़्लो (जैसे, फाइन-ट्यूनिंग और Hugging Face हब पर अपलोड करना, OOM होने पर पुनः आरंभ करना, एक लंबे अभियान में कई बार चलाना, आदि) के लिए, [हैंडबुक रेसिपीज़ पेज](https://mcp-tool-shop-org.github.io/backpropagate/handbook/recipes/) देखें।
169
+ डिफ़ॉल्ट लर्निंग दर स्वचालित रूप से ORPO के लिए `8e-6` तक कम हो जाती है (हानि, साधारण SFT की तुलना में अधिक तीव्र है); `--orpo-beta` को समायोजित करें (डिफ़ॉल्ट `0.1`) ताकि ऑड्स-अनुपात दंड को भार दिया जा सके। v1.5 में ORPO केवल `mode="lora"` है। SimPO और KTO नियोजित अनुवर्ती हैं; ऑनलाइन RL (PPO/GRPO) के लिए [What Backpropagate is NOT for](#what-backpropagate-is-not-for) देखें।
170
+
171
+ ### तर्क-आधारित SFT (R1 डिस्टिलेशन)
172
+
173
+ v1.5 में नया: तर्क मॉडल को आसानी से डिस्टिल करें। `--reasoning-trace` (CLI) या `Trainer(..., reasoning_trace=True)` (Python) पास करें और ऐसे ट्रेस प्रदान करें जो सहायक के टर्न के अंदर `<think>...</think>` श्रृंखला-आधारित विचार को बनाए रखें — यह [DeepSeek-R1](https://arxiv.org/abs/2501.12948) डिस्टिलेशन का शुद्ध-SFT आधा हिस्सा है, RL की आवश्यकता नहीं है। बैकप्रोपैगेट प्रशिक्षण लक्ष्य में `<think>` को बनाए रखता है, खाली/अत्यधिक लंबे ट्रेस को हटा देता है (ट्रेस-लंबाई फ़िल्टरिंग), और लंबे CoT के लिए डिफ़ॉल्ट `max_seq_length` को 8192 तक बढ़ाता है। महत्वपूर्ण रूप से, `<think>` **सादा पाठ** रहता है — कोई विशेष टोकन नहीं, कोई एम्बेडिंग आकार परिवर्तन नहीं — इसलिए मर्ज किया गया GGUF अभी भी किसी अन्य फाइन-ट्यून की तरह Ollama में निर्यात होता है। केवल SFT। डेटासेट आकार और समायोज्य टोकन बैंड के लिए [reasoning-trace recipe](https://mcp-tool-shop-org.github.io/backpropagate/handbook/recipes/#reasoning-trace-sft-r1-distillation) देखें।
174
+
175
+ ### एप्पल सिलिकॉन (MLX) — प्रयोगात्मक, v1.5
176
+
177
+ v1.5 में नया: **एक API, दो रेल।** CUDA डिफ़ॉल्ट, सत्यापित बैकएंड बना रहता है; MLX एक दूसरी रेल है जो Apple के [`mlx_lm.lora`](https://github.com/ml-explore/mlx-lm) टूलचेन के माध्यम से M-श्रृंखला Mac पर प्रशिक्षित होती है (एकीकृत मेमोरी, कोई CUDA नहीं)। समान 3-पंक्ति आकार हार्डवेयर द्वारा रेल का चयन करता है — `backend='auto'` (डिफ़ॉल्ट) NVIDIA पर CUDA और Apple सिलिकॉन पर MLX पर रूट करता है, इसलिए मौजूदा CUDA सेटअप बाइट-दर-बाइट समान हैं:
178
+
179
+ ```python
180
+ from backpropagate import Trainer
181
+
182
+ # On an M-series Mac with `pip install 'backpropagate[mlx]'`:
183
+ trainer = Trainer("mlx-community/Qwen2.5-0.5B-Instruct-4bit", backend="mlx")
184
+ trainer.train("examples/quickstart.jsonl", steps=100)
185
+ ```
186
+
187
+ ```bash
188
+ backprop train --data my_data.jsonl --backend mlx --steps 100
189
+ ```
190
+
191
+ v1.5 में MLX रेल **केवल LoRA SFT है** — कोई ORPO नहीं, कोई FP8 नहीं, कोई `mode='full'` नहीं, अभी तक MLX पर कोई मल्टी-रन नहीं (प्रत्येक को `CONFIG_INVALID_SETTING` के साथ अस्वीकार कर दिया जाता है; उन कार्यों के लिए NVIDIA बॉक्स पर `backend='cuda'`/`'auto'` का उपयोग करें)। परिणामी एडाप्टर सादा सेफ़टेंसर है और उसी पथ के माध्यम से CUDA रेल की तरह Ollama में निर्यात होता है।
192
+
193
+ > ⚠️ **ईमानदार स्थिति:** MLX रेल v1.5 में **बनाकर + यूनिट-परीक्षण (मॉक किया गया)** के साथ शिप की जाती है, लेकिन **अभी तक वास्तविक Apple सिलिकॉन पर डॉगफ़ूड-सत्यापित नहीं है** — `mlx-lm` केवल Apple के लिए है और इसे उस NVIDIA सेटअप पर नहीं चलाया जा सकता है जिस पर इसे बनाया गया था। इसे प्रयोगात्मक के रूप में मानें (FP8 पथ के समान ढांचा), और कृपया [विसंगतियों की रिपोर्ट करें](#reporting-bugs) जब यह M-श्रृंखला Mac पर चलता है। गैर-Apple होस्ट पर `--backend mlx` को जबरदस्ती करने पर `CONFIG_INVALID_SETTING` त्रुटि आती है; Mac पर लापता `mlx_lm` टूलचेन `DEP_MLX_UNAVAILABLE` उत्पन्न करता है।
194
+
195
+ अधिक एंड-टू-एंड वर्कफ़्लो (फाइन-ट्यून-एंड-पुश-टू-HF-हब, OOM के बाद फिर से शुरू करें, लंबे अभियान में मल्टी-रन SLAO, आदि) के लिए [हैंडबुक रेसिपी पेज](https://mcp-tool-shop-org.github.io/backpropagate/handbook/recipes/) देखें।
144
196
 
145
197
  ### वेब UI (वैकल्पिक)
146
198
 
147
- यदि आप Python कोड लिखने के बजाय क्लिक करना पसंद करते हैं, तो UI एक्सट्रा स्थापित करें और लॉन्च करें:
199
+ यदि आप Python में टाइप करने के बजाय क्लिक करना पसंद करते हैं, तो UI एक्स्ट्रा स्थापित करें और लॉन्च करें:
148
200
 
149
201
  ```bash
150
202
  pipx install "backpropagate[ui]"
151
203
  backprop ui --port 7862
152
204
  ```
153
205
 
154
- एक स्थानीय वेब इंटरफ़ेस `http://localhost:7862` पर खुलता है, जहाँ आप एक डेटासेट का चयन कर सकते हैं, एक मॉडल चुन सकते हैं, प्रशिक्षण कर सकते हैं और परिणाम निर्यात कर सकते हैं। डिफ़ॉल्ट रूप से, UI केवल स्थानीय रूप से उपलब्ध होता है। इसे अन्य उपकरणों पर उपलब्ध कराने के लिए, `--share` + `--auth` सुरक्षा अनुबंध के लिए [वेब UI](#web-ui) अनुभाग देखें।
206
+ एक स्थानीय वेब इंटरफ़ेस `http://localhost:7862` पर खुलता है, जिसका उपयोग डेटासेट ब्राउज़ करने, प्रारूपों को मान्य करने और प्रशिक्षण कॉन्फ़िगरेशन को दृश्य रूप से इकट्ठा करने के लिए किया जा सकता है। प्रशिक्षण स्वयं `backprop train` के माध्यम से चलता है (UI-संचालित प्रशिक्षण रोडमैप पर है — स्टार्ट बटन वर्तमान में उस नोट को प्रदर्शित करता है)। UI डिफ़ॉल्ट रूप से केवल स्थानीय है। इसे अन्य उपकरणों तक विस्तारित करने के लिए, [Web UI](#web-ui) नीचे `--share` + `--auth` सुरक्षा अनुबंध देखें।
155
207
 
156
- ## कई बार प्रशिक्षण
208
+ ## मल्टी-रन प्रशिक्षण
157
209
 
158
- यदि आप कई डेटासेट पर क्रमिक रूप से फाइन-ट्यूनिंग करना चाहते हैं - उदाहरण के लिए, यदि आपको हर हफ्ते नया प्रशिक्षण डेटा मिलता है और आप इसे जोड़ना चाहते हैं, लेकिन पहले सीखी गई जानकारी को भूलना नहीं चाहते हैं - तो Backpropagate का `multi_run` मोड आपके लिए है:
210
+ यदि आप कई डेटासेट में वृद्धिशील रूप से फाइन-ट्यून करना चाहते हैं मान लीजिए कि आपको हर हफ्ते नया प्रशिक्षण डेटा मिलता है और आप इसे पहले से सीखे गए ज्ञान को भूले बिना जोड़ना चाहते हैं तो बैकप्रोपैगेट का `multi_run` मोड आपके लिए है:
159
211
 
160
212
  ```python
161
213
  from backpropagate import Trainer
@@ -170,17 +222,17 @@ result = trainer.multi_run(
170
222
  )
171
223
  ```
172
224
 
173
- यह पांच प्रशिक्षण चक्र चलाता है, और प्रत्येक चक्र के बीच एडेप्टर को इस तरह मर्ज करता है कि पिछली जानकारी बनी रहे और नए उदाहरण शामिल हों। यह तकनीक हाल के निरंतर-सीखने अनुसंधान पर आधारित है - [संदर्भ](#references) अनुभाग में अधिक जानकारी प्राप्त करें, जो इस README फ़ाइल के अंत में दिया गया है।
225
+ यह पांच प्रशिक्षण पास चलाता है, जो रन के बीच एडाप्टर को इस तरह से मर्ज करता है कि पहले के ज्ञान को संरक्षित किया जा सके, जबकि नए उदाहरणों को शामिल किया जा सके। यह तकनीक हालिया निरंतर-शिक्षण अनुसंधान पर आधारित है इस README के नीचे [References](#references) देखें।
174
226
 
175
- CLI (कमांड लाइन इंटरफ़ेस) संस्करण:
227
+ CLI संस्करण:
176
228
 
177
229
  ```bash
178
230
  backprop multi-run --data my_data.jsonl --runs 5 --steps 100 --samples 1000
179
231
  ```
180
232
 
181
- ## चेकपॉइंट से पुनः आरंभ करें
233
+ ## चेकपॉइंट से फिर से शुरू करें
182
234
 
183
- एक 5-चक्र प्रशिक्षण जो चौथे चक्र में क्रैश हो जाता है, उसे पुनः आरंभ किया जा सकता है। प्रत्येक `multi_run` सत्र अपनी रन आईडी को ऑन-डिस्क इतिहास और चेकपॉइंट मैनिफेस्ट में लिखता है, इसलिए जहां से आपने छोड़ा था, वहीं से शुरू करने के लिए केवल एक कमांड की आवश्यकता होती है:
235
+ 5-रन प्रशिक्षण जो रन 4 पर क्रैश हो जाता है, उसे ठीक किया जा सकता है। प्रत्येक मल्टी-रन सत्र अपने रन आईडी को ऑन-डिस्क इतिहास और चेकपॉइंट मेनिफेस्ट में लिखता है, इसलिए जहां आपने छोड़ा था, वहां से उठाना एक कमांड है:
184
236
 
185
237
  ```bash
186
238
  backprop resume <run-id>
@@ -188,11 +240,11 @@ backprop multi-run --data ... --resume <run-id>
188
240
  backprop train --data ... --resume <run-id> # single-run resume
189
241
  ```
190
242
 
191
- `backprop multi-run` का डिफ़ॉल्ट व्यवहार (बिना `--resume` विकल्प के) समान आउटपुट निर्देशिका में चल रहे सत्र का पता लगाता है और उसे जारी रखता है। यदि आप एक नए सत्र से शुरुआत करना चाहते हैं, तो एक नई आउटपुट निर्देशिका का उपयोग करें।
243
+ `backprop multi-run` (कोई `--resume` नहीं) का डिफ़ॉल्ट व्यवहार उसी आउटपुट निर्देशिका में एक प्रगति पर प्रविष्टि का स्वचालित रूप से पता लगाता है और उसे जारी रखता है। एक स्वच्छ शुरुआत के लिए, एक ताज़ा आउटपुट निर्देशिका पर इंगित करें।
192
244
 
193
245
  ## प्रशिक्षण इतिहास
194
246
 
195
- प्रत्येक `backprop train` और `backprop multi-run` कमांड `<output>/run_history.json` फ़ाइल में एक पंक्ति रिकॉर्ड करता है - उपयोग किया गया मॉडल, डेटासेट, हाइपरपैरामीटर, स्थिति, अंतिम हानि, हानि इतिहास। आप पिछले रनों को सूचीबद्ध और जांच सकते हैं:
247
+ प्रत्येक `backprop train` और `backprop multi-run` आह्वान `<output>/run_history.json` में एक पंक्ति रिकॉर्ड करता है उपयोग किया गया मॉडल, डेटासेट, हाइपरपैरामीटर, स्थिति, अंतिम हानि, हानि इतिहास। आप पिछले रन को सूचीबद्ध और निरीक्षण कर सकते हैं:
196
248
 
197
249
  ```bash
198
250
  backprop list-runs # last 20 runs
@@ -203,7 +255,7 @@ backprop show-run abcd1234 # detail view (partial ID is fine)
203
255
 
204
256
  ## प्रयोग ट्रैकिंग
205
257
 
206
- Backpropagate स्थापित प्रयोग ट्रैकर (Weights & Biases, TensorBoard, MLflow) का स्वचालित रूप से पता लगाता है और उन्हें एकीकृत करता है। यदि `wandb` स्थापित है और आप लॉग इन हैं, तो प्रत्येक रन स्वचालित रूप से W&B पर लॉग इन हो जाता है, और रन का नाम ऑन-डिस्क रन आईडी से मेल खाता है - जिससे आप W&B, अपने लॉग और `run_history.json` फ़ाइल में एक ही पहचानकर्ता का उपयोग करके खोज कर सकते हैं।
258
+ बैकप्रोपैगेट स्थापित प्रयोग ट्रैकर्स (वेट्स एंड बायसेस, टेंसरबोर्ड, MLflow) का स्वचालित रूप से पता लगाता है और उन्हें जोड़ता है। यदि `wandb` स्थापित है और आप लॉग इन हैं, तो प्रत्येक रन स्वचालित रूप से W&B में एक रन नाम के साथ लॉग करता है जो ऑन-डिस्क रन आईडी से मेल खाता है इसलिए आप W&B, अपने लॉग और `run_history.json` में एक पहचानकर्ता का उपयोग करके खोज सकते हैं।
207
259
 
208
260
  ```bash
209
261
  pip install backpropagate[monitoring] # installs wandb + psutil
@@ -211,23 +263,25 @@ wandb login # one-time setup
211
263
  backprop train --data my_data.jsonl
212
264
  ```
213
265
 
214
- `Trainer(report_to=["wandb"])`, `Trainer(report_to=["tensorboard"])`, या `Trainer(report_to="none")` का उपयोग करके इसे ओवरराइड किया जा सकता है।
266
+ `Trainer(report_to=["wandb"])`, `Trainer(report_to=["tensorboard"])`, या `Trainer(report_to="none")` के साथ ओवरराइड करें ताकि बाहर निकल सकें।
215
267
 
216
268
  ## वेब UI
217
269
 
218
- Reflex वेब इंटरफ़ेस वैकल्पिक है - इसे `pipx install "backpropagate[ui]"` के साथ स्थापित करें और लॉन्च करें:
270
+ रिफ्लेक्स वेब इंटरफ़ेस वैकल्पिक है `pipx install "backpropagate[ui]"` के साथ स्थापित करें और लॉन्च करें:
219
271
 
220
272
  ```bash
221
273
  backprop ui --port 7862
222
274
  ```
223
275
 
224
- UI स्थानीय रूप से `http://localhost:7862` पर चलता है। इसे अन्य उपकरणों पर उपलब्ध कराने के लिए (आपके नेटवर्क पर अन्य लोग, एक सार्वजनिक URL, आदि), आपको `--share` (या `--host`) को `--auth` के साथ जोड़ना होगा:
276
+ UI स्थानीय रूप से `http://localhost:7862` पर चलता है। आज यह वर्कफ़्लो के **ब्राउज़ / मान्य / कॉन्फ़िगर** आधे हिस्से को कवर करता है — इसे एक डेटासेट पर इंगित करें, स्वचालित रूप से पता लगाए गए प्रारूप और आँकड़ों की जांच करें, एक मॉडल चुनें और एक रन कॉन्फ़िगरेशन को इकट्ठा करें। **रन लॉन्च CLI से किया जाता है** (`backprop train` / `backprop multi-run`); UI में स्टार्ट बटन उस पर इंगित करने वाला एक नोट प्रदर्शित करता है। UI-संचालित प्रशिक्षण एक नियोजित अनुवर्ती है — तब तक UI ऑन-रैंप है और CLI ट्रिगर है।
277
+
278
+ इसे अन्य उपकरणों (आपके नेटवर्क पर अन्य लोग, एक सार्वजनिक URL, आदि) के साथ साझा करने के लिए, आपको `--share` (या `--host`) को `--auth` के साथ जोड़ना होगा:
225
279
 
226
280
  ```bash
227
281
  backprop ui --share --auth alice:hunter2
228
282
  ```
229
283
 
230
- `backprop ui --share` बिना `--auth` के एक त्रुटि के साथ समाप्त हो जाता है। इसका कारण यह है कि `--share` एक URL प्रकाशित करता है जिसे इंटरनेट पर कोई भी व्यक्ति एक्सेस कर सकता है, और बिना प्रमाणीकरण के, इसका मतलब है कि कोई भी आपके प्रशिक्षण पाइपलाइन को चला सकता है और आपके HuggingFace टोकन को पढ़ सकता है। इसके लिए कोई विकल्प उपलब्ध नहीं है - यदि आप क्रेडेंशियल सेट नहीं करना चाहते हैं, तो SSH पोर्ट-फॉरवर्डिंग का उपयोग करें:
284
+ `backprop ui --share` बिना `--auth` के त्रुटि के साथ समाप्त हो जाता है। कारण: `--share` एक URL प्रकाशित करता है जिस तक इंटरनेट पर कोई भी पहुंच सकता है, और प्रमाणीकरण के बिना, इसका मतलब है कि कोई भी आपके प्रशिक्षण पाइपलाइन को चला सकता है और आपके HuggingFace टोकन को पढ़ सकता है। इसके लिए कोई विकल्प नहीं है - यदि आप क्रेडेंशियल सेट नहीं करना चाहते हैं, तो इसके बजाय SSH पोर्ट-फ़ॉरवर्डिंग का उपयोग करें:
231
285
 
232
286
  ```bash
233
287
  # On the client:
@@ -239,30 +293,30 @@ backprop ui # no --share
239
293
 
240
294
  पूर्ण खतरे के मॉडल के लिए [handbook/security.md](https://mcp-tool-shop-org.github.io/backpropagate/handbook/security/) देखें।
241
295
 
242
- UI से किए गए फ़ाइल सिस्टम लेखन को एक ही डायरेक्टरी तक सीमित कर दिया गया है:
296
+ UI से फ़ाइल सिस्टम में लिखी जाने वाली फ़ाइलें एक ही निर्देशिका में सीमित हैं:
243
297
 
244
298
  - डिफ़ॉल्ट: `~/.backpropagate/ui-outputs`
245
- - बदलने के लिए: `BACKPROPAGATE_UI__OUTPUT_DIR=/path/you/own` सेट करें
246
- - इस बदलाव को 'ब्लैकलिस्ट' से जांचा जाता है - सिस्टम या क्रेडेंशियल पाथ (`/etc`, `~/.ssh`, `~/.aws`, `C:\Windows\System32`, आदि) को अनुमति नहीं है।
299
+ - ओवरराइड: `BACKPROPAGATE_UI__OUTPUT_DIR=/path/you/own` सेट करें
300
+ - ओवरराइड को अस्वीकृति सूची के साथ मान्य किया जाता है - सिस्टम या क्रेडेंशियल पथ (`/etc`, `~/.ssh`, `~/.aws`, `C:\Windows\System32`, आदि) अस्वीकार किए जाते हैं।
247
301
 
248
- ## प्लेटफ़ॉर्म संबंधी जानकारी
302
+ ## प्लेटफ़ॉर्म नोट्स
249
303
 
250
- **आवश्यकताएं:** पायथन 3.10 या उससे ऊपर का संस्करण, CUDA जीपीयू (8 जीबी या उससे अधिक वीआरएएम), पायटॉर्च 2.0 या उससे ऊपर का संस्करण।
304
+ **आवश्यकताएं:** Python 3.10+ · CUDA GPU (8GB+ VRAM) · PyTorch 2.0+
251
305
 
252
- Python 3.10 का जीवनकाल अक्टूबर 2026 में समाप्त हो रहा है, और Backpropagate v1.4 में 3.10 को हटा देगा। नए इंस्टॉलेशन के लिए, Python 3.11 या 3.12 को प्राथमिकता दें - 3.11 सबसे अधिक परीक्षण किया गया संस्करण है।
306
+ Python 3.10 का समर्थन अक्टूबर 2026 में समाप्त हो जाएगा और इसे v1.5 में हटाने की योजना है। नए इंस्टॉलेशन के लिए, Python 3.11 या 3.12 को प्राथमिकता दें - 3.11 सबसे अधिक परीक्षण किया गया संस्करण है।
253
307
 
254
- Backpropagate विभिन्न प्लेटफ़ॉर्म पर प्रशिक्षण के दौरान आने वाली समस्याओं को संभालता है, लेकिन यह इंस्टॉलेशन के समय होने वाली समस्याओं को ठीक नहीं कर सकता। दो सबसे आम समस्याएं हैं:
308
+ Backpropagate विभिन्न प्लेटफ़ॉर्म पर प्रशिक्षण के दौरान आने वाली रनटाइम संबंधी विशिष्टताओं को संभालता है, लेकिन यह इंस्टॉलेशन के समय आने वाली समस्याओं को ठीक नहीं कर सकता है। दो सबसे आम समस्याएं हैं:
255
309
 
256
- - **गलत CUDA ड्राइवर।** PyTorch प्रत्येक CUDA संस्करण के लिए एक बाइनरी जारी करता है। यदि आप गलत बाइनरी चुनते हैं, तो आपको केवल CPU-आधारित PyTorch मिलेगा और प्रशिक्षण बहुत धीमा होगा। अपने ड्राइवर के लिए <https://pytorch.org/get-started/locally/> पर दिए गए ड्राइवर चयनकर्ता का उपयोग करें। अपने ड्राइवर/CUDA संस्करण को देखने के लिए `nvidia-smi` कमांड चलाएं।
257
- - **Windows + GGUF एक्सपोर्ट।** `[export]` एक्सट्रा `llama-cpp-python` को स्रोत कोड से बनाता है, जिसके लिए Visual Studio Build Tools (C++ घटक) और CMake की आवश्यकता होती है।
310
+ - **गलत CUDA व्हील।** PyTorch प्रत्येक CUDA संस्करण के लिए एक बाइनरी के रूप में प्रकाशित किया जाता है। यदि आप गलत संस्करण चुनते हैं, तो आपको चुपचाप केवल CPU-आधारित PyTorch मिलेगा और प्रशिक्षण असंभव रूप से धीमा होगा। अपने ड्राइवर के लिए <https://pytorch.org/get-started/locally/> पर व्हील पिकर का उपयोग करें। अपना ड्राइवर / CUDA संस्करण देखने के लिए `nvidia-smi` चलाएं।
311
+ - **Windows + GGUF निर्यात।** `[export]` एक्स्ट्रा स्रोत से `llama-cpp-python` बनाता है, जिसके लिए विज़ुअल स्टूडियो बिल्ड टूल्स (C++ घटक) और CMake की आवश्यकता होती है।
258
312
 
259
- **macOS:** GPU प्रशिक्षण समर्थित नहीं है (CUDA उपलब्ध नहीं है) आप प्रशिक्षित एडेप्टर को Ollama के माध्यम से Mac पर चला सकते हैं, लेकिन `trainer.train()` में `DEP_GPU_NOT_AVAILABLE` त्रुटि उत्पन्न होगी। प्रशिक्षण के लिए CUDA Linux या Windows मशीन का उपयोग करें।
313
+ **macOS:** CUDA समर्थित नहीं है (कोई CUDA नहीं) - CUDA-आधारित `trainer.train()` `DEP_GPU_NOT_AVAILABLE` त्रुटि उत्पन्न करेगा, और आप प्रशिक्षित एडाप्टर को Ollama के माध्यम से Mac पर चला सकते हैं। **v1.5 में नया:** एक प्रायोगिक MLX रेल (`--backend mlx`, `pip install 'backpropagate[mlx]'`) `mlx_lm.lora` के माध्यम से Apple Silicon पर मूल रूप से एक LoRA एडाप्टर को प्रशिक्षित करता है - केवल LoRA SFT, और निर्मित + यूनिट-परीक्षण किया गया है लेकिन अभी तक वास्तविक सिलिकॉन पर सत्यापित नहीं किया गया है (देखें [Apple Silicon (MLX)](#apple-silicon-mlx--experimental-v15))। CUDA पथ के लिए, या ORPO / पूर्ण फाइन-ट्यून / FP8 / मल्टी-रन के लिए, एक CUDA Linux या Windows मशीन का उपयोग करें।
260
314
 
261
- स्थापना संबंधी समस्याओं को ठीक करने के लिए विस्तृत गाइड के लिए [समस्या निवारण मार्गदर्शिका पृष्ठ](https://mcp-tool-shop-org.github.io/backpropagate/handbook/troubleshooting/) देखें, और ड्राइवर/VRAM/xformers/bf16-vs-fp16 संबंधी समस्याओं के लिए समर्पित [CUDA समस्या निवारण पृष्ठ](https://mcp-tool-shop-org.github.io/backpropagate/handbook/troubleshooting-cuda/) देखें।
315
+ [समस्या निवारण हैंडबुक पृष्ठ](https://mcp-tool-shop-org.github.io/backpropagate/handbook/troubleshooting/) पर लंबे प्रारूप में इंस्टॉलेशन फिक्स-इट गाइड देखें, और समर्पित [CUDA समस्या निवारण पृष्ठ](https://mcp-tool-shop-org.github.io/backpropagate/handbook/troubleshooting-cuda/) पर ड्राइवर / VRAM / xformers / bf16-vs-fp16 मुद्दों के बारे में जानकारी देखें।
262
316
 
263
317
  ## CLI
264
318
 
265
- प्रत्येक Python API के लिए एक CLI (कमांड लाइन इंटरफेस) विकल्प उपलब्ध है:
319
+ प्रत्येक Python API का एक CLI मिरर है:
266
320
 
267
321
  ```bash
268
322
  backprop train --data my_data.jsonl --model Qwen/Qwen2.5-7B-Instruct --steps 100
@@ -279,80 +333,80 @@ backprop replay <run-id> # re-run with same config / dataset
279
333
  backprop export-runs --format jsonl # bulk export run history
280
334
  ```
281
335
 
282
- पूरा संदर्भ [CLI मार्गदर्शिका पृष्ठ](https://mcp-tool-shop-org.github.io/backpropagate/handbook/cli-reference/) पर उपलब्ध है, या `backprop <उप-कमांड> --help` कमांड का उपयोग करें।
336
+ पूर्ण संदर्भ [CLI हैंडबुक पृष्ठ](https://mcp-tool-shop-org.github.io/backpropagate/handbook/cli-reference/) पर या `backprop <subcommand> --help`।
283
337
 
284
338
  ## कॉन्फ़िगरेशन
285
339
 
286
- प्रत्येक सेटिंग को `BACKPROPAGATE_` उपसर्ग का उपयोग करके एक पर्यावरण चर के माध्यम से बदला जा सकता है:
340
+ प्रत्येक सेटिंग को `BACKPROPAGATE_` उपसर्ग का उपयोग करके एक पर्यावरण चर के साथ ओवरराइड किया जा सकता है:
287
341
 
288
342
  | चर | डिफ़ॉल्ट | टिप्पणियाँ |
289
343
  |---|---|---|
290
344
  | `BACKPROPAGATE_LOG_LEVEL` | `INFO` | `DEBUG` / `INFO` / `WARNING` / `ERROR` |
291
- | `BACKPROPAGATE_LOG_JSON` | ऑटो | JSON या कंसोल लॉग को बाध्यकारी करें। |
345
+ | `BACKPROPAGATE_LOG_JSON` | ऑटो | JSON या कंसोल लॉग को बाध्य करें |
292
346
  | `BACKPROPAGATE_MODEL__NAME` | `Qwen/Qwen2.5-7B-Instruct` | डिफ़ॉल्ट मॉडल |
293
- | `BACKPROPAGATE_TRAINING__LEARNING_RATE` | `2e-4` | लर्निंग रेट |
294
- | `BACKPROPAGATE_LORA__R` | `256` | LoRA रैंक (v1.3 डिफ़ॉल्ट; v1.2.x के डिफ़ॉल्ट 16 के लिए `--lora-preset=fast` का उपयोग करें) |
295
- | `BACKPROPAGATE_UI__OUTPUT_DIR` | `~/.backpropagate/ui-outputs` | UI फ़ाइल सिस्टम सैंडबॉक्स। |
347
+ | `BACKPROPAGATE_TRAINING__LEARNING_RATE` | `2e-4` | सीखने की दर |
348
+ | `BACKPROPAGATE_LORA__R` | `256` | LoRA रैंक (v1.3 डिफ़ॉल्ट; v1.2.x के 16 के डिफ़ॉल्ट के लिए `--lora-preset=fast` पास करें) |
349
+ | `BACKPROPAGATE_UI__OUTPUT_DIR` | `~/.backpropagate/ui-outputs` | UI फ़ाइल सिस्टम सैंडबॉक्स |
296
350
 
297
- नेस्टेड कुंजियों के लिए डबल अंडरस्कोर (`_`) का उपयोग करें (`MODEL__NAME`, `MODEL_NAME` नहीं)। पूरा संदर्भ [पर्यावरण चर मार्गदर्शिका पृष्ठ](https://mcp-tool-shop-org.github.io/backpropagate/handbook/env-vars/) पर उपलब्ध है।
351
+ नेस्टेड कुंजियों में डबल अंडरस्कोर (`MODEL__NAME`, `MODEL_NAME` नहीं) का उपयोग किया जाता है। पूर्ण संदर्भ [पर्यावरण-चर हैंडबुक पृष्ठ](https://mcp-tool-shop-org.github.io/backpropagate/handbook/env-vars/) पर है।
298
352
 
299
353
  ## मॉडल प्रीसेट
300
354
 
301
355
  | प्रीसेट | VRAM | लाइसेंस | टिप्पणियाँ |
302
356
  |---|---|---|---|
303
- | Qwen-3.5-4B | ~8GB | Apache 2.0 | 5B से कम आकार के लिए अनुशंसित डिफ़ॉल्ट। इस आकार पर सर्वोत्तम गुणवत्ता। |
304
- | Phi-4-mini-3.8B | ~8GB | MIT | तर्क/गणित/कोड में मजबूत। सख्त लाइसेंस-अनुकूल। |
305
- | SmolLM3-3B | ~6GB | Apache 2.0 | पूरी तरह से खुला स्रोत। 64K का मूल संदर्भ। |
306
- | Qwen 2.5 7B | ~12GB | Apache 2.0 | मौजूदा डिफ़ॉल्ट। पुराने 7B प्रीसेट में सर्वोत्तम गुणवत्ता। |
307
- | Qwen 2.5 3B | ~8GB | Qwen-Research | ⚠ अनुसंधान लाइसेंस - वाणिज्यिक उपयोग से पहले Qwen के लाइसेंस नियमों को देखें। |
308
- | Llama 3.2 3B | ~8GB | Llama Community | Qwen 3B का एक अच्छा विकल्प, कुछ शर्तों के साथ। |
309
- | Llama 3.2 1B | ~6GB | Llama Community | छोटे कार्ड पर त्वरित प्रयोग के लिए। |
357
+ | Qwen-3.5-4B | ~8GB | Apache 2.0 | 5B से कम के लिए अनुशंसित डिफ़ॉल्ट। इस आकार पर सर्वोत्तम गुणवत्ता। |
358
+ | Phi-4-mini-3.8B | ~8GB | MIT | तर्क / गणित / कोड पर मजबूत। सख्त लाइसेंस-स्वच्छ। |
359
+ | SmolLM3-3B | ~6GB | Apache 2.0 | पूरी तरह से खुला नुस्खा। मूल 64K संदर्भ। |
360
+ | Qwen 2.5 7B | ~12GB | Apache 2.0 | मौजूदा डिफ़ॉल्ट। पुराने 7B प्रीसेट की सर्वोत्तम गुणवत्ता। |
361
+ | Qwen 2.5 3B | ~8GB | Qwen-Research | ⚠ अनुसंधान लाइसेंस - वाणिज्यिक उपयोग से पहले Qwen लाइसेंस शर्तों को देखें। |
362
+ | Llama 3.2 3B | ~8GB | Llama Community | अनुमति देने वाली शर्तों के साथ Qwen 3B का एक ठोस विकल्प। |
363
+ | Llama 3.2 1B | ~6GB | Llama Community | छोटे कार्ड पर त्वरित प्रयोगों के लिए। |
310
364
  | Mistral 7B | ~12GB | Apache 2.0 | Qwen 7B के समान, अलग चैट टेम्पलेट। |
311
365
 
312
- अन्य मॉडल भी काम कर सकते हैं, लेकिन केवल ये आठ मॉडल CI (निरंतर एकीकरण) में उपयोग किए जाते हैं। रैंक-256 / सभी-लीनियर लक्ष्यों के लिए Biderman 2024 + Thinking Machines 2025 के अनुसार `--lora-preset=quality` (डिफ़ॉल्ट) या यदि आपको v1.2.x का आकार चाहिए तो रैंक-16 / q+v लक्ष्य के लिए `--lora-preset=fast` का उपयोग करें।
366
+ अन्य मॉडल अक्सर काम करते हैं, लेकिन केवल ये आठ CI में पिन किए गए हैं। Biderman 2024 + Thinking Machines 2025 के अनुसार रैंक-256 / सभी-रैखिक लक्ष्यों के लिए `--lora-preset=quality` (डिफ़ॉल्ट) पास करें, या यदि आपको v1.2.x फ़ुटप्रिंट की आवश्यकता है तो पुराने रैंक-16 / q+v लक्ष्य के लिए `--lora-preset=fast` पास करें।
313
367
 
314
368
  ## समस्या निवारण
315
369
 
316
- सबसे आम शुरुआती विफलताओं का संक्षिप्त विवरण। पूरा रिवर्स इंडेक्स [समस्या निवारण मार्गदर्शिका पृष्ठ](https://mcp-tool-shop-org.github.io/backpropagate/handbook/troubleshooting/) पर उपलब्ध है। ड्राइवर/VRAM/मिश्रित परिशुद्धता के बारे में अधिक जानकारी के लिए, [CUDA समस्या निवारण पृष्ठ](https://mcp-tool-shop-org.github.io/backpropagate/handbook/troubleshooting-cuda/) देखें।
370
+ सबसे आम पहली-रन विफलताओं का एक संक्षिप्त सूचकांक। पूर्ण रिवर्स इंडेक्स [समस्या निवारण हैंडबुक पृष्ठ](https://mcp-tool-shop-org.github.io/backpropagate/handbook/troubleshooting/) पर है। ड्राइवर / VRAM / मिश्रित-सटीक गहन-विश्लेषण के लिए [CUDA समस्या निवारण पृष्ठ](https://mcp-tool-shop-org.github.io/backpropagate/handbook/troubleshooting-cuda/) देखें।
317
371
 
318
372
  | लक्षण | त्रुटि कोड | समाधान |
319
373
  |---|---|---|
320
- | प्रशिक्षण के दौरान GPU की मेमोरी समाप्त हो जाती है। | `RUNTIME_GPU_OOM` | स्वचालित — बैकप्रोपगेट बैच के आकार को आधा कर देता है और 3 बार तक पुनः प्रयास करता है। इसे निष्क्रिय करने के लिए: `Trainer(oom_recovery=False)`. बैच के आकार को कम करने के लिए: `--batch-size 1`. |
321
- | हगिंगफेस 401 / "मॉडल नहीं मिला" त्रुटि देता है। | `DEP_MODEL_LOAD_FAILED` | `huggingface-cli login` चलाएं और फिर से प्रयास करें। टाइपिंग की गलतियों के लिए, <https://huggingface.co/models> से सटीक आईडी कॉपी करें। |
322
- | `register_with_ollama` कनेक्शन अस्वीकृत। | `DEP_OLLAMA_REGISTRATION_FAILED` | डेमॉन शुरू करें: `ollama serve`। <https://ollama.com> से इंस्टॉल करें। पुनः प्रयास करने योग्य। |
323
- | चेकपॉइंट सहेजते समय डिस्क भर गई। | `STATE_CHECKPOINT_INVALID` | क्रैश होने पर एटॉमिक राइट्स `.partial` नामक एक डायरेक्टरी बनाते हैं - इसे हटाना सुरक्षित है। पिछला अच्छा चेकपॉइंट बरकरार है। |
324
- | जीपीयू के अत्यधिक गर्म होने के कारण प्रशिक्षण रुका हुआ है। | `RUNTIME_GPU_TEMPERATURE_CRITICAL` | स्वचालित — बैकप्रोपगेट तापमान सीमा पर रुक जाता है और जीपीयू के ठंडा होने पर फिर से शुरू हो जाता है। यदि यह बार-बार होता रहता है, तो वायु प्रवाह में सुधार करें। |
325
- | `backprop ui --share` अस्वीकृत। | `INPUT_AUTH_REQUIRED` | `--auth user:password` का उपयोग करें, या इसके बजाय एसएसएच पोर्ट-फॉरवर्डिंग का उपयोग करें (देखें [वेब यूआई](#web-ui))। |
326
- | GGUF एक्सपोर्ट पहली बार में विफल रहा। | `RUNTIME_GGUF_EXPORT_FAILED` | `pip install backpropagate[export]`। विंडोज पर, आपको Visual C++ Build Tools + CMake की भी आवश्यकता है। |
374
+ | प्रशिक्षण के दौरान GPU की मेमोरी समाप्त हो जाती है | `RUNTIME_GPU_OOM` | स्वचालित — बैकप्रोपैगेट बैच आकार को आधा कर देता है और 3 बार तक पुनः प्रयास करता है। इसे बंद करने के लिए: `Trainer(oom_recovery=False)`। आकार को कम करने के लिए: `--batch-size 1`। |
375
+ | हगिंगफेस 401 / "मॉडल नहीं मिला" लौटाता है। | `DEP_MODEL_LOAD_FAILED` | `huggingface-cli login` और पुनः प्रयास करें। टाइपो के लिए, <https://huggingface.co/models> से सटीक आईडी कॉपी करें। |
376
+ | `register_with_ollama` कनेक्शन अस्वीकृत। | `DEP_OLLAMA_REGISTRATION_FAILED` | डेमॉन शुरू करें: `ollama serve`। <https://ollama.com> से स्थापित करें। पुनः प्रयास किया जा सकता है। |
377
+ | चेकपॉइंट सहेजते समय डिस्क भर गई। | `STATE_CHECKPOINT_INVALID` | एटॉमिक लेखन क्रैश होने पर `.partial` नामक एक निर्देशिका छोड़ देता है इसे सुरक्षित रूप से हटाया जा सकता है। पिछला अच्छा चेकपॉइंट बरकरार है। |
378
+ | जीपीयू ज़्यादा गरम होने पर प्रशिक्षण रोक दिया गया। | `RUNTIME_GPU_TEMPERATURE_CRITICAL` | स्वचालित — बैकप्रोपैगेट तापमान सीमा पर रुक जाता है और जैसे ही जीपीयू ठंडा होता है, फिर से शुरू हो जाता है। यदि यह लगातार होता रहता है, तो वायु प्रवाह में सुधार करें। |
379
+ | `backprop ui --share` अस्वीकृत। | `RUNTIME_UI_AUTH_NOT_ENFORCED` | `--auth user:password` पास करें, या इसके बजाय SSH पोर्ट-फ़ॉरवर्डिंग का उपयोग करें (देखें [वेब यूआई](#web-ui))। |
380
+ | पहला प्रयास करने पर जीजीयूएफ निर्यात विफल। | `RUNTIME_GGUF_EXPORT_FAILED` | `pip install backpropagate[export]`; विंडोज पर आपको विज़ुअल सी++ बिल्ड टूल्स + सीएमएके की भी आवश्यकता होगी। |
327
381
 
328
- ## बग की रिपोर्ट करना
382
+ ## बग की रिपोर्ट करना।
329
383
 
330
- जब कुछ विफल होता है, तो बैकप्रोपगेट स्टार्टअप पर एक पंक्ति प्रिंट करता है जैसे `run_started run_id=<uuid>` और हर लॉग पंक्ति, हर चेकपॉइंट और हर वेट्स एंड बायसेस प्रविष्टि के साथ समान आईडी को जोड़ता है। **किसी भी बग रिपोर्ट में `run_id` शामिल करें** — यह एक रखरखावकर्ता को उस विशिष्ट रन के लिए सब कुछ सहसंबंधित करने की अनुमति देता है।
384
+ जब कुछ विफल हो जाता है, तो बैकप्रोपैगेट स्टार्टअप पर एक पंक्ति प्रिंट करता है, जैसे `run_started run_id=<uuid>` और प्रत्येक लॉग पंक्ति, प्रत्येक चेकपॉइंट और प्रत्येक वेट्स और बायसेस प्रविष्टि से समान आईडी को जोड़ता है। **किसी भी बग रिपोर्ट में `run_id` शामिल करें** — इससे एक रखरखावकर्ता उस विशिष्ट रन के लिए सब कुछ सहसंबंधित कर सकता है।
331
385
 
332
386
  एक अच्छी बग रिपोर्ट में शामिल हैं:
333
387
 
334
- 1. **`run_id`** — स्टार्टअप पर प्रिंट किया गया यूयूआईडी।
335
- 2. **त्रुटि कोड** — stderr में `[कोड_नाम]: संदेश` पंक्ति। त्रुटि कोड की सूची के लिए [त्रुटि कोड](https://mcp-tool-shop-org.github.io/backpropagate/handbook/error-codes/) देखें।
336
- 3. **संपादित कमांड लाइन।** stderr स्वचालित रूप से संपादित किया जाता है (बेरर टोकन, `sk-*`, `hf_*`, AWS कुंजियाँ, `password=` / `token=` जोड़े हटा दिए जाते हैं) — इसे सुरक्षित रूप से पेस्ट किया जा सकता है। पूर्ण, संपादित न किए गए ट्रेसबैक के लिए, `--verbose` के साथ पुनः चलाएं, लेकिन पोस्ट करने से पहले इसकी समीक्षा करें।
337
- 4. **पायथन / पायटॉर्च संस्करण, जीपीयू मॉडल, ऑपरेटिंग सिस्टम।** `backprop info` यह सब एक साथ प्रिंट करता है।
388
+ 1. **`run_id`** — स्टार्टअप पर मुद्रित UUID। एक UUID एक रखरखावकर्ता को उस विशिष्ट रन के लिए प्रत्येक लॉग पंक्ति, प्रत्येक चेकपॉइंट और प्रत्येक वेट्स और बायसेस प्रविष्टि को सहसंबंधित करने देता है।
389
+ 2. **त्रुटि कोड** — stderr में `[CODE_NAME]: message` पंक्ति। स्थिर कोड की सूची के लिए [त्रुटि कोड](https://mcp-tool-shop-org.github.io/backpropagate/handbook/error-codes/) देखें।
390
+ 3. **संपादित ट्रेसबैक।** गैर-विस्तृत मोड में stderr स्वचालित रूप से संपादित किया जाता है (बेयरर टोकन, `sk-*`, `hf_*`, AWS कुंजियाँ, `password=` / `token=` / `api_key=` जोड़े हटा दिए जाते हैं) — इसे सुरक्षित रूप से पेस्ट किया जा सकता है। पूर्ण, बिना संपादित ट्रेसबैक के लिए, `BACKPROPAGATE_DEBUG=1` (या `--verbose`) के साथ पुनः चलाएं; पोस्ट करने से पहले समीक्षा करें।
391
+ 4. **`backprop info` आउटपुट।** एक कमांड पायथन / पायटॉर्च / CUDA / GPU मॉडल / VRAM / OS / स्थापित अतिरिक्त — सब कुछ प्रिंट करता है जिसकी रखरखावकर्ता को प्लेटफ़ॉर्म-विशिष्ट प्रतिगमन को अलग करने के लिए आवश्यकता होती है।
338
392
 
339
- प्रश्न, विचार, या "क्या यह अपेक्षित है" संबंधी चर्चाएं [GitHub Discussions](https://github.com/mcp-tool-shop-org/backpropagate/discussions) में होनी चाहिए। सुरक्षा संबंधी मुद्दों की रिपोर्ट [GitHub Security Advisory](https://github.com/mcp-tool-shop-org/backpropagate/security/advisories/new) फॉर्म के माध्यम से निजी तौर पर की जानी चाहिए — नीति के लिए [SECURITY.md](SECURITY.md) देखें।
393
+ [बग रिपोर्ट टेम्पलेट](https://github.com/mcp-tool-shop-org/backpropagate/issues/new?template=bug_report.yml) इनमें से प्रत्येक के लिए स्पष्ट रूप से संकेत देता है ताकि जांच तेजी से हो सके। प्रश्न, विचार, या "क्या यह अपेक्षित है?" थ्रेड [गिटहब डिस्कशन](https://github.com/mcp-tool-shop-org/backpropagate/discussions) में होने चाहिए। सुरक्षा संबंधी मुद्दों की निजी तौर पर [गिटहब सुरक्षा सलाहकार](https://github.com/mcp-tool-shop-org/backpropagate/security/advisories/new) फॉर्म के माध्यम से रिपोर्ट की जानी चाहिए — नीति और प्रतिक्रिया समयसीमा के लिए [SECURITY.md](SECURITY.md) देखें।
340
394
 
341
395
  ## गोपनीयता
342
396
 
343
- सभी प्रशिक्षण आपके GPU पर स्थानीय रूप से होता है। Backpropagate केवल HuggingFace से मॉडल डाउनलोड करने के लिए नेटवर्क अनुरोध करता है (जो आप शुरू करते हैं)। कोई टेलीमेट्री नहीं, कोई क्लाउड निर्भरता नहीं।
397
+ सभी प्रशिक्षण आपके जीपीयू पर स्थानीय रूप से होते हैं। बैकप्रोपैगेट हगिंगफेस से मॉडल डाउनलोड करने के अलावा कोई नेटवर्क अनुरोध नहीं करता है (जिसे आप शुरू करते हैं)। कोई टेलीमेट्री नहीं, कोई क्लाउड निर्भरता नहीं।
344
398
 
345
399
  ## संदर्भ
346
400
 
347
- बैकप्रोपगेट की डिफ़ॉल्ट सेटिंग्स और मल्टी-रन प्रशिक्षण मोड हाल के शोध पर आधारित हैं। यदि आप अंतर्निहित तकनीकों में रुचि रखते हैं:
401
+ बैकप्रोपैगेट की डिफ़ॉल्ट सेटिंग्स और मल्टी-रन प्रशिक्षण मोड हाल के शोध पर आधारित हैं। यदि आप अंतर्निहित तकनीकों में रुचि रखते हैं:
348
402
 
349
- - **हु एट अल। 2021।** *लोरा: बड़े भाषा मॉडल का निम्न-रैंक अनुकूलन।* [arXiv:2106.09685](https://arxiv.org/abs/2106.09685) — लोरा पेश करने वाला मौलिक पेपर, जिसका उपयोग बैकप्रोपगेट कुशलतापूर्वक एडेप्टर को प्रशिक्षित करने के लिए करता है।
350
- - **बिडरमैन एट अल। 2024।** *लोरा सीखता है कम और भूलता है कम।* [arXiv:2405.09673](https://arxiv.org/abs/2405.09673) — अनुभवजन्य प्रमाण कि 256 की रैंक पर सभी-रैखिक लक्ष्यों के साथ लोरा, अधिकांश पोस्ट-प्रशिक्षण कार्यों पर पूर्ण फाइन-ट्यूनिंग की गुणवत्ता से मेल खाता है, जो 67% कंप्यूट है। यह बैकप्रोपगेट के v1.3 डिफ़ॉल्ट लोरा कॉन्फ़िगरेशन को चलाता है।
351
- - **थिंकिंग मशीन 2025।** *लोरा बिना पछतावे के।* [thinkingmachines.ai/blog/lora](https://thinkingmachines.ai/blog/lora/) — व्यावहारिक अनुवर्ती जो उच्च लोरा रैंक पर आवश्यक 10 गुना लर्निंग-रेट-vs-फुल-एफटी सुधार की पहचान करता है।
352
- - **किर्कपैट्रिक एट अल। 2017।** *तंत्रिका नेटवर्क में विनाशकारी भूल को दूर करना।* [arXiv:1612.00796](https://arxiv.org/abs/1612.00796) — यह मूल विशेषता है कि तंत्रिका नेटवर्क "भूल" जाते हैं जब आप नए डेटा पर फाइन-ट्यून करते हैं (ईडब्ल्यूसी — इलास्टिक वेट कंसोलिडेशन)।
353
- - **वांग एट अल। 2023।** *भाषा मॉडल निरंतर सीखने के लिए ऑर्थोगोनल सबस्पेस लर्निंग।* [arXiv:2310.14152](https://arxiv.org/abs/2310.14152) — ओ-लोरा, एक प्रारंभिक दृष्टिकोण जो निरंतर सीखने के लिए लोरा का उपयोग करता है, जो नए एडेप्टर को ऑर्थोगोनल सबस्पेस तक सीमित करता है।
354
- - **यादव एट अल। 2023।** *टीईएस-मर्जिंग: मॉडलों को मर्ज करते समय हस्तक्षेप को हल करना।* [arXiv:2306.01708](https://arxiv.org/abs/2306.01708) — कई फाइन-ट्यून किए गए मॉडलों को हस्तक्षेप के बिना मर्ज करने के लिए एक मौलिक तकनीक।
355
- - **कियाओ और महदावी 2025।** *मर्ज बिफोर फॉरगेट: एक सिंगल लोरा निरंतर लर्निंग वाया कंटीन्यूअल मर्जिंग।* [arXiv:2512.23017](https://arxiv.org/abs/2512.23017) — विशिष्ट एल्गोरिथ्म जिसे बैकप्रोपगेट का मल्टी-रन मर्जर लागू करता है। दिसंबर 2025 का एक प्रीप्रिंट; बैकप्रोपगेट इस पेपर का पहला ज्ञात डाउनस्ट्रीम एडॉप्टर है।
403
+ - **हु एट अल. 2021।** *लोरा: बड़े भाषा मॉडल का कम-रैंक अनुकूलन।* [arXiv:2106.09685](https://arxiv.org/abs/2106.09685) — यह मूलभूत पेपर है जो लोरा का परिचय देता है, जिससे बैकप्रोपैगेट कुशलतापूर्वक एडेप्टर को प्रशिक्षित करता है।
404
+ - **बिडरमैन एट अल. 2024।** *लोरा कम सीखता है और कम भूलता है।* [arXiv:2405.09673](https://arxiv.org/abs/2405.09673) — अनुभवजन्य प्रमाण कि रैंक 256 पर सभी-रैखिक लक्ष्यों के साथ लोरा, अधिकांश पोस्ट-प्रशिक्षण कार्यों पर 67% कंप्यूट पर पूर्ण फाइन-ट्यूनिंग गुणवत्ता से मेल खाता है। बैकप्रोपैगेट के v1.3 डिफ़ॉल्ट लोरा कॉन्फ़िगरेशन को चलाता है।
405
+ - **थिंकिंग मशीन 2025।** *लोरा बिना पछतावे के।* [thinkingmachines.ai/blog/lora](https://thinkingmachines.ai/blog/lora/) — व्यावहारिक अनुवर्ती जो उच्च लोरा रैंक पर आवश्यक 10 गुना शिक्षण-दर-बनाम-पूर्ण-एफटी सुधार की पहचान करता है।
406
+ - **किर्कपैट्रिक एट अल. 2017।** *तंत्रिका नेटवर्क में विनाशकारी विस्मरण को दूर करना।* [arXiv:1612.00796](https://arxiv.org/abs/1612.00796) — तंत्रिका नेटवर्क के "भूलने" के मूल लक्षण वर्णन जब आप नए डेटा पर फाइन-ट्यून करते हैं (ईडब्ल्यूसी — इलास्टिक वेट कंसॉलिडेशन)।
407
+ - **वांग एट अल. 2023।** *भाषा मॉडल निरंतर सीखने के लिए ऑर्थोगोनल सबस्पेस लर्निंग।* [arXiv:2310.14152](https://arxiv.org/abs/2310.14152) — ओ-लोरा, निरंतर सीखने के लिए लोरा का उपयोग करने का एक प्रारंभिक दृष्टिकोण, नए एडेप्टर को ऑर्थोगोनल सबस्पेस तक सीमित करके।
408
+ - **यादव एट अल. 2023।** *टीआईएस-मर्जिंग: मॉडल को मर्ज करते समय हस्तक्षेप को हल करना।* [arXiv:2306.01708](https://arxiv.org/abs/2306.01708) — कई फाइन-ट्यून किए गए मॉडल को हस्तक्षेप के बिना मर्ज करने के लिए एक मूलभूत तकनीक।
409
+ - **कियाओ और महदावी 2025।** *भूलने से पहले मर्ज करें: निरंतर मर्जिंग के माध्यम से एक एकल लोरा निरंतर सीखना।* [arXiv:2512.23017](https://arxiv.org/abs/2512.23017) — विशिष्ट एल्गोरिदम जिसे बैकप्रोपैगेट का मल्टी-रन मर्जर लागू करता है। दिसंबर 2025 का एक प्रीप्रिंट; बैकप्रोपैगेट पेपर का पहला ज्ञात डाउनस्ट्रीम अपनाने वाला है।
356
410
 
357
411
  ## लाइसेंस
358
412