feat: hello plugin support system prompt

This commit is contained in:
zhayujie
2023-11-29 17:41:14 +08:00
parent 6e0d2f9437
commit 865e4b5349
4 changed files with 8 additions and 9 deletions

View File

@@ -370,12 +370,9 @@ class LinkAISessionManager(SessionManager):
class LinkAISession(ChatGPTSession):
def calc_tokens(self):
try:
cur_tokens = super().calc_tokens()
except Exception as e:
logger.debug("Exception when counting tokens precisely for query: {}".format(e))
cur_tokens = len(str(self.messages))
return cur_tokens
if not self.messages:
return 0
return len(str(self.messages))
def discard_exceeding(self, max_tokens, cur_tokens=None):
cur_tokens = self.calc_tokens()

View File

@@ -184,8 +184,6 @@ class ChatChannel(Channel):
reply = e_context["reply"]
if not e_context.is_pass():
logger.debug("[WX] ready to handle context: type={}, content={}".format(context.type, context.content))
if e_context.is_break():
context["generate_breaked_by"] = e_context["breaked_by"]
if context.type == ContextType.TEXT or context.type == ContextType.IMAGE_CREATE: # 文字和图片消息
context["channel"] = e_context["channel"]
reply = super().build_reply_content(context.content, context)

View File

@@ -22,6 +22,7 @@ class Hello(Plugin):
super().__init__()
self.handlers[Event.ON_HANDLE_CONTEXT] = self.on_handle_context
logger.info("[Hello] inited")
self.config = super().load_config()
def on_handle_context(self, e_context: EventContext):
if e_context["context"].type not in [
@@ -30,7 +31,8 @@ class Hello(Plugin):
ContextType.PATPAT,
]:
return
if not self.config or not self.config.get("use_character_desc"):
e_context["context"]["generate_breaked_by"] = EventAction.BREAK
if e_context["context"].type == ContextType.JOIN_GROUP:
if "group_welcome_msg" in conf():
reply = Reply()

View File

@@ -88,6 +88,8 @@ class MJBot:
context = e_context['context']
if context.type == ContextType.TEXT:
cmd_list = context.content.split(maxsplit=1)
if not cmd_list:
return None
if cmd_list[0].lower() == f"{trigger_prefix}mj":
return TaskType.GENERATE
elif cmd_list[0].lower() == f"{trigger_prefix}mju":