llm-gercomp / app.py
laragrl's picture
Update
30f409d verified
import gradio as gr
from transformers import AutoTokenizer, AutoModelForCausalLM
import torch
# Modelle und Tokenizer laden
# model_names = {
# "LeoLM_13B": "LeoLM/leo-hessianai-13b",
# "Occiglot_7B": "occiglot/occiglot-7b-de-en",
# "LLaMA2_13B": "meta-llama/Llama-2-13b-hf"
# }
model_names = {
"LeoLM_7B": "LeoLM/leo-hessianai-7b",
"Occiglot_7B": "occiglot/occiglot-7b-de-en"
}
# Tokenizer und Modelle vorbereiten
tokenizers = {name: AutoTokenizer.from_pretrained(model) for name, model in model_names.items()}
models = {name: AutoModelForCausalLM.from_pretrained(model) for name, model in model_names.items()}
# Funktion zur Generierung der Antwort
def generate_response(model_choice, prompt):
tokenizer = tokenizers[model_choice]
model = models[model_choice]
inputs = tokenizer(prompt, return_tensors="pt")
outputs = model.generate(inputs["input_ids"], max_new_tokens=100, do_sample=True)
response = tokenizer.decode(outputs[0], skip_special_tokens=True)
return response
# Gradio Interface
with gr.Blocks() as demo:
gr.Markdown("# Vergleich von LLMs: LeoLM und Occiglot")
with gr.Row():
model_choice = gr.Radio(list(model_names.keys()), label="Modell auswählen")
prompt = gr.Textbox(label="Frage stellen", placeholder="Was sind die Hauptursachen für Bluthochdruck?")
output = gr.Textbox(label="Antwort")
submit_button = gr.Button("Antwort generieren")
submit_button.click(generate_response, inputs=[model_choice, prompt], outputs=output)
# App starten
demo.launch()