|
import gradio as gr |
|
from transformers import AutoTokenizer, AutoModelForCausalLM |
|
import torch |
|
|
|
|
|
tokenizer = AutoTokenizer.from_pretrained("jsbeaudry/makandal-pre-trained") |
|
model = AutoModelForCausalLM.from_pretrained("jsbeaudry/makandal-pre-trained") |
|
|
|
|
|
device = "cuda" if torch.cuda.is_available() else "cpu" |
|
model.to(device) |
|
|
|
|
|
def generate_text(prompt): |
|
inputs = tokenizer(prompt, return_tensors="pt", padding=True).to(device) |
|
output = model.generate( |
|
**inputs, |
|
max_new_tokens=30, |
|
do_sample=True, |
|
repetition_penalty=1.2, |
|
no_repeat_ngram_size=3, |
|
temperature=0.9, |
|
top_k=40, |
|
top_p=0.85, |
|
pad_token_id=tokenizer.pad_token_id, |
|
eos_token_id=tokenizer.eos_token_id |
|
) |
|
return tokenizer.decode(output[0], skip_special_tokens=True) |
|
|
|
|
|
iface = gr.Interface( |
|
fn=generate_text, |
|
inputs=gr.Textbox(lines=2, placeholder="Ekri yon sijè oswa yon fraz..."), |
|
outputs="text", |
|
title="Makandal Text Generator", |
|
description="Ekri yon fraz oswa mo kle pou jenere tèks ak modèl Makandal la. Modèl sa fèt espesyalman pou kontèks Ayiti." |
|
) |
|
|
|
if __name__ == "__main__": |
|
iface.launch() |
|
|