Create a new chat session
(self)
| 243 | self.send_json_response({"error": f"Failed to get documents: {str(e)}"}, status_code=500) |
| 244 | |
| 245 | def handle_create_session(self): |
| 246 | """Create a new chat session""" |
| 247 | try: |
| 248 | content_length = int(self.headers['Content-Length']) |
| 249 | post_data = self.rfile.read(content_length) |
| 250 | data = json.loads(post_data.decode('utf-8')) |
| 251 | |
| 252 | title = data.get('title', 'New Chat') |
| 253 | model = data.get('model', 'llama3.2:latest') |
| 254 | |
| 255 | session_id = db.create_session(title, model) |
| 256 | session = db.get_session(session_id) |
| 257 | |
| 258 | self.send_json_response({ |
| 259 | "session": session, |
| 260 | "session_id": session_id |
| 261 | }, status_code=201) |
| 262 | |
| 263 | except json.JSONDecodeError: |
| 264 | self.send_json_response({ |
| 265 | "error": "Invalid JSON" |
| 266 | }, status_code=400) |
| 267 | except Exception as e: |
| 268 | self.send_json_response({ |
| 269 | "error": f"Failed to create session: {str(e)}" |
| 270 | }, status_code=500) |
| 271 | |
| 272 | def handle_session_chat(self, session_id: str): |
| 273 | """ |
no test coverage detected