Downloads · 30 days
65
0% of all-time downloads
open-r1/OlympicCoder-32B
OlympicCoder-32B is a text generation model from open-r1. Use it when you need the model to write or continue text. It is set up for transformers. The card lists the license as apache-2.0.
OlympicCoder-32B is a code model that achieves very strong performance on competitive coding benchmarks such as LiveCodeBench andthe 2024 International Olympiad in Informatics.
Downloads · 30 days
65
0% of all-time downloads
All-time downloads
13.1K
Public
Parameters
32.8B
197 GB on disk
Likes
157
Public
Click a slice to open those files.
.safetensors65.5 GB · 100%
From the Hugging Face model README
OlympicCoder-32B is a code model that achieves very strong performance on competitive coding benchmarks such as LiveCodeBench andthe 2024 International Olympiad in Informatics.
We compare the performance of OlympicCoder models on two main benchmarks for competitive coding:
v4_v5 subset of livecodebench/code_generation_lite, which corresponds to 268 problems. We use lighteval to evaluate models on LiveCodeBench using the sampling parameters described here.[!NOTE] The OlympicCoder models were post-trained exclusively on C++ solutions generated by DeepSeek-R1. As a result the performance on LiveCodeBench should be considered to be partially out-of-domain, since this expects models to output solutions in Python.


Here's how you can run the model using the pipeline() function from 🤗 Transformers:
# pip install transformers
# pip install accelerate
import torch
from transformers import pipeline
pipe = pipeline("text-generation", model="open-r1/OlympicCoder-32B", torch_dtype=torch.bfloat16, device_map="auto")
# We use the tokenizer's chat template to format each message - see https://huggingface.co/docs/transformers/main/en/chat_templating
messages = [
{"role": "user", "content": "Write a python program to calculate the 10th Fibonacci number"},
]
prompt = pipe.tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
outputs = pipe(prompt, max_new_tokens=8000, do_sample=True, temperature=0.7, top_k=50, top_p=0.95)
print(outputs[0]["generated_text"])
#<|im_start|>user
#Write a python program to calculate the 10th fibonacci number<|im_end|>
#<|im_start|>assistant
#<think>Okay, I need to write a Python program that calculates the 10th Fibonacci number. Hmm, the Fibonacci sequence starts with 0 and 1. Each subsequent number is the sum of the two preceding ones. So the sequence goes: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, and so on. ...
[!IMPORTANT] To ensure that the model consistently outputs a long chain-of-thought, we have edited the chat template to prefill the first assistant turn with a
<think>token. As a result, the outputs from this model will not show the opening<think>token if you use the model'sgenerate()method. To apply reinforcement learning with a format reward, either prepend the<think>token to the model's completions or amend the chat template to remove the prefill. Check out our blog post for more details.
The following hyperparameters were used during training on 16 H100 nodes:
@misc{penedo2025olympiccoder, title={OlympicCoder}, author={Guilherme Penedo and Anton Lozhkov and Hynek Kydlíček and Loubna Ben Allal and Edward Beeching and Agustín Piqueres Lajarín and Quentin Gallouédec and Nathan Habib and Lewis Tunstall and Leandro von Werra}, year={2025}, publisher = {Hugging Face}, journal = {Hugging Face repository}, howpublished = {\url{https://huggingface.co/open-r1/OlympicCoder-32B}} }