Mindigenous commited on
Commit
0f8853a
·
1 Parent(s): 5ae3e12

Sync latest dataset/config updates and logs

Browse files
AMD Cloud Accelerate config.txt ADDED
@@ -0,0 +1,333 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ root@jupyter-launcher-260401134729-3102:/workspace# python3 -m venv mindi_env
2
+ root@jupyter-launcher-260401134729-3102:/workspace# source mindi_env/bin/activate
3
+ ((mindi_env) ) root@jupyter-launcher-260401134729-3102:/workspace# pip install --upgrade pip
4
+ Requirement already satisfied: pip in ./mindi_env/lib/python3.12/site-packages (25.0.1)
5
+ Collecting pip
6
+ Using cached pip-26.0.1-py3-none-any.whl.metadata (4.7 kB)
7
+ Using cached pip-26.0.1-py3-none-any.whl (1.8 MB)
8
+ Installing collected packages: pip
9
+ Attempting uninstall: pip
10
+ Found existing installation: pip 25.0.1
11
+ Uninstalling pip-25.0.1:
12
+ Successfully uninstalled pip-25.0.1
13
+ Successfully installed pip-26.0.1
14
+ ((mindi_env) ) root@jupyter-launcher-260401134729-3102:/workspace# pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/rocm6.0
15
+ Looking in indexes: https://download.pytorch.org/whl/rocm6.0
16
+ Collecting torch
17
+ Downloading https://download.pytorch.org/whl/rocm6.0/torch-2.4.1%2Brocm6.0-cp312-cp312-linux_x86_64.whl (2363.3 MB)
18
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.4/2.4 GB 86.5 MB/s 0:00:06
19
+ Collecting torchvision
20
+ Downloading https://download-r2.pytorch.org/whl/rocm6.0/torchvision-0.19.1%2Brocm6.0-cp312-cp312-linux_x86_64.whl (65.8 MB)
21
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 65.8/65.8 MB 248.3 MB/s 0:00:00
22
+ Collecting torchaudio
23
+ Downloading https://download-r2.pytorch.org/whl/rocm6.0/torchaudio-2.4.1%2Brocm6.0-cp312-cp312-linux_x86_64.whl (1.7 MB)
24
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.7/1.7 MB 187.5 MB/s 0:00:00
25
+ Collecting filelock (from torch)
26
+ Downloading filelock-3.25.2-py3-none-any.whl.metadata (2.0 kB)
27
+ Collecting typing-extensions>=4.8.0 (from torch)
28
+ Downloading https://download.pytorch.org/whl/typing_extensions-4.15.0-py3-none-any.whl.metadata (3.3 kB)
29
+ Collecting sympy (from torch)
30
+ Using cached sympy-1.14.0-py3-none-any.whl.metadata (12 kB)
31
+ Collecting networkx (from torch)
32
+ Using cached networkx-3.6.1-py3-none-any.whl.metadata (6.8 kB)
33
+ Collecting jinja2 (from torch)
34
+ Downloading https://download.pytorch.org/whl/jinja2-3.1.6-py3-none-any.whl.metadata (2.9 kB)
35
+ Collecting fsspec (from torch)
36
+ Downloading fsspec-2026.2.0-py3-none-any.whl.metadata (10 kB)
37
+ Collecting setuptools (from torch)
38
+ Downloading https://download.pytorch.org/whl/setuptools-70.2.0-py3-none-any.whl.metadata (5.8 kB)
39
+ Collecting pytorch-triton-rocm==3.0.0 (from torch)
40
+ Downloading https://download-r2.pytorch.org/whl/pytorch_triton_rocm-3.0.0-cp312-cp312-linux_x86_64.whl (341.7 MB)
41
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 341.7/341.7 MB 180.8 MB/s 0:00:01
42
+ Collecting numpy (from torchvision)
43
+ Downloading numpy-2.4.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.metadata (6.6 kB)
44
+ Collecting pillow!=8.3.*,>=5.3.0 (from torchvision)
45
+ Downloading pillow-12.1.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.metadata (8.8 kB)
46
+ Collecting MarkupSafe>=2.0 (from jinja2->torch)
47
+ Downloading https://download.pytorch.org/whl/markupsafe-3.0.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (2.7 kB)
48
+ Collecting mpmath<1.4,>=1.1.0 (from sympy->torch)
49
+ Using cached mpmath-1.3.0-py3-none-any.whl.metadata (8.6 kB)
50
+ Downloading pillow-12.1.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (7.0 MB)
51
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 7.0/7.0 MB 55.7 MB/s 0:00:00
52
+ Downloading https://download.pytorch.org/whl/typing_extensions-4.15.0-py3-none-any.whl (44 kB)
53
+ Downloading filelock-3.25.2-py3-none-any.whl (26 kB)
54
+ Downloading fsspec-2026.2.0-py3-none-any.whl (202 kB)
55
+ Downloading https://download.pytorch.org/whl/jinja2-3.1.6-py3-none-any.whl (134 kB)
56
+ Downloading https://download.pytorch.org/whl/markupsafe-3.0.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (22 kB)
57
+ Using cached networkx-3.6.1-py3-none-any.whl (2.1 MB)
58
+ Downloading numpy-2.4.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (16.6 MB)
59
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 16.6/16.6 MB 114.6 MB/s 0:00:00
60
+ Downloading https://download.pytorch.org/whl/setuptools-70.2.0-py3-none-any.whl (930 kB)
61
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 930.8/930.8 kB 129.2 MB/s 0:00:00
62
+ Using cached sympy-1.14.0-py3-none-any.whl (6.3 MB)
63
+ Using cached mpmath-1.3.0-py3-none-any.whl (536 kB)
64
+ Installing collected packages: mpmath, typing-extensions, sympy, setuptools, pillow, numpy, networkx, MarkupSafe, fsspec, filelock, pytorch-triton-rocm, jinja2, torch, torchvision, torchaudio
65
+ Successfully installed MarkupSafe-3.0.3 filelock-3.25.2 fsspec-2026.2.0 jinja2-3.1.6 mpmath-1.3.0 networkx-3.6.1 numpy-2.4.3 pillow-12.1.1 pytorch-triton-rocm-3.0.0 setuptools-70.2.0 sympy-1.14.0 torch-2.4.1+rocm6.0 torchaudio-2.4.1+rocm6.0 torchvision-0.19.1+rocm6.0 typing-extensions-4.15.0
66
+ ((mindi_env) ) root@jupyter-launcher-260401134729-3102:/workspace# python -c "import torch; print(torch.cuda.is_available())"
67
+ True
68
+ ((mindi_env) ) root@jupyter-launcher-260401134729-3102:/workspace# pip install transformers datasets accelerate peft bitsandbytes sentencepiece tqdm
69
+ Collecting transformers
70
+ Downloading transformers-5.4.0-py3-none-any.whl.metadata (32 kB)
71
+ Collecting datasets
72
+ Downloading datasets-4.8.4-py3-none-any.whl.metadata (19 kB)
73
+ Collecting accelerate
74
+ Downloading accelerate-1.13.0-py3-none-any.whl.metadata (19 kB)
75
+ Collecting peft
76
+ Downloading peft-0.18.1-py3-none-any.whl.metadata (14 kB)
77
+ Collecting bitsandbytes
78
+ Downloading bitsandbytes-0.49.2-py3-none-manylinux_2_24_x86_64.whl.metadata (10 kB)
79
+ Collecting sentencepiece
80
+ Downloading sentencepiece-0.2.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.metadata (10 kB)
81
+ Collecting tqdm
82
+ Downloading tqdm-4.67.3-py3-none-any.whl.metadata (57 kB)
83
+ Collecting huggingface-hub<2.0,>=1.5.0 (from transformers)
84
+ Downloading huggingface_hub-1.8.0-py3-none-any.whl.metadata (13 kB)
85
+ Requirement already satisfied: numpy>=1.17 in ./mindi_env/lib/python3.12/site-packages (from transformers) (2.4.3)
86
+ Collecting packaging>=20.0 (from transformers)
87
+ Downloading packaging-26.0-py3-none-any.whl.metadata (3.3 kB)
88
+ Collecting pyyaml>=5.1 (from transformers)
89
+ Downloading pyyaml-6.0.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (2.4 kB)
90
+ Collecting regex>=2025.10.22 (from transformers)
91
+ Downloading regex-2026.3.32-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (40 kB)
92
+ Collecting tokenizers<=0.23.0,>=0.22.0 (from transformers)
93
+ Downloading tokenizers-0.22.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (7.3 kB)
94
+ Collecting typer (from transformers)
95
+ Downloading typer-0.24.1-py3-none-any.whl.metadata (16 kB)
96
+ Collecting safetensors>=0.4.3 (from transformers)
97
+ Downloading safetensors-0.7.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (4.1 kB)
98
+ Requirement already satisfied: filelock>=3.10.0 in ./mindi_env/lib/python3.12/site-packages (from huggingface-hub<2.0,>=1.5.0->transformers) (3.25.2)
99
+ Requirement already satisfied: fsspec>=2023.5.0 in ./mindi_env/lib/python3.12/site-packages (from huggingface-hub<2.0,>=1.5.0->transformers) (2026.2.0)
100
+ Collecting hf-xet<2.0.0,>=1.4.2 (from huggingface-hub<2.0,>=1.5.0->transformers)
101
+ Downloading hf_xet-1.4.3-cp37-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.metadata (4.9 kB)
102
+ Collecting httpx<1,>=0.23.0 (from huggingface-hub<2.0,>=1.5.0->transformers)
103
+ Downloading httpx-0.28.1-py3-none-any.whl.metadata (7.1 kB)
104
+ Requirement already satisfied: typing-extensions>=4.1.0 in ./mindi_env/lib/python3.12/site-packages (from huggingface-hub<2.0,>=1.5.0->transformers) (4.15.0)
105
+ Collecting anyio (from httpx<1,>=0.23.0->huggingface-hub<2.0,>=1.5.0->transformers)
106
+ Downloading anyio-4.13.0-py3-none-any.whl.metadata (4.5 kB)
107
+ Collecting certifi (from httpx<1,>=0.23.0->huggingface-hub<2.0,>=1.5.0->transformers)
108
+ Downloading certifi-2026.2.25-py3-none-any.whl.metadata (2.5 kB)
109
+ Collecting httpcore==1.* (from httpx<1,>=0.23.0->huggingface-hub<2.0,>=1.5.0->transformers)
110
+ Downloading httpcore-1.0.9-py3-none-any.whl.metadata (21 kB)
111
+ Collecting idna (from httpx<1,>=0.23.0->huggingface-hub<2.0,>=1.5.0->transformers)
112
+ Downloading idna-3.11-py3-none-any.whl.metadata (8.4 kB)
113
+ Collecting h11>=0.16 (from httpcore==1.*->httpx<1,>=0.23.0->huggingface-hub<2.0,>=1.5.0->transformers)
114
+ Downloading h11-0.16.0-py3-none-any.whl.metadata (8.3 kB)
115
+ Collecting pyarrow>=21.0.0 (from datasets)
116
+ Downloading pyarrow-23.0.1-cp312-cp312-manylinux_2_28_x86_64.whl.metadata (3.1 kB)
117
+ Collecting dill<0.4.2,>=0.3.0 (from datasets)
118
+ Downloading dill-0.4.1-py3-none-any.whl.metadata (10 kB)
119
+ Collecting pandas (from datasets)
120
+ Downloading pandas-3.0.2-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl.metadata (79 kB)
121
+ Collecting requests>=2.32.2 (from datasets)
122
+ Downloading requests-2.33.1-py3-none-any.whl.metadata (4.8 kB)
123
+ Collecting xxhash (from datasets)
124
+ Downloading xxhash-3.6.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (13 kB)
125
+ Collecting multiprocess<0.70.20 (from datasets)
126
+ Downloading multiprocess-0.70.19-py312-none-any.whl.metadata (7.5 kB)
127
+ Collecting aiohttp!=4.0.0a0,!=4.0.0a1 (from fsspec[http]<=2026.2.0,>=2023.1.0->datasets)
128
+ Downloading aiohttp-3.13.5-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (8.1 kB)
129
+ Collecting psutil (from accelerate)
130
+ Downloading psutil-7.2.2-cp36-abi3-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl.metadata (22 kB)
131
+ Requirement already satisfied: torch>=2.0.0 in ./mindi_env/lib/python3.12/site-packages (from accelerate) (2.4.1+rocm6.0)
132
+ Requirement already satisfied: sympy in ./mindi_env/lib/python3.12/site-packages (from torch>=2.0.0->accelerate) (1.14.0)
133
+ Requirement already satisfied: networkx in ./mindi_env/lib/python3.12/site-packages (from torch>=2.0.0->accelerate) (3.6.1)
134
+ Requirement already satisfied: jinja2 in ./mindi_env/lib/python3.12/site-packages (from torch>=2.0.0->accelerate) (3.1.6)
135
+ Requirement already satisfied: setuptools in ./mindi_env/lib/python3.12/site-packages (from torch>=2.0.0->accelerate) (70.2.0)
136
+ Requirement already satisfied: pytorch-triton-rocm==3.0.0 in ./mindi_env/lib/python3.12/site-packages (from torch>=2.0.0->accelerate) (3.0.0)
137
+ Collecting aiohappyeyeballs>=2.5.0 (from aiohttp!=4.0.0a0,!=4.0.0a1->fsspec[http]<=2026.2.0,>=2023.1.0->datasets)
138
+ Downloading aiohappyeyeballs-2.6.1-py3-none-any.whl.metadata (5.9 kB)
139
+ Collecting aiosignal>=1.4.0 (from aiohttp!=4.0.0a0,!=4.0.0a1->fsspec[http]<=2026.2.0,>=2023.1.0->datasets)
140
+ Downloading aiosignal-1.4.0-py3-none-any.whl.metadata (3.7 kB)
141
+ Collecting attrs>=17.3.0 (from aiohttp!=4.0.0a0,!=4.0.0a1->fsspec[http]<=2026.2.0,>=2023.1.0->datasets)
142
+ Downloading attrs-26.1.0-py3-none-any.whl.metadata (8.8 kB)
143
+ Collecting frozenlist>=1.1.1 (from aiohttp!=4.0.0a0,!=4.0.0a1->fsspec[http]<=2026.2.0,>=2023.1.0->datasets)
144
+ Downloading frozenlist-1.8.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl.metadata (20 kB)
145
+ Collecting multidict<7.0,>=4.5 (from aiohttp!=4.0.0a0,!=4.0.0a1->fsspec[http]<=2026.2.0,>=2023.1.0->datasets)
146
+ Downloading multidict-6.7.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (5.3 kB)
147
+ Collecting propcache>=0.2.0 (from aiohttp!=4.0.0a0,!=4.0.0a1->fsspec[http]<=2026.2.0,>=2023.1.0->datasets)
148
+ Downloading propcache-0.4.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (13 kB)
149
+ Collecting yarl<2.0,>=1.17.0 (from aiohttp!=4.0.0a0,!=4.0.0a1->fsspec[http]<=2026.2.0,>=2023.1.0->datasets)
150
+ Downloading yarl-1.23.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (79 kB)
151
+ Collecting charset_normalizer<4,>=2 (from requests>=2.32.2->datasets)
152
+ Downloading charset_normalizer-3.4.6-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl.metadata (40 kB)
153
+ Collecting urllib3<3,>=1.26 (from requests>=2.32.2->datasets)
154
+ Downloading urllib3-2.6.3-py3-none-any.whl.metadata (6.9 kB)
155
+ Requirement already satisfied: MarkupSafe>=2.0 in ./mindi_env/lib/python3.12/site-packages (from jinja2->torch>=2.0.0->accelerate) (3.0.3)
156
+ Collecting python-dateutil>=2.8.2 (from pandas->datasets)
157
+ Using cached python_dateutil-2.9.0.post0-py2.py3-none-any.whl.metadata (8.4 kB)
158
+ Collecting six>=1.5 (from python-dateutil>=2.8.2->pandas->datasets)
159
+ Downloading six-1.17.0-py2.py3-none-any.whl.metadata (1.7 kB)
160
+ Requirement already satisfied: mpmath<1.4,>=1.1.0 in ./mindi_env/lib/python3.12/site-packages (from sympy->torch>=2.0.0->accelerate) (1.3.0)
161
+ Collecting click>=8.2.1 (from typer->transformers)
162
+ Downloading click-8.3.1-py3-none-any.whl.metadata (2.6 kB)
163
+ Collecting shellingham>=1.3.0 (from typer->transformers)
164
+ Downloading shellingham-1.5.4-py2.py3-none-any.whl.metadata (3.5 kB)
165
+ Collecting rich>=12.3.0 (from typer->transformers)
166
+ Downloading rich-14.3.3-py3-none-any.whl.metadata (18 kB)
167
+ Collecting annotated-doc>=0.0.2 (from typer->transformers)
168
+ Downloading annotated_doc-0.0.4-py3-none-any.whl.metadata (6.6 kB)
169
+ Collecting markdown-it-py>=2.2.0 (from rich>=12.3.0->typer->transformers)
170
+ Downloading markdown_it_py-4.0.0-py3-none-any.whl.metadata (7.3 kB)
171
+ Collecting pygments<3.0.0,>=2.13.0 (from rich>=12.3.0->typer->transformers)
172
+ Downloading pygments-2.20.0-py3-none-any.whl.metadata (2.5 kB)
173
+ Collecting mdurl~=0.1 (from markdown-it-py>=2.2.0->rich>=12.3.0->typer->transformers)
174
+ Downloading mdurl-0.1.2-py3-none-any.whl.metadata (1.6 kB)
175
+ Downloading transformers-5.4.0-py3-none-any.whl (10.1 MB)
176
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 10.1/10.1 MB 55.5 MB/s 0:00:00
177
+ Downloading huggingface_hub-1.8.0-py3-none-any.whl (625 kB)
178
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 625.2/625.2 kB 56.0 MB/s 0:00:00
179
+ Downloading hf_xet-1.4.3-cp37-abi3-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (4.2 MB)
180
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.2/4.2 MB 130.1 MB/s 0:00:00
181
+ Downloading httpx-0.28.1-py3-none-any.whl (73 kB)
182
+ Downloading httpcore-1.0.9-py3-none-any.whl (78 kB)
183
+ Downloading tokenizers-0.22.2-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.3 MB)
184
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 3.3/3.3 MB 116.5 MB/s 0:00:00
185
+ Downloading datasets-4.8.4-py3-none-any.whl (526 kB)
186
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 527.0/527.0 kB 62.6 MB/s 0:00:00
187
+ Downloading dill-0.4.1-py3-none-any.whl (120 kB)
188
+ Downloading multiprocess-0.70.19-py312-none-any.whl (150 kB)
189
+ Downloading accelerate-1.13.0-py3-none-any.whl (383 kB)
190
+ Downloading peft-0.18.1-py3-none-any.whl (556 kB)
191
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 557.0/557.0 kB 30.8 MB/s 0:00:00
192
+ Downloading bitsandbytes-0.49.2-py3-none-manylinux_2_24_x86_64.whl (60.7 MB)
193
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 60.7/60.7 MB 103.2 MB/s 0:00:00
194
+ Downloading sentencepiece-0.2.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (1.4 MB)
195
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.4/1.4 MB 127.4 MB/s 0:00:00
196
+ Downloading tqdm-4.67.3-py3-none-any.whl (78 kB)
197
+ Downloading aiohttp-3.13.5-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (1.8 MB)
198
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.8/1.8 MB 208.3 MB/s 0:00:00
199
+ Downloading multidict-6.7.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (256 kB)
200
+ Downloading yarl-1.23.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (100 kB)
201
+ Downloading aiohappyeyeballs-2.6.1-py3-none-any.whl (15 kB)
202
+ Downloading aiosignal-1.4.0-py3-none-any.whl (7.5 kB)
203
+ Downloading attrs-26.1.0-py3-none-any.whl (67 kB)
204
+ Downloading frozenlist-1.8.0-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl (242 kB)
205
+ Downloading h11-0.16.0-py3-none-any.whl (37 kB)
206
+ Downloading idna-3.11-py3-none-any.whl (71 kB)
207
+ Downloading packaging-26.0-py3-none-any.whl (74 kB)
208
+ Downloading propcache-0.4.1-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (221 kB)
209
+ Downloading pyarrow-23.0.1-cp312-cp312-manylinux_2_28_x86_64.whl (47.6 MB)
210
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 47.6/47.6 MB 96.3 MB/s 0:00:00
211
+ Downloading pyyaml-6.0.3-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (807 kB)
212
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 807.9/807.9 kB 102.6 MB/s 0:00:00
213
+ Downloading regex-2026.3.32-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (801 kB)
214
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 801.5/801.5 kB 105.5 MB/s 0:00:00
215
+ Downloading requests-2.33.1-py3-none-any.whl (64 kB)
216
+ Downloading charset_normalizer-3.4.6-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (207 kB)
217
+ Downloading urllib3-2.6.3-py3-none-any.whl (131 kB)
218
+ Downloading certifi-2026.2.25-py3-none-any.whl (153 kB)
219
+ Downloading safetensors-0.7.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (507 kB)
220
+ Downloading anyio-4.13.0-py3-none-any.whl (114 kB)
221
+ Downloading pandas-3.0.2-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl (10.9 MB)
222
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 10.9/10.9 MB 122.5 MB/s 0:00:00
223
+ Using cached python_dateutil-2.9.0.post0-py2.py3-none-any.whl (229 kB)
224
+ Downloading six-1.17.0-py2.py3-none-any.whl (11 kB)
225
+ Downloading psutil-7.2.2-cp36-abi3-manylinux2010_x86_64.manylinux_2_12_x86_64.manylinux_2_28_x86_64.whl (155 kB)
226
+ Downloading typer-0.24.1-py3-none-any.whl (56 kB)
227
+ Downloading annotated_doc-0.0.4-py3-none-any.whl (5.3 kB)
228
+ Downloading click-8.3.1-py3-none-any.whl (108 kB)
229
+ Downloading rich-14.3.3-py3-none-any.whl (310 kB)
230
+ Downloading pygments-2.20.0-py3-none-any.whl (1.2 MB)
231
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.2/1.2 MB 165.6 MB/s 0:00:00
232
+ Downloading markdown_it_py-4.0.0-py3-none-any.whl (87 kB)
233
+ Downloading mdurl-0.1.2-py3-none-any.whl (10.0 kB)
234
+ Downloading shellingham-1.5.4-py2.py3-none-any.whl (9.8 kB)
235
+ Downloading xxhash-3.6.0-cp312-cp312-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl (193 kB)
236
+ Installing collected packages: xxhash, urllib3, tqdm, six, shellingham, sentencepiece, safetensors, regex, pyyaml, pygments, pyarrow, psutil, propcache, packaging, multidict, mdurl, idna, hf-xet, h11, frozenlist, dill, click, charset_normalizer, certifi, attrs, annotated-doc, aiohappyeyeballs, yarl, requests, python-dateutil, multiprocess, markdown-it-py, httpcore, anyio, aiosignal, rich, pandas, httpx, bitsandbytes, aiohttp, typer, huggingface-hub, tokenizers, datasets, accelerate, transformers, peft
237
+ Successfully installed accelerate-1.13.0 aiohappyeyeballs-2.6.1 aiohttp-3.13.5 aiosignal-1.4.0 annotated-doc-0.0.4 anyio-4.13.0 attrs-26.1.0 bitsandbytes-0.49.2 certifi-2026.2.25 charset_normalizer-3.4.6 click-8.3.1 datasets-4.8.4 dill-0.4.1 frozenlist-1.8.0 h11-0.16.0 hf-xet-1.4.3 httpcore-1.0.9 httpx-0.28.1 huggingface-hub-1.8.0 idna-3.11 markdown-it-py-4.0.0 mdurl-0.1.2 multidict-6.7.1 multiprocess-0.70.19 packaging-26.0 pandas-3.0.2 peft-0.18.1 propcache-0.4.1 psutil-7.2.2 pyarrow-23.0.1 pygments-2.20.0 python-dateutil-2.9.0.post0 pyyaml-6.0.3 regex-2026.3.32 requests-2.33.1 rich-14.3.3 safetensors-0.7.0 sentencepiece-0.2.1 shellingham-1.5.4 six-1.17.0 tokenizers-0.22.2 tqdm-4.67.3 transformers-5.4.0 typer-0.24.1 urllib3-2.6.3 xxhash-3.6.0 yarl-1.23.0
238
+ ((mindi_env) ) root@jupyter-launcher-260401134729-3102:/workspace# apt update && apt install -y git-lfs
239
+ Get:1 https://repo.radeon.com/amdgpu/7.0/ubuntu jammy InRelease [3183 B]
240
+ Get:2 https://repo.radeon.com/rocm/apt/7.0 jammy InRelease [2603 B]
241
+ Get:3 https://repo.radeon.com/amdgpu/7.0/ubuntu jammy/main amd64 Packages [1329 B]
242
+ Get:4 https://repo.radeon.com/rocm/apt/7.0 jammy/main amd64 Packages [82.7 kB]
243
+ Get:5 http://security.ubuntu.com/ubuntu jammy-security InRelease [129 kB]
244
+ Get:6 http://archive.ubuntu.com/ubuntu jammy InRelease [270 kB]
245
+ Get:7 https://ppa.launchpadcontent.net/deadsnakes/ppa/ubuntu jammy InRelease [18.1 kB]
246
+ Get:8 http://security.ubuntu.com/ubuntu jammy-security/multiverse amd64 Packages [62.6 kB]
247
+ Get:9 http://archive.ubuntu.com/ubuntu jammy-updates InRelease [128 kB]
248
+ Get:10 https://ppa.launchpadcontent.net/deadsnakes/ppa/ubuntu jammy/main amd64 Packages [38.9 kB]
249
+ Get:11 http://security.ubuntu.com/ubuntu jammy-security/universe amd64 Packages [1309 kB]
250
+ Get:12 http://archive.ubuntu.com/ubuntu jammy-backports InRelease [127 kB]
251
+ Get:13 http://archive.ubuntu.com/ubuntu jammy/main amd64 Packages [1792 kB]
252
+ Get:14 http://security.ubuntu.com/ubuntu jammy-security/restricted amd64 Packages [6803 kB]
253
+ Get:15 http://archive.ubuntu.com/ubuntu jammy/restricted amd64 Packages [164 kB]
254
+ Get:16 http://archive.ubuntu.com/ubuntu jammy/universe amd64 Packages [17.5 MB]
255
+ Get:17 http://security.ubuntu.com/ubuntu jammy-security/main amd64 Packages [3842 kB]
256
+ Get:18 http://archive.ubuntu.com/ubuntu jammy/multiverse amd64 Packages [266 kB]
257
+ Get:19 http://archive.ubuntu.com/ubuntu jammy-updates/main amd64 Packages [4217 kB]
258
+ Get:20 http://archive.ubuntu.com/ubuntu jammy-updates/restricted amd64 Packages [7125 kB]
259
+ Get:21 http://archive.ubuntu.com/ubuntu jammy-updates/multiverse amd64 Packages [70.9 kB]
260
+ Get:22 http://archive.ubuntu.com/ubuntu jammy-updates/universe amd64 Packages [1621 kB]
261
+ Get:23 http://archive.ubuntu.com/ubuntu jammy-backports/universe amd64 Packages [35.6 kB]
262
+ Get:24 http://archive.ubuntu.com/ubuntu jammy-backports/main amd64 Packages [84.0 kB]
263
+ Fetched 45.7 MB in 3s (16.7 MB/s)
264
+ Reading package lists... Done
265
+ Building dependency tree... Done
266
+ Reading state information... Done
267
+ 107 packages can be upgraded. Run 'apt list --upgradable' to see them.
268
+ W: https://repo.radeon.com/amdgpu/7.0/ubuntu/dists/jammy/InRelease: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details.
269
+ W: https://repo.radeon.com/rocm/apt/7.0/dists/jammy/InRelease: Key is stored in legacy trusted.gpg keyring (/etc/apt/trusted.gpg), see the DEPRECATION section in apt-key(8) for details.
270
+ Reading package lists... Done
271
+ Building dependency tree... Done
272
+ Reading state information... Done
273
+ The following NEW packages will be installed:
274
+ git-lfs
275
+ 0 upgraded, 1 newly installed, 0 to remove and 107 not upgraded.
276
+ Need to get 3544 kB of archives.
277
+ After this operation, 10.5 MB of additional disk space will be used.
278
+ Get:1 http://archive.ubuntu.com/ubuntu jammy-updates/universe amd64 git-lfs amd64 3.0.2-1ubuntu0.3 [3544 kB]
279
+ Fetched 3544 kB in 1s (2611 kB/s)
280
+ debconf: delaying package configuration, since apt-utils is not installed
281
+ Selecting previously unselected package git-lfs.
282
+ (Reading database ... 58520 files and directories currently installed.)
283
+ Preparing to unpack .../git-lfs_3.0.2-1ubuntu0.3_amd64.deb ...
284
+ Unpacking git-lfs (3.0.2-1ubuntu0.3) ...
285
+ Setting up git-lfs (3.0.2-1ubuntu0.3) ...
286
+ ((mindi_env) ) root@jupyter-launcher-260401134729-3102:/workspace# git clone https://huggingface.co/Mindigenous/mindi-backup
287
+ Cloning into 'mindi-backup'...
288
+ remote: Enumerating objects: 286, done.
289
+ remote: Counting objects: 100% (283/283), done.
290
+ remote: Compressing objects: 100% (266/266), done.
291
+ remote: Total 286 (delta 15), reused 217 (delta 6), pack-reused 3 (from 1)
292
+ Receiving objects: 100% (286/286), 151.83 KiB | 9.49 MiB/s, done.
293
+ Resolving deltas: 100% (15/15), done.
294
+ Filtering content: 100% (85/85), 9.38 GiB | 533.08 MiB/s, done.
295
+ ((mindi_env) ) root@jupyter-launcher-260401134729-3102:/workspace# cd mindi-backup/
296
+ ((mindi_env) ) root@jupyter-launcher-260401134729-3102:/workspace/mindi-backup# accelerate config
297
+ ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------In which compute environment are you running?
298
+ This machine
299
+ ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Which type of machine are you using?
300
+ No distributed training
301
+ Do you want to run your training on CPU only (even if a GPU / Apple Silicon / Ascend NPU device is available)? [yes/NO]:no
302
+ Do you wish to optimize your script with torch dynamo?[yes/NO]:no
303
+ Do you want to use DeepSpeed? [yes/NO]: no
304
+ What GPU(s) (by id) should be used for training on this machine as a comma-separated list? [all]:
305
+ Would you like to enable numa efficiency? (Currently only supported on NVIDIA hardware). [yes/NO]: no
306
+ ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Do you wish to use mixed precision?
307
+ bf16
308
+ accelerate configuration saved at /root/.cache/huggingface/accelerate/default_config.yaml
309
+ ((mindi_env) ) root@jupyter-launcher-260401134729-3102:/workspace/mindi-backup# python -c "import torch; print(torch.cuda.is_available(), torch.cuda.device_count())"
310
+ True 1
311
+ ((mindi_env) ) root@jupyter-launcher-260401134729-3102:/workspace/mindi-backup# accelerate launch train.py \
312
+ --data_path data/final/train.jsonl \
313
+ --output_dir checkpoints \
314
+ --batch_size 4 \
315
+ --gradient_accumulation 16 \
316
+ --learning_rate 2e-5 \
317
+ --num_train_steps 60000 \
318
+ --save_steps 2000 \
319
+ --logging_steps 50
320
+ usage: train.py [-h] [--no-resume]
321
+ train.py: error: unrecognized arguments: --data_path data/final/train.jsonl --output_dir checkpoints --batch_size 4 --gradient_accumulation 16 --learning_rate 2e-5 --num_train_steps 60000 --save_steps 2000 --logging_steps 50
322
+ Traceback (most recent call last):
323
+ File "/workspace/mindi_env/bin/accelerate", line 6, in <module>
324
+ sys.exit(main())
325
+ ^^^^^^
326
+ File "/workspace/mindi_env/lib/python3.12/site-packages/accelerate/commands/accelerate_cli.py", line 50, in main
327
+ args.func(args)
328
+ File "/workspace/mindi_env/lib/python3.12/site-packages/accelerate/commands/launch.py", line 1405, in launch_command
329
+ simple_launcher(args)
330
+ File "/workspace/mindi_env/lib/python3.12/site-packages/accelerate/commands/launch.py", line 993, in simple_launcher
331
+ raise subprocess.CalledProcessError(returncode=process.returncode, cmd=cmd)
332
+ subprocess.CalledProcessError: Command '['/workspace/mindi_env/bin/python3', 'train.py', '--data_path', 'data/final/train.jsonl', '--output_dir', 'checkpoints', '--batch_size', '4', '--gradient_accumulation', '16', '--learning_rate', '2e-5', '--num_train_steps', '60000', '--save_steps', '2000', '--logging_steps', '50']' returned non-zero exit status 2.
333
+ ((mindi_env) ) root@jupyter-launcher-260401134729-3102:/workspace/mindi-backup#
config.py CHANGED
@@ -10,7 +10,7 @@ class Paths:
10
  output_dir: Path = Path("./output")
11
  logs_dir: Path = Path("./logs")
12
 
13
- train_jsonl: Path = Path("./data/train.jsonl")
14
  dataset_cache_dir: Path = Path("./data/cache")
15
  raw_dataset_dir: Path = Path("./data/cache/raw")
16
  checkpoint_dir: Path = Path("./output/checkpoints")
@@ -30,9 +30,9 @@ class DataConfig:
30
  @dataclass(frozen=True)
31
  class TrainingConfig:
32
  num_train_epochs: int = 5
33
- per_device_train_batch_size: int = 1
34
- gradient_accumulation_steps: int = 8
35
- learning_rate: float = 1e-5
36
  max_length: int = 1024
37
  save_steps: int = 250
38
  logging_steps: int = 20
 
10
  output_dir: Path = Path("./output")
11
  logs_dir: Path = Path("./logs")
12
 
13
+ train_jsonl: Path = Path("./data/final/train.jsonl")
14
  dataset_cache_dir: Path = Path("./data/cache")
15
  raw_dataset_dir: Path = Path("./data/cache/raw")
16
  checkpoint_dir: Path = Path("./output/checkpoints")
 
30
  @dataclass(frozen=True)
31
  class TrainingConfig:
32
  num_train_epochs: int = 5
33
+ per_device_train_batch_size: int = 2
34
+ gradient_accumulation_steps: int = 16
35
+ learning_rate: float = 2e-5
36
  max_length: int = 1024
37
  save_steps: int = 250
38
  logging_steps: int = 20
data/final/_rebalance_tmp/instruction.jsonl CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:77fd726ec9b3b9135edc4b22c251c760ea444060507315d09e0156a9ad08cff2
3
- size 359523113
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:9d2ca5ea336cf6221a35c593aff2e53fdd90843ad447a53e38e007dea39987a7
3
+ size 329198633
data/final/_rebalance_tmp/problem.jsonl CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:dea7bb001629f0e7b72363ea4ffc8da89b21cab0322c80faea3bd4352d2d28cd
3
- size 392283637
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:741903a7f222a7c4d889dab9d8452af3bdaf893ec7e3e2b49e62e6d63443b1c4
3
+ size 394655786
data/final/_rebalance_tmp/rebalance_seen.sqlite CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:27065d4515ff3d381d784058a61a997517d89621147f71316b4517997a7567a0
3
- size 85028864
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:2cb112c95f94d5d233248778914011656d5fad065b9f84e3f52efbace1698104
3
+ size 82251776
data/final/_rebalance_tmp/structured.jsonl CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:83898474a15e20eba8f8fd4b4163c381d69b87374c4d82b3e289898da0b9f2fc
3
- size 283810066
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:cc526cfd678a7d97925dc643f99c383f1c593c7dd60ea706f3ed25870d9b4cf4
3
+ size 283750640
data/final/dedupe_hashes.sqlite CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:89622c37e7ff270b6745693d3dbd63a25a7937bf7e5261a01d4676568207d7ea
3
- size 84996096
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:f9963e9da830061a8206460f22ac2bf1d8655c58f6321683fe805b05d45a7b70
3
+ size 82325504
data/final/old train jsonl/train.jsonl ADDED
@@ -0,0 +1,3 @@
 
 
 
 
1
+ version https://git-lfs.github.com/spec/v1
2
+ oid sha256:0f78cdcc0171535ad8ac533beccaec3aab78ef94870055bdf7dd5c798d629aef
3
+ size 1867627125
data/final/train.jsonl CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:0f78cdcc0171535ad8ac533beccaec3aab78ef94870055bdf7dd5c798d629aef
3
- size 1867627125
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:cbd441aec7d166d52d0c961a0b83ddce734be2fe7abd422d2050fabf265348d1
3
+ size 1907053927
dataset.py CHANGED
@@ -31,8 +31,8 @@ class LocalJsonlInstructionDataset(Dataset):
31
  sample = self.samples[idx]
32
  text = format_prompt(
33
  instruction=sample["instruction"],
34
- input_text=sample["input"],
35
- output_text=sample["output"],
36
  )
37
  encoded = self.tokenizer(
38
  text,
 
31
  sample = self.samples[idx]
32
  text = format_prompt(
33
  instruction=sample["instruction"],
34
+ input_text="",
35
+ output_text=sample["response"],
36
  )
37
  encoded = self.tokenizer(
38
  text,
dataset_cleaner.py CHANGED
@@ -15,6 +15,7 @@ CODE_PATTERN = re.compile(
15
  r"(\bdef\b|\bclass\b|\bimport\b|\breturn\b|=>|function\s+\w+|public\s+class|#include|```)",
16
  re.IGNORECASE,
17
  )
 
18
  EXPLANATION_PATTERN = re.compile(
19
  r"\b(explain|because|algorithm|steps|approach|complexity|solution)\b", re.IGNORECASE
20
  )
@@ -22,6 +23,15 @@ PROBLEM_PROMPT_RE = re.compile(
22
  r"\b(solve|given|find|compute|return|input|output|problem|algorithm|task|challenge)\b",
23
  re.IGNORECASE,
24
  )
 
 
 
 
 
 
 
 
 
25
 
26
 
27
  def estimate_tokens(text: str) -> int:
@@ -40,6 +50,41 @@ def normalize_text(text: str) -> str:
40
  return "\n".join(lines).strip()
41
 
42
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
43
  def _ascii_ratio(text: str) -> float:
44
  if not text:
45
  return 1.0
@@ -74,7 +119,7 @@ def clean_record(
74
  max_tokens: int = 2048,
75
  ) -> Optional[Dict[str, str]]:
76
  instruction = normalize_text(record.get("instruction", ""))
77
- response = normalize_text(record.get("response", ""))
78
  source = normalize_text(record.get("_source", "unknown"))
79
  category = normalize_text(record.get("_category", ""))
80
  if not category:
@@ -100,8 +145,12 @@ def clean_record(
100
 
101
  if not instruction or not response:
102
  return None
 
 
103
  if _ascii_ratio(instruction + response) < 0.85:
104
  return None
 
 
105
  if not _response_is_valid(response):
106
  return None
107
  if category == "problem":
 
15
  r"(\bdef\b|\bclass\b|\bimport\b|\breturn\b|=>|function\s+\w+|public\s+class|#include|```)",
16
  re.IGNORECASE,
17
  )
18
+ MIN_CODE_SIGNAL_RE = re.compile(r"(\bdef\s+|\bclass\s+|\bimport\s+|=|\breturn\s+|\bfor\s+|\bif\s+)")
19
  EXPLANATION_PATTERN = re.compile(
20
  r"\b(explain|because|algorithm|steps|approach|complexity|solution)\b", re.IGNORECASE
21
  )
 
23
  r"\b(solve|given|find|compute|return|input|output|problem|algorithm|task|challenge)\b",
24
  re.IGNORECASE,
25
  )
26
+ YAML_FRONTMATTER_RE = re.compile(r"^\s*---\s*\n.*?\n---\s*", re.DOTALL)
27
+ FENCE_LINE_RE = re.compile(r"^\s*```(?:[a-zA-Z0-9_+-]+)?\s*$")
28
+ CODEBLOCK_DIRECTIVE_RE = re.compile(r"^\s*code-block::\s*\w*\s*$", re.IGNORECASE)
29
+ CLI_NOISE_LINE_RE = re.compile(
30
+ r"^\s*(\[[^\]]+\]\s*)?(INFO|WARNING|ERROR|DEBUG|TRACE)\b|"
31
+ r"^\s*(PS\s+[A-Za-z]:\\|[A-Za-z]:\\[^>]*>)|"
32
+ r"^\s*(Traceback \(most recent call last\):|File \".*\", line \d+|Exception:|RuntimeError:|ValueError:|TypeError:)",
33
+ re.IGNORECASE,
34
+ )
35
 
36
 
37
  def estimate_tokens(text: str) -> int:
 
50
  return "\n".join(lines).strip()
51
 
52
 
53
+ def clean_response_text(response: str) -> str:
54
+ text = normalize_text(response)
55
+ if not text:
56
+ return ""
57
+
58
+ # Remove YAML front matter and markdown wrappers.
59
+ text = YAML_FRONTMATTER_RE.sub("", text)
60
+ kept_lines: List[str] = []
61
+ for line in text.split("\n"):
62
+ if FENCE_LINE_RE.match(line):
63
+ continue
64
+ if CODEBLOCK_DIRECTIVE_RE.match(line):
65
+ continue
66
+ if CLI_NOISE_LINE_RE.match(line):
67
+ continue
68
+ kept_lines.append(line)
69
+
70
+ text = "\n".join(kept_lines)
71
+ text = text.replace("```python", "").replace("```py", "").replace("```", "")
72
+
73
+ # Normalize indentation and drop leading/trailing blank lines.
74
+ normalized_lines = [ln.rstrip() for ln in text.split("\n")]
75
+ while normalized_lines and not normalized_lines[0].strip():
76
+ normalized_lines.pop(0)
77
+ while normalized_lines and not normalized_lines[-1].strip():
78
+ normalized_lines.pop()
79
+ if not normalized_lines:
80
+ return ""
81
+
82
+ # Keep indentation consistent: convert tabs to 4 spaces.
83
+ normalized_lines = [ln.replace("\t", " ") for ln in normalized_lines]
84
+ text = "\n".join(normalized_lines)
85
+ return text
86
+
87
+
88
  def _ascii_ratio(text: str) -> float:
89
  if not text:
90
  return 1.0
 
119
  max_tokens: int = 2048,
120
  ) -> Optional[Dict[str, str]]:
121
  instruction = normalize_text(record.get("instruction", ""))
122
+ response = clean_response_text(record.get("response", ""))
123
  source = normalize_text(record.get("_source", "unknown"))
124
  category = normalize_text(record.get("_category", ""))
125
  if not category:
 
145
 
146
  if not instruction or not response:
147
  return None
148
+ if len(response) < 40:
149
+ return None
150
  if _ascii_ratio(instruction + response) < 0.85:
151
  return None
152
+ if not MIN_CODE_SIGNAL_RE.search(response):
153
+ return None
154
  if not _response_is_valid(response):
155
  return None
156
  if category == "problem":
logs/data_fetch.log CHANGED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:250881bf6b7747176c7432a40e84fb3dc4eeca6f9a1a75378ee7e3ccdf662fbf
3
- size 44778
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:3b551005e4457068bfd214b0191e50752db3f180e8c4636a1f936525663b0b02
3
+ size 51055