metadata
base_model: unsloth/gpt-oss-120b-unsloth-bnb-4bit
repo_name: Azmainadeeb/MathGPT
tags:
- text-generation-inference
- transformers
- unsloth
- gpt_oss
- mathematics
- olympiad-math
- reasoning
- chain-of-thought
license: apache-2.0
language:
- en
datasets:
- HuggingFaceH4/Multilingual-Thinking
- Goedel-LM/MathOlympiadBench
- hf-imo-colab/olympiads-ref-base-math-word
- alejopaullier/aimo-external-dataset
- imbishal7/math-olympiad-problems-and-solutions-aops
- baidalinadilzhan/problems-and-solutions-interantional-phos
- kishanvavdara/aimo-olympiadbench-math-dataset
MathGPT (GPT-OSS-120B-Olympiad)
MathGPT is a high-performance reasoning model fine-tuned from GPT-OSS 120B. It is engineered specifically for solving complex mathematical theorems, competition-level problems (AIME/IMO), and advanced scientific reasoning.
- Developed by: Azmainadeeb
- Model Type: Causal Language Model (Fine-tuned for Mathematical Reasoning)
- Base Model: unsloth/gpt-oss-120b-unsloth-bnb-4bit
- Training Framework: Unsloth + TRL
🧩 Model Architecture
MathGPT leverages the Mixture-of-Experts (MoE) architecture of the GPT-OSS family, utilizing 117B total parameters with 5.1B active parameters per token. This allows the model to maintain state-of-the-art reasoning depth while remaining computationally efficient during inference.
📚 Training Data
The model was trained on a massive synthesis of reasoning-dense datasets to ensure "Chain of Thought" consistency:
Primary Thinking Dataset
- Multilingual-Thinking: Instills the core "Thinking" trace and multi-step internal monologue.
Olympiad & Competition Sets
- OlympiadBench & MathOlympiadBench: High-difficulty benchmark problems.
- IMO Math Boxed: Problems curated from the International Mathematical Olympiad.
- AoPS (Art of Problem Solving): Diverse competition-style math problems.
- AIMO External Data: Specific sets designed for the AI Mathematical Olympiad.
🚀 Quickstart Usage
from unsloth import FastLanguageModel
model, tokenizer = FastLanguageModel.from_pretrained(
model_name = "Azmainadeeb/MathGPT",
max_seq_length = 4096,
load_in_4bit = True,
)
messages = [
{"role": "user", "content": "Find all real numbers x such that 8^x + 2^x = 130."}
]
# Apply the template with reasoning_effort to trigger the "Thinking" mode
inputs = tokenizer.apply_chat_template(
messages,
add_generation_prompt = True,
reasoning_effort = "medium", # Options: low, medium, high
return_tensors = "pt"
).to("cuda")
outputs = model.generate(inputs, max_new_tokens = 1024)
print(tokenizer.decode(outputs[0]))
