Instructions to use AllSpark-Research/Iris-mini with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use AllSpark-Research/Iris-mini with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="AllSpark-Research/Iris-mini") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] pipe(text=messages)# Load model directly from transformers import AutoProcessor, AutoModelForMultimodalLM processor = AutoProcessor.from_pretrained("AllSpark-Research/Iris-mini") model = AutoModelForMultimodalLM.from_pretrained("AllSpark-Research/Iris-mini", device_map="auto") messages = [ { "role": "user", "content": [ {"type": "image", "url": "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/p-blog/candy.JPG"}, {"type": "text", "text": "What animal is on the candy?"} ] }, ] inputs = processor.apply_chat_template( messages, add_generation_prompt=True, tokenize=True, return_dict=True, return_tensors="pt", ).to(model.device) outputs = model.generate(**inputs, max_new_tokens=40) print(processor.decode(outputs[0][inputs["input_ids"].shape[-1]:])) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- vLLM
How to use AllSpark-Research/Iris-mini with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "AllSpark-Research/Iris-mini" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "AllSpark-Research/Iris-mini", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/AllSpark-Research/Iris-mini
- SGLang
How to use AllSpark-Research/Iris-mini with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "AllSpark-Research/Iris-mini" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "AllSpark-Research/Iris-mini", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "AllSpark-Research/Iris-mini" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "AllSpark-Research/Iris-mini", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Docker Model Runner
How to use AllSpark-Research/Iris-mini with Docker Model Runner:
docker model run hf.co/AllSpark-Research/Iris-mini
Iris-mini
Climbing to the Search Frontier.
🤗 Collection | 💻 GitHub | 🔬 Evaluation Harness
Introduction
Iris-mini is an open-weight search agent post-trained from Qwen3.6-35B-A3B. A capable search agent has to decide what to search, how to read what comes back, when to keep going, and when the evidence it has gathered is enough. Iris is trained for exactly that loop, through alternating rounds of supervised fine-tuning and reinforcement learning.
Its larger sibling is Iris-pro (397B-A17B).
| Base | Qwen3.6-35B-A3B |
| Parameters | 35B total / 3B active (256 experts, 8 active) |
| Layers / hidden | 40 / 2048 |
| Context | 256K |
| Precision | bfloat16 |
Performance
Open-weight systems in the 30–35B range:
| Model | Size | BrowseComp | BrowseComp-ZH | DeepSearchQA | HLE |
|---|---|---|---|---|---|
| MiroThinker-1.7-mini | 30B | 67.9 | 72.3 | – | 36.4 |
| FORT-Searcher | 30B | 72.2 | 75.0 | – | – |
| Apodex-1.0-mini | 35B | 71.5 | 80.6 | 82.2 | 46.8 |
| Nex-N2-mini | 35B | 74.1 | 79.6r | 87.2r | 37.1r |
| Agents-A1 | 35B | 75.5 | – | – | 47.6 |
| XYZ-Aquila-mini | 35B | 78.8 | 82.9 | 89.5 | 51.1 |
| Iris-mini | 35B | 82.2 | 84.8 | 86.9 | 52.3 |
DeepSearchQA is scored with F1, the rest with accuracy; HLE uses the 2,158-question text-only
subset. Iris numbers use the discard-all context-management setting; baselines come from their
public reports, each under its own context management. r reproduced by the XYZ-Aquila
team.
Context management
Long-horizon search runs out of context before a hard question is resolved, so a published number belongs to the agent and its harness. We report every benchmark in both regimes, under one tool set, one context limit and one judge.
| Setting | BrowseComp | BrowseComp-ZH | DeepSearchQA | HLE |
|---|---|---|---|---|
| w/o | 64.7 | 72.3 | 81.0 | 43.2 |
| retry | – | 83.0 | 89.1 | 52.0 |
| discard-all | 82.2 | 84.8 | 86.9 | 52.3 |
| discard-all + retry | 85.9 | 85.1 | 89.9 | 52.4 |
discard-all resets the conversation to the opening question once the prompt crosses a threshold.
retry restarts an episode that ended without a parseable answer, carrying forward a short summary
of what was already ruled out. We report discard-all as the headline setting even where adding
retry scores higher.
Quickstart
Serve with SGLang:
python -m sglang.launch_server \
--model-path AllSpark-Research/Iris-mini \
--served-model-name Iris-mini \
--port 21234 --tp-size 4 \
--context-length 262144 \
--reasoning-parser qwen3 \
--tool-call-parser qwen3_coder
Then evaluate with Iris-Harness, which reproduces the numbers above:
bash scripts/run_eval.sh \
--base-url http://127.0.0.1:21234/v1 \
--llm-config iris-mini \
--benchmarks "browsecomp:0:1" \
--context-discard-threshold 131072
The model is trained to call tools through the OpenAI function-calling interface and to wrap its
final answer in \boxed{}. Prior reasoning is carried back into the conversation on each turn; the
harness's iris-mini config sets this up for you.
License
Apache 2.0.
- Downloads last month
- 39