feat: Add NaliiaTools
This commit is contained in:
@@ -1,13 +1,67 @@
|
||||
from langchain.tools import tool
|
||||
from ..logger import logger
|
||||
|
||||
|
||||
class NaliiaTools:
|
||||
|
||||
def get_tools(self):
|
||||
return [
|
||||
self.verificar_usuario_registrado,
|
||||
self.registrar_usuario_nuevo,
|
||||
self.consultar_sedes,
|
||||
self.consultar_agenda_disponible,
|
||||
self.agendar_cita
|
||||
]
|
||||
|
||||
@tool
|
||||
def verificar_usuario_registrado(self):
|
||||
def verificar_usuario_registrado(phone: str) -> bool:
|
||||
"""
|
||||
Verifica si el usuario que esta contactandose es un
|
||||
usuario ya conocido y registrado en la base de datos.
|
||||
Verifica si el usuario esta registrado.
|
||||
|
||||
Args:
|
||||
phone: Numero de contacto del cliente ejemplo 30123334
|
||||
"""
|
||||
logger.info("Llamando a Verificar usuario.")
|
||||
|
||||
return False
|
||||
|
||||
@tool
|
||||
def registrar_usuario_nuevo(full_name: str, phone: str) -> bool:
|
||||
"""
|
||||
En caso de que no se haya podido verificar el usuario, sera necesario
|
||||
registrarlo como un usuario nuevo.
|
||||
|
||||
Args:
|
||||
full_name: Nombre completo del cliente.
|
||||
phone: Numero de contacto del cliente.
|
||||
"""
|
||||
logger.info("Llamando a Registrar Nuevo Usuario.")
|
||||
|
||||
return True
|
||||
|
||||
@tool
|
||||
def consultar_sedes() -> list:
|
||||
"""
|
||||
Brinda informacion al usuario acerca de las sedes disponibles y sus horarios.
|
||||
"""
|
||||
logger.info("Llamando a consultar sedes.")
|
||||
|
||||
return []
|
||||
|
||||
@tool
|
||||
def consultar_agenda_disponible() -> list:
|
||||
"""
|
||||
Ayuda a consultar al cliente los horarios de atencion disponibles para agendar su cita.
|
||||
"""
|
||||
logger.info("Llamando a consultar agenda disponible.")
|
||||
|
||||
return []
|
||||
|
||||
@tool
|
||||
def agendar_cita() -> bool:
|
||||
"""
|
||||
Ayuda al cliente a confirmar su cita.
|
||||
"""
|
||||
logger.info("Llamando a agendar cita.")
|
||||
|
||||
return True
|
||||
|
||||
Reference in New Issue
Block a user