接入dify工作流内容

This commit is contained in:
liuwei
2025-03-13 15:57:14 +08:00
parent f919a78068
commit 25ace47b08

View File

@@ -64,11 +64,12 @@ class DifyChat:
# 如果没有查询内容,返回使用提示
if len(parts) < 2 or not parts[1].strip():
self.wcf.send_text(self.command_tip,
(message.roomid if message.from_group() else message.sender))
(message.roomid if message.from_group() else message.sender))
return
# 检查权限
if message.from_group() and self.gbm.get_group_permission(message.roomid, Feature.AI_CAPABILITY) == PermissionStatus.DISABLED:
if message.from_group() and self.gbm.get_group_permission(message.roomid,
Feature.AI_CAPABILITY) == PermissionStatus.DISABLED:
return
# 获取查询内容
@@ -102,13 +103,13 @@ class DifyChat:
# 发送回复
if response:
self.wcf.send_text(response,
(message.roomid if message.from_group() else message.sender),
message.sender if message.from_group() else "")
(message.roomid if message.from_group() else message.sender),
message.sender if message.from_group() else "")
except Exception as e:
self.LOG.error(f"Dify聊天出错{e}")
self.wcf.send_text(f"-----Bot-----\n❌请求出错:{str(e)}",
(message.roomid if message.from_group() else message.sender),
message.sender if message.from_group() else "")
(message.roomid if message.from_group() else message.sender),
message.sender if message.from_group() else "")
def chat_with_dify(self, session_id: str, user_id: str, query: str) -> Optional[str]:
"""
@@ -144,7 +145,7 @@ class DifyChat:
"query": query,
"sys.files": [],
"user": user_id,
"inputs":{},
"inputs": { "query": query},
"response_mode": "streaming", # 使用流式响应
"conversation_id": session_id # 使用会话ID保持上下文
}
@@ -239,7 +240,8 @@ class DifyChat:
else:
self.token_usage[user_id] = total_tokens
self.LOG.info(f"用户 {user_id} 本次消耗 {total_tokens} tokens累计 {self.token_usage[user_id]} tokens")
self.LOG.info(
f"用户 {user_id} 本次消耗 {total_tokens} tokens累计 {self.token_usage[user_id]} tokens")
return answer