stindardlogic/math-reasoning-sft-100k
Math Reasoning SFT (100K) 100,000 math problems with detailed step-by-step solutions — ready for supervised fine-tuning of math reasoning models. Dataset Description 100,000 problems across 8 mathematical categories and 3 difficulty levels: Categories Category Examples Topics word_problems ~23,100 Rate/time/distance, work problems, mixture, meeting/catch-up arithmetic ~15,400 Percentages, profit/loss, ratios geometry ~15,400 Area… See the full description on the dataset page: https://huggingface.co/datasets/stindardlogic/math-reasoning-sft-100k.
Math Reasoning SFT (100K)
100,000 math problems with detailed step-by-step solutions — ready for supervised fine-tuning of math reasoning models.
Dataset Description
100,000 problems across 8 mathematical categories and 3 difficulty levels:
Categories
Difficulty Distribution
Format
{
"problem": "A car travels at 60 km/h for 2.5 hours. How far does it travel?",
"solution": "Step 1: Use the formula: Distance = Speed × Time\n Distance = 60 km/h × 2.5 h = 150 km\n\nAnswer: 150 km",
"answer": "150 km",
"category": "word_problems",
"difficulty": "easy",
"id": "abc123"
}Solution Structure
Every solution follows a consistent multi-step format:
- Formula identification — states the relevant formula or approach
- Substitution — plugs in the specific numbers
- Step-by-step calculation — shows intermediate results
- Final answer — clearly labeled
Answer:line
Use Case
- SFT for math reasoning capability in LLMs
- Training step-by-step problem solving behavior
- Curriculum learning: filter by
difficultyfor progressive training - Evaluation: held-out test sets for math benchmarks
- Chain-of-thought distillation
Filtering Examples
import json
# Load only medium/hard problems
with open("math-reasoning-sft-100k.jsonl") as f:
data = [json.loads(l) for l in f]
hard_algebra = [r for r in data if r["difficulty"] in ("medium","hard") and r["category"] == "algebra"]License
Apache 2.0
