AIdeaText commited on
Commit
4713c81
·
verified ·
1 Parent(s): 2c23a8a

Update modules/chatbot/chat_process.py

Browse files
Files changed (1) hide show
  1. modules/chatbot/chat_process.py +23 -1
modules/chatbot/chat_process.py CHANGED
@@ -15,10 +15,32 @@ class ChatProcessor:
15
  raise ValueError("No se encontró la clave API de Anthropic. Asegúrate de configurarla en las variables de entorno.")
16
  self.client = anthropic.Anthropic(api_key=api_key)
17
  self.conversation_history = []
 
 
 
 
 
 
 
 
 
18
 
19
  def process_chat_input(self, message: str, lang_code: str) -> Generator[str, None, None]:
20
- """Procesa el mensaje y genera una respuesta"""
21
  try:
 
 
 
 
 
 
 
 
 
 
 
 
 
22
  # Agregar mensaje a la historia
23
  self.conversation_history.append({"role": "user", "content": message})
24
 
 
15
  raise ValueError("No se encontró la clave API de Anthropic. Asegúrate de configurarla en las variables de entorno.")
16
  self.client = anthropic.Anthropic(api_key=api_key)
17
  self.conversation_history = []
18
+
19
+ def set_semantic_context(self, text, metrics, graph_data):
20
+ """Configura el contexto semántico para conversaciones especializadas"""
21
+ self.semantic_context = {
22
+ 'text_sample': text[:2000],
23
+ 'key_concepts': metrics.get('key_concepts', []),
24
+ 'concept_centrality': metrics.get('concept_centrality', {}),
25
+ 'graph_description': "Available" if graph_data else "Not available"
26
+ }
27
 
28
  def process_chat_input(self, message: str, lang_code: str) -> Generator[str, None, None]:
29
+ """Procesa el mensaje con contexto semántico si está disponible"""
30
  try:
31
+ # Preparar mensaje con contexto si existe
32
+ if self.semantic_context:
33
+ system_prompt = f"""
34
+ Eres un asistente especializado en análisis semántico. El usuario ha analizado un texto con los siguientes resultados:
35
+ - Conceptos clave: {', '.join([c[0] for c in self.semantic_context['key_concepts'][:5]])}...
36
+ - Centralidad: {len(self.semantic_context['concept_centrality'])} conceptos medidos
37
+ - Grafo conceptual: {self.semantic_context['graph_description']}
38
+
39
+ Responde preguntas específicas sobre este análisis y ayuda a interpretar los resultados.
40
+ """
41
+ else:
42
+ system_prompt = "Eres un asistente útil. Responde preguntas generales del usuario."
43
+
44
  # Agregar mensaje a la historia
45
  self.conversation_history.append({"role": "user", "content": message})
46