kazakh-stemmer / app.py
Tim2190's picture
Update app.py
61d071d verified
raw
history blame contribute delete
977 Bytes
import gradio as gr
import requests
API_URL = "https://kazakh-stemmer-590833642796.europe-west1.run.app/demo/stem/batch"
def stem(text):
words = [w for w in text.replace("\n", " ").split() if w]
if not words:
return "Введите хотя бы одно слово."
r = requests.post(API_URL, json={"words": words[:50]}, timeout=15)
r.raise_for_status()
rows = r.json()
return "\n".join(f"{x['word']}{x['stem']} ({x['confidence']})" for x in rows)
demo = gr.Interface(
fn=stem,
inputs=gr.Textbox(lines=4, label="Казахский текст / Kazakh words",
placeholder="балаларымызда кітабым қаладағы"),
outputs=gr.Textbox(label="Корни / Stems"),
title="Kazakh Stemmer",
description="Morphological stemmer/lemmatizer for Kazakh (Turkic, agglutinative). "
"78% exact-match on UD Kazakh KTB, zero over-stemming (Paice OI=0).",
)
demo.launch()