Forudsigelse af tokenomkostninger
PRECC leveres med et orakel til forudsigelse af tokenomkostninger, så planer med flere trin kan budgetteres i tokens i stedet for vægurstid. Log en forudsigelse før hvert trin, registrér det faktiske tal når arbejdet er afsluttet, og datasættet træner en indbygget forudsiger, der forbedres med tiden.
Log en forudsigelse
Angiv en enkeltlinjebeskrivelse af det planlagte trin. PRECC kategoriserer det (feat / fix / test / refactor / measurement / doc / chore / unknown), estimerer et tokenantal og udskriver et id, du bruger til at lukke sløjfen.
$ precc predict "Implement read-deltas with mtime check"
id=42 category=feat predicted=5680 tokens (confidence=0.50, model=trained-v1)
Record actual when done: precc predict --record 42 <actual_tokens>
Registrér det faktiske
Når trinnet er afsluttet, slå det faktiske tokenantal op i sessionens sidefod eller telemetri og indsend det via id’et.
$ precc predict --record 42 6300
Recorded actual=6300 tokens for prediction id=42.
Træn trained-v1
Når du har mindst ti lukkede forudsigelser, tilpasses trained-v1 ridge-regressionen på log10(actual) mod log10(beskrivelseslængde) plus en one-hot kategoridummy. Tilpasningen er på lukket form (Cholesky på normalligningerne med ridge λ=1) og kører på millisekunder.
$ precc predict --train
Trained trained-v1 on 22 closed predictions (λ=1).
Model file : ~/.local/share/precc/predict_model.json
Confidence : 0.50
Intercept : +1.0016
log_desc : +1.2339
Categories :
unknown +0.4811
doc +0.4474
measurement +0.3422
test +0.1071
refactor +0.0326
feat +0.0071
fix -0.1096
chore -0.3063
Efter træning bruger hvert nyt precc predict-kald automatisk trained-v1, indtil du fjerner eller erstatter modelfilen. Gamle forudsigelser bevarer deres oprindelige model_version, så du kan sammenligne forudsigere over tid.
Inspicér forudsigerens nøjagtighed
precc predict --eval rapporterer den gennemsnitlige absolutte procentfejl (MAPE) samlet og pr. kategori, beregnet kun over lukkede forudsigelser (rækker med både forudsagte og faktiske værdier).
$ precc predict --eval
Predictions logged : 30
With actuals (closed): 22
Mean predicted : 1483 tokens
Mean actual : 47238 tokens
MAPE (statistical) : 76.4%
By category:
category n predicted actual MAPE
feat 6 4605 5250 26.2%
unknown 4 1597 30526 52.6%
test 4 924 38900 56.4%
...
List nylige forudsigelser
precc predict --list viser de seneste rækker i omvendt kronologisk rækkefølge. Åbne rækker (uden faktisk værdi) er klar til at blive lukket.
$ precc predict --list --limit 5
id ts category predicted actual conf description
30 2026-05-09 09:40:51 feat 5348 - 0.50 Run the synthetic-fleet pilot...
29 2026-05-09 08:56:48 test 1050 - 0.60 Train predictor: trained-v1...
28 2026-05-09 07:44:18 test 915 150000 0.60 Implement minimal task-12...
Hvorfor tokens, ikke vægurstid
Tidsestimater er ikke målbare bagudrettet og kan ikke sammensættes på tværs af maskiner eller sessioner. Tokenantal er deterministiske, sammenlignelige og lader et mærket datasæt vokse, hvilket forbedrer forudsigeren for hver lukket sløjfe. Hele pointen med orakelet er at omdanne estimering fra et gættespil til en måling.
Hvor data ligger
Alle forudsigelsesdata gemmes lokalt på din maskine. Intet uploades.
~/.local/share/precc/
├── metrics.db — predictions table (oracle DB)
└── predict_model.json — trained-v1 coefficients (after `--train`)