Sayansantra/pytho25M
0162
๐ Pytho 25M (Python Code Assistant)
Pytho 25M (Sayansantra/pytho25M) is an ultra-compact ~25 Million parameter language model designed specifically for Python code generation and instruction following. Pytho 25M delivers fast, syntactically valid Python code snippets while using under 30 MB of RAM.
Available in both unquantized PyTorch Safetensors and 4-bit quantized GGUF format.
๐ Model Architecture Specs
๐ Comparative Evaluation vs Sub-150M Open Models
Empirical evaluation comparing Pytho 25M against open-source micro models under 150M parameters on Python coding tasks and instruction adherence:
๐ Why Pytho 25M Outperforms Micro Competitors
- Domain-Specific Instruction Tuning: Tailored for Python instruction-response pairs, allowing immediate zero-shot understanding of Python function generation prompts.
- Vocabulary Parameter Allocation (8,000 vs 50,000 Tokens): Standard models waste up to 76% of their weights storing 50,000 English vocabulary tokens. Pytho 25M uses an 8,000 Python BPE vocabulary, reserving 92% of its weights for 14 deep transformer layers.
- Ultra-Low Memory Footprint: Runs on CPU with under 30 MB of RAM at over 200 tokens per second.
โก Quickstart Code Examples
1. PyTorch / Transformers Usage
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
model_id = "Sayansantra/pytho25M"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id, torch_dtype=torch.float32)
prompt = "<|system|>\nYou are an expert Python coding assistant.</s>\n<|user|>\nWrite a python function to check if a number is prime.</s>\n<|assistant|>\n"
inputs = tokenizer(prompt, return_tensors="pt")
outputs = model.generate(
**inputs,
max_new_tokens=60,
do_sample=True,
temperature=0.7,
pad_token_id=tokenizer.eos_token_id
)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))2. GGUF Usage with llama-cpp-python
from llama_cpp import Llama
llm = Llama.from_pretrained(
repo_id="Sayansantra/pytho25M",
filename="pytho25m_Q4_K_M.gguf",
verbose=False
)
prompt = "<|system|>\nYou are an expert Python coding assistant.</s>\n<|user|>\nWrite a python function to reverse a string.</s>\n<|assistant|>\n"
response = llm(prompt, max_tokens=50)
print(response["choices"][0]["text"])๐ Citation & License
Developed by Sayan Santra. Released under the Apache 2.0 License.
