CoderX / app.py
Emalawi19's picture
Update app.py
b717579 verified
Raw
History Blame Contribute Delete
1.7 kB
import gradio as gr
from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
# Model
model_name = "deepseek-ai/deepseek-coder-1.3b-instruct"
# Load tokenizer
tokenizer = AutoTokenizer.from_pretrained(model_name)
tokenizer.pad_token = tokenizer.eos_token
# Load model (CPU optimized)
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype=torch.float32,
low_cpu_mem_usage=True
)
model.to("cpu")
model.eval()
# Generate function
def generate_code(prompt):
if not prompt.strip():
return "Please enter a prompt."
formatted_prompt = f"""You are a professional programmer.
Write clean, complete, and correct code.
Instruction:
{prompt}
Response:
"""
inputs = tokenizer(
formatted_prompt,
return_tensors="pt",
truncation=True,
max_length=512
)
with torch.no_grad():
outputs = model.generate(
**inputs,
max_new_tokens=120,
temperature=0.2,
top_p=0.9,
do_sample=True,
repetition_penalty=1.2,
eos_token_id=tokenizer.eos_token_id,
pad_token_id=tokenizer.eos_token_id
)
output_text = tokenizer.decode(outputs[0], skip_special_tokens=True)
# Clean output
result = output_text.replace(formatted_prompt, "").strip()
return result
# UI
iface = gr.Interface(
fn=generate_code,
inputs=gr.Textbox(
lines=5,
placeholder="Example: Create a login page using HTML and CSS"
),
outputs=gr.Textbox(lines=12),
title="DeepSeek Coder AI (Optimized)",
description="Code generator running on Hugging Face Spaces (CPU optimized)."
)
iface.launch()