TooKeen's picture
Update app.py
7f53e1c verified
import gradio as gr
import torch
from transformers import AutoTokenizer, AutoModelForCausalLM
from peft import PeftModel
import os
# Hole den API-Token aus den Umgebungsvariablen
hf_token = os.getenv("HF_TOKEN")
if hf_token is None:
raise ValueError("HF_TOKEN ist nicht gesetzt. Bitte überprüfe deine Secrets.")
# Basismodell- und LoRA-Modellnamen
base_model_name = "mistralai/Mistral-7B-Instruct-v0.2"
lora_model_name = "TooKeen/neo-blockchain-assistant"
# Lade den Tokenizer und das Modell mit dem API-Token
tokenizer = AutoTokenizer.from_pretrained(base_model_name, use_auth_token=hf_token)
base_model = AutoModelForCausalLM.from_pretrained(base_model_name, use_auth_token=hf_token, device_map="auto")
model = PeftModel.from_pretrained(base_model, lora_model_name)
# Definiere eine Funktion zur Textgenerierung
def generate_text(prompt):
inputs = tokenizer(prompt, return_tensors="pt").to("cuda" if torch.cuda.is_available() else "cpu")
outputs = model.generate(**inputs, max_length=100)
return tokenizer.decode(outputs[0], skip_special_tokens=True)
# Erstelle die Gradio-Oberfläche
interface = gr.Interface(
fn=generate_text,
inputs=gr.Textbox(lines=2, placeholder="Geben Sie Ihren Text hier ein..."),
outputs="text",
title="Blockchain Assistant",
description="Geben Sie einen Text ein, und das Modell generiert eine Antwort."
)
# Starte die Gradio-App
if __name__ == "__main__":
interface.launch()