Model reference · open weights

Olmo-3.1

Available as managed deployment LLMs allenai Text gen 1 variants 15k dl/mo

Olmo-3.1 is an open-weight language model from allenai. 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

Makerallenai
TypeLanguage models
TaskText gen
Parameters (lead)32.2B
Context64k tokens
Runs withtransformers
Based onallenai/Olmo-3.1-32B-Instruct-DPO
Released2025-12-10
Popularity15k downloads / month
LicenceOpen weights

About

What Olmo-3.1 is

Model Details

Model Card for Olmo-3.1-32B-Instruct

We introduce Olmo 3, a new family of 7B and 32B models both Instruct and Think variants. Long chain-of-thought thinking improves reasoning tasks like math and coding.

Olmo is a series of Open language models designed to enable the science of language models. These models are pre-trained on the Dolma 3 dataset and post-trained on the Dolci datasets. We are releasing all code, checkpoints, logs (coming soon), and associated training details.

The core models released in this batch include the following:

StageOlmo 3 7B ThinkOlmo (3/3.1) 32B ThinkOlmo 3 7B InstructOlmo 3.1 32B Instruct
Base ModelOlmo-3-7BOlmo-3-32BOlmo-3-7BOlmo-3-32B
SFTOlmo-3-7B-Think-SFTOlmo-3-32B-Think-SFTOlmo-3-7B-Instruct-SFTOlmo-3.1-32B-Instruct-SFT
DPOOlmo-3-7B-Think-DPOOlmo-3-32B-Think-DPOOlmo-3-7B-Instruct-DPOOlmo-3.1-32B-Instruct-DPO
Final Models (RLVR)Olmo-3-7B-ThinkOlmo-3-32B-ThinkOlmo-3.1-32B-ThinkOlmo-3-7B-InstructOlmo-3.1-32B-Instruct

Installation

Olmo 3 is supported in transformers 4.57.0 or higher:

pip install transformers>=4.57.0

Inference

You can use OLMo with the standard HuggingFace transformers library:

from transformers import AutoModelForCausalLM, AutoTokenizer
olmo = AutoModelForCausalLM.from_pretrained("allenai/Olmo-3.1-32B-Instruct")
tokenizer = AutoTokenizer.from_pretrained("allenai/Olmo-3.1-32B-Instruct")
message = ["Language modeling is "]
inputs = tokenizer(message, return_tensors='pt', return_token_type_ids=False)
# optional verifying cuda
# inputs = {k: v.to('cuda') for k,v in inputs.items()}
# olmo = olmo.to('cuda')
response = olmo.generate(**inputs, max_new_tokens=100, do_sample=True, top_k=50, top_p=0.95)
print(tokenizer.batch_decode(response, skip_special_tokens=True)[0])
>> 'Language modeling is  a key component of any text-based application, but its effectiveness...'

For faster performance, you can quantize the model using the following method:

AutoModelForCausalLM.from_pretrained("allenai/Olmo-3.1-32B-Instruct",
    torch_dtype=torch.float16,
    load_in_8bit=True)  # Requires bitsandbytes

The quantized model is more sensitive to data types and CUDA operations. To avoid potential issues, it's recommended to pass the inputs directly to CUDA using:

inputs.input_ids.to('cuda')

We have released checkpoints for these models. For post-training, the naming convention is step_XXXX. NOTE: For this model, due to a checkpointing issue, we only are releasing the final few checkpoints. See our other RL jobs for more detailed intermediate checkpoint suite.

To load a specific model revision with HuggingFace, simply add the argument revision:

olmo = AutoModelForCausalLM.from_pretrained("allenai/Olmo-3.1-32B-Instruct", revision="step_1375")

Or, you can access all the revisions for the models via the following code snippet:

from huggingface_hub import list_repo_refs
out = list_repo_refs("allenai/Olmo-3.1-32B-Instruct")
branches = [b.name for b in out.branches]

Fine-tuning

Model fine-tuning can be done from the final checkpoint (the main revision of this model) or many intermediate checkpoints. Two recipes for tuning are available.

  1. Fine-tune with the OLMo-core repository:
torchrun --nproc-per-node=8 ./src/scripts/official/MODEL.py run01

You can override most configuration options from the command-line. For example, to override the learning rate you could launch the script like this:

torchrun --nproc-per-node=8 ./src/scripts/train/MODEL.py run01 --train_module.optim.lr=6e-3

For more documentation, see the GitHub readme.

Model Description

  • Developed by: Allen Institute for AI (Ai2)
  • Model type: a Transformer style autoregressive language model.
  • Language(s) (NLP): English
  • License: This model is licensed under Apache 2.0. It is intended for research and educational use in accordance with Ai2's Responsible Use Guidelines.
  • Contact: Technical inquiries: olmo@allenai.org. Press: press@allenai.org
  • Date cutoff: Dec. 2024.

Model Sources

  • Project Page: https://allenai.org/olmo
  • Repositories:
    • Open-Instruct for DPO and RLVR: https://github.com/allenai/open-instruct
    • OLMo-Core for pre-training and SFT: https://github.com/allenai/OLMo-core
    • OLMo-Eval for evaluation: https://github.com/allenai/OLMo-Eval
  • Paper:: https://allenai.org/papers/olmo3

Evaluation

| Metric | Olmo 3.1 32B Instruct SFT | Olmo 3.1 32B Instruct DPO | Olmo 3.1 32B Instruct | Apertus 70B | Qwen 3 32B (No Think) | Qwen 3 VL 32B Instruct | Qwen 2.5 32B | Gemma 3 27B | Gemma 2

From the published model card. Full card on the HuggingFace links in the sidebar.

Using it via the API

Call it like any OpenAI endpoint

Once AxForge deploys olmo-3-1 for you, it answers on the OpenAI-compatible API — the same base URL and keys as every other model. (olmo-3-1 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":"olmo-3-1","messages":[{"role":"user","content":"Hello"}]}'

Create an account — your API key is available in the console. 5M tokens/month currently included with every new account at launch.

© 2026 AxForge · EU-hosted AI infrastructure Pricing Docs Trust Privacy Terms