OpenSML-Base-175M / RUN_GUIDE.md
wzebrowski's picture
Document JSONLite descendant training and main-checkpoint results
ea6ddf7 verified
|
Raw History Blame Contribute Delete
3.75 kB

Run OpenSML-Base-175M

The package contains BF16 model.safetensors, the frozen tokenizer, configuration, raw text-completion runner and native architecture/kernel source. The verified platform is Apple Silicon macOS with Python 3.11 and stock MLX 0.32.3.

python3 -m venv .venv
source .venv/bin/activate
python -m pip install huggingface_hub
# Authenticate if access requires it: hf auth login
hf download OpenSML/OpenSML-Base-175M --local-dir ./OpenSML-Base-175M
cd OpenSML-Base-175M
python -m pip install -r requirements.txt
python inference.py --prompt "Plants need sunlight because" --max-tokens 64

For a file prefix and machine-readable output:

python inference.py --prompt-file prompt.txt --max-tokens 128 --json

Default decoding is greedy, temperature 0. Sampling is available via --temperature 0.7 --seed 42; packaging checks use greedy decoding. Input is a raw document prefix. No user/assistant header, chat template, JSON Schema or extraction adapter is applied. The output is a continuation, not an instruction- tuned assistant response.

The runner defaults to the adjacent model.safetensors, checks its weight hash, verifies/extracts native_bundle.zip to a temporary directory and loads the exact native model/tokenizer. Generation runs offline after download and dependency installation. Prompt plus generation budget must fit 2,048 tokens; overlong requests are rejected rather than truncated. Generation stops on document-end, a reserved structural token, or the token limit.

Use this supplied native runner. transformers.AutoModel and mlx_lm.load are not supported auto-loading paths for this custom architecture. CPU-only, CUDA, quantization and framework conversions have not been validated. The root tokenizer.json and tokenizer_config.json mirror the bundle's frozen files; the native bundle also includes all tokenizer integrity companions.

Verify all package files on macOS:

shasum -a 256 -c SHA256SUMS

The source archive contains pretraining/sml_v1/model.py, tokenization/common modules and the matching packed SwiGLU/CE kernels. Its full source inventory is recorded in SOURCE_FILES.json. These can be extracted with python -m zipfile -e native_bundle.zip native_bundle for inspection or use in a custom fine-tuning implementation. This download is an inference package, not a one-command reproduction of the distributed pretraining corpus/optimizer state.

Base completions can repeat, invent facts or continue with irrelevant document text. The recorded document loss does not guarantee correct QA, instruction following or extraction. See the model card and report for measured scope.

JSONLite descendant

The OpenSML-JSONLite-175M-Instruct descendant uses 100,096,883 additional structured-data continued-pretraining tokens followed by one joint full-weight SFT. The main checkpoint inherits 32,000 SFT presentations. On the observed original 1,444-request extraction panel it scores 89.54% complete correctness, 94.91% field accuracy, 93.75% extracted-value F1, 96.13% missing-field accuracy and 99.93% schema validity. Broader structural diagnostics remain weaker: 183/384 complete requests (47.66%). These are descendant results, not scores of this base. See the JSONLite technical report.

JSONLite's supplied runner targets short English text and flat string-based schemas. Broader JSON tasks, arbitrary domains, chat and multilingual reliability are not established. Check schema validity and source-grounded meaning separately. The original base weights, tokenizer and inference runtime are unchanged.