#!/usr/bin/env python3 # -*- coding: utf-8 -*- from typing import Self, Any, Callable from Abstracts.ModelAbstract import ModelAbstract from Abstracts.ControllerAbstract import ControllerAbstract from Models.RequestModel import RequestModel from Models.PseudoLoRAModel import PseudoLoRAModel class AIController(ControllerAbstract, ModelAbstract): def __test_execution(self:Self, end:Callable[[], None], request:RequestModel) -> None: print("PASA") self.anp.ai_interpreters.request( "anp_titles", None, request.get("message", "Hola, Gemma. ¿Me puedes ayudar a instalar una impresora Canon?"), lambda id, response: print((id, response.response)), [ "Seleccionar títulos exactos relacionados con la consulta:" + "".join( "\n - " + title for title in [ "Información, gestión e instalación de Cividas", "Información, gestión e instalación de Impresoras/Fotocopiadoras/Multifuncionales Canon" ] ), ] ) end() def test(self:Self, request:RequestModel) -> None: self.anp.queues.add("anp", self.__test_execution, request) request.set_response({ "ok" : True, "code" : 200, "message" : "ok" })