GEPPO Italian semantic decisions
Initial private verification release. Includes a standalone Python runtime that
downloads the original pinned Emma-6 backbone. This is a custom decision head;
it does not implement AutoModel.from_pretrained or a hosted Transformers pipeline.
No derivative license is assigned: the pinned base model card declares OpenRAIL
but does not include its complete terms.
Model
Selected on validation: mean-pointer-53, frozen Emma-6 with a 262,272-parameter
pointer head and train-fitted feature normalization. The candidate readout is the
mean of final normalized hidden states over the candidate branch, including its
markers; query readout is the final prefix state. Query/key project 2048→64.
Inputs contain an Italian state, instructions and candidate descriptions. Candidate branches share a causal prefix and RoPE positions but cannot attend to the tokens of other branches. The prefix includes the canonical list of all descriptions. Opaque option handles never enter the neural input. The backbone is still causal; it is not a bidirectional BERT encoder. No vocabulary generation head is used.
Supports choice, yes/no (noul) and expected ordinal score. Different label lists
can be supplied by the caller. The head's approximately 1 MB footprint excludes
the roughly 6.7 GB FP32 base model files. No adapter is needed by this selected
checkpoint; two adapter training experiments were completed and compared separately.
Usage
Python 3.12+. Download the private repository using an authorized Hugging Face account, then install the pinned dependencies. A virtual environment is recommended.
pip install huggingface-hub
hf auth login
hf download grokked-it/geppo --local-dir geppo
cd geppo
pip install -r requirements.txt
python example.py demo.json
The runtime reads selected.npz, config.json and calibration.json relative to
the downloaded bundle, not the current working directory. It verifies checkpoint
SHA256, metadata, calibration identity and the four pinned base-file hashes.
The first run downloads approximately 6.7 GB of base files to the Hugging Face
cache; subsequent runs reuse them. No remote inference service is called.
If the original pinned ONNX base is already available locally:
python example.py demo.json --base-directory /absolute/path/to/models/emma-6
from geppo_runtime import Geppo
model = Geppo() # Keep loaded; MPS on Apple Silicon, otherwise CPU.
answer = model.decide("Quanto farà caldo domani?", {
"intent": {
"type": "choice",
"instructions": "Qual è l'intento della richiesta?",
"criteria": {
"weather": "Chiedere il meteo, temperature o previsioni del tempo",
"music": "Riprodurre musica, una canzone o una playlist",
"other": "Nessuna delle altre categorie descrive la richiesta",
},
},
})
print(answer["answers"]["intent"])
Every question is evaluated independently. Packed requests exceeding 4,096 tokens are rejected. It is not a server implementing Jev's proprietary SDK or protocol. Probabilities are experimental. Choice and yes/no temperature scaling passed a separate state-grouped calibration audit; score calibration was skipped because the sample is too small. That audit is not a reliability guarantee on new domains.
Training and evaluation
Training: 4,411 Italian questions, primarily native MASSIVE utterances with candidate descriptions, plus the previous translated Kev train/development subset and synthetic numeric/score regressions. MASSIVE intents are split 40 train, 10 validation/calibration, 10 test. Held intent labels and definitions are absent from candidate training inputs; the contents of Emma's pretraining corpus are unknown.
Selection: 12 frozen head/pooling/seed combinations and two local LoRA configurations; validation is fixed before final test predictions. Selection combines held-intent choice macro accuracy and mean accuracy of auxiliary validation sources. This does not imply that the selected model is best on every individual task.
The selected head was trained with weighted cross entropy, AdamW (LR 3e-4,
weight decay 0.01), batch 64, gradient clipping 1, maximum 60 epochs and patience
10. Seed 53; selected epoch 17. Query and candidate normalization statistics
were fitted on training only. Mean pooling is fixed and has no learned parameters.
Details and the separate adapter experiments are recorded in TRAINING.md
and PROTOCOL.md.
| Evaluation | Questions | Accuracy |
|---|---|---|
| Main test | 913 | 64.51% |
| Held intents, correct candidate present | 182 | 45.05% |
| Held intents, including no-match | 227 | 49.34% |
| MASSIVE with original descriptions | 723 | 68.88% |
| Same MASSIVE inputs, descriptions rewritten | 723 | 45.09% |
| Synthetic support routing | 30 | 23.33% |
The provided demo still misroutes the duplicate-charge request to deliveries. This release verifies reproducible execution; it is not a reliable support router.
Final metrics are supplied in metrics.json and the accompanying
SEMANTIC-REPORT.md. Important limitations: these MASSIVE data
were already studied earlier in the project; global conflict filtering uses released
annotations from all partitions; none examples have an option-count shortcut;
questions about the same state are correlated. The support examples are synthetic,
and BoolQ comprises only 20 machine-translated questions. Description paraphrases
reuse the same utterances and are assistant-authored. This is an educational
experiment, not an independently certified zero-shot benchmark or a Jev reproduction.
Sources and attribution
- Base: Emma-6, Egomnia, revision
7be4190ef58ab7202188cc802688c2fc52e9bac8. Base weights are not included. - MASSIVE, Amazon Alexa AI, version 1.1,
Italian locale, CC BY 4.0. Source hash and splits are recorded in
data-manifest.json. Its license is included asMASSIVE-LICENSE.txt. - Kev, revision
85ccf56a0afb952323c621055b02876e8498d60c, motivates causal candidate branches, pointer scoring and adapter trials. The small replay subset is translated with Helsinki-NLP OPUS-MT en-it; original source rights apply. Translation provenance is included separately. - Laya, revision
c73908d96ff73c0062c340a11bf7c54ec7d8bc4d, motivates typed decisions and explicit probability evaluation. Its weights and RLCD training are not used.
Configuration and checkpoint checksum: config.json. File integrity manifest:
checksums.json. Full training scripts and raw replay examples are not included;
the inference runtime, recipe, source revisions, split manifest and metrics are
included. This bundle assigns no
license to the head, loader or derivative; public redistribution terms must be
established from the base model and the replay dataset sources.
See LICENSE-STATUS.md before changing this verification release to public.
- Downloads last month
- 10
Model tree for grokked-it/geppo
Base model
egomnia/emma-6