Charles Grandjean commited on
Commit
4aac7f6
Β·
1 Parent(s): d3e78b7

add logging

Browse files
Files changed (2) hide show
  1. agent_api.py +53 -0
  2. agents/chat_agent.py +2 -1
agent_api.py CHANGED
@@ -340,6 +340,20 @@ class CyberLegalAPI:
340
  error=result.get("error")
341
  )
342
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
343
  logger.info(f"πŸ“€ Returning response to user")
344
  return response
345
 
@@ -416,6 +430,28 @@ class CyberLegalAPI:
416
  error=result.get("error")
417
  )
418
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
419
  logger.info(f"βœ… PDF analysis completed in {processing_time:.2f}s")
420
  return response
421
 
@@ -539,6 +575,23 @@ class CyberLegalAPI:
539
  error=None if result['success'] else result.get('message')
540
  )
541
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
542
  logger.info("=" * 80)
543
  logger.info("βœ… DOCUMENT EDITING COMPLETED SUCCESSFULLY")
544
  logger.info("=" * 80)
 
340
  error=result.get("error")
341
  )
342
 
343
+ # Log detailed response being sent to client
344
+ logger.info("=" * 80)
345
+ logger.info("πŸ“€ SENDING CHAT RESPONSE TO CLIENT")
346
+ logger.info("=" * 80)
347
+ logger.info(f"πŸ‘€ User ID: {request.userId}")
348
+ logger.info(f"πŸ“… Timestamp: {response.timestamp}")
349
+ logger.info(f"⏱️ Processing time: {response.processing_time:.2f}s")
350
+ logger.info(f"πŸ“ Response length: {len(response.response)} characters")
351
+ logger.info(f"πŸ’¬ Response preview (first 200 chars): {response.response}")
352
+ if response.error:
353
+ logger.warning(f"⚠️ Error in response: {response.error}")
354
+ logger.info(f"πŸ”’ Full response object: {response.model_dump()}")
355
+ logger.info("=" * 80)
356
+
357
  logger.info(f"πŸ“€ Returning response to user")
358
  return response
359
 
 
430
  error=result.get("error")
431
  )
432
 
433
+ # Log detailed response being sent to client
434
+ logger.info("=" * 80)
435
+ logger.info("πŸ“€ SENDING ANALYZE_PDF RESPONSE TO CLIENT")
436
+ logger.info("=" * 80)
437
+ logger.info(f"πŸ‘€ User ID: {request.userId}")
438
+ logger.info(f"πŸ“„ Filename: {request.filename}")
439
+ logger.info(f"πŸ“… Timestamp: {response.timestamp}")
440
+ logger.info(f"⏱️ Processing time: {response.processing_time:.2f}s")
441
+ logger.info(f"🎭 Actors: {response.actors}")
442
+ logger.info(f"πŸ”‘ Key details: {response.key_details}")
443
+ logger.info(f"πŸ“ Summary: {response.summary}")
444
+ if response.extracted_text:
445
+ logger.info(f"πŸ“„ Extracted text length: {len(response.extracted_text)} characters")
446
+ logger.info(f"πŸ“ Extracted text preview (first 200 chars): {response.extracted_text[:200]}...")
447
+ logger.info(f"πŸ“ Extracted text preview (last 200 chars): ...{response.extracted_text[-200:]}")
448
+ else:
449
+ logger.info("πŸ“„ Extracted text: None")
450
+ if response.error:
451
+ logger.warning(f"⚠️ Error in response: {response.error}")
452
+ logger.info(f"πŸ”’ Full response object: {response.model_dump()}")
453
+ logger.info("=" * 80)
454
+
455
  logger.info(f"βœ… PDF analysis completed in {processing_time:.2f}s")
456
  return response
457
 
 
575
  error=None if result['success'] else result.get('message')
576
  )
577
 
578
+ # Log detailed response being sent to client
579
+ logger.info("=" * 80)
580
+ logger.info("πŸ“€ SENDING DOC_CREATOR RESPONSE TO CLIENT")
581
+ logger.info("=" * 80)
582
+ logger.info(f"πŸ‘€ User ID: {request.userId}")
583
+ logger.info(f"πŸ“… Timestamp: {response.timestamp}")
584
+ logger.info(f"⏱️ Processing time: {response.processing_time:.2f}s")
585
+ logger.info(f"πŸ’¬ Response message: {response.response}")
586
+ if response.modifiedDocument:
587
+ logger.info(f"πŸ“„ Modified document size: {len(response.modifiedDocument)} bytes")
588
+ logger.info(f"πŸ“ Document preview (first 200 chars): {response.modifiedDocument[:200]}...")
589
+ logger.info(f"πŸ“ Document preview (last 200 chars): ...{response.modifiedDocument[-200:]}")
590
+ else:
591
+ logger.info("πŸ“„ Modified document: None")
592
+ if response.error:
593
+ logger.warning(f"⚠️ Error in response: {response.error}")
594
+ logger.info(f"πŸ”’ Full response object: {response.model_dump()}")
595
  logger.info("=" * 80)
596
  logger.info("βœ… DOCUMENT EDITING COMPLETED SUCCESSFULLY")
597
  logger.info("=" * 80)
agents/chat_agent.py CHANGED
@@ -24,7 +24,8 @@ class CyberLegalAgent:
24
  self.tools_facade = tools_facade
25
  self.llm = llm
26
  self.performance_monitor = PerformanceMonitor()
27
- self.llm_with_tools = self.llm.bind_tools(self.tools_facade)
 
28
  self.workflow = self._build_workflow()
29
 
30
  def _build_workflow(self) -> StateGraph:
 
24
  self.tools_facade = tools_facade
25
  self.llm = llm
26
  self.performance_monitor = PerformanceMonitor()
27
+ # Constrain to one tool call at a time
28
+ self.llm_with_tools = self.llm.bind_tools(self.tools_facade, parallel_tool_calls=False)
29
  self.workflow = self._build_workflow()
30
 
31
  def _build_workflow(self) -> StateGraph: