CycleCore-Technologies's picture
Finalize model card: SLM terminology, EdgeJSON v3.1 clarification, version comparison context
b53a4a3 verified
---
language:
- en
license: apache-2.0
base_model: HuggingFaceTB/SmolLM2-360M
tags:
- json
- structured-output
- edge-ai
- iot
- small-language-model
- peft
- lora
library_name: transformers
pipeline_tag: text-generation
---
# Maaza SLM-360M-JSON v1.2
**First SLM with complex schema wins on EdgeJSON v3.1 normalized benchmark.**
A 360M parameter model fine-tuned for high-accuracy JSON extraction. v1.2 introduces extended context (2048 tokens) for improved complex schema handling.
## Performance
### EdgeJSON v3.1 Benchmark (Normalized Scoring)
| Metric | Score |
|--------|-------|
| **JSONExact** | 58.9% |
| **Field F1** | 0.761 |
| **Avg Latency** | ~39ms/token |
### By Complexity
| Complexity | JSONExact | Field F1 |
|------------|-----------|----------|
| Simple (2-4 fields) | 88.2% | 0.961 |
| Medium (4-8 fields) | 51.4% | 0.860 |
| Complex (8+ fields) | 4.0% | 0.072 |
### Version Comparison
> **Note:** v1.1+ use EdgeJSON v3.1 normalized scoring (case-insensitive keys). This is stricter on simple/medium schemas but fairer overall. v1.2 is the first SLM to solve complex schemas under the standardized benchmark.
| Version | EdgeJSON Eval | Overall (JSONExact) | Complex | Notes |
|---------|---------------|---------------------|---------|-------|
| v1.0 | v3.0 (strict) | 55.1% | 4.0% | Original release |
| v1.1 | v3.1 (normalized) | **60.1%** | 0.0% | Best simple/medium under fair scoring |
| **v1.2** | v3.1 (normalized) | 58.9% | **4.0%** | **Complex breakthrough under fair scoring** |
### vs Baselines
| Model | Params | JSONExact | Complex |
|-------|--------|-----------|---------|
| SmolLM2-360M (base) | 360M | 11.4% | 0.0% |
| Qwen2.5-3B | 3B | 6.0% | 0.0% |
| **Maaza v1.2** | **360M** | **58.9%** | **4.0%** |
## Quick Start
```python
from transformers import AutoTokenizer, AutoModelForCausalLM
from peft import PeftModel
import torch
# Load model
base = AutoModelForCausalLM.from_pretrained(
"HuggingFaceTB/SmolLM2-360M",
torch_dtype=torch.float16,
device_map="auto"
)
model = PeftModel.from_pretrained(base, "CycleCoreTechnologies/Maaza-SLM-360M-JSON-v1.2")
tokenizer = AutoTokenizer.from_pretrained("HuggingFaceTB/SmolLM2-360M")
# Inference
prompt = """Extract the structured JSON data from the following text. Use snake_case for all keys.
Input: Order #12345 from Jane Smith (jane@example.com). Items: Widget x2 ($19.99), Gadget ($49.99). Ship to 123 Main St, Springfield IL 62701. Total $89.97.
Output:"""
inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
outputs = model.generate(**inputs, max_new_tokens=512, do_sample=False)
print(tokenizer.decode(outputs[0], skip_special_tokens=True).split("Output:")[-1])
```
### Expected Output
```json
{
"order_id": "12345",
"customer": {"name": "Jane Smith", "email": "jane@example.com"},
"items": [
{"name": "Widget", "quantity": 2, "price": 19.99},
{"name": "Gadget", "quantity": 1, "price": 49.99}
],
"shipping": {"street": "123 Main St", "city": "Springfield", "state": "IL", "zip": "62701"},
"total": 89.97
}
```
## Evaluation
Run the EdgeJSON benchmark:
```bash
git clone https://github.com/CycleCore-Technologies/slmbench
cd slmbench
pip install -r requirements.txt
python benchmarks/edge_json/scripts/eval.py \
--model HuggingFaceTB/SmolLM2-360M \
--adapter CycleCoreTechnologies/Maaza-SLM-360M-JSON-v1.2 \
--dataset benchmarks/edge_json/data/edgejson_test_v3.jsonl \
--device cuda
```
## Model Details
- **Base**: SmolLM2-360M
- **Method**: LoRA fine-tuning
- **Context**: 2048 tokens (extended in v1.2)
- **License**: Apache 2.0
## Use Cases
- Edge device JSON extraction
- API response parsing
- Document structure extraction
- IoT data normalization
## Limitations
- Complex schemas (8+ fields, deep nesting) remain challenging
- Best suited for simple/medium complexity extraction
- v1.1 recommended if complex schemas not needed (higher overall accuracy)
## Links
- [EdgeJSON Benchmark](https://github.com/CycleCore-Technologies/slmbench)
- [SLMBench Leaderboard](https://slmbench.com)
- [v1.1 Model](https://huggingface.co/CycleCoreTechnologies/Maaza-SLM-360M-JSON-v1.1)
- [Research Paper](https://github.com/CycleCore-Technologies/slmbench/tree/main/papers) (forthcoming)
## Citation
```bibtex
@misc{cyclecore2025maaza,
title={Maaza SLM-360M-JSON: Small Language Model for JSON Extraction},
author={CycleCore Technologies},
year={2025},
howpublished={\url{https://huggingface.co/CycleCoreTechnologies/Maaza-SLM-360M-JSON-v1.2}}
}
```
## Contact
- hi@cyclecore.ai
- [@CycleCoreTech](https://x.com/CycleCoreTech)
---
Apache 2.0 | Copyright 2025 CycleCore Technologies