import gradio as gr
def format_entity_log(word, wiki, reasoning, new_label):
steps = reasoning.split('|')
steps_html = "".join([f"
• {s.strip()}
" for s in steps if s.strip()])
return f"""
🔍 {word} {new_label}
Wiki: {wiki}
Analiz:
{steps_html}
"""
def create_ui_layout():
with gr.Blocks(theme=gr.themes.Soft(primary_hue="orange")) as demo:
gr.Markdown("# 🚀 RAG-NER Uzman Karar Destek Sistemi")
with gr.Tab("Metin Analizi"):
with gr.Row():
with gr.Column(scale=2):
input_text = gr.Textbox(label="Metin", lines=4)
analyze_btn = gr.Button("Analiz Et", variant="primary")
with gr.Column(scale=1):
output_table = gr.Dataframe(headers=["Varlık", "İlk", "Nihai", "Kaynak"], label="Tablo")
gr.HTML("
") # Divider hatasını bu satır çözer
output_logs = gr.HTML(label="Muhakeme Kartları")
return demo, input_text, output_logs, output_table, analyze_btn