From 7c53602c08653168764d98272c15e746da619d74 Mon Sep 17 00:00:00 2001 From: Jeremy Yin Date: Fri, 15 Mar 2024 22:37:35 +0800 Subject: [PATCH] add message limit --- simplylab/services/chat.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/simplylab/services/chat.py b/simplylab/services/chat.py index 2c417a8..89d771f 100644 --- a/simplylab/services/chat.py +++ b/simplylab/services/chat.py @@ -4,7 +4,7 @@ from loguru import logger from simplylab.entity import GetAiChatResponseInput, GetUserChatHistoryInput, GetChatStatusTodayInput, UserChatMessage, \ GetChatStatusTodayOutput, GetAiChatResponseOutput, GetUserChatHistoryOutput, Context, Message, MessageRoleType -from simplylab.error import MessageLimitedInDailyError +from simplylab.error import MessageLimitedInDailyError, MessageLimitedIn30SecondsError from simplylab.providers import Providers @@ -14,6 +14,11 @@ class ChatService: self.pvd = provider async def get_ai_chat_response(self, req: GetAiChatResponseInput) -> GetAiChatResponseOutput: + if self.pvd.chat.check_user_message_limited_in_30_seconds(self.ctx.user.id): + raise MessageLimitedIn30SecondsError() + if self.pvd.chat.check_user_message_limited_in_daily(self.ctx.user.id): + raise MessageLimitedInDailyError() + request_content = req.message # todo: request content middle out response_content = await self.pvd.openrouter.chat(content=request_content)