Alyafeai's picture
Update app.py (#1)
06d7aa1 verified
import os
import requests
import gradio as gr
ENDPOINT_URL = os.getenv("ENDPOINT_URL")
SYSTEM_PROMPT = os.getenv("SYSTEM_PROMPT")
if not ENDPOINT_URL or not SYSTEM_PROMPT:
raise ValueError("Set ENDPOINT_URL and SYSTEM_PROMPT env vars.")
def build_prompt(sys_txt, usr_txt):
usr_txt = usr_txt.replace('"', '')
return f"<|system|>\n{sys_txt}\n<|user|>\nترجم النص الاتي: \"{usr_txt}\"\n<|assistant|>"
def translate_to_arabic(text):
try:
prompt = build_prompt(SYSTEM_PROMPT, text)
resp = requests.post(ENDPOINT_URL, json={"inputs": prompt})
resp.raise_for_status()
data = resp.json()
txt = data.get("generated_text") if isinstance(data, dict) else data[0].get("generated_text")
return txt.strip()
except:
print("Talk to Admin")
custom_theme = gr.themes.Soft(primary_hue="purple", secondary_hue= "purple")
with gr.Blocks(theme=custom_theme) as iface:
inp = gr.Textbox(label=None, lines=1, placeholder="Enter your text")
btn = gr.Button("Translate", variant="primary")
out = gr.Textbox(label=None, lines=1)
btn.click(translate_to_arabic, inputs=inp, outputs=out)
if __name__ == "__main__":
iface.launch(share=True, max_threads=100)