ML-is-Fun/Fleck-S-100K
Fleck-S-100K
[Fleck-S-100K Instruct](https://huggingface.co/ML-is-Fun/Fleck-S-100K) — the independently instruction-tuned child of `Fleck-S-100K-Base`.
- 109,384 parameters
- BF16 SafeTensors weights
- Fine-tuned from the Base-100M model on Dolly-15k
- Intended for local conversational experiments on Apple Silicon
Model Details
Training
Pretraining
The Base parent was initialized from scratch and pretrained for exactly 100,000,000 real tokenizer tokens on a 70/30 FineWeb-Edu/FineWeb mixture.
Instruction Tuning
Benchmark Results
Corrected zero-shot evaluation, no chat template, FP32 evaluation, and the same benchmark aggregation protocol were used for both variants.
A generation and contamination sanity check found no exact prompt/example matches among the audited records. This is a diagnostic, not a guarantee of absence of all contamination.
Tokenizer and Chat Format
Fleck-Tokenizer-1024- Byte-level BPE
- Vocabulary size: 1,024
The training chat format is:
<bos><|user|>{user}<|eot|><|assistant|>{response}<|eot|><eos>Special Tokens
Usage
The bundle includes a self-contained inference.py; it does not import the Fleck-LM checkout. The accompanying config.json, generation_config.json, and tokenizer_config.json describe the custom architecture and generation/tokenizer defaults; standard transformers.AutoModel loading is not supported. The chat_template.jinja file contains the Instruct chat template used by compatible HF tooling. Install the three runtime dependencies:
python -m pip install torch safetensors tokenizersBy default the CLI starts an interactive chat. /exit quits and /clear resets the conversation history:
python inference.py --device cpu --max-tokens 32For one prompt without interactive mode, pass --no-chat and --prompt:
python inference.py \
--ckpt model.safetensors \
--tokenizer tokenizer.json \
--no-chat \
--prompt "Explain what a tokenizer does." \
--max-tokens 32 \
--device cpuThe default filenames are model.safetensors and tokenizer.json. The script reads and runs the BF16 checkpoint without an FP32 model copy, validates every SafeTensors key, shape, and dtype, and uses FP32 only for attention score/softmax and tied-logit accumulation. It reproduces the factorized tied embedding/logits, effective-depth execution A → B → A → B, half-split RoPE, GQA, physical KV caches, RMSNorms, and greedy generation without any repository-local imports. Generation stops on <|eot|> or <eos>.
Limitations
This model is extremely small and is intended for research and local experimentation rather than reliable general-purpose assistance. It may produce repetitions, malformed text, weak factual answers, or incoherent responses. Instruction tuning improves conversational behavior but does not overcome the limits of a 109K parameter model.
License
MIT License.
Files
The public bundle contains these files:
README.md— model card and usage documentationinference.py— standalone strict loader and interactive/single-prompt inference CLImodel.safetensors— BF16 model weightstokenizer.json— standalone tokenizerconfig.json— custom architecture configurationgeneration_config.json— greedy generation defaultstokenizer_config.json— tokenizer defaults and special-token mappingchat_template.jinja— Instruct chat template No training data, optimizer state, or other training outputs are included.
