Model reference · open weights
Agnes-3.0-Flash is an open-weight language model from Agnes-AI. AxForge deploys and operates it for you on dedicated EU-owned hardware — with the licence handled where one is required.
Available as managed deployment — configured and operated for you on dedicated EU hardware, quoted per deployment.
What it is
| Released by | Agnes-AI |
|---|---|
| Type | Language models |
| Task | Vision + text |
| Parameters (lead) | 33.1B |
| Context | 256k tokens |
| Runs with | transformers |
| Released | 2026-09-11 |
| Popularity | 736 downloads / month |
| Licence | Open weights |
About
This repository contains an earlier open-weight Preview checkpoint of Agnes 3.0 Flash. It is distinct from the newer production/API checkpoint listed on Artificial Analysis.
The Preview release has 33B parameters and a context window of 262,144 tokens. The production/API model uses a different checkpoint and configuration, with a 1M-token context window. Its benchmark results should not be attributed to the Preview weights released here.
This repository was initially published as Agnes-3.0-Flash without the Preview suffix. The model card now explicitly identifies this release as Agnes-3.0-Flash Preview to clarify the distinction between the open-weight release and the production/API model.
The specifications and Agnes benchmark results below refer to the Preview checkpoint.
Hello! 👋 Today we are introducing Agnes-3.0-Flash Preview, an open-weights multimodal preview model built for people who want flagship-class reasoning without flagship-class hardware.
Highlights:
Benchmark scope: The Agnes results in the chart and table below belong to the Agnes-3.0-Flash Preview open-weight checkpoint released in this repository. They are not results for the production/API Agnes 3.0 Flash model listed on Artificial Analysis.
The Agnes-3.0-Flash Preview scores in the chart correspond to the open-weight checkpoint released in this repository. Reference results across contemporary models are shown below. The figures were compiled from different sources, harnesses, and model snapshots and do not constitute a controlled head-to-head comparison.
Higher is better for every row. Header parameter figures mix total and active counts, and harnesses and snapshot dates differ across sources, so treat cross-column comparisons as reference values rather than a controlled head-to-head evaluation.
Agnes-3.0-Flash Preview is a hybrid-attention decoder: three of every four layers run a gated delta rule (recurrent, with per-layer state independent of sequence length), and the fourth runs standard global attention. Only 18 of the 72 layers therefore hold a KV cache that grows with context.
| Context length | 262 144 tokens |
| Decoder layers | 72 = 54 delta-rule recurrent + 18 global attention, alternating 3 : 1 |
| Hidden size | 5120 |
| Global attention | 24 query heads / 4 KV heads (6 : 1 GQA), head dim 256; RMS-norm on q and k, sigmoid-gated output |
| Delta-rule layers | 16 key heads / 48 value heads, head dim 128; causal conv (kernel 4) in front, gated RMS-norm; recurrent state in fp32 |
| Feed-forward | SwiGLU, intermediate size 17408; plus a parallel SwiGLU 2048 branch in every layer |
| Positions | 3-axis rotary (text / height / width), interleaved mrope sections 11 : 11 : 10, base 1e7, applied to the first 25 % of each head dim (64 dims) |
| Vocabulary | 248 320 |
| Vision tower | 27 layers, hidden 1152, patch 16, 2 × 2 spatial merge, projected to 5120 |
pip install "transformers>=5.12" torch torchvision accelerate
Tested on transformers 5.12.1. Image and video inputs go through the bundled processor, which needs torchvision.
from transformers import AutoModelForCausalLM, AutoTokenizer
path = "Agnes-AI/Agnes-3.0-Flash"
tok = AutoTokenizer.from_pretrained(path)
model = AutoModelForCausalLM.from_pretrained(
path, dtype="bfloat16", device_map="auto", trust_remote_code=True
)
msgs = [{"role": "user", "content": "请用三句话解释什么是人工智能。"}]
ids = tok.apply_chat_template(msgs, add_generation_prompt=True, return_tensors="pt").to(model.device)
out = model.generate(ids, max_new_tokens=256)
print(tok.decode(out[0][ids.shape[1]:], skip_special_tokens=True))
Image and video inputs go through the bundled processor (also remote code):
from transformers import AutoProcessor
proc = AutoProcessor.from_pretrained(path, trust_remote_code=True)
msgs = [{"role": "user", "content": [{"type": "image", "image": "photo.jpg"},
{"type": "text", "text": "描述这张图。"}]}]
inputs = proc.apply_chat_template(msgs, add_generation_prompt=True, tokenize=True,
return_dict=True, return_tensors="pt").to(model.device)
out = model.generate(**inputs, max_new_tokens=256)
print(proc.batch_decode(out[:, inputs["input_ids"].shape[1]:], skip_special_tokens=True)[0])
The chat template exposes three reasoning levels — high (default), medium, low — plus a thinking-off switch:
ids = tok.apply_chat_template(msgs, add_generation_prompt=True, return_tensors="pt",
reasoning_effort="medium") # or enable_thinking=False
The chat template renders tool definitions for you. The model emits calls as ``, and you feed results back as a tool role message:
tools = [{
"type": "function",
"function": {
"name": "get_weather",
"description": "Look up current weather for a city",
"parameters": {
"type": "object",
"properties": {"city": {"type": "string", "description": "City name"}},
"required": ["city"],
},
},
}]
msgs = [{"role": "user", "content": "What's the weather in Beijing right now?"}]
ids = tok.apply_chat_template(msgs, tools=tools, add_generation_prompt=True,
return_tensors="pt").to(model.device)
out = model.generate(ids, max_new_tokens=256)
reply = tok.decode(out[0][ids.shape[1]:], skip_spFrom the published model card. Full card on the HuggingFace links in the sidebar.
Using it via the API
Once AxForge deploys agnes-3-0-flash for you, it answers on the OpenAI-compatible API — the same base URL and keys as every other model. (agnes-3-0-flash below is illustrative; you get the exact model name on deployment.)
$ curl -sS https://api.axforge.ai/v1/chat/completions \
-H "Authorization: Bearer $AXFORGE_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"agnes-3-0-flash","messages":[{"role":"user","content":"Hello"}]}'
Create an account — your API key is available in the console. 3M free tokens every 30 days with every new account.