meal-gen / app.py
Christi049's picture
Create app.py
b4ef4c6 verified
import gradio as gr
from transformers import AutoTokenizer, AutoModelForCausalLM
from peft import PeftModel
import torch
# Base model (4-bit LLaMA)
base_model_id = "unsloth/Llama-3.2-3B-Instruct-bnb-4bit"
# Your LoRA adapter repo
adapter_id = "Christi049/meal-gen-adapter"
# Load tokenizer
tokenizer = AutoTokenizer.from_pretrained(base_model_id)
# Load base model
base_model = AutoModelForCausalLM.from_pretrained(
base_model_id,
torch_dtype=torch.float16,
device_map="auto"
)
# Apply LoRA adapter
model = PeftModel.from_pretrained(base_model, adapter_id)
def generate_meal(prompt):
inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
outputs = model.generate(**inputs, max_new_tokens=300, temperature=0.7)
return tokenizer.decode(outputs[0], skip_special_tokens=True)
iface = gr.Interface(
fn=generate_meal,
inputs=gr.Textbox(label="Meal Request", placeholder="e.g., Generate a 7-day vegetarian meal plan"),
outputs=gr.Textbox(label="Generated Meal Plan"),
title="Weekly Meal Generator"
)
iface.launch()