|
|
import os
|
|
|
import gradio as gr
|
|
|
from transformers import pipeline
|
|
|
|
|
|
|
|
|
os.environ["TRANSFORMERS_CACHE"] = "/app/cache"
|
|
|
|
|
|
|
|
|
MODEL_REPO = "Reem1/hakayti-merged"
|
|
|
|
|
|
|
|
|
few_shot_example = """<s>[User]: ุงุณู
ู ูุฑูู
ูุฃุญุจ ุงููุถุงุก.
|
|
|
ุงูุชุจ ูู ูุตุฉ ุทูููุฉ ููุฃุทูุงู (40 ุฌู
ูุฉ ุนูู ุงูุฃูู) ู
ูุชูุจุฉ ุจุฃุณููุจ ูุตุตู ู
ู
ุชุน.
|
|
|
[Assistant]:
|
|
|
ูุฑูู
ูุงู ูุญุจ ุงููุธุฑ ุฅูู ุงูุณู
ุงุก ูู ูููุฉ. ูุงู ูุฌูุณ ูู ุดุฑูุฉ ุจูุชูุ ูุฑุงูุจ ุงููุฌูู
ููุนุฏูุง ูุงุญุฏุฉ ุชูู ุงูุฃุฎุฑู. ุฃุญูุงููุง ูุงู ูุชุฎูู ุฃู ุงููุฌูู
ู
ุซู ู
ุตุงุจูุญ ุตุบูุฑุฉ ุชุถูุก ูู ุงูุทุฑูู ูุญู ุฃุญูุงู
ู ุงููุจูุฑุฉ.
|
|
|
ูู ุงูู
ุฏุฑุณุฉุ ูุงุญุธ ุงูู
ุนูู
ุดุบู ูุฑูู
ุจุงููุถุงุก. ุฃุนุทุงู ูุชุงุจูุง ู
ููุฆูุง ุจุงูุตูุฑ ุงูู
ูููุฉ ููููุงูุจ ูุงูุฃูู
ุงุฑ. ุงูุจูุฑ ูุฑูู
ุนูุฏู
ุง ุฑุฃู ุตูุฑ ูููุจ ุฒุญู ูุญููุงุชู ุงููุงู
ุนุฉุ ูุฃุฎุฐ ูุชุฎูู ููุณู ูุทูุฑ ุญููู.
|
|
|
ูุฑุฑ ูุฑูู
ุฃู ูุตูุน ูู
ูุฐุฌูุง ุตุบูุฑูุง ููู
ุฌู
ูุนุฉ ุงูุดู
ุณูุฉ. ุฌู
ุน ูุฑุงุช ุตุบูุฑุฉ ูุทููุงูุง ุจุงูุฃููุงู: ุงูุฃุฒุฑู ููุฃุฑุถุ ุงูุฃุญู
ุฑ ููู
ุฑูุฎุ ูุงูุฃุตูุฑ ููุดู
ุณ. ุนููููุง ุจุฎููุท ูู ุบุฑูุชูุ ูุตุงุฑุช ูุฃููุง ุณู
ุงุก ุตุบูุฑุฉ ูุนูุด ูููุง.
|
|
|
ูู ุฃุญุฏ ุงูุฃูุงู
ุ ุฃุนููุช ุงูู
ุฏุฑุณุฉ ุนู ู
ุณุงุจูุฉ ููุฑุณู
ุจุนููุงู "ุฑุญูุฉ ุฅูู ุงููุถุงุก". ุฑุณู
ูุฑูู
ููุญุฉ ูุจูุฑุฉ ูุธูุฑ ูููุง ุตุงุฑูุฎ ููุทูู ู
ู ุงูุฃุฑุถุ ูุญููู ุฃุทูุงู ููููุญูู ุจุฃูุฏููู
. ูุงุฒ ูุฑูู
ุจุงูุฌุงุฆุฒุฉ ุงูุฃูููุ ููุงู ุณุนูุฏูุง ุฌุฏูุง ูุฃู ุญูู
ู ุจุงููุถุงุก ุฃุตุจุญ ุฃูุฑุจ ู
ู
ุง ูุชุฎูู.
|
|
|
ูู ุงูู
ุณุงุกุ ุฌูุณ ูุฑูู
ู
ุน ูุงูุฏู ุนูู ุณุทุญ ุงูู
ูุฒู. ุฃุดุงุฑ ูุงูุฏู ุฅูู ุงููู
ุฑ ููุงู: "ุชุฎููู ูุง ูุฑูู
ุฃู ุงูุนูู
ุงุก ูุฏุฑุณูู ุงูุขู ููู ูุนูุด ุงููุงุณ ููู
ูุง ู
ุง ูู ุงููุถุงุก". ุงุจุชุณู
ูุฑูู
ูุฃุฌุงุจ: "ุณุฃููู ุฃูุง ูุงุญุฏูุง ู
ููู
".
|
|
|
ูููุฐุง ุชุนูู
ูุฑูู
ุฃู ุงูุญูู
ูุจุฏุฃ ุจุฎุทูุฉ ุตุบูุฑุฉุ ูุฃู ุญุจ ุงูู
ุนุฑูุฉ ูู
ูู ุฃู ููุชุญ ูู ุฃุจูุงุจูุง ูุงุณุนุฉ ูุญู ุงูู
ุณุชูุจู.
|
|
|
</s>"""
|
|
|
|
|
|
|
|
|
pipe = pipeline(
|
|
|
"text-generation",
|
|
|
model=MODEL_REPO,
|
|
|
tokenizer=MODEL_REPO,
|
|
|
max_new_tokens=900,
|
|
|
temperature=0.9,
|
|
|
top_p=0.95
|
|
|
)
|
|
|
|
|
|
|
|
|
def generate_story(name, hobby):
|
|
|
prompt = f"""{few_shot_example}
|
|
|
[User]: ุงุณู
ู {name} ูุฃุญุจ {hobby}.
|
|
|
ุงูุชุจ ูู ูุตุฉ ุทูููุฉ ููุฃุทูุงู (40 ุฌู
ูุฉ ุนูู ุงูุฃูู) ู
ูุชูุจุฉ ุจููุณ ุงูุฃุณููุจ ุงูุณุงุจูุ
|
|
|
ูุชุฃูุฏ ุฃู ุงููุตุฉ ูููุง ุชุฏูุฑ ุญูู {hobby} ููุท.
|
|
|
[Assistant]:"""
|
|
|
|
|
|
out = pipe(
|
|
|
prompt,
|
|
|
max_new_tokens=900,
|
|
|
temperature=0.9,
|
|
|
top_p=0.95,
|
|
|
do_sample=True
|
|
|
)
|
|
|
|
|
|
full_text = out[0]["generated_text"]
|
|
|
story = full_text.split("[Assistant]:")[-1].replace("</s>", "").strip()
|
|
|
return story
|
|
|
|
|
|
|
|
|
iface = gr.Interface(
|
|
|
fn=generate_story,
|
|
|
inputs=[
|
|
|
gr.Textbox(label="โ๏ธ ู
ุง ุงุณู
ูุ"),
|
|
|
gr.Textbox(label="๐จ ู
ุง ูู ุงูุชู
ุงู
ู ุฃู ุงูุดูุก ุงูุฐู ุชุญุจูุ")
|
|
|
],
|
|
|
outputs=gr.Textbox(label="๐ ูุตุชู"),
|
|
|
title="๐ ุญูุงูุชู - ุตุงูุน ุงููุตุต ููุฃุทูุงู",
|
|
|
description="ุฃุฏุฎู ุงุณู
ู ูุงูุชู
ุงู
ุงุชูุ ูุฏุนูู ุฃูุชุจ ูู ูุตุฉ ุทูููุฉ ููุฃุทูุงู ุจุฃุณููุจ ู
ู
ุชุน โค๏ธ"
|
|
|
)
|
|
|
|
|
|
iface.launch()
|
|
|
|