| 
														 | 
														 | 
														 | 
														 | 
														 | 
													
													
												
													
														 | 
														 | 
														from flask import request, Response | 
														 | 
														 | 
														from flask import request, Response | 
													
													
												
													
														 | 
														 | 
														from flask_login import login_required, current_user | 
														 | 
														 | 
														from flask_login import login_required, current_user | 
													
													
												
													
														 | 
														 | 
														from api.db.services.canvas_service import CanvasTemplateService, UserCanvasService | 
														 | 
														 | 
														from api.db.services.canvas_service import CanvasTemplateService, UserCanvasService | 
													
													
												
													
														 | 
														 | 
														 | 
														 | 
														 | 
														from api.db.services.dialog_service import full_question | 
													
													
												
													
														 | 
														 | 
														 | 
														 | 
														 | 
														from api.db.services.user_service import TenantService | 
													
													
												
													
														 | 
														 | 
														from api.settings import RetCode | 
														 | 
														 | 
														from api.settings import RetCode | 
													
													
												
													
														 | 
														 | 
														from api.utils import get_uuid | 
														 | 
														 | 
														from api.utils import get_uuid | 
													
													
												
													
														 | 
														 | 
														from api.utils.api_utils import get_json_result, server_error_response, validate_request, get_data_error_result | 
														 | 
														 | 
														from api.utils.api_utils import get_json_result, server_error_response, validate_request, get_data_error_result | 
													
													
												
											
												
													
														 | 
														 | 
														 | 
														 | 
														 | 
														 | 
													
													
												
													
														 | 
														 | 
														        canvas = Canvas(cvs.dsl, current_user.id) | 
														 | 
														 | 
														        canvas = Canvas(cvs.dsl, current_user.id) | 
													
													
												
													
														 | 
														 | 
														        if "message" in req: | 
														 | 
														 | 
														        if "message" in req: | 
													
													
												
													
														 | 
														 | 
														            canvas.messages.append({"role": "user", "content": req["message"], "id": message_id}) | 
														 | 
														 | 
														            canvas.messages.append({"role": "user", "content": req["message"], "id": message_id}) | 
													
													
												
													
														 | 
														 | 
														 | 
														 | 
														 | 
														            if len([m for m in canvas.messages if m["role"] == "user"]) > 1: | 
													
													
												
													
														 | 
														 | 
														 | 
														 | 
														 | 
														                ten = TenantService.get_by_user_id(current_user.id)[0] | 
													
													
												
													
														 | 
														 | 
														 | 
														 | 
														 | 
														                req["message"] = full_question(ten["tenant_id"], ten["llm_id"], canvas.messages) | 
													
													
												
													
														 | 
														 | 
														            canvas.add_user_input(req["message"]) | 
														 | 
														 | 
														            canvas.add_user_input(req["message"]) | 
													
													
												
													
														 | 
														 | 
														        answer = canvas.run(stream=stream) | 
														 | 
														 | 
														        answer = canvas.run(stream=stream) | 
													
													
												
													
														 | 
														 | 
														        print(canvas) | 
														 | 
														 | 
														        print(canvas) |