Repository navigation
Experimental bounded factorial model repair
Pre-releaseNppAI factorial repair — experimental
Own dense v2 model, initialized from rc.2 4859ad69e93ff2ca80d8951bca617476d118f8ef127abc4b313b8d2f0671c6fd; 4096 updates, seed47,
batch8 (four original direct examples and four factorial examples), AdamW0.0003.
532 authored training records; per-example completion loss; fixed256-byte
prompt boundary. Optional width8 neural beam search uses generic AST/signature
and name-binding checks. An unambiguous requested function declaration may be
prefilled mechanically; all algorithm/body bytes come from model logits.
No test answers or algorithm templates are used by the decoder. For an explicit
requested declaration, the profile first accepts a complete, structurally valid,
value-returning greedy function in the legacy format. Otherwise it uses aligned
neural beam search. The route does not recognize particular operation names.
Model SHA-256: f8ef88dccbbd3280c21e5acd51c41c6744e6ba597aa63686f3f43fd96beac229.
Docker-tested result counts (raw outputs/cases/controls in report.json):
{
"initial": {
"wording-": {
"total": 12,
"passed": 0
},
"name-": {
"total": 4,
"passed": 0
},
"reproduction-": {
"total": 2,
"passed": 0
},
"plain-": {
"total": 4,
"passed": 0
}
},
"initial_profile": {
"wording-": {
"total": 12,
"passed": 0
},
"name-": {
"total": 4,
"passed": 0
},
"reproduction-": {
"total": 2,
"passed": 0
},
"plain-": {
"total": 4,
"passed": 0
}
},
"repair_raw": {
"wording-": {
"total": 12,
"passed": 12
},
"name-": {
"total": 4,
"passed": 1
},
"reproduction-": {
"total": 2,
"passed": 2
},
"plain-": {
"total": 4,
"passed": 4
}
},
"repair": {
"wording-": {
"total": 12,
"passed": 12
},
"name-": {
"total": 4,
"passed": 2
},
"reproduction-": {
"total": 2,
"passed": 2
},
"plain-": {
"total": 4,
"passed": 4
}
}
}Original direct training probes: 88/96 before, 96/96 after in raw
legacy readout, 96/96 after in the actual production profile. No
original exact hit is lost in either readout. This measures memorization retention, not unseen accuracy.
Plain Polish requests are also training probes. The12 wording rows repeat one
authored description across two names, three parameters and two request modes. Wording and new-name rows are
authored/exposed development probes; one seed, one narrow operation family.
The generic search decoder can still produce syntactically valid wrong code.
Configured task tests remain mandatory before Apply. The aligned branch rejects tasks plus context longer than256 UTF-8 bytes,
without truncation; long repair feedback may therefore be rejected if the
legacy-format route cannot return a complete valid function. These results replace no
previous public0/12 benchmark result and do not establish general code quality.
Windows quick start
Download NppAI-factorial.nppai and NppAI-factorial-service.zip from this release.
Use the x64 plugin from v0.5.0-rc.2. Extract the service ZIP, open PowerShell there:
py -3.12 -m venv .venv
.\.venv\Scripts\python.exe -m pip install -r requirements-inference.txt
.\.venv\Scripts\python.exe scripts/start_nppai.py --model C:\NppAI\NppAI-factorial.nppai --prompt-bytes 256 --python-functions --notepad 'C:\Notepad++\notepad++.exe'Open an empty .py document and ask wygeneruj kod na silnię.
The launcher selects the own loopback service because the C++ runtime does not
implement this optional decoding profile. Legacy/default models stay greedy.
Use the included examples/silnia-validation-cases.json with a local Docker
Desktop Linux image; see docs/validated-generation.md. With no validator,
Apply remains disabled. The release GUI recording demonstrates the actual model
and review; it is not evidence of Docker Desktop or validated GUI Apply/Undo.
Those Windows end-to-end checks and upgrade remain unverified.
Source: af3e5325b06256f1d0cd448b939ed4d20e28edba
Exact main CI: https://github.com/deser1/NppAI/actions/runs/40414350060
Actual Windows request/review recorded; output equals Docker-tested Linux candidate. Windows Docker Desktop + validated GUI Apply/Undo and installation upgrade remain unverified.