@mcptoolshop/style-dataset-lab 2.0.0 → 2.2.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/CHANGELOG.md +52 -0
- package/README.es.md +137 -108
- package/README.fr.md +137 -108
- package/README.hi.md +137 -108
- package/README.it.md +137 -108
- package/README.ja.md +137 -108
- package/README.md +87 -91
- package/README.pt-BR.md +137 -108
- package/README.zh.md +137 -108
- package/bin/sdlab.js +49 -0
- package/lib/adapters/diffusers-lora.js +110 -0
- package/lib/adapters/generic-image-caption.js +94 -0
- package/lib/card.js +145 -0
- package/lib/config.js +144 -0
- package/lib/eligibility.js +110 -0
- package/lib/eval-pack.js +283 -0
- package/lib/eval-runs.js +285 -0
- package/lib/export.js +259 -0
- package/lib/implementation-packs.js +316 -0
- package/lib/reingest.js +131 -0
- package/lib/snapshot.js +211 -0
- package/lib/split.js +409 -0
- package/lib/training-manifests.js +172 -0
- package/lib/training-packages.js +241 -0
- package/lib/training-profiles.js +97 -0
- package/package.json +12 -10
- package/scripts/canon-bind.js +1 -87
- package/scripts/card.js +73 -0
- package/scripts/doctor.js +8 -0
- package/scripts/eligibility.js +91 -0
- package/scripts/eval-pack.js +92 -0
- package/scripts/eval-run.js +121 -0
- package/scripts/export.js +85 -0
- package/scripts/implementation-pack.js +78 -0
- package/scripts/init.js +8 -0
- package/scripts/reingest.js +86 -0
- package/scripts/snapshot.js +132 -0
- package/scripts/split.js +154 -0
- package/scripts/training-manifest.js +119 -0
- package/scripts/training-package.js +84 -0
- package/scripts/training-profile.js +63 -0
package/README.hi.md
CHANGED
|
@@ -13,158 +13,187 @@
|
|
|
13
13
|
|
|
14
14
|
# style-dataset-lab
|
|
15
15
|
|
|
16
|
-
|
|
16
|
+
अनुमोदित दृश्य सामग्री को संस्करणों में विभाजित करें, समीक्षा के आधार पर डेटासेट, उप-समूह (स्प्लिट्स), निर्यात पैकेज और मूल्यांकन पैकेजों में व्यवस्थित करें।
|
|
17
17
|
|
|
18
18
|
## यह क्या है
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
एक **दृश्य सामग्री और डेटासेट निर्माण प्रक्रिया**. अपनी परियोजना कैसी दिखेगी, यह परिभाषित करें। संविधान के नियमों के अनुसार सामग्री का चयन करें। ऐसे डेटासेट पैकेज तैयार करें जो दोहराए जा सकें और जिनमें डेटा सुरक्षा बनी रहे। भविष्य में मॉडल की जांच के लिए मूल्यांकन पैकेज बनाएं।
|
|
21
21
|
|
|
22
|
-
यह
|
|
22
|
+
यह पाइपलाइन चार प्रकार के आउटपुट (परिणाम) उत्पन्न करता है:
|
|
23
23
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
24
|
+
| पुरातत्विक वस्तु। | यह क्या है। |
|
|
25
|
+
|----------|-----------|
|
|
26
|
+
| **Snapshot** | चयनित अभिलेखों की एक "फ्रीज" की गई सूची, जिसमें केवल योग्य अभिलेख शामिल हैं। प्रत्येक अभिलेख को शामिल करने का एक स्पष्ट और विशिष्ट कारण दर्ज किया गया है। |
|
|
27
|
+
| **Split** | रिसाव-रोधी ट्रेन/वैल्यू/टेस्ट विभाजन। रिकॉर्ड हमेशा एक ही समूह में आते हैं, जो एक विषय परिवार से संबंधित होते हैं। |
|
|
28
|
+
| **Export package** | स्वतंत्र डेटासेट: इसमें मैनिफेस्ट (manifest), मेटाडेटा (metadata), चित्र, डेटासेट के विभिन्न भाग, डेटासेट कार्ड और चेकसम (checksums) शामिल हैं। |
|
|
29
|
+
| **Eval pack** | कैनन (Canon) के मानकों के अनुरूप सत्यापन कार्य: लेन कवरेज, निषिद्ध विचलन, एंकर/गोल्ड, विषय की निरंतरता। |
|
|
27
30
|
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
**केवल स्थानीय।** style-dataset-lab, `localhost:8188` पर ComfyUI से संवाद करता है और कभी भी बाहरी नेटवर्क अनुरोध नहीं करता है। कोई टेलीमेट्री नहीं, कोई विश्लेषण नहीं, कोई डेटा संग्रह नहीं। इमेज जेनरेशन पूरी तरह से आपके GPU पर होता है। रिकॉर्ड और अन्य डेटा आपके फ़ाइल सिस्टम पर ही रहते हैं।
|
|
31
|
-
|
|
32
|
-
## npm पैकेज में क्या शामिल है
|
|
33
|
-
|
|
34
|
-
`npm install @mcptoolshop/style-dataset-lab` आपको निम्नलिखित चीजें देता है:
|
|
31
|
+
पाइपलाइन में मौजूद प्रत्येक संपत्ति में तीन चीजें शामिल होती हैं:
|
|
35
32
|
|
|
36
|
-
|
|
37
|
-
|
|
33
|
+
1. **उत्पत्ति का विवरण** -- पूरी पीढ़ी का इतिहास (चेकपॉइंट, लोरा, सीड, सैंपलर, सीएफजी, समय)।
|
|
34
|
+
2. **मानकों का अनुपालन** -- यह निर्धारित करता है कि यह संपत्ति किस मानक को पूरा करती है, विफल होती है, या आंशिक रूप से पूरा करती है।
|
|
35
|
+
3. **गुणवत्ता मूल्यांकन** -- स्वीकृत/अस्वीकृत/सीमांत श्रेणी में, प्रत्येक पहलू के लिए अलग-अलग स्कोर के साथ।
|
|
38
36
|
|
|
39
|
-
|
|
37
|
+
यह काम गेम आर्ट, कैरेक्टर डिजाइन, जीव (क्रिएचर) डिजाइन, आर्किटेक्चर, वाहन/मैक अवधारणाओं, और किसी भी ऐसे क्षेत्र में किया जाता है जहाँ विज़ुअल उत्पादन को सटीक और अनुरूप बनाए रखने की आवश्यकता होती है।
|
|
40
38
|
|
|
41
|
-
##
|
|
39
|
+
## शुरुआत कैसे करें।
|
|
42
40
|
|
|
43
41
|
```bash
|
|
44
|
-
#
|
|
45
|
-
npm install @mcptoolshop/style-dataset-lab
|
|
42
|
+
# Install the CLI + pipeline
|
|
43
|
+
npm install -g @mcptoolshop/style-dataset-lab
|
|
46
44
|
|
|
47
|
-
#
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
45
|
+
# Scaffold a new project
|
|
46
|
+
sdlab init my-project --domain character-design
|
|
47
|
+
|
|
48
|
+
# Validate the project structure
|
|
49
|
+
sdlab project doctor --project my-project
|
|
51
50
|
```
|
|
52
51
|
|
|
53
|
-
|
|
52
|
+
उपलब्ध डोमेन: `गेम-आर्ट`, `कैरेक्टर-डिजाइन`, `क्रिएचर-डिजाइन`, `आर्किटेक्चर`, `वाहन-मैकेनिक्स`, या `सामान्य।
|
|
53
|
+
|
|
54
|
+
## सीएलआई (CLI) - कमांड लाइन इंटरफेस
|
|
54
55
|
|
|
55
56
|
```bash
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
57
|
+
sdlab init <name> [--domain <domain>] # Scaffold a new project
|
|
58
|
+
sdlab project doctor [--project <name>] # Validate project config
|
|
59
|
+
|
|
60
|
+
sdlab generate <pack> [--project <name>] # Generate candidates via ComfyUI
|
|
61
|
+
sdlab generate:identity <packet> # Named-subject identity images
|
|
62
|
+
sdlab generate:controlnet # ControlNet-guided generation
|
|
63
|
+
sdlab generate:ipadapter # IP-Adapter reference-guided
|
|
64
|
+
|
|
65
|
+
sdlab curate <id> <status> <explanation> # Record review judgment
|
|
66
|
+
sdlab compare <a> <b> <winner> <reason> # Pairwise A-vs-B comparison
|
|
67
|
+
sdlab bind [--project <name>] # Bind records to constitution rules
|
|
68
|
+
sdlab painterly [--project <name>] # Post-processing style pass
|
|
69
|
+
|
|
70
|
+
sdlab snapshot create [--profile <name>] # Create frozen dataset snapshot
|
|
71
|
+
sdlab snapshot list # List all snapshots
|
|
72
|
+
sdlab snapshot diff <a> <b> # Compare two snapshots
|
|
73
|
+
sdlab eligibility audit # Audit record training eligibility
|
|
74
|
+
sdlab split build [--snapshot <id>] # Build train/val/test split
|
|
75
|
+
sdlab split audit <id> # Audit split for leakage + balance
|
|
76
|
+
sdlab card generate # Generate dataset card (md + JSON)
|
|
77
|
+
sdlab export build [--snapshot <id>] # Build versioned export package
|
|
78
|
+
sdlab eval-pack build # Build canon-aware eval pack
|
|
61
79
|
```
|
|
62
80
|
|
|
63
|
-
|
|
81
|
+
सभी कमांड्स `--project <नाम>` विकल्प को स्वीकार करते हैं (डिफ़ॉल्ट: `star-freight`)।
|
|
82
|
+
|
|
83
|
+
## परियोजना मॉडल।
|
|
64
84
|
|
|
65
|
-
|
|
85
|
+
प्रत्येक परियोजना `projects/` नामक एक स्वतंत्र फ़ोल्डर में स्थित होती है, और इसमें अपना विशिष्ट नियम (canon), कॉन्फ़िगरेशन (config) और डेटा होता है।
|
|
66
86
|
|
|
67
87
|
```
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
88
|
+
projects/
|
|
89
|
+
my-project/
|
|
90
|
+
project.json Project identity + generation defaults
|
|
91
|
+
constitution.json Rules array with rationale templates
|
|
92
|
+
lanes.json Subject lanes with detection patterns
|
|
93
|
+
rubric.json Scoring dimensions + thresholds
|
|
94
|
+
terminology.json Group vocabulary + detection order
|
|
95
|
+
canon/ Style constitution (markdown)
|
|
96
|
+
records/ Per-asset JSON (provenance + judgment + canon)
|
|
97
|
+
inputs/prompts/ Prompt packs (JSON)
|
|
98
|
+
outputs/ Generated images (gitignored)
|
|
99
|
+
comparisons/ A-vs-B preference judgments
|
|
100
|
+
snapshots/ Frozen dataset snapshots
|
|
101
|
+
splits/ Train/val/test partitions
|
|
102
|
+
exports/ Versioned export packages
|
|
103
|
+
eval-packs/ Canon-aware eval instruments
|
|
82
104
|
```
|
|
83
105
|
|
|
84
|
-
##
|
|
106
|
+
## पाइपलाइन।
|
|
85
107
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
108
|
+
```
|
|
109
|
+
canon → generate → curate → bind → snapshot → split → export → eval
|
|
110
|
+
| | | | | | | |
|
|
111
|
+
rules ComfyUI judgment rules frozen subject package verify
|
|
112
|
+
selection isolation
|
|
113
|
+
```
|
|
91
114
|
|
|
92
|
-
|
|
93
|
-
|
|
115
|
+
1. **परिभाषित करें:** अपनी शैली का संविधान (स्टाइल कॉन्स्टिट्यूशन) लिखें और मूल्यांकन मानदंड (रिव्यू रूब्रिक) तैयार करें।
|
|
116
|
+
2. **उत्पन्न करें:** कॉमफीयूआई (ComfyUI) पूर्ण जानकारी के साथ संभावित विकल्प (कैंडिडेट्स) उत्पन्न करता है।
|
|
117
|
+
3. **चयन करें:** प्रत्येक आयाम के लिए स्कोर और विफलता के तरीकों के साथ, विकल्पों को स्वीकृत या अस्वीकृत करें।
|
|
118
|
+
4. **जोड़ें:** प्रत्येक संसाधन को संविधान के नियमों से जोड़ें और पास/फेल/आंशिक परिणाम दर्ज करें।
|
|
119
|
+
5. **स्नैपशॉट लें:** योग्य रिकॉर्ड को एक निश्चित, विशिष्ट पहचान (फिंगरप्रिंट) वाले संग्रह में स्थिर करें।
|
|
120
|
+
6. **विभाजित करें:** डेटा को प्रशिक्षण (ट्रेन), मूल्यांकन (वैल) और परीक्षण (टेस्ट) सेट में विभाजित करें, जिसमें विषय का अलगाव और डेटा संतुलन शामिल हो।
|
|
121
|
+
7. **निर्यात करें:** एक आत्मनिर्भर पैकेज बनाएं जिसमें घोषणापत्र (मैनिफेस्ट), मेटाडेटा, चित्र और चेकसम शामिल हों।
|
|
122
|
+
8. **मूल्यांकन करें:** मॉडल की पुष्टि के लिए, "कैनन" (परिभाषित मानकों) के अनुरूप परीक्षण उपकरण उत्पन्न करें।
|
|
94
123
|
|
|
95
|
-
|
|
96
|
-
npm run generate -- --game star-freight inputs/prompts/wave1.json
|
|
97
|
-
npm run generate -- --game star-freight inputs/prompts/wave1.json --dry-run
|
|
124
|
+
"डाउनस्ट्रीम फॉर्मेट में रूपांतरण (जैसे TRL, LLaVA, Parquet, आदि) [`repo-dataset`](https://github.com/mcp-tool-shop-org/repo-dataset) द्वारा किया जाता है। `sdlab` डेटासेट की वास्तविक जानकारी रखता है, जबकि `repo-dataset` इसे विशिष्ट फॉर्मेट में परिवर्तित करता है।"
|
|
98
125
|
|
|
99
|
-
|
|
100
|
-
npm run generate:identity -- --game star-freight inputs/identity-packets/wave27a.json
|
|
126
|
+
## डोमेन टेम्प्लेट।
|
|
101
127
|
|
|
102
|
-
|
|
103
|
-
npm run curate -- --game star-freight <asset_id> approved "explanation"
|
|
104
|
-
npm run curate -- --game star-freight <asset_id> rejected "explanation" --failures "too_clean"
|
|
128
|
+
प्रत्येक डोमेन टेम्पलेट में लेन (कार्य) की परिभाषाएं, नियमों का संग्रह, मूल्यांकन मापदंड और शब्दावली शामिल होती है, जो उस विशेष उत्पादन प्रक्रिया के लिए डिज़ाइन की गई हैं।
|
|
105
129
|
|
|
106
|
-
|
|
107
|
-
|
|
130
|
+
| डोमेन। | सड़कें। | मुख्य चिंताएं। |
|
|
131
|
+
|--------|-------|-------------|
|
|
132
|
+
| **game-art** | चरित्र, वातावरण, वस्तु, यूआई (उपयोगकर्ता इंटरफ़ेस), जहाज, आंतरिक भाग, उपकरण। | गेमप्ले के पैमाने पर सिल्हूट का विवरण, गुटों के बीच अंतर, और समय के साथ होने वाली टूट-फूट या बदलाव। |
|
|
133
|
+
| **character-design** | पोर्ट्रेट (चित्र), पूरे शरीर का चित्रण, विभिन्न कोणों से चित्रण, भावों का चित्रण, गतिशील मुद्रा में चित्रण। | अनुपात की सटीकता, वेशभूषा की तर्कसंगतता, व्यक्तित्व का चित्रण, हाव-भाव की स्पष्टता। |
|
|
134
|
+
| **creature-design** | अवधारणा, वर्तनी संबंधी, विस्तृत अध्ययन, क्रिया, माप का संदर्भ, आवास। | शारीरिक संरचना की संभाव्यता, विकासवादी तर्क, और आकृति की विशिष्टता। |
|
|
135
|
+
| **architecture** | बाहरी भाग, आंतरिक भाग, सड़क का दृश्य, संरचनात्मक विवरण, खंडहर, परिदृश्य। | संरचनात्मक संभाव्यता, सामग्री की सुसंगति, दृष्टिकोण, युग की अनुरूपता। |
|
|
136
|
+
| **vehicle-mech** | बाहरी भाग, कॉकपिट, घटक, आरेख, सिल्हूट शीट, क्षति का प्रकार। | यांत्रिक तर्क, कार्यात्मक डिज़ाइन भाषा, पहुंच बिंदु, क्षति विवरण। |
|
|
108
137
|
|
|
109
|
-
|
|
110
|
-
npm run canon-bind -- --game star-freight
|
|
138
|
+
## डेटासेट का निर्माण।
|
|
111
139
|
|
|
112
|
-
|
|
113
|
-
npm run compare -- --game star-freight <asset_a> <asset_b> a "A has better faction read"
|
|
140
|
+
पूरे डेटासेट की संरचना: स्नैपशॉट, विभाजन, निर्यात, मूल्यांकन।
|
|
114
141
|
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
142
|
+
```
|
|
143
|
+
snapshot --> split --> export --> eval-pack
|
|
144
|
+
| | | |
|
|
145
|
+
frozen subject package canon-aware
|
|
146
|
+
selection isolation (manifest, test instruments
|
|
147
|
+
+ lane metadata, (4 task types)
|
|
148
|
+
balance images,
|
|
149
|
+
checksums,
|
|
150
|
+
card)
|
|
118
151
|
```
|
|
119
152
|
|
|
120
|
-
|
|
153
|
+
**स्नैपशॉट** योग्य रिकॉर्डों के एक निश्चित चयन को स्थिर करते हैं। प्रत्येक शामिल रिकॉर्ड के लिए एक कारण दर्ज किया गया है। कॉन्फ़िगरेशन फ़िंगरप्रिंट पुनरुत्पादकता सुनिश्चित करते हैं।
|
|
154
|
+
|
|
155
|
+
**विभाजन** रिकॉर्डों को प्रशिक्षण/मान्यकरण/परीक्षण भागों में आवंटित करते हैं, जिसमें विषय अलगाव (कोई भी विषय परिवार एक से अधिक विभाजनों में नहीं दिखाई देता) और लेन-संतुलित वितरण शामिल है। सीडेड PRNG समान सीड से समान परिणाम सुनिश्चित करता है।
|
|
156
|
+
|
|
157
|
+
**निर्यात पैकेज** आत्मनिर्भर होते हैं: मैनिफेस्ट, metadata.jsonl, छवियां (सिंबोलिंक या कॉपी की गई), विभाजन, डेटासेट कार्ड (मार्कडाउन + JSON), और BSD-स्वरूप चेकसम। डेटासेट को खरोंच से फिर से बनाने के लिए आवश्यक सब कुछ।
|
|
158
|
+
|
|
159
|
+
**मूल्यांकन पैकेज** मानक-जागरूक परीक्षण उपकरण हैं जिनमें चार कार्य प्रकार शामिल हैं: लेन कवरेज, निषिद्ध विचलन, एंकर/गोल्ड, और विषय निरंतरता। वे यह साबित करते हैं कि डेटासेट संरचना भविष्य के मॉडल मूल्यांकन को बढ़ावा दे रही है, केवल फ़ाइलें जमा नहीं कर रही है।
|
|
160
|
+
|
|
161
|
+
`repo-dataset` (https://github.com/mcp-tool-shop-org/repo-dataset) के माध्यम से अन्य प्रारूपों में निर्यात करें (TRL, LLaVA, Qwen2-VL, JSONL, Parquet, और अन्य)। `repo-dataset` प्रारूप रूपांतरण को संभालता है; `sdlab` डेटासेट की सत्यता का स्वामी है।
|
|
162
|
+
|
|
163
|
+
## स्टार फ्रेट उदाहरण।
|
|
164
|
+
|
|
165
|
+
एक पूर्ण, कार्यशील उदाहरण के लिए रिपॉजिटरी को क्लोन करें: 1,182 रिकॉर्ड, 28 प्रॉम्प्ट वेव, 5 गुट, 7 लेन, 24 संविधान नियम, और एक कठोर विज्ञान-फाई आरपीजी से 892 स्वीकृत संपत्तियां।
|
|
121
166
|
|
|
122
167
|
```bash
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
168
|
+
git clone https://github.com/mcp-tool-shop-org/style-dataset-lab
|
|
169
|
+
cd style-dataset-lab
|
|
170
|
+
|
|
171
|
+
# Validate the project
|
|
172
|
+
sdlab project doctor --project star-freight
|
|
127
173
|
|
|
128
|
-
#
|
|
129
|
-
|
|
174
|
+
# Run the full dataset spine
|
|
175
|
+
sdlab snapshot create --project star-freight # 839 eligible records
|
|
176
|
+
sdlab split build --project star-freight # ~80/10/10, zero leakage
|
|
177
|
+
sdlab export build --project star-freight # package with checksums
|
|
178
|
+
sdlab eval-pack build --project star-freight # 78 eval records
|
|
130
179
|
```
|
|
131
180
|
|
|
132
|
-
##
|
|
181
|
+
## v1.x से माइग्रेट करना।
|
|
133
182
|
|
|
134
|
-
|
|
183
|
+
v2.0 में `games/` को `projects/` और `--game` को `--project` में बदल दिया गया है:
|
|
135
184
|
|
|
136
|
-
```
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
prompts/ Prompt packs per wave (JSON: subjects, variations, defaults)
|
|
140
|
-
references/ IP-Adapter reference images
|
|
141
|
-
control-guides/ ControlNet guide overlays
|
|
142
|
-
identity-packets/ Named character identity spines
|
|
143
|
-
outputs/
|
|
144
|
-
candidates/ Raw generations (gitignored)
|
|
145
|
-
approved/ Curated approved (gitignored)
|
|
146
|
-
rejected/ Curated rejected (gitignored)
|
|
147
|
-
borderline/ Curated borderline (gitignored)
|
|
148
|
-
painterly/ Painterly-style variants (gitignored)
|
|
149
|
-
records/ Per-asset JSON (provenance + judgment + canon binding)
|
|
150
|
-
comparisons/ A-vs-B preference judgments
|
|
151
|
-
exports/ repo-dataset output (gitignored)
|
|
152
|
-
```
|
|
185
|
+
```bash
|
|
186
|
+
# Rename your data directory
|
|
187
|
+
mv games projects
|
|
153
188
|
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
checkpoint: dreamshaperXL_v21TurboDPMSDE.safetensors
|
|
158
|
-
lora: classipeintxl_v21.safetensors (weight: 1.0)
|
|
159
|
-
resolution: 1024x1024
|
|
160
|
-
steps: 8
|
|
161
|
-
cfg: 2.0
|
|
162
|
-
sampler: dpmpp_sde
|
|
163
|
-
scheduler: karras
|
|
164
|
-
speed: ~9s per image (RTX 5080)
|
|
189
|
+
# --game still works with a deprecation warning (removed in v3.0)
|
|
190
|
+
sdlab bind --game star-freight # works, prints warning
|
|
191
|
+
sdlab bind --project star-freight # canonical form
|
|
165
192
|
```
|
|
166
193
|
|
|
167
|
-
|
|
194
|
+
## सुरक्षा मॉडल
|
|
195
|
+
|
|
196
|
+
**केवल स्थानीय।** `localhost:8188` पर ComfyUI से संवाद करता है। कोई टेलीमेट्री नहीं, कोई विश्लेषण नहीं, कोई बाहरी अनुरोध नहीं। छवियां आपके GPU और फ़ाइल सिस्टम पर ही रहती हैं।
|
|
168
197
|
|
|
169
198
|
## आवश्यकताएं
|
|
170
199
|
|