ilyass31's picture
Update app.py
e0fee24 verified
from unsloth import FastLanguageModel
import gradio as gr
import torch
# Charger le modèle base + adapter (LoRA)
model, tokenizer = FastLanguageModel.from_pretrained(
model_name = "unsloth/Qwen3-14B", # Base model utilisé pendant l'entraînement
adapter_path = "ilyass31/DH-AI-negotiation-assistant", # Ton repo LoRA
max_seq_length = 2048,
load_in_4bit = True,
)
# Fonction de génération de texte
def generate_response(prompt, temperature=0.7, max_new_tokens=512):
inputs = tokenizer(prompt, return_tensors="pt").to("cuda" if torch.cuda.is_available() else "cpu")
outputs = model.generate(
**inputs,
max_new_tokens=max_new_tokens,
do_sample=True,
temperature=temperature,
pad_token_id=tokenizer.eos_token_id
)
return tokenizer.decode(outputs[0], skip_special_tokens=True)
# Interface
demo = gr.Interface(
fn=generate_response,
inputs=[
gr.Textbox(label="Prompt", placeholder="Enter your negotiation scenario..."),
gr.Slider(0.1, 1.5, value=0.7, step=0.1, label="Temperature"),
gr.Slider(32, 2048, value=512, step=32, label="Max New Tokens")
],
outputs=gr.Textbox(label="Response"),
title="🧠 AI Negotiation Assistant",
description="Enter a scenario and get a negotiation strategy or analysis using a fine-tuned Qwen3-14B model."
)
if __name__ == "__main__":
demo.launch()