zhaoqingang
2025-03-31 b663fe4535cdb13a28936ea21d908e9191a64c16
问题优化
6个文件已修改
28 ■■■■ 已修改文件
app/api/v2/chat.py 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/config/const.py 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/config/env_conf/default_agent_conf.json 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/models/v2/chat.py 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/service/v2/chat.py 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/service/v2/initialize_data.py 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
app/api/v2/chat.py
@@ -6,7 +6,8 @@
from sqlalchemy.orm import Session
from starlette.responses import StreamingResponse, Response
from app.api import get_current_user, get_api_key
from app.config.const import smart_message_error, http_400, http_500, http_200, complex_dialog_chat
from app.config.const import smart_message_error, http_400, http_500, http_200, complex_dialog_chat, \
    complex_knowledge_chat_deep, complex_knowledge_chat
from app.models import UserModel
from app.models.base_model import get_db
from app.models.v2.chat import RetrievalRequest, ChatDataRequest, ComplexChatDao
@@ -134,6 +135,9 @@
@chat_router_v2.post("/complex/chat/completions")
async def api_complex_chat_completions(chat: ChatDataRequest, current_user: UserModel = Depends(get_current_user), db: Session = Depends(get_db)): #  current_user: UserModel = Depends(get_current_user)
    # chat_mode = chat.chatMode
    if chat.isDeep == 2 and chat.chatMode == complex_knowledge_chat:
        chat.chatMode = complex_knowledge_chat_deep
    complex_chat = await ComplexChatDao(db).get_complex_chat_by_mode(chat.chatMode)
    if complex_chat:
        if not chat.sessionId:
app/config/const.py
@@ -125,6 +125,8 @@
complex_clean_chat = 7 # 清洗
complex_title_chat = 8 # 小标题
complex_report_chat = 9 # 报告
complex_knowledge_chat_deep = 10 # 知识库对话-深度对话
### --------------------------------basic develop agent---------------------------------------------------
basic_report_talk ="basic_report_talk"
app/config/env_conf/default_agent_conf.json
@@ -227,6 +227,17 @@
      },
      "dialogType": "4",
      "mode": "complex-chat"
    },
    {
      "id": "8f3e8d9c0bab11f0896e0242ac120006",
      "name": "知识库专家-深度",
      "description": "知识库专家",
      "icon": "intellFrame4",
      "chat_mode": 10,
      "parameters": {
      },
      "dialogType": "1",
      "mode": "complex-chat"
    }
  ]
}
app/models/v2/chat.py
@@ -6,7 +6,7 @@
from sqlalchemy import Column, Integer, String, BigInteger, ForeignKey, DateTime, Text, TEXT
from sqlalchemy.orm import Session
from app.config.const import Dialog_STATSU_DELETE, Dialog_STATSU_ON, complex_knowledge_chat
from app.config.const import Dialog_STATSU_DELETE, Dialog_STATSU_ON, complex_knowledge_chat, complex_knowledge_chat_deep
from app.models.base_model import Base
from app.utils.common import current_time
@@ -198,7 +198,7 @@
                "isDeep": query.get("isDeep", 1),
                "mindmap": True if self.mindmap else False,
            }
            if self.chat_mode == complex_knowledge_chat:
            if self.chat_mode == complex_knowledge_chat or self.chat_mode == complex_knowledge_chat_deep:
                res['reference'] = json.loads(self.node_data) if self.node_data else {}
            else:
                res['node_list'] = json.loads(self.node_data) if self.node_data else []
app/service/v2/chat.py
@@ -550,7 +550,7 @@
    query_data["parentId"] = new_message_id
    try:
        if chat_request.chatMode == complex_knowledge_chat:
        if chat_request.chatMode == complex_knowledge_chat or chat_request.chatMode == complex_knowledge_chat_deep:
            if not conversation_id:
                session = await service_chat_sessions(db, chat_id, chat_request.query)
                # print(session)
app/service/v2/initialize_data.py
@@ -10,7 +10,7 @@
from app.config.agent_base_url import RG_APP_TOKEN_LIST, RG_APP_NEW_TOKEN, DF_CHAT_API_KEY
# from app.api import pwd_context
from app.config.const import DIFY, ENV_CONF_PATH, RAGFLOW, smart_server, chat_server, workflow_server, TMP_DICT, \
    rg_api_token
    rg_api_token, Dialog_STATSU_ON
from app.models import MenuCapacityModel, WebMenuModel, GroupModel, RoleModel, DialogModel, UserModel, UserAppModel, \
    cipher_suite, UserTokenModel, ApiTokenModel, ComplexChatModel
from app.service.auth import UserAppDao
@@ -172,6 +172,7 @@
                dialog.icon = agent["icon"]
                dialog.mode = agent["mode"]
                dialog.chat_mode = agent["chat_mode"]
                dialog.status = Dialog_STATSU_ON
                # dialog.parameters = json.dumps(agent["parameters"])
                db.commit()
            except Exception as e: