File size: 2,788 Bytes
5cb93ca | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | ---
license: apache-2.0
base_model: mukaddamzaid/amos-1-mini
tags: [coreai, core-ai, apple, aimodel, decisions, vision]
---
# AMOS-1 mini — Apple Core AI
An independently converted AMOS-1 mini decision model. Neural execution (encoder, trained projections, vision tower and projector) runs through Apple Core AI `.aimodel` assets. Upstream Python packing, pooling, probability normalization and decoding run on the host using PyTorch tensors. This is a decision model, not a text generator.
## Use
Requires macOS 27 with the Core AI Python runtime. Tested with `coreai-torch==0.4.3`, PyTorch 2.14.0, NumPy, Pillow, tokenizers and huggingface_hub. The converter warns that this PyTorch version is newer than its validated range.
```python
import asyncio
from coreai_mini import AmosMini
async def main():
model = await AmosMini.load(".")
print(await model.request({
"state": "Please refund the duplicate charge.",
"questions": {"refund": {
"type": "noul", "instructions": "Is a refund requested?"
}}
}))
asyncio.run(main())
```
`predict(state, questions, images=())` also accepts upstream internal questions (`text`, `options`) and PIL images, including image options. The request API accepts base64 images in the original AMOS format.
## Capacity and verification
Batch one, **512 combined tokens**, 224×224 images, FP32 weights. Requests exceeding capacity raise an error. This conversion does not provide the original 9,216-token capacity, state-cache acceleration, hosted API server, explain endpoint or benchmark claims. No iPhone or Neural Engine placement/performance has been verified. Core AI uses default specialization.
Nine reproducible smoke/parity cases cover noul, choice, score, multi, span, region, Unicode, 24 options, state images and image options. All tested choices, spans and region cells matched upstream. Maximum measured logit error was 0.000833. These smoke cases do not establish benchmark accuracy. `validation.json` contains exact results. `runtime-smoke.json` records inference with PyTorch Linear/Embedding/Conv2d execution disabled.
## Reproduce and provenance
The original AMOS author is Zaid Mukaddam. AMOS source and weights are Apache-2.0; see `LICENSE`, `SOURCE.json`, and upstream [AMOS-1 mini](https://huggingface.co/mukaddamzaid/amos-1-mini). The encoder derives from jhu-clsp/ettin-encoder-400m and the frozen vision tower from google/siglip2-base-patch16-224; dependency revisions are in `DEPENDENCIES.json`. Conversion adds no restrictions.
Run `convert_mini.py --source PATH_TO_PINNED_AMOS_MINI --output OUTPUT`, then `validate_mini.py` and `smoke_mini.py` from the original workspace layout. Original serving sources are included in `serve/`. `SHA256SUMS` covers release files.
|