Model details
Read from adapter_config.json and checkpoint-41136/trainer_state.json in
this repository.
Table | |
|---|
| Developer | Antagon Inc. (CAGE 17E75, UEI KBSGT7CZ4AH3) |
| Base model | Qwen/Qwen2-0.5B-Instruct |
| Method | LoRA — r 16, alpha 32, dropout 0.05 |
| Target modules | q_proj, k_proj, v_proj, o_proj (attention only) |
| Task type | CAUSAL_LM |
| Training | complete — 41,136 of 41,136 steps, epoch 3.0 of 3 |
| Per-device train batch size | 8 |
| First logged loss | 2.7429 (step 100) |
| Last logged loss | 0.6961 (step 41,100) |
| Logged entries | 411, at an interval of 100 steps |
| Held-out evaluation | none |
Training corpus is not recorded in this repository. No dataset reference is
present in the adapter config or the trainer state, and none is asserted here.
Evaluation status
No capability claim is made for this model.
Unlike the other MiniCrit checkpoints, this one did finish: max_steps was
reached and three full epochs completed. That says the run completed, not that
the model works. No held-out predictions, scoring script or evaluation record
exists for it, and a declining training loss is not a capability measurement.
The gap is published rather than filled with an estimate. Evaluating a critic on
held-out rows of a corpus that shares a generator with its training data measures
the learned distribution, not the capability — a number produced that way would
be worse than no number. Measurement against an independent evaluation set,
reported against a non-model rule baseline, is active work, and the result will
be published whichever way it comes out.
Usage
This is a LoRA adapter, not a full model. The base weights are not here.
Tokenizer files are present in this repository.
import torchfrom transformers import AutoTokenizer, AutoModelForCausalLMfrom peft import PeftModel REPO = "wmaousley/MiniCrit-1.5B-Trading-v2"BASE = "Qwen/Qwen2-0.5B-Instruct" base = AutoModelForCausalLM.from_pretrained(BASE, torch_dtype=torch.bfloat16)tokenizer = AutoTokenizer.from_pretrained(REPO)model = PeftModel.from_pretrained(base, REPO) prompt = """Rationale:'NVDA is oversold so I will long because RSI is below 30.' Provide a critique.""" inputs = tokenizer(prompt, return_tensors="pt")outputs = model.generate(**inputs, max_new_tokens=200, do_sample=False)print(tokenizer.decode(outputs[0], skip_special_tokens=True))
AutoModelForCausalLM.from_pretrained(REPO) will not work — there are no base
weights in this repository.
A note on the checkpoint folders
checkpoint-40000/, checkpoint-41000/ and checkpoint-41136/ each contain
optimizer.pt and scheduler.pt alongside the adapter. Those files are
training state, not inference artifacts — they are of no use when loading the
model and they are large. They were published inadvertently. Load from the
repository root, not from a checkpoint folder.
Intended use
Appropriate: research into adversarial critique of trading rationales;
model-to-model critique pipelines with human review.
Not appropriate: generating trades, investment decision-making, or any
autonomous use. Nothing here is investment advice.
Limitations
- No held-out evaluation has been run, so behaviour on unseen inputs is unknown
- The training corpus is not recorded, so the domain of competence is unverified
- LoRA was applied to attention projections only, not the MLP blocks
- 0.5B parameters — small, and prone to confidently worded critiques that are wrong
- Not a trading or financial-advice model
Antagon Inc. · founders@antagon.ai · antagon.ai
CAGE 17E75 · UEI KBSGT7CZ4AH3
Antagon's defense products, including the Frontier compliance platform, are
separate and proprietary. This is an open research release.
Revision history
4 October 2026 — first model card. This repository previously had none. All
figures are read from adapter_config.json and
checkpoint-41136/trainer_state.json. No performance or deployment claim has
ever been made for this model and none is made here.