Downloads · 30 days
0
harrrshall/BarunAction-35M
BarunAction-35M is a text generation model from harrrshall. Use it when you need the model to write or continue text. It is set up for barunaction. The card lists the license as apache-2.0.
<a href="https://barunaction-d9123728.nip.io" target="blank" rel="noopener noreferrer"Try the live browser demo ↗</a · Source release · Artifact manifest
Downloads · 30 days
0
Access
Public
Updated Aug 5, 2026
Parameters
35.1M
141 MB on disk
Likes
7
Public
Click a slice to open those files.
.safetensors140 MB · 98%
From the Hugging Face model README
<a href="https://barunaction-d9123728.nip.io" target="_blank" rel="noopener noreferrer">Try the live browser demo ↗</a> · Source release · Artifact manifest
BarunAction-35M turns a natural-language request, caller-supplied tool schemas,
JSON context, and a timezone-aware reference time into strict Action IR v1 JSON. It has
35.07M parameters and is post-trained from
harrrshall/BarunLM-35M.
The live demo runs the real checkpoint for five map, contact, settings, flashlight, and email examples. It also accepts edited requests and optional screenshot feedback.
[!IMPORTANT] BarunAction produces proposals; it does not execute tools. The reference runtime verifies the checkpoint and output schema, returns
execution_permitted: false, and has no calendar, messaging, device-control, or other side-effect integration.
| Release | v1.0.0 |
| Parameters | 35.07M |
| Base model | harrrshall/BarunLM-35M |
| Context length | 2,048 tokens |
| Output | Strict Action IR v1 JSON |
| Decoding | Deterministic, unconstrained greedy |
| Development result | 602/756 (79.63%) strict AST exact |
| License | Apache-2.0 code and weights |
The useful result here is parameter efficiency, not an accuracy victory over the larger baseline. In a one-seed matched semantic-adaptation comparison, Qwen2.5-0.5B-Instruct scored 663/756 (87.70%). BarunAction was 14.09× smaller and retained 90.80% of Qwen's exact-match rate, but trailed by 61 rows, or 8.07 percentage points.
The public runtime accepts four explicit inputs:
{} when no context is available; andNOW value with an explicit UTC offset.It returns exactly one parsed Action IR object—or a structured input, generation, parse, or schema
error. Supported Action IR decisions are CALL, ABSTAIN, CLARIFY, and CONFIRM; call modes are
SINGLE, SERIAL, and PARALLEL. The released model was evaluated only on an all-CALL
seven-tool Mobile Actions development population, so the other decisions are part of the runtime
contract, not established model capabilities.
Representative valid output:
{
"calls": [
{
"args": {"query": "Cubbon Park, Bengaluru"},
"tool": "show_map"
}
],
"decision": "CALL",
"mode": "SINGLE"
}
The accompanying policy result still reports that external authorization is required and that execution is not permitted.
Install the versioned product runtime:
pip install "barunaction-35m @ git+https://github.com/harrrshall/[email protected]"
Download the immutable model revision and let the runtime verify every required file before loading it:
from barunaction import BarunActionCompiler, download_candidate_checkpoint
downloaded = download_candidate_checkpoint("./models/BarunAction-35M")
compiler = BarunActionCompiler(
downloaded.path,
device="cpu",
)
tools = [
{
"name": "show_map",
"description": "Show a map for a place or search query.",
"arguments": {
"query": {
"type": "string",
"description": "Place or map search query.",
}
},
"required": ["query"],
"additional_arguments": False,
"side_effecting": False,
}
]
outcome = compiler.infer(
request="Show me Cubbon Park in Bengaluru",
tool_schemas=tools,
context={"locale": "en-IN", "timezone": "Asia/Kolkata"},
now="2026-08-05T11:30:00+05:30",
)
print(outcome.to_dict())
The first download is approximately 141 MB. CPU inference is supported. CUDA inference requires a BF16-capable CUDA device and must be requested explicitly.
Every declaration uses barunaction-tool-schema-v1 and includes:
{
"name": "send_email",
"description": "Draft an email for an external mail client.",
"arguments": {
"to": {"type": "string", "description": "Recipient email address."},
"subject": {"type": "string", "description": "Email subject line."},
"body": {"type": "string", "description": "Email body text."}
},
"required": ["to", "subject"],
"additional_arguments": false,
"side_effecting": true
}
Scalar strings, booleans, integers, numbers, nulls, enums, and nested typed arrays/objects are supported by the validator. Unknown fields, duplicate names, undeclared required arguments, non-finite numbers, naive timestamps, and reserved role tokens fail closed. Arbitrary schemas can be supplied to the runtime, but competence on renamed or unseen schemas has not been established.
The headline score is strict Action IR AST exact match on a grouped 756-row Mobile Actions development split derived only from public training rows.
| Model | Parameters | Performance | Evaluated on |
|---|---|---|---|
| BarunAction-35M | 35.07M | 79.63% (602/756) strict AST exact | Mobile Actions grouped development |
| Qwen2.5-0.5B-Instruct | 494.03M | 87.70% (663/756) strict AST exact | Same Mobile Actions matched-adaptation lane |
| SmolLM2-360M-Instruct | 361.82M | 0.00% (0/756) strict AST exact | Same Mobile Actions matched-adaptation lane |
SmolLM2's zero is specific to that structured-output adaptation run, not general ability.
The paired result contained 19 BarunAction-only wins, 80 Qwen-only wins, 583 rows both models got right, and 74 rows both got wrong. The hypothesis that this 35M candidate would outperform the larger Qwen baseline did not pass.
The comparison matched the 7,937 training IDs, 756 development IDs, semantic input and target content, one-pass response-only full-parameter SFT budget, effective batch size 63, 126 optimizer steps, seed 17, final-checkpoint rule, and deterministic decoding. It did not match upstream pretraining or instruction tuning, tokenizer-native control tokens, learning rate, or total prior model-selection effort. It is one-seed public-development evidence, not a universal model-family ranking.
The raw continuation must be exactly one strict JSON object and validate against the supplied tool
schemas. The decision and call mode must match. SINGLE and SERIAL calls preserve order;
PARALLEL calls are compared as an order-independent multiset. Typed JSON values are preserved,
object-key order and structural whitespace are ignored, and strings are Unicode NFC-normalized
while keeping their internal whitespace. There is no JSON extraction, Markdown stripping,
coercion, defaulting, or repair. Missing, invalid, failed, and truncated predictions remain
failures.
google/mobile-actions, revision
e920309bc2acbc2e99a5e3201cf37df2b9fd9151 (CC BY 4.0).CALL examples over one seven-tool schema family. There is no
false-action, abstention, ambiguity, confirmation, unsafe, or out-of-scope denominator.The released checkpoint is a fresh one-epoch, full-parameter, response-only SFT run from BarunLM-35M. It used the same 7,937 pinned examples exactly once, an effective batch size of 63, and 126 optimizer steps. It did not use synthetic data, teacher distillation, preferences, DPO, or reinforcement learning.
| Component | Value |
|---|---|
| Transformer layers | 12 |
| Hidden size | 448 |
| Query / KV heads | 7 / 1 |
| Local attention window | 256 |
| Attention schedule | 3 local layers, then 1 global layer |
| Context length | 2,048 |
| Vocabulary | 16,384 byte-level BPE tokens |
| Parameters | 35.07M |
The source Mobile Actions timestamps were timezone-naive and were preserved during training. The
public runtime's timezone-aware NOW requirement is a stricter caller policy; it does not create
additional model competence.
Always request the immutable v1.0.0 revision. Loading main or another moving reference is
not equivalent.
| File | Bytes | SHA-256 |
|---|---|---|
barun_config.json | 448 | 9b3a1d71baa95a198744d250f9629231738d942570b8685c44307fd83dd33565 |
model.safetensors | 140,304,464 | fdb95ccf58a095e0d321be998924318b35ee59a334f6dd97d8726d2cf80021d3 |
tokenizer.json | 1,136,031 | 70ded9605fccd09c2340ca7e225361eab0ae8b4dbbb0d6e26343ab5183979db6 |
checkpoint_manifest.json has SHA-256
c743ab7c4d33ae75c6b0aa4547458a961b92766da8fcf85fd148fda2ebb5530a.
The machine-readable form is in MODEL_ARTIFACTS.json.
The artifact manifest also records the Darwin ARM64 int8 derivative. It is specifically bound to Darwin ARM64, PyTorch 2.13.0, and QNNPACK; no universal portability or latency claim is made.
Good fits include:
Do not use this checkpoint as an autonomous agent, safety classifier, permission system, or direct executor. It is not validated for real communications, calendar writes, device changes, medical, legal, financial, emergency, or other high-impact decisions.
The released checkpoint has narrow evidence: English requests, seven familiar Mobile Actions
tools, a single schema family, and an all-CALL reused development split. Its hardest observed
areas include exact argument-value binding for maps and calendar datetimes. There is no supported
claim for abstention, clarification, confirmation, unsafe-request handling, contextual revision,
disfluency, prompt-injection robustness, renamed or unseen schemas, broad function calling,
production readiness, or superiority to larger models.
Code and released weights are Apache-2.0. The released checkpoint was post-trained only on
google/mobile-actions revision e920309bc2acbc2e99a5e3201cf37df2b9fd9151, licensed CC BY
4.0. Training data is not redistributed with the weights and retains its upstream terms. Preserve
the bundled Apache license and attribution notice when redistributing the model.
| Field | Value |
|---|---|
| Model | harrrshall/BarunAction-35M |
| Immutable revision | v1.0.0 |
| Product runtime | barunaction-35m v1.0.0 |
| Author | Harrrshall |
| Release year | 2026 |
| License | Apache-2.0 |
@software{harrrshall2026barunaction35m,
author = {Harrrshall},
title = {BarunAction-35M},
year = {2026},
version = {v1.0.0},
url = {https://huggingface.co/harrrshall/BarunAction-35M},
license = {Apache-2.0}
}