skills/tinker-training-cost/SKILL.md
Calculate training costs for Tinker fine-tuning jobs. Use when estimating costs for Tinker LLM training, counting tokens in datasets, or comparing Tinker model training prices. Tokenizes datasets using the correct model tokenizer and provides accurate cost estimates.
npx skillsauth add sundial-org/skills tinker-training-costInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Calculate training costs for Tinker fine-tuning jobs by tokenizing your dataset with the correct model tokenizer and applying current pricing.
Use the bundled script to calculate training costs:
# List available models and pricing
python scripts/calculate_cost.py --list-models
# Calculate cost for a JSONL dataset
python scripts/calculate_cost.py training_data.jsonl --model Qwen3-8B --epochs 3
# Output as JSON
python scripts/calculate_cost.py training_data.jsonl --model Llama-3.1-70B --json
The script:
Training Cost = (total_tokens × epochs × train_price_per_million) / 1_000_000
Where:
total_tokens = tokens in your training dataset (from tokenization)epochs = number of training passes (default: 3)train_price_per_million = model-specific training rate from pricing tableAll prices as of January 5, 2026 Source: https://thinkingmachines.ai/tinker/
All prices are in USD per million tokens.
| Category | Description | |----------|-------------| | Prefill | Processing input context (inference) | | Sample | Generating output tokens (inference) | | Train | Training/fine-tuning tokens |
| Model | Prefill | Sample | Train | |-------|---------|--------|-------| | Qwen3-4B-Instruct-2507 | $0.07 | $0.22 | $0.22 | | Qwen3-8B | $0.13 | $0.40 | $0.40 | | Qwen3-30B-A3B | $0.12 | $0.30 | $0.36 | | Qwen3-VL-30B-A3B-Instruct | $0.18 | $0.44 | $0.53 | | Qwen3-32B | $0.49 | $1.47 | $1.47 | | Qwen3-235B-Instruct-2507 | $0.68 | $1.70 | $2.04 | | Qwen3-VL-235B-A22B-Instruct | $1.02 | $2.56 | $3.07 |
| Model | Prefill | Sample | Train | |-------|---------|--------|-------| | Llama-3.2-1B | $0.03 | $0.09 | $0.09 | | Llama-3.2-3B | $0.06 | $0.18 | $0.18 | | Llama-3.1-8B | $0.13 | $0.40 | $0.40 | | Llama-3.1-70B | $1.05 | $3.16 | $3.16 |
| Model | Prefill | Sample | Train | |-------|---------|--------|-------| | DeepSeek-V3.1 | $1.13 | $2.81 | $3.38 |
| Model | Prefill | Sample | Train | |-------|---------|--------|-------| | GPT-OSS-120B | $0.18 | $0.44 | $0.52 | | GPT-OSS-20B | $0.12 | $0.30 | $0.36 |
| Model | Prefill | Sample | Train | |-------|---------|--------|-------| | Kimi-K2-Thinking | $0.98 | $2.44 | $2.93 |
Use the correct HuggingFace tokenizer for accurate token counting:
| Model | HuggingFace Tokenizer |
|-------|----------------------|
| Qwen3-4B-Instruct-2507 | Qwen/Qwen3-4B |
| Qwen3-8B | Qwen/Qwen3-8B |
| Qwen3-30B-A3B | Qwen/Qwen3-30B-A3B |
| Qwen3-32B | Qwen/Qwen3-32B |
| Qwen3-235B-Instruct-2507 | Qwen/Qwen3-235B-A22B-Instruct |
| Qwen3-VL-* | Qwen/Qwen2.5-VL-7B-Instruct (shared VL tokenizer) |
| Llama-3.2-1B | meta-llama/Llama-3.2-1B-Instruct |
| Llama-3.2-3B | meta-llama/Llama-3.2-3B-Instruct |
| Llama-3.1-8B | meta-llama/Llama-3.1-8B-Instruct |
| Llama-3.1-70B | meta-llama/Llama-3.1-70B-Instruct |
| DeepSeek-V3.1 | deepseek-ai/DeepSeek-V3 |
| GPT-OSS-* | Qwen/Qwen3-8B (compatible tokenizer) |
| Kimi-K2-Thinking | moonshotai/Kimi-K2-Instruct |
The bundled scripts/calculate_cost.py handles tokenization automatically. For custom use:
from transformers import AutoTokenizer
# Load the correct tokenizer for your model
tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen3-8B", trust_remote_code=True)
# Count tokens
token_count = len(tokenizer.encode("Your training text here"))
The script handles these training data formats:
Chat format (recommended):
{"messages": [{"role": "user", "content": "..."}, {"role": "assistant", "content": "..."}]}
Text format:
{"text": "Your training text here"}
Instruction format (Alpaca-style):
{"instruction": "...", "input": "...", "output": "..."}
Dataset tokens: 1,000,000
Training tokens: 1,000,000 × 3 = 3,000,000
Cost: 3.0M × $0.40/M = $1.20
Dataset tokens: 5,000,000
Training tokens: 5,000,000 × 2 = 10,000,000
Cost: 10.0M × $3.16/M = $31.60
Dataset tokens: 2,000,000
Training tokens: 2,000,000 × 4 = 8,000,000
Cost: 8.0M × $2.04/M = $16.32
development
Data visualization design based on Stanford CS448B. Use for: (1) choosing chart types, (2) selecting visual encodings, (3) critiquing visualizations, (4) building D3.js visualizations, (5) designing interactions/animations, (6) choosing colors, (7) visualizing networks, (8) visualizing text. Covers Bertin, Mackinlay, Cleveland & McGill.
testing
Guidelines for creating high-quality datasets for LLM post-training (SFT/DPO/RLHF). Use when preparing data for fine-tuning, evaluating data quality, or designing data collection strategies.
development
Fine-tune LLMs using the Tinker API. Covers supervised fine-tuning, reinforcement learning, LoRA training, vision-language models, and both high-level Cookbook patterns and low-level API usage.
data-ai
Find, install, create, improve, and publish AI agent skills through the Sundial ecosystem. Use when the user wants to find or search for skills, install a skill, create a new skill, improve or evaluate an existing skill, or publish a skill to Sundial Hub. Trigger phrases include "find a skill", "install skill", "create a skill", "make a skill", "improve this skill", "evaluate skill", "publish skill", "push skill", "search for skills".