ChAbhishek28 commited on
Commit
8a7d04a
·
1 Parent(s): 5806256

Fix import error: replace hybrid_rag_service with available services

Browse files
Files changed (1) hide show
  1. groq_websocket_handler.py +17 -8
groq_websocket_handler.py CHANGED
@@ -16,7 +16,8 @@ import uuid
16
 
17
  from fastapi import WebSocket, WebSocketDisconnect
18
  from groq_voice_service import groq_voice_service
19
- from rag_service import hybrid_rag_service
 
20
 
21
  logger = logging.getLogger("voicebot")
22
 
@@ -24,6 +25,7 @@ class GroqWebSocketHandler:
24
  def __init__(self):
25
  self.active_connections: Dict[str, WebSocket] = {}
26
  self.user_sessions: Dict[str, Dict] = {}
 
27
 
28
  async def connect(self, websocket: WebSocket, session_id: str = None):
29
  """Accept WebSocket connection and initialize session"""
@@ -221,17 +223,24 @@ class GroqWebSocketHandler:
221
 
222
  if query_context["requires_documents"]:
223
  logger.info(f"📄 Document search required for: {query}")
224
- response_data = await hybrid_rag_service.search_and_generate_response(
225
- query=query,
226
- user_language=language,
227
- conversation_history=self.user_sessions[session_id]["conversation_history"][-5:] # Last 5 messages
 
 
 
 
228
  )
 
229
  else:
230
  logger.info(f"💬 General query: {query}")
231
- response_data = await hybrid_rag_service.generate_simple_response(
232
- query=query,
233
- user_language=language
 
234
  )
 
235
 
236
  processing_time = time.time() - processing_start
237
 
 
16
 
17
  from fastapi import WebSocket, WebSocketDisconnect
18
  from groq_voice_service import groq_voice_service
19
+ from rag_service import search_documents_async
20
+ from hybrid_llm_service import HybridLLMService
21
 
22
  logger = logging.getLogger("voicebot")
23
 
 
25
  def __init__(self):
26
  self.active_connections: Dict[str, WebSocket] = {}
27
  self.user_sessions: Dict[str, Dict] = {}
28
+ self.llm_service = HybridLLMService()
29
 
30
  async def connect(self, websocket: WebSocket, session_id: str = None):
31
  """Accept WebSocket connection and initialize session"""
 
223
 
224
  if query_context["requires_documents"]:
225
  logger.info(f"📄 Document search required for: {query}")
226
+ # Get relevant documents
227
+ documents = await search_documents_async(query, limit=3)
228
+ context = "\n".join([doc.get("content", "") for doc in documents])
229
+
230
+ # Generate response with context
231
+ response_text = await self.llm_service.get_response(
232
+ message=query,
233
+ context=context
234
  )
235
+ response_data = {"response": response_text}
236
  else:
237
  logger.info(f"💬 General query: {query}")
238
+ # Generate simple response without documents
239
+ response_text = await self.llm_service.get_response(
240
+ message=query,
241
+ context=""
242
  )
243
+ response_data = {"response": response_text}
244
 
245
  processing_time = time.time() - processing_start
246