Просмотр исходного кода

Check if aiAssistantid is available if requested

Shun Miyazawa 1 год назад
Родитель
Сommit
87efb7e85b
1 измененных файлов с 11 добавлено и 1 удалено
  1. 11 1
      apps/app/src/features/openai/server/routes/edit/index.ts

+ 11 - 1
apps/app/src/features/openai/server/routes/edit/index.ts

@@ -81,7 +81,9 @@ export const postMessageToEditHandlersFactory: PostMessageHandlersFactory = (cro
   return [
     accessTokenParser, loginRequiredStrictly, certifyAiService, validator, apiV3FormValidator,
     async(req: Req, res: ApiV3Response) => {
-      const { userMessage, markdown, threadId } = req.body;
+      const {
+        userMessage, markdown, threadId, aiAssistantId,
+      } = req.body;
 
       // Parameter check
       if (threadId == null) {
@@ -94,6 +96,14 @@ export const postMessageToEditHandlersFactory: PostMessageHandlersFactory = (cro
         return res.apiv3Err(new ErrorV3('GROWI AI is not enabled'), 501);
       }
 
+      // AiAssistant check
+      if (aiAssistantId != null) {
+        const isAiAssistantUsable = await openaiService.isAiAssistantUsable(aiAssistantId, req.user);
+        if (!isAiAssistantUsable) {
+          return res.apiv3Err(new ErrorV3('The specified AI assistant is not usable'), 400);
+        }
+      }
+
       // Initialize SSE helper and stream processor
       const sseHelper = new SseHelper(res);
       const streamProcessor = new LlmResponseStreamProcessor({