import gradio as gr from transformers import AutoTokenizer, AutoModelForCausalLM, GenerationConfig import torch # Check if a GPU is available device = torch.device("cuda" if torch.cuda.is_available() else "cpu") tokenizer = AutoTokenizer.from_pretrained("truongghieu/deci-finetuned", trust_remote_code=True) model = AutoModelForCausalLM.from_pretrained("truongghieu/deci-finetuned", trust_remote_code=True,low_cpu_mem_usage=True) # Move the model to the GPU if available model.to(device) generation_config = GenerationConfig( penalty_alpha=0.6, do_sample=True, top_k=5, temperature=0.5, repetition_penalty=1.2, max_new_tokens=200, pad_token_id=tokenizer.eos_token_id ) # Define a function that takes a text input and generates a text output def generate_text(text): input_text = text input_ids = tokenizer.encode(input_text, return_tensors="pt").to(device) # Move input to the GPU output_ids = model.generate(input_ids, generation_config=generation_config) output_text = tokenizer.decode(output_ids[0], skip_special_tokens=True) return output_text iface = gr.Interface(fn=generate_text, inputs="text", outputs="text") iface.launch()