Stage 1 data: strict version dedup (older v* vs next newer v*); counts updated

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014aUaQeLnwbb1zTpN7kHeat
This commit is contained in:
Kral
2026-10-03 22:23:04 +02:00
parent 0677d035da
commit 7b8ca01bde
5 changed files with 179 additions and 211 deletions

View File

@@ -3,24 +3,24 @@
Corpus: `/Users/erhankeseli/projects/abap-llm/corpus/corpus.jsonl` (SAP-samples/abap-cheat-sheets, Apache-2.0, see corpus/out/ATTRIBUTION.md).
Tokenizer: `/Users/erhankeseli/models/Qwen3.8-27B-4bit`. Seed 20261003. max_seq_length 16384.
## Version dedup (keep the newest; keep an older version only if it differs by more than 5 % of lines)
## Version dedup (strict rule; an older version is kept only if it differs by more than 5 % of lines)
- Object families: 269; with more than one version: 39.
- Versions kept: 319. Versions removed: 16.
- Records: 370 before, 351 after.
- Tokens before: 2806501 (chars/4 estimate 2636112). After dedup: 2699110. After splitting: 2701996.
- Info: a stricter rule (compare also with the other kept versions) would remove 8 more kept versions.
- Versions kept: 323. Versions removed: 12.
- Records: 370 before, 353 after.
- Tokens before: 2806501 (chars/4 estimate 2636112). After dedup: 2658082. After splitting: 2660834.
- Rule: main (Cloud) and the newest v* (Standard ABAP) always kept; each older v* compared with the next newer v*; other branches (0 comparisons) compared with main.
## Splitting of documents over the limit
- Documents split: 43; pieces: 86; hard line splits (a block was too big): 17; pieces still over the limit: 0.
- Documents split: 41; pieces: 82; hard line splits (a block was too big): 15; pieces still over the limit: 0.
## Result
| | docs | tokens |
|---|---|---|
| train | 374 | 2567180 |
| valid (= test file) | 20 | 134816 |
| train | 374 | 2525568 |
| valid (= test file) | 20 | 135266 |
Split by family: 184 families. **Iterations for 2 epochs (batch 1): 748.**
@@ -28,54 +28,50 @@ Split by family: 184 families. **Iterations for 2 epochs (batch 1): 748.**
| | before dedup | final (kept pieces) |
|---|---|---|
| DOC | 1301698 (46.4 %) | 1302728 (48.2 %) |
| CLAS | 1378559 (49.1 %) | 1297878 (48.0 %) |
| other | 126244 (4.5 %) | 101390 (3.8 %) |
| DOC | 1301698 (46.4 %) | 1302728 (49.0 %) |
| CLAS | 1378559 (49.1 %) | 1247458 (46.9 %) |
| other | 126244 (4.5 %) | 110648 (4.2 %) |
## Token distribution per document (final)
| set | min | p50 | p90 | p99 | max |
|---|---|---|---|---|---|
| all | 49 | 4904 | 15608 | 16217 | 16273 |
| train | 49 | 4904 | 15638 | 16177 | 16252 |
| valid | 92 | 7589 | 15317 | 16273 | 16273 |
| all | 49 | 4797 | 15577 | 16217 | 16273 |
| train | 49 | 4770 | 15590 | 16177 | 16252 |
| valid | 135 | 7589 | 15317 | 16273 | 16273 |
## By object type (final)
| types | docs | tokens |
|---|---|---|
| DOC | 138 | 1302728 |
| CLAS | 194 | 1297878 |
| CLAS | 187 | 1247458 |
| PROG | 11 | 40071 |
| mixed(4) | 6 | 28405 |
| DDLS | 21 | 11549 |
| DDLS | 27 | 20614 |
| mixed(3) | 2 | 6667 |
| DDLX | 6 | 5003 |
| CLAS+DDLS | 1 | 4563 |
| FUGR | 2 | 2026 |
| INTF | 7 | 1792 |
| BDEF | 4 | 1069 |
| BDEF | 5 | 1262 |
| DCLS | 2 | 245 |
## Removed versions
| object | version | newest | diff | tokens |
|---|---|---|---|---|
| ZBP_DEMO_ABAP_RAP_RO_U (CLAS) | v758 | main | 0.015 | 10696 |
| ZDEMO_ABAP_RAP_RO_M (BDEF) | v756 | main | 0.037 | 259 |
| ZDEMO_ABAP_RAP_RO_U (BDEF) | v756 | main | 0.043 | 236 |
| ZDEMO_ABAP_CDS_VE_ASSOC_E (DDLS) | v757 | main | 0.026 | 542 |
| ZDEMO_ABAP_CDS_VE_JOINS (DDLS) | v757 | main | 0.009 | 1827 |
| ZDEMO_ABAP_CDS_VE_AGG_EXP (DDLS) | v757 | main | 0.019 | 804 |
| ZDEMO_ABAP_CDS_VE_SEL (DDLS) | v757 | main | 0.029 | 3273 |
| ZDEMO_ABAP_CDS_VE_ASSOC (DDLS) | v757 | main | 0.008 | 2451 |
| ZDEMO_ABAP_FLI_VE (DDLS) | v816 | main | 0.0 | 168 |
| ZCL_DEMO_ABAP_DTYPE_DOBJ (CLAS) | v816 | main | 0.009 | 27407 |
| ZCL_DEMO_ABAP_OBJECTS (CLAS) | v755 | v757 | 0.01 | 14944 |
| ZDEMO_ABAP_RAP_DRAFT_M (BDEF) | v756 | v757 | 0.033 | 302 |
| ZCL_DEMO_ABAP_DTYPE_DOBJ (CLAS) | v756 | v757 | 0.015 | 21263 |
| ZCL_DEMO_ABAP_DTYPE_DOBJ (CLAS) | v755 | v756 | 0.047 | 20431 |
| ZCL_DEMO_ABAP_DISPLAY (CLAS) | v755 | v757 | 0.02 | 1677 |
| ZCL_DEMO_ABAP_UNIT_TEST (CLAS) | v758 | main | 0.034 | 19799 |
| ZCL_DEMO_ABAP_INTERNAL_TABLES (CLAS) | v755 | v757 | 0.01 | 17309 |
| ZCL_DEMO_ABAP_DYNAMIC_PROG (CLAS) | v756 | v757 | 0.021 | 25883 |
| ZCL_DEMO_ABAP_SQL (CLAS) | v755 | v757 | 0.035 | 14949 |
| ZCL_DEMO_ABAP_CONSTRUCTOR_EXPR (CLAS) | v755 | v757 | 0.048 | 13893 |
| ZDEMO_ABAP_DYNPRO (PROG) | v757 | v816 | 0.001 | 8026 |
| ZBP_DEMO_ABAP_RAP_DRAFT_M (CLAS) | v757 | v758 | 0.005 | 2474 |
| ZCL_DEMO_ABAP_NUMERIC_OP (CLAS) | v816 | main | 0.003 | 20484 |
| ZDEMO_ABAP_ALV (PROG) | v757 | v816 | 0.002 | 7268 |
## Split documents
@@ -97,9 +93,8 @@ Split by family: 184 families. **Iterations for 2 epochs (batch 1): 748.**
- ['06_Dynamic_Programming__P07 (DOC)']: 23994 tokens -> 2 pieces [15836, 8221]
- ['28_Regular_Expressions (DOC)']: 17900 tokens -> 2 pieces [15031, 2930]
- ['06_Dynamic_Programming__P06 (DOC)']: 16923 tokens -> 2 pieces [15842, 1144]
- ['ZCL_DEMO_ABAP_NUMERIC_OP__V816 (CLAS)']: 19769 tokens -> 2 pieces [15819, 4012]
- ['05_Constructor_Expressions__P01 (DOC)']: 17349 tokens -> 2 pieces [15147, 2265]
- ['ZCL_DEMO_ABAP_DTYPE_DOBJ__V755 (CLAS)']: 17237 tokens -> 2 pieces [15833, 1469]
- ['ZCL_DEMO_ABAP_DTYPE_DOBJ__V756 (CLAS)']: 18069 tokens -> 2 pieces [15842, 2292]
- ['ZCL_DEMO_ABAP_DYNAMIC_PROG (CLAS)']: 17923 tokens -> 2 pieces [15329, 2672]
- ['ZCL_DEMO_ABAP_DYNAMIC_PROG (CLAS)']: 16924 tokens -> 2 pieces [15749, 1223]
- ['ZCL_DEMO_ABAP_DYNAMIC_PROG (CLAS)']: 16770 tokens -> 2 pieces [14210, 2608]
@@ -116,10 +111,9 @@ Split by family: 184 families. **Iterations for 2 epochs (batch 1): 748.**
- ['ZCL_DEMO_ABAP_INTERNAL_TABLES__V758 (CLAS)']: 17355 tokens -> 2 pieces [15832, 1584]
- ['ZCL_DEMO_ABAP_BUILTIN_FUNC (CLAS)']: 20446 tokens -> 2 pieces [15454, 5071]
- ['ZCL_DEMO_ABAP_STRING_PROC (CLAS)']: 20311 tokens -> 2 pieces [15590, 4797]
- ['ZCL_DEMO_ABAP_UNIT_TEST__V758 (CLAS)']: 16394 tokens -> 2 pieces [15301, 1187]
- ['ZCL_DEMO_ABAP_DYNAMIC_PROG__V757 (CLAS)']: 21483 tokens -> 2 pieces [15815, 5730]
- ['ZCL_DEMO_ABAP_DATE_TIME (CLAS)']: 18634 tokens -> 2 pieces [15577, 3138]
- ['ZCL_DEMO_ABAP_XML_JSON (CLAS)']: 16825 tokens -> 2 pieces [15753, 1154]
- ['ZCL_DEMO_ABAP_SQL (CLAS)']: 18283 tokens -> 2 pieces [12526, 5831]
- ['ZCL_DEMO_ABAP_INTERNAL_TABLES__V755 (CLAS)']: 17309 tokens -> 2 pieces [2124, 15283]
- ['ZCL_DEMO_ABAP_DYNAMIC_PROG__V756 (CLAS)']: 20979 tokens -> 2 pieces [15831, 5210]
- ['16_Data_Types_and_Objects__P02 (DOC)']: 17891 tokens -> 2 pieces [14421, 3541]

View File

@@ -5,84 +5,42 @@
"estimate_tokens": 2636112,
"records": 370,
"tokens_before_dedup": 2806501,
"tokens_after_dedup": 2699110,
"records_after_dedup": 351,
"tokens_after_split": 2701996,
"tokens_after_dedup": 2658082,
"records_after_dedup": 353,
"tokens_after_split": 2660834,
"objects_with_versions": 39,
"families": 269,
"versions_kept": 319,
"versions_removed": 16,
"strict_rule_would_remove_more": 8,
"versions_kept": 323,
"versions_removed": 12,
"other_branch_comparisons": 0,
"removed_versions": [
{
"object": "ZBP_DEMO_ABAP_RAP_RO_U (CLAS)",
"version": "v758",
"newest": "main",
"diff": 0.015,
"tokens": 10696
"object": "ZCL_DEMO_ABAP_OBJECTS (CLAS)",
"version": "v755",
"newest": "v757",
"diff": 0.01,
"tokens": 14944
},
{
"object": "ZDEMO_ABAP_RAP_RO_M (BDEF)",
"object": "ZDEMO_ABAP_RAP_DRAFT_M (BDEF)",
"version": "v756",
"newest": "main",
"diff": 0.037,
"tokens": 259
},
{
"object": "ZDEMO_ABAP_RAP_RO_U (BDEF)",
"version": "v756",
"newest": "main",
"diff": 0.043,
"tokens": 236
},
{
"object": "ZDEMO_ABAP_CDS_VE_ASSOC_E (DDLS)",
"version": "v757",
"newest": "main",
"diff": 0.026,
"tokens": 542
},
{
"object": "ZDEMO_ABAP_CDS_VE_JOINS (DDLS)",
"version": "v757",
"newest": "main",
"diff": 0.009,
"tokens": 1827
},
{
"object": "ZDEMO_ABAP_CDS_VE_AGG_EXP (DDLS)",
"version": "v757",
"newest": "main",
"diff": 0.019,
"tokens": 804
},
{
"object": "ZDEMO_ABAP_CDS_VE_SEL (DDLS)",
"version": "v757",
"newest": "main",
"diff": 0.029,
"tokens": 3273
},
{
"object": "ZDEMO_ABAP_CDS_VE_ASSOC (DDLS)",
"version": "v757",
"newest": "main",
"diff": 0.008,
"tokens": 2451
},
{
"object": "ZDEMO_ABAP_FLI_VE (DDLS)",
"version": "v816",
"newest": "main",
"diff": 0.0,
"tokens": 168
"newest": "v757",
"diff": 0.033,
"tokens": 302
},
{
"object": "ZCL_DEMO_ABAP_DTYPE_DOBJ (CLAS)",
"version": "v816",
"newest": "main",
"diff": 0.009,
"tokens": 27407
"version": "v756",
"newest": "v757",
"diff": 0.015,
"tokens": 21263
},
{
"object": "ZCL_DEMO_ABAP_DTYPE_DOBJ (CLAS)",
"version": "v755",
"newest": "v756",
"diff": 0.047,
"tokens": 20431
},
{
"object": "ZCL_DEMO_ABAP_DISPLAY (CLAS)",
@@ -92,11 +50,32 @@
"tokens": 1677
},
{
"object": "ZCL_DEMO_ABAP_UNIT_TEST (CLAS)",
"version": "v758",
"newest": "main",
"diff": 0.034,
"tokens": 19799
"object": "ZCL_DEMO_ABAP_INTERNAL_TABLES (CLAS)",
"version": "v755",
"newest": "v757",
"diff": 0.01,
"tokens": 17309
},
{
"object": "ZCL_DEMO_ABAP_DYNAMIC_PROG (CLAS)",
"version": "v756",
"newest": "v757",
"diff": 0.021,
"tokens": 25883
},
{
"object": "ZCL_DEMO_ABAP_SQL (CLAS)",
"version": "v755",
"newest": "v757",
"diff": 0.035,
"tokens": 14949
},
{
"object": "ZCL_DEMO_ABAP_CONSTRUCTOR_EXPR (CLAS)",
"version": "v755",
"newest": "v757",
"diff": 0.048,
"tokens": 13893
},
{
"object": "ZDEMO_ABAP_DYNPRO (PROG)",
@@ -112,13 +91,6 @@
"diff": 0.005,
"tokens": 2474
},
{
"object": "ZCL_DEMO_ABAP_NUMERIC_OP (CLAS)",
"version": "v816",
"newest": "main",
"diff": 0.003,
"tokens": 20484
},
{
"object": "ZDEMO_ABAP_ALV (PROG)",
"version": "v757",
@@ -127,22 +99,22 @@
"tokens": 7268
}
],
"split_docs": 43,
"hard_line_splits": 17,
"split_docs": 41,
"hard_line_splits": 15,
"pieces_over_limit": 0,
"train": {
"docs": 374,
"tokens": 2567180,
"tokens": 2525568,
"min": 49,
"p50": 4904,
"p90": 15638,
"p50": 4770,
"p90": 15590,
"p99": 16177,
"max": 16252
},
"valid": {
"docs": 20,
"tokens": 134816,
"min": 92,
"tokens": 135266,
"min": 135,
"p50": 7589,
"p90": 15317,
"p99": 16273,
@@ -150,10 +122,10 @@
},
"all": {
"docs": 394,
"tokens": 2701996,
"tokens": 2660834,
"min": 49,
"p50": 4904,
"p90": 15608,
"p50": 4797,
"p90": 15577,
"p99": 16217,
"max": 16273
},
@@ -173,22 +145,22 @@
},
"share_final": {
"CLAS": [
1297878,
48.0
1247458,
46.9
],
"other": [
101390,
3.8
110648,
4.2
],
"DOC": [
1302728,
48.2
49.0
]
},
"by_type": {
"CLAS": {
"docs": 194,
"tokens": 1297878
"docs": 187,
"tokens": 1247458
},
"mixed(4)": {
"docs": 6,
@@ -203,12 +175,12 @@
"tokens": 1792
},
"BDEF": {
"docs": 4,
"tokens": 1069
"docs": 5,
"tokens": 1262
},
"DDLS": {
"docs": 21,
"tokens": 11549
"docs": 27,
"tokens": 20614
},
"mixed(3)": {
"docs": 2,
@@ -423,6 +395,17 @@
1144
]
},
{
"object": [
"ZCL_DEMO_ABAP_NUMERIC_OP__V816 (CLAS)"
],
"tokens": 19769,
"pieces": 2,
"piece_tokens": [
15819,
4012
]
},
{
"object": [
"05_Constructor_Expressions__P01 (DOC)"
@@ -434,28 +417,6 @@
2265
]
},
{
"object": [
"ZCL_DEMO_ABAP_DTYPE_DOBJ__V755 (CLAS)"
],
"tokens": 17237,
"pieces": 2,
"piece_tokens": [
15833,
1469
]
},
{
"object": [
"ZCL_DEMO_ABAP_DTYPE_DOBJ__V756 (CLAS)"
],
"tokens": 18069,
"pieces": 2,
"piece_tokens": [
15842,
2292
]
},
{
"object": [
"ZCL_DEMO_ABAP_DYNAMIC_PROG (CLAS)"
@@ -632,6 +593,17 @@
4797
]
},
{
"object": [
"ZCL_DEMO_ABAP_UNIT_TEST__V758 (CLAS)"
],
"tokens": 16394,
"pieces": 2,
"piece_tokens": [
15301,
1187
]
},
{
"object": [
"ZCL_DEMO_ABAP_DYNAMIC_PROG__V757 (CLAS)"
@@ -676,28 +648,6 @@
5831
]
},
{
"object": [
"ZCL_DEMO_ABAP_INTERNAL_TABLES__V755 (CLAS)"
],
"tokens": 17309,
"pieces": 2,
"piece_tokens": [
2124,
15283
]
},
{
"object": [
"ZCL_DEMO_ABAP_DYNAMIC_PROG__V756 (CLAS)"
],
"tokens": 20979,
"pieces": 2,
"piece_tokens": [
15831,
5210
]
},
{
"object": [
"16_Data_Types_and_Objects__P02 (DOC)"