mindmap.py 1.4 KB

12345678910111213141516171819202122232425262728293031
  1. import json
  2. import uuid
  3. from typing import List
  4. from fastapi import Depends, APIRouter, File, UploadFile
  5. from sqlalchemy.orm import Session
  6. from werkzeug.http import HTTP_STATUS_CODES
  7. from app.api import get_current_user, get_api_key, Response
  8. from app.config.const import dialog_chat, advanced_chat, base_chat, agent_chat, workflow_chat, basic_chat, \
  9. smart_message_error, http_400, http_500, http_200, complex_mindmap_chat
  10. from app.models import UserModel
  11. from app.models.base_model import get_db
  12. from app.models.v2.chat import RetrievalRequest, ComplexChatDao
  13. from app.models.v2.mindmap import MindmapRequest
  14. from app.models.v2.session_model import ChatData
  15. from app.service.v2.mindmap import service_chat_mindmap
  16. mind_map_router = APIRouter()
  17. @mind_map_router.post("/create", response_model=Response)
  18. async def api_chat_mindmap(mindmap: MindmapRequest, current_user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): # current_user: UserModel = Depends(get_current_user)
  19. complex_chat = await ComplexChatDao(db).get_complex_chat_by_mode(complex_mindmap_chat)
  20. if complex_chat:
  21. data = await service_chat_mindmap(db, mindmap.messageId, mindmap.query, complex_chat.id,current_user.id)
  22. if not data:
  23. return Response(code=500, msg="create failure", data={})
  24. else:
  25. return Response(code=500, msg="网络异常!failure", data={})
  26. return Response(code=200, msg="create success", data=data)