CzRger пре 1 месец
родитељ
комит
3235403cd7
1 измењених фајлова са 19 додато и 6 уклоњено
  1. 19 6
      src/views/smart-ask-answer/assistant-2/chat.vue

+ 19 - 6
src/views/smart-ask-answer/assistant-2/chat.vue

@@ -79,11 +79,18 @@ const state: any = reactive({
   goodMap: new Map(),
   badMap: new Map(),
   autoList: [],
-  chatConfig: {}
+  chatConfig: {},
+  isSuggest: true
 })
 const ref_text = ref()
 const ref_chatMsg = ref()
 const ref_auto = ref()
+const scrollToEnd = () => {
+  ref_chatMsg.value.scrollTo({
+    top: ref_chatMsg.value.scrollHeight,
+    behavior: 'smooth'
+  });
+}
 const onSend = (text = '') => {
   if ((isValue(state.text.trim()) || text) && !state.loading) {
     state.loading = true
@@ -93,6 +100,14 @@ const onSend = (text = '') => {
       state.params.query = state.text + ''
       state.text = ''
     }
+    state.isSuggest = true
+    if (state.chatConfig.sensitive_word_avoidance.enabled && state.chatConfig.sensitive_word_avoidance.type === 'keywords') {
+      state.chatConfig.sensitive_word_avoidance.config.keywords.split('\n').forEach(v => {
+        if (state.params.query.includes(v)) {
+          state.isSuggest = false
+        }
+      })
+    }
     emit('getText', state.params.query)
     const ask = {
       type: 'ask',
@@ -111,10 +126,7 @@ const onSend = (text = '') => {
     }, {
       onData: (message: string, isFirstMessage: boolean, { conversationId: newConversationId, messageId, taskId }: any) => {
         answer.content += message
-        ref_chatMsg.value.scrollTo({
-          top: ref_chatMsg.value.scrollHeight,
-          behavior: 'smooth'
-        });
+        scrollToEnd()
       },
       onFile(file) {},
       onThought(thought) {},
@@ -126,9 +138,10 @@ const onSend = (text = '') => {
         answer.messageId = messageEnd.message_id
         state.params.parent_message_id = messageEnd.message_id
         state.loading = false
-        if (state.chatConfig?.suggested_questions_after_answer?.enabled) {
+        if (state.chatConfig?.suggested_questions_after_answer?.enabled && state.isSuggest) {
           fetchSuggestedQuestions(state.params.parent_message_id, true, window.czrConfig.dify.appId).then((res: any) => {
             answer.suggest = res.data
+            scrollToEnd()
           })
         }
       },