Model reference · open weights
OLMo-0724 is an open-weight language model from allenai. OLMo-1B-0724-hf (FP32) weighs 2.6 GB; the smallest configuration that runs it is RTX 3060 12 GB.
For self-hosting, compare this build's requirements below with the GPU you plan to rent.
Summary of the allenai/OLMo-7B-0724-hf model card, 2026-10-01. The estimate below is for another build of the family.
What it is
| Released by | allenai |
|---|---|
| Released | 2024-07-12 |
| Parameters | 6.9B |
| VRAM | 2.6 GB for the weights |
What it runs on
| Card | Requests at once | Context max | Memory |
|---|---|---|---|
| 4K each | |||
| RTX 3060 12 GB | 15 | all 4K | 11.6 GB |
| RTX 4060 Ti 16 GB | 22 | all 4K | 15.4 GB |
| RTX 3090 24 GB | 37 | all 4K | 23.4 GB |
| RTX 4090 24 GB | 37 | all 4K | 23.4 GB |
| RTX 5090 32 GB | 51 | all 4K | 31.0 GB |
| L40S 48 GB | 76 | all 4K | 44.0 GB |
| A100 80 GB | 139 | all 4K | 78.2 GB |
| H100 80 GB | 134 | all 4K | 78.1 GB |
| RTX PRO 6000 Blackwell 96 GB | 163 | all 4K | 93.8 GB |
| DGX Spark (GB10) 128 GB unified | 188 | all 4K | 107 GB |
| H200 141 GB | 245 | all 4K | 138 GB |
| B200 180 GB | 316 | all 4K | 176 GB |
| Requests at once | 4K tokens each |
|---|---|
| 1 | 3.7 GB |
| 5 | 5.8 GB |
| 8 | 7.4 GB |
| 16 | 11.7 GB |
| 32 | 20.3 GB |
| 64 | 37.5 GB |
One card, with vLLM's small-card settings.
Builds
| Build | Params | Precision | Weights | Smallest setup |
|---|---|---|---|---|
| OLMo-7B-0724-hf ↗ | 6.9B | FP32 | 13.8 GB | 2× RTX 3060 12 GB |
| OLMo-1B-0724-hf (above) ↗ | 1.3B | FP32 | 2.6 GB | RTX 3060 12 GB |
From the model card
OLMo is a series of Open Language Models designed to enable the science of language models. The OLMo models are trained on the Dolma dataset. We release all code, checkpoints, logs, and details involved in training these models.
The core models released in this batch are the following:
| Size | Training Tokens | Layers | Hidden Size | Attention Heads | Context Length |
|---|---|---|---|---|---|
| OLMo 1B July 2024 | 3.05 Trillion | 16 | 2048 | 16 | 4096 |
| OLMo 7B July 2024 | 2.75 Trillion | 32 | 4096 | 32 | 4096 |
[Coming soon] We are releasing many checkpoints for these models, for every 1000 training steps.
The naming convention is stepXXX-tokensYYYB. These checkpoints are already available at OLMo 7B April 2024
and will be copied here soon.
To load a specific model revision with HuggingFace, simply add the argument revision:
olmo = AutoModelForCausalLM.from_pretrained("allenai/OLMo-7B-0724-hf", revision="step1000-tokens4B")
All revisions/branches are listed in the file revisions.txt.
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-7B-0724-hf")
branches = [b.name for b in out.branches]
olmo at allenai dot org. Press: press at allenai dot orgProceed as usual with HuggingFace:
from transformers import AutoModelForCausalLM, AutoTokenizer
olmo = AutoModelForCausalLM.from_pretrained("allenai/OLMo-7B-0724-hf")
tokenizer = AutoTokenizer.from_pretrained("allenai/OLMo-7B-0724-hf")
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 the first step to build natural language generation...'
Alternatively, with the pipeline abstraction:
from transformers import pipeline
olmo_pipe = pipeline("text-generation", model="allenai/OLMo-7B-0724-hf")
print(olmo_pipe("Language modeling is "))
>> 'Language modeling is a branch of natural language processing that aims to...'
Or, you can make this slightly faster by quantizing the model, e.g. AutoModelForCausalLM.from_pretrained("allenai/OLMo-7B-0724-hf", torch_dtype=torch.float16, load_in_8bit=True) (requires bitsandbytes).
The quantized model is more sensitive to typing / cuda, so it is recommended to pass the inputs as inputs.input_ids.to('cuda') to avoid potential issues.
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.
torchrun --nproc_per_node=8 scripts/train.py {path_to_train_config} \
--data.paths=[{path_to_data}/input_ids.npy] \
--data.label_mask_paths=[{path_to_data}/label_mask.npy] \
--load_path={path_to_checkpoint} \
--reset_trainer_state
For more documentation, see the GitHub readme.
Core model results for OLMo 7B models are found below.
| Task | Llama-7b | Llama2-7b | Falcon-7b | Mpt-7b | OLMo-7B | Llama2-13b | OLMo 7B April 2024 | OLMo 7B July 2024 |
|---|---|---|---|---|---|---|---|---|
| arc_c | 44.5 | 48.5 | 47.5 | 46.5 | 48.5 | 52.8 | 42.5 | 43.8 |
| arc_e | 67.9 | 69.5 | 70.4 | 70.5 | 65.4 | 73.7 | 67.2 | 68.8 |
| boolq | 75.4 | 80.2 | 74.6 | 74.2 | 73.4 | 82.2 | 83.7 | 78.9 |
| copa | 91.0 | 86.0 | 86.0 | 85.0 | 90.0 | 90.0 | 86.0 | 84.0 |
| hellaswag | 76.2 | 76.8 | 75.9 | 77.6 | 76.4 | 78.6 | 75.5 | 77.4 |
| openbookqa | 51.2 | 48.4 |
Quoted from the model card on Hugging Face. The full card is behind the Hugging Face link above.