kronos / app.py
Efecnc's picture
Create app.py
73b854c verified
import gradio as gr
from transformers import AutoTokenizer
# Tokenizer'ı Hugging Face'ten yüklüyoruz
tokenizer = AutoTokenizer.from_pretrained("NeoQuasar/Kronos-Tokenizer-2k")
def tokenize_metin(metin):
if not metin.strip():
return "Lütfen tokenlara ayrılacak bir metin girin.", ""
# Metni token ID'lerine çevir
token_idleri = tokenizer.encode(metin)
# Kullanıcının daha iyi anlaması için her bir ID'nin hangi kelimeye/heceye denk geldiğini bulalım
detayli_ayrilim = []
for t_id in token_idleri:
kelime_parcasi = tokenizer.decode([t_id])
detayli_ayrilim.append(f"'{kelime_parcasi}' (ID: {t_id})")
toplam_sayi = f"Toplam Token Sayısı: {len(token_idleri)}"
detay_metni = "\n".join(detayli_ayrilim)
return toplam_sayi, detay_metni
# Gradio Arayüzünü Oluşturuyoruz
with gr.Blocks(theme=gr.themes.Soft()) as arayuz:
gr.Markdown("# 🔍 Kronos Tokenizer-2k Test Aracı")
gr.Markdown("Bu araç, yazdığınız metinleri `NeoQuasar/Kronos-Tokenizer-2k` kullanarak yapay zekanın anladığı yapı taşlarına (tokenlara) ayırır.")
with gr.Row():
with gr.Column():
girdi_metni = gr.Textbox(lines=5, label="Metninizi Buraya Girin", placeholder="Merhaba, bu bir test mesajıdır...")
hesapla_butonu = gr.Button("Tokenlara Ayır", variant="primary")
with gr.Column():
sonuc_ozet = gr.Textbox(label="Özet Bilgi", lines=1)
sonuc_detay = gr.Textbox(label="Token Detayları", lines=8)
# Butona basıldığında çalışacak fonksiyonu bağlıyoruz
hesapla_butonu.click(fn=tokenize_metin, inputs=girdi_metni, outputs=[sonuc_ozet, sonuc_detay])
# Uygulamayı başlat
arayuz.launch()