pbesa 4.0.25__tar.gz → 4.0.27__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. {pbesa-4.0.25 → pbesa-4.0.27}/PKG-INFO +1 -1
  2. pbesa-4.0.27/pbesa/celulas/celula_pertinencia.py +58 -0
  3. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/cognitive.py +5 -5
  4. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa.egg-info/PKG-INFO +1 -1
  5. {pbesa-4.0.25 → pbesa-4.0.27}/setup.py +1 -1
  6. pbesa-4.0.25/pbesa/celulas/celula_pertinencia.py +0 -66
  7. {pbesa-4.0.25 → pbesa-4.0.27}/.gitignore +0 -0
  8. {pbesa-4.0.25 → pbesa-4.0.27}/LICENSE +0 -0
  9. {pbesa-4.0.25 → pbesa-4.0.27}/LICENSE.txt +0 -0
  10. {pbesa-4.0.25 → pbesa-4.0.27}/MANIFEST +0 -0
  11. {pbesa-4.0.25 → pbesa-4.0.27}/README.md +0 -0
  12. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/db.sqlite3 +0 -0
  13. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/helloworld/__init__.py +0 -0
  14. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/helloworld/__pycache__/__init__.cpython-36.pyc +0 -0
  15. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/helloworld/__pycache__/pbesa.cpython-36.pyc +0 -0
  16. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/helloworld/__pycache__/settings.cpython-36.pyc +0 -0
  17. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/helloworld/__pycache__/urls.cpython-36.pyc +0 -0
  18. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/helloworld/__pycache__/wsgi.cpython-36.pyc +0 -0
  19. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/helloworld/asgi.py +0 -0
  20. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/helloworld/pbesa.py +0 -0
  21. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/helloworld/settings.py +0 -0
  22. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/helloworld/urls.py +0 -0
  23. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/helloworld/wsgi.py +0 -0
  24. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/manage.py +0 -0
  25. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/__init__.py +0 -0
  26. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/__pycache__/__init__.cpython-36.pyc +0 -0
  27. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/__pycache__/admin.cpython-36.pyc +0 -0
  28. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/__pycache__/apps.cpython-36.pyc +0 -0
  29. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/__pycache__/models.cpython-36.pyc +0 -0
  30. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/__pycache__/urls.cpython-36.pyc +0 -0
  31. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/__pycache__/views.cpython-36.pyc +0 -0
  32. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/admin.py +0 -0
  33. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/apps.py +0 -0
  34. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/mas/controller/__pycache__/translatecontroller.cpython-36.pyc +0 -0
  35. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/mas/controller/__pycache__/translatedelegate.cpython-36.pyc +0 -0
  36. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/mas/controller/__pycache__/translateresponse.cpython-36.pyc +0 -0
  37. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/mas/controller/translatecontroller.py +0 -0
  38. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/mas/controller/translatedelegate.py +0 -0
  39. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/mas/controller/translateresponse.py +0 -0
  40. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/mas/worker/__pycache__/translatetask.cpython-36.pyc +0 -0
  41. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/mas/worker/__pycache__/workeragent.cpython-36.pyc +0 -0
  42. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/mas/worker/translatetask.py +0 -0
  43. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/mas/worker/workeragent.py +0 -0
  44. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/migrations/__init__.py +0 -0
  45. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/migrations/__pycache__/__init__.cpython-36.pyc +0 -0
  46. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/models.py +0 -0
  47. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/tests.py +0 -0
  48. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/urls.py +0 -0
  49. {pbesa-4.0.25 → pbesa-4.0.27}/examples/django/helloworld/translate/views.py +0 -0
  50. {pbesa-4.0.25 → pbesa-4.0.27}/examples/remote/mas/controller/__pycache__/countercontroller.cpython-36.pyc +0 -0
  51. {pbesa-4.0.25 → pbesa-4.0.27}/examples/remote/mas/controller/__pycache__/counterdelegate.cpython-36.pyc +0 -0
  52. {pbesa-4.0.25 → pbesa-4.0.27}/examples/remote/mas/controller/__pycache__/counterresponse.cpython-36.pyc +0 -0
  53. {pbesa-4.0.25 → pbesa-4.0.27}/examples/remote/mas/controller/__pycache__/translatecontroller.cpython-36.pyc +0 -0
  54. {pbesa-4.0.25 → pbesa-4.0.27}/examples/remote/mas/controller/__pycache__/translatedelegate.cpython-36.pyc +0 -0
  55. {pbesa-4.0.25 → pbesa-4.0.27}/examples/remote/mas/controller/__pycache__/translateresponse.cpython-36.pyc +0 -0
  56. {pbesa-4.0.25 → pbesa-4.0.27}/examples/remote/mas/controller/countercontroller.py +0 -0
  57. {pbesa-4.0.25 → pbesa-4.0.27}/examples/remote/mas/controller/counterdelegate.py +0 -0
  58. {pbesa-4.0.25 → pbesa-4.0.27}/examples/remote/mas/controller/counterresponse.py +0 -0
  59. {pbesa-4.0.25 → pbesa-4.0.27}/examples/remote/mas/worker/__pycache__/counteragent.cpython-36.pyc +0 -0
  60. {pbesa-4.0.25 → pbesa-4.0.27}/examples/remote/mas/worker/__pycache__/countertask.cpython-36.pyc +0 -0
  61. {pbesa-4.0.25 → pbesa-4.0.27}/examples/remote/mas/worker/__pycache__/translatetask.cpython-36.pyc +0 -0
  62. {pbesa-4.0.25 → pbesa-4.0.27}/examples/remote/mas/worker/__pycache__/workeragent.cpython-36.pyc +0 -0
  63. {pbesa-4.0.25 → pbesa-4.0.27}/examples/remote/mas/worker/counteragent.py +0 -0
  64. {pbesa-4.0.25 → pbesa-4.0.27}/examples/remote/mas/worker/countertask.py +0 -0
  65. {pbesa-4.0.25 → pbesa-4.0.27}/examples/remote/remote_a.py +0 -0
  66. {pbesa-4.0.25 → pbesa-4.0.27}/examples/remote/remote_b.py +0 -0
  67. {pbesa-4.0.25 → pbesa-4.0.27}/examples/remote/remote_c.py +0 -0
  68. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/__init__.py +0 -0
  69. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/celulas/__init__.py +0 -0
  70. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/celulas/celula_casos.py +0 -0
  71. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/celulas/celula_consultas.py +0 -0
  72. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/celulas/celula_datos_identificables.py +0 -0
  73. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/celulas/celula_expertos.py +0 -0
  74. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/celulas/celula_generar_documento.py +0 -0
  75. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/celulas/celula_preguntas.py +0 -0
  76. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/celulas/celula_saludos.py +0 -0
  77. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/celulas/celula_simulador_ciudadano.py +0 -0
  78. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/celulas/data_extraction_cel.py +0 -0
  79. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/celulas/web.py +0 -0
  80. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/kernel/__init__.py +0 -0
  81. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/kernel/adapter.py +0 -0
  82. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/kernel/agent.py +0 -0
  83. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/kernel/io/__init__.py +0 -0
  84. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/kernel/io/system_file.py +0 -0
  85. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/kernel/io/tcp_server.py +0 -0
  86. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/kernel/res/__init__.py +0 -0
  87. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/kernel/res/__pycache__/__init__.cpython-36.pyc +0 -0
  88. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/kernel/res/__pycache__/__init__.cpython-37.pyc +0 -0
  89. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/kernel/res/__pycache__/__init__.cpython-38.pyc +0 -0
  90. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/kernel/res/__pycache__/__init__.cpython-39.pyc +0 -0
  91. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/kernel/res/conf.json +0 -0
  92. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/kernel/util.py +0 -0
  93. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/kernel/world.py +0 -0
  94. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/mas.py +0 -0
  95. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/models.py +0 -0
  96. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/remote/__init__.py +0 -0
  97. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/remote/adm_listener.py +0 -0
  98. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/remote/adm_listener_handler.py +0 -0
  99. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/remote/exceptions.py +0 -0
  100. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/remote/remote_adm.py +0 -0
  101. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/remote/remote_adm_handler.py +0 -0
  102. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/social/__init__.py +0 -0
  103. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/social/collaborative_team.py +0 -0
  104. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/social/delegator.py +0 -0
  105. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/social/delegator_team.py +0 -0
  106. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/social/dialog.py +0 -0
  107. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/social/dispatcher_team.py +0 -0
  108. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/social/prompts.py +0 -0
  109. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/social/selected_dispatcher_team.py +0 -0
  110. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/social/templates.py +0 -0
  111. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa/social/worker.py +0 -0
  112. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa.egg-info/SOURCES.txt +0 -0
  113. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa.egg-info/dependency_links.txt +0 -0
  114. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa.egg-info/requires.txt +0 -0
  115. {pbesa-4.0.25 → pbesa-4.0.27}/pbesa.egg-info/top_level.txt +0 -0
  116. {pbesa-4.0.25 → pbesa-4.0.27}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: pbesa
3
- Version: 4.0.25
3
+ Version: 4.0.27
4
4
  License-File: LICENSE
5
5
  License-File: LICENSE.txt
6
6
  Requires-Dist: pymongo>=4.6.3
@@ -0,0 +1,58 @@
1
+ import logging
2
+
3
+ SYSTEM_PROMPT = """
4
+
5
+ Tu única tarea es clasificar el siguiente texto en una de dos categorías: `VEROSIMIL` o `ABSURDO`.
6
+
7
+ - **VEROSIMIL**: Asigna esta etiqueta si la situación descrita es lógicamente posible en el mundo real. No importa si la queja es tonta, extraña o legalmente débil. Si involucra sujetos y acciones que pueden existir y ocurrir, es verosímil.
8
+ - **ABSURDO**: Asigna esta etiqueta si la situación se basa en fantasía, viola las leyes de la física o la lógica, o aplica un concepto a un sujeto fundamentalmente incorrecto (ej. derechos humanos a un animal, acciones legales a un objeto inanimado).
9
+
10
+ **Regla clave para evitar la inversión:** La clasificación es sobre la **posibilidad lógica**, no sobre si el tema corresponde a la SIC, DIMAR, SNS, etc.
11
+ - Un caso sobre la SIC que es imposible -> `ABSURDO`.
12
+ - Un caso que NO es de la SIC pero es posible (ej. "el perro del vecino ladra") -> `VEROSIMIL`.
13
+
14
+ **Ejemplos:**
15
+
16
+ - Texto: "Quiero entablar una demanda ante la SNS porque mi EPS no me da medicamentos para mi Gato."
17
+ - Clasificación: **ABSURDO**
18
+
19
+ - Texto: "No puedo entrar a mi cuenta de Justifacil, olvidé la contraseña."
20
+ - Clasificación: **VEROSIMIL**
21
+
22
+ - Texto: "Quiero demandar al Banco porque no me genera un préstamo ya que soy un extraterrestre."
23
+ - Clasificación: **ABSURDO**
24
+
25
+ - Texto: "Quiero demandar a una empresa ante la SIC porque su logo es feo."
26
+ - Clasificación: **VEROSIMIL** (Es una queja posible, aunque subjetiva y probablemente sin futuro legal).
27
+
28
+ - Texto: "El perro de mi vecino ladra toda la noche y quiero poner una queja."
29
+ - Clasificación: **VEROSIMIL** (Es un problema real y posible, aunque no sea competencia de las entidades usuales).
30
+
31
+ - Texto: "Quiero demandar a la luna por seguirme a casa, ¿me ayuda la Dirección de Derecho de Autor?"
32
+ - Clasificación: **ABSURDO**
33
+
34
+ Responde únicamente con `VEROSIMIL` o `ABSURDO`.
35
+ """
36
+
37
+ # Efectua la inferencia del modelo.
38
+ def derive(service, text, max_tkns=4096) -> any:
39
+ try:
40
+ logging.info(f"Procesando: {text}")
41
+ tmp_work_memory = []
42
+ user_prompt = """
43
+ Texto: "%s"
44
+
45
+ Clasificación:
46
+ """ % text
47
+ tmp_work_memory.append({"role": "system", "content": SYSTEM_PROMPT})
48
+ tmp_work_memory.append({"role": "user", "content": user_prompt})
49
+ res = service.generate(tmp_work_memory, max_tokens=max_tkns)
50
+ logging.info(f"[Celula][Saludos][Respuesta]: {res}")
51
+ if not res or res == "":
52
+ res = text
53
+ logging.warning(f"[Celula][Saludos]: No obtener una respuesta.")
54
+ return res
55
+ except Exception as e:
56
+ logging.error(f"[Celula][Saludos]: Error al procesar: {text}")
57
+ logging.error(e)
58
+ return None
@@ -914,14 +914,14 @@ class Dialog(ABC):
914
914
  dicriminador = "consulta"
915
915
  per_res = celula_pertinencia.derive(self.__ai_service, query, max_tkns=10)
916
916
  if per_res and not per_res == "":
917
- if "NO_RELACIONADO" in per_res:
917
+ if "ABSURDO" in per_res:
918
918
  dicriminador = None
919
919
  res = msg
920
920
  elif es_caso and not es_saludo and not es_consulta:
921
921
  dicriminador = "caso"
922
922
  per_res = celula_pertinencia.derive(self.__ai_service, query, max_tkns=10)
923
923
  if per_res and not per_res == "":
924
- if "NO_RELACIONADO" in per_res:
924
+ if "ABSURDO" in per_res:
925
925
  dicriminador = None
926
926
  res = msg
927
927
 
@@ -930,14 +930,14 @@ class Dialog(ABC):
930
930
  dicriminador = "consulta"
931
931
  per_res = celula_pertinencia.derive(self.__ai_service, query, max_tkns=10)
932
932
  if per_res and not per_res == "":
933
- if "NO_RELACIONADO" in per_res:
933
+ if "ABSURDO" in per_res:
934
934
  dicriminador = None
935
935
  res = msg
936
936
  elif es_saludo and es_caso and not es_consulta:
937
937
  dicriminador = "caso"
938
938
  per_res = celula_pertinencia.derive(self.__ai_service, query, max_tkns=10)
939
939
  if per_res and not per_res == "":
940
- if "NO_RELACIONADO" in per_res:
940
+ if "ABSURDO" in per_res:
941
941
  dicriminador = None
942
942
  res = msg
943
943
 
@@ -948,7 +948,7 @@ class Dialog(ABC):
948
948
  ambiguedad = True
949
949
  per_res = celula_pertinencia.derive(self.__ai_service, query, max_tkns=10)
950
950
  if per_res and not per_res == "":
951
- if "NO_RELACIONADO" in per_res:
951
+ if "ABSURDO" in per_res:
952
952
  dicriminador = None
953
953
  res = msg
954
954
  ambiguedad = False
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: pbesa
3
- Version: 4.0.25
3
+ Version: 4.0.27
4
4
  License-File: LICENSE
5
5
  License-File: LICENSE.txt
6
6
  Requires-Dist: pymongo>=4.6.3
@@ -4,7 +4,7 @@ from setuptools import setup, find_packages
4
4
 
5
5
  setup(
6
6
  name='pbesa',
7
- version='4.0.25',
7
+ version='4.0.27',
8
8
  packages=find_packages(),
9
9
  install_requires=[
10
10
  'pymongo>=4.6.3',
@@ -1,66 +0,0 @@
1
- import logging
2
-
3
- SYSTEM_PROMPT = """
4
-
5
- Eres un clasificador de temas relacionados con funciones jurisdiccionales en Colombia y funcionalidades del sistema Justifacil. Tu tarea es analizar el siguiente texto y determinar si está relacionado con alguno de los siguientes elementos:
6
-
7
- 1. Temas procesales o jurisdiccionales en Colombia que involucren entidades como:
8
- - Superintendencia de Industria y Comercio (SIC)
9
- - Dirección General Marítima (DIMAR)
10
- - Dirección Nacional de Derecho de Autor (DNDA)
11
- - Instituto Colombiano Agropecuario (ICA)
12
- - Superintendencia Financiera de Colombia (SFC)
13
- - Superintendencia Nacional de Salud (SNS)
14
- - Superintendencia de Sociedades
15
-
16
- 2. Funcionalidades del sistema Justifacil, incluyendo:
17
- - Creación de cuenta
18
- - Inicio de sesión (login)
19
- - Recuperación de contraseña
20
- - Radicación de trámites asociados a procesos
21
- - Gestión de expedientes
22
- - Alertas procesales o de Justifiacil
23
- - Glosario de términos jurídicos
24
- - Sección de preguntas frecuentes
25
- - Contacto con soporte técnico
26
- - Temas de observatorio judicial
27
-
28
- Responde únicamente con una de estas opciones:
29
-
30
- - RELACIONADO
31
- - NO_RELACIONADO
32
-
33
- **Definición de RELACIONADO**: Un texto es relacionado si aborda directamente alguno de los temas o funcionalidades mencionadas, aunque lo haga con sinónimos o lenguaje cotidiano. Debe tener contexto jurídico, procesal o funcional vinculado a los puntos anteriores.
34
-
35
- Ejemplos:
36
-
37
- - "¿Cómo radico un proceso ante la SIC?" → RELACIONADO
38
- - "No puedo entrar a Justifacil con mi contraseña" → RELACIONADO
39
- - "Qué entidades pueden sancionar a empresas en Colombia" → RELACIONADO
40
- - "Necesito registrar mi usuario en la plataforma" → RELACIONADO
41
- - "¿Cuál es el clima hoy en Bogotá?" → NO_RELACIONADO
42
- - "Estoy buscando ayuda con mi hoja de vida" → NO_RELACIONADO
43
- """
44
-
45
- # Efectua la inferencia del modelo.
46
- def derive(service, text, max_tkns=4096) -> any:
47
- try:
48
- logging.info(f"Procesando: {text}")
49
- tmp_work_memory = []
50
- user_prompt = """
51
- Texto: "%s"
52
-
53
- Clasificación:
54
- """ % text
55
- tmp_work_memory.append({"role": "system", "content": SYSTEM_PROMPT})
56
- tmp_work_memory.append({"role": "user", "content": user_prompt})
57
- res = service.generate(tmp_work_memory, max_tokens=max_tkns)
58
- logging.info(f"[Celula][Saludos][Respuesta]: {res}")
59
- if not res or res == "":
60
- res = text
61
- logging.warning(f"[Celula][Saludos]: No obtener una respuesta.")
62
- return res
63
- except Exception as e:
64
- logging.error(f"[Celula][Saludos]: Error al procesar: {text}")
65
- logging.error(e)
66
- return None
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes