Spaces:
Runtime error
Runtime error
| import gradio as gr | |
| from gpt4all import GPT4All | |
| # Cargar el modelo local (requiere archivo .gguf en carpeta "models/") | |
| MODEL_PATH = "models/mistral-7b-openorca.Q4_0.gguf" | |
| def responder(pregunta, modo): | |
| # Plantilla de modos | |
| if modo == "Didáctico": | |
| prompt = f"Explica de manera sencilla para un estudiante: {pregunta}" | |
| elif modo == "Paso a paso": | |
| prompt = f"Resuelve paso a paso: {pregunta}" | |
| elif modo == "Examen": | |
| prompt = f"Responde de forma breve, como si fuera un examen: {pregunta}" | |
| else: | |
| prompt = f"Responde con referencias de científicos famosos: {pregunta}" | |
| try: | |
| model = GPT4All(MODEL_PATH) | |
| with model.chat_session() as session: | |
| respuesta = session.generate(prompt, max_tokens=256) | |
| return respuesta | |
| except Exception as e: | |
| return f"⚠️ Error: {str(e)}\nAsegúrate de poner el archivo .gguf en la carpeta 'models/'." | |
| # Interfaz Gradio | |
| demo = gr.Interface( | |
| fn=responder, | |
| inputs=[ | |
| gr.Textbox(label="Tu pregunta de Química o Física"), | |
| gr.Radio(["Didáctico", "Paso a paso", "Examen", "Referencias"], label="Modo") | |
| ], | |
| outputs=gr.Textbox(label="Respuesta IA"), | |
| title="ExploraLab — Tutor IA de Química y Física", | |
| description="Tu asistente académico gratuito para aprender ciencias." | |
| ) | |
| if __name__ == "__main__": | |
| demo.launch() | |