CodeGPT LoRA Fine-tuned for Code Generation

Fine-tuned version of CodeGPT using LoRA (Low-Rank Adaptation) for Python code generation.

πŸ”— Links

Model Details

  • Base model: microsoft/CodeGPT-small-py (124M parameters)
  • Method: LoRA (Low-Rank Adaptation)
  • Trainable parameters: 589,824 (0.36% of total)
  • Model size: 2.36MB (vs 651MB for full fine-tuning)
  • Dataset: Rabinovich/Code-Generation-LLM-LoRA (5000 examples)

Training Details

  • Epochs: 2
  • Learning rate: 3e-4
  • Batch size: 8
  • LoRA rank: 16
  • LoRA alpha: 32
  • Hardware: Google Colab T4 GPU
  • Training time: ~9 minutes

Training Results

Step Loss
100 4.28
300 3.45
500 3.28
700 3.24
900 3.15
1200 3.14

Comparison vs Full Fine-tuning

Full Fine-tune LoRA
Final loss 2.31 3.14
Model size 651MB 2.36MB
Training time ~14 min ~9 min
Trainable params 124M 589K

How to Use

from peft import PeftModel
from transformers import AutoModelForCausalLM, AutoTokenizer
import torch

base_model = AutoModelForCausalLM.from_pretrained("microsoft/CodeGPT-small-py")
model = PeftModel.from_pretrained(base_model, "Pradnya27/codegpt-lora-code-generation")
tokenizer = AutoTokenizer.from_pretrained("microsoft/CodeGPT-small-py")
tokenizer.pad_token = tokenizer.eos_token

prompt = "Generate code: Write a function to check if a number is prime"
inputs = tokenizer(prompt, return_tensors="pt")
with torch.no_grad():
    outputs = model.generate(inputs["input_ids"], max_new_tokens=150)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))

Limitations

  • Trained on competitive programming problems β€” works best for algorithmic tasks
  • Small base model (124M params) limits output quality
  • Full fine-tuning achieves lower loss on this dataset

Future Work

  • Train on full 34K dataset
  • Increase LoRA rank to r=32 or r=64
  • Evaluate on HumanEval benchmark
Downloads last month
32
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support

Model tree for Pradnya27/codegpt-lora-code-generation

Adapter
(24)
this model

Space using Pradnya27/codegpt-lora-code-generation 1