balibabu commited on
Commit
830bf29
·
1 Parent(s): a9e3dcb

feat: fixed the issue where chat greetings could not appear (#95)

Browse files
web/src/components/similarity-slider/index.tsx CHANGED
@@ -5,20 +5,26 @@ type FieldType = {
5
  vector_similarity_weight?: number;
6
  };
7
 
8
- const SimilaritySlider = () => {
 
 
 
 
9
  return (
10
  <>
11
  <Form.Item<FieldType>
12
  label="Similarity threshold"
13
  name={'similarity_threshold'}
14
- initialValue={0}
 
15
  >
16
  <Slider max={1} step={0.01} />
17
  </Form.Item>
18
  <Form.Item<FieldType>
19
  label="Vector similarity weight"
20
  name={'vector_similarity_weight'}
21
- initialValue={0}
 
22
  >
23
  <Slider max={1} step={0.01} />
24
  </Form.Item>
 
5
  vector_similarity_weight?: number;
6
  };
7
 
8
+ interface IProps {
9
+ isTooltipShown?: boolean;
10
+ }
11
+
12
+ const SimilaritySlider = ({ isTooltipShown = false }: IProps) => {
13
  return (
14
  <>
15
  <Form.Item<FieldType>
16
  label="Similarity threshold"
17
  name={'similarity_threshold'}
18
+ tooltip={isTooltipShown && 'xxx'}
19
+ initialValue={0.2}
20
  >
21
  <Slider max={1} step={0.01} />
22
  </Form.Item>
23
  <Form.Item<FieldType>
24
  label="Vector similarity weight"
25
  name={'vector_similarity_weight'}
26
+ initialValue={0.3}
27
+ tooltip={isTooltipShown && 'xxx'}
28
  >
29
  <Slider max={1} step={0.01} />
30
  </Form.Item>
web/src/pages/add-knowledge/components/knowledge-chunk/hooks.ts CHANGED
@@ -41,7 +41,8 @@ export const useGetChunkHighlights = (
41
  const selectedChunk: IChunk = useGetSelectedChunk(selectedChunkId);
42
 
43
  const highlights: IHighlight[] = useMemo(() => {
44
- return Array.isArray(selectedChunk?.positions)
 
45
  ? selectedChunk?.positions?.map((x) => {
46
  const actualPositions = x.map((y, index) =>
47
  index !== 0 ? y / 0.7 : y,
 
41
  const selectedChunk: IChunk = useGetSelectedChunk(selectedChunkId);
42
 
43
  const highlights: IHighlight[] = useMemo(() => {
44
+ return Array.isArray(selectedChunk?.positions) &&
45
+ selectedChunk.positions.every((x) => Array.isArray(x))
46
  ? selectedChunk?.positions?.map((x) => {
47
  const actualPositions = x.map((y, index) =>
48
  index !== 0 ? y / 0.7 : y,
web/src/pages/chat/chat-configuration-modal/index.tsx CHANGED
@@ -28,8 +28,8 @@ const segmentedMap = {
28
  };
29
 
30
  const layout = {
31
- labelCol: { span: 6 },
32
- wrapperCol: { span: 18 },
33
  };
34
 
35
  const validateMessages = {
 
28
  };
29
 
30
  const layout = {
31
+ labelCol: { span: 7 },
32
+ wrapperCol: { span: 17 },
33
  };
34
 
35
  const validateMessages = {
web/src/pages/chat/chat-configuration-modal/prompt-engine.tsx CHANGED
@@ -162,8 +162,13 @@ const PromptEngine = (
162
  <Input.TextArea autoSize={{ maxRows: 8, minRows: 5 }} />
163
  </Form.Item>
164
  <Divider></Divider>
165
- <SimilaritySlider></SimilaritySlider>
166
- <Form.Item<FieldType> label="Top n" name={'top_n'} initialValue={0}>
 
 
 
 
 
167
  <Slider max={30} />
168
  </Form.Item>
169
  <section className={classNames(styles.variableContainer)}>
 
162
  <Input.TextArea autoSize={{ maxRows: 8, minRows: 5 }} />
163
  </Form.Item>
164
  <Divider></Divider>
165
+ <SimilaritySlider isTooltipShown></SimilaritySlider>
166
+ <Form.Item<FieldType>
167
+ label="Top n"
168
+ name={'top_n'}
169
+ initialValue={8}
170
+ tooltip={'xxx'}
171
+ >
172
  <Slider max={30} />
173
  </Form.Item>
174
  <section className={classNames(styles.variableContainer)}>
web/src/pages/chat/chat-container/index.less CHANGED
@@ -1,7 +1,8 @@
1
  .chatContainer {
2
- padding: 0 24px 24px;
3
  .messageContainer {
4
  overflow-y: auto;
 
5
  }
6
  }
7
 
 
1
  .chatContainer {
2
+ padding: 0 0 24px 24px;
3
  .messageContainer {
4
  overflow-y: auto;
5
+ padding-right: 24px;
6
  }
7
  }
8
 
web/src/pages/chat/chat-container/index.tsx CHANGED
@@ -145,7 +145,7 @@ const MessageItem = ({
145
  <AssistantIcon></AssistantIcon>
146
  )}
147
  <Flex vertical gap={8} flex={1}>
148
- <b>{isAssistant ? 'Resume Assistant' : 'You'}</b>
149
  <div className={styles.messageText}>
150
  <Markdown
151
  rehypePlugins={[rehypeWrapReference]}
 
145
  <AssistantIcon></AssistantIcon>
146
  )}
147
  <Flex vertical gap={8} flex={1}>
148
+ <b>{isAssistant ? '' : userInfo.nickname}</b>
149
  <div className={styles.messageText}>
150
  <Markdown
151
  rehypePlugins={[rehypeWrapReference]}
web/src/pages/chat/hooks.ts CHANGED
@@ -124,6 +124,14 @@ export const useSelectPromptConfigParameters = (): VariableTableDataType[] => {
124
  return finalParameters;
125
  };
126
 
 
 
 
 
 
 
 
 
127
  export const useRemoveDialog = () => {
128
  const dispatch = useDispatch();
129
 
@@ -404,6 +412,8 @@ export const useSelectCurrentConversation = () => {
404
  const conversation: IClientConversation = useSelector(
405
  (state: any) => state.chatModel.currentConversation,
406
  );
 
 
407
 
408
  const addNewestConversation = useCallback((message: string) => {
409
  setCurrentConversation((pre) => {
@@ -421,13 +431,30 @@ export const useSelectCurrentConversation = () => {
421
  });
422
  }, []);
423
 
424
- useEffect(() => {
425
- console.info('useSelectCurrentConversation: 1', currentConversation);
426
- }, [currentConversation]);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
427
 
428
  useEffect(() => {
429
- console.info('useSelectCurrentConversation: 2', conversation);
 
430
 
 
431
  setCurrentConversation(conversation);
432
  }, [conversation]);
433
 
@@ -472,7 +499,6 @@ export const useScrollToBottom = (currentConversation: IClientConversation) => {
472
 
473
  export const useFetchConversationOnMount = () => {
474
  const { conversationId } = useGetChatSearchParams();
475
- const setCurrentConversation = useSetCurrentConversation();
476
  const fetchConversation = useFetchConversation();
477
  const { currentConversation, addNewestConversation } =
478
  useSelectCurrentConversation();
@@ -481,10 +507,8 @@ export const useFetchConversationOnMount = () => {
481
  const fetchConversationOnMount = useCallback(() => {
482
  if (isConversationIdExist(conversationId)) {
483
  fetchConversation(conversationId);
484
- } else {
485
- setCurrentConversation({} as IClientConversation);
486
  }
487
- }, [fetchConversation, setCurrentConversation, conversationId]);
488
 
489
  useEffect(() => {
490
  fetchConversationOnMount();
 
124
  return finalParameters;
125
  };
126
 
127
+ export const useSelectCurrentDialog = () => {
128
+ const currentDialog: IDialog = useSelector(
129
+ (state: any) => state.chatModel.currentDialog,
130
+ );
131
+
132
+ return currentDialog;
133
+ };
134
+
135
  export const useRemoveDialog = () => {
136
  const dispatch = useDispatch();
137
 
 
412
  const conversation: IClientConversation = useSelector(
413
  (state: any) => state.chatModel.currentConversation,
414
  );
415
+ const dialog = useSelectCurrentDialog();
416
+ const { conversationId } = useGetChatSearchParams();
417
 
418
  const addNewestConversation = useCallback((message: string) => {
419
  setCurrentConversation((pre) => {
 
431
  });
432
  }, []);
433
 
434
+ const addPrologue = useCallback(() => {
435
+ if (conversationId === '') {
436
+ const prologue = dialog.prompt_config?.prologue;
437
+
438
+ const nextMessage = {
439
+ role: MessageType.Assistant,
440
+ content: prologue,
441
+ id: uuid(),
442
+ } as IMessage;
443
+
444
+ setCurrentConversation({
445
+ id: '',
446
+ dialog_id: dialog.id,
447
+ reference: [],
448
+ message: [nextMessage],
449
+ } as any);
450
+ }
451
+ }, [conversationId, dialog]);
452
 
453
  useEffect(() => {
454
+ addPrologue();
455
+ }, [addPrologue]);
456
 
457
+ useEffect(() => {
458
  setCurrentConversation(conversation);
459
  }, [conversation]);
460
 
 
499
 
500
  export const useFetchConversationOnMount = () => {
501
  const { conversationId } = useGetChatSearchParams();
 
502
  const fetchConversation = useFetchConversation();
503
  const { currentConversation, addNewestConversation } =
504
  useSelectCurrentConversation();
 
507
  const fetchConversationOnMount = useCallback(() => {
508
  if (isConversationIdExist(conversationId)) {
509
  fetchConversation(conversationId);
 
 
510
  }
511
+ }, [fetchConversation, conversationId]);
512
 
513
  useEffect(() => {
514
  fetchConversationOnMount();
web/src/pages/chat/index.less CHANGED
@@ -1,5 +1,6 @@
1
  .chatWrapper {
2
  height: 100%;
 
3
 
4
  .chatAppWrapper {
5
  width: 288px;
 
1
  .chatWrapper {
2
  height: 100%;
3
+ width: 100%;
4
 
5
  .chatAppWrapper {
6
  width: 288px;