diff --git a/web/src/locales/en.ts b/web/src/locales/en.ts index cea7715b7..924324ca3 100644 --- a/web/src/locales/en.ts +++ b/web/src/locales/en.ts @@ -556,6 +556,7 @@ The above is the content you need to summarize.`, messagePlaceholder: 'message', messageMsg: 'Please input message or delete this field.', addField: 'Add field', + loop: 'Loop', }, footer: { profile: 'All rights reserved @ React', diff --git a/web/src/locales/zh-traditional.ts b/web/src/locales/zh-traditional.ts index 852f993f1..c48a39f04 100644 --- a/web/src/locales/zh-traditional.ts +++ b/web/src/locales/zh-traditional.ts @@ -517,6 +517,7 @@ export default { messagePlaceholder: '訊息', messageMsg: '請輸入訊息或刪除此欄位。', addField: '新增字段', + loop: '環', }, footer: { profile: '“保留所有權利 @ react”', diff --git a/web/src/locales/zh.ts b/web/src/locales/zh.ts index 0a4df44d5..eadb692bd 100644 --- a/web/src/locales/zh.ts +++ b/web/src/locales/zh.ts @@ -535,6 +535,7 @@ export default { messagePlaceholder: '消息', messageMsg: '请输入消息或删除此字段。', addField: '新增字段', + loop: '环', }, footer: { profile: 'All rights reserved @ React', diff --git a/web/src/pages/flow/constant.tsx b/web/src/pages/flow/constant.tsx index 10e64e311..9e8209c55 100644 --- a/web/src/pages/flow/constant.tsx +++ b/web/src/pages/flow/constant.tsx @@ -1,7 +1,9 @@ import { + BranchesOutlined, DatabaseOutlined, MergeCellsOutlined, MessageOutlined, + QuestionOutlined, RocketOutlined, SendOutlined, SlidersOutlined, @@ -14,6 +16,8 @@ export enum Operator { Answer = 'Answer', Categorize = 'Categorize', Message = 'Message', + Relevant = 'Relevant', + RewriteQuestion = 'RewriteQuestion', } export const operatorIconMap = { @@ -23,6 +27,8 @@ export const operatorIconMap = { [Operator.Begin]: SlidersOutlined, [Operator.Categorize]: DatabaseOutlined, [Operator.Message]: MessageOutlined, + [Operator.Relevant]: BranchesOutlined, + [Operator.RewriteQuestion]: QuestionOutlined, }; export const operatorMap = { @@ -34,6 +40,8 @@ export const operatorMap = { [Operator.Begin]: { description: 'Begin description' }, [Operator.Categorize]: { description: 'Categorize description' }, [Operator.Message]: { description: 'Message description' }, + [Operator.Relevant]: { description: 'BranchesOutlined description' }, + [Operator.RewriteQuestion]: { description: 'RewriteQuestion description' }, }; export const componentMenuList = [ @@ -57,6 +65,14 @@ export const componentMenuList = [ name: Operator.Message, description: operatorMap[Operator.Message].description, }, + { + name: Operator.Relevant, + description: operatorMap[Operator.Relevant].description, + }, + { + name: Operator.RewriteQuestion, + description: operatorMap[Operator.RewriteQuestion].description, + }, ]; export const initialRetrievalValues = { @@ -115,6 +131,8 @@ export const RestrictedUpstreamMap = { [Operator.Retrieval]: [], [Operator.Generate]: [], [Operator.Message]: [], + [Operator.Relevant]: [], + [Operator.RewriteQuestion]: [], }; export const NodeMap = { @@ -124,4 +142,6 @@ export const NodeMap = { [Operator.Generate]: 'ragNode', [Operator.Answer]: 'ragNode', [Operator.Message]: 'ragNode', + [Operator.Relevant]: 'ragNode', + [Operator.RewriteQuestion]: 'ragNode', }; diff --git a/web/src/pages/flow/flow-drawer/index.tsx b/web/src/pages/flow/flow-drawer/index.tsx index 1f73b91db..c98677625 100644 --- a/web/src/pages/flow/flow-drawer/index.tsx +++ b/web/src/pages/flow/flow-drawer/index.tsx @@ -9,7 +9,9 @@ import { Operator } from '../constant'; import GenerateForm from '../generate-form'; import { useHandleFormValuesChange } from '../hooks'; import MessageForm from '../message-form'; +import RelevantForm from '../relevant-form'; import RetrievalForm from '../retrieval-form'; +import RewriteQuestionForm from '../rewrite-question-form'; interface IProps { node?: Node; @@ -22,6 +24,8 @@ const FormMap = { [Operator.Answer]: AnswerForm, [Operator.Categorize]: CategorizeForm, [Operator.Message]: MessageForm, + [Operator.Relevant]: RelevantForm, + [Operator.RewriteQuestion]: RewriteQuestionForm, }; const FlowDrawer = ({ diff --git a/web/src/pages/flow/relevant-form/index.tsx b/web/src/pages/flow/relevant-form/index.tsx new file mode 100644 index 000000000..5bd99290e --- /dev/null +++ b/web/src/pages/flow/relevant-form/index.tsx @@ -0,0 +1,33 @@ +import LLMSelect from '@/components/llm-select'; +import { useTranslate } from '@/hooks/commonHooks'; +import { Form } from 'antd'; +import { useSetLlmSetting } from '../hooks'; +import { IOperatorForm } from '../interface'; + +const RelevantForm = ({ onValuesChange, form }: IOperatorForm) => { + const { t } = useTranslate('chat'); + useSetLlmSetting(form); + + return ( +
+ + + +
+ ); +}; + +export default RelevantForm; diff --git a/web/src/pages/flow/rewrite-question-form/index.tsx b/web/src/pages/flow/rewrite-question-form/index.tsx new file mode 100644 index 000000000..d14003054 --- /dev/null +++ b/web/src/pages/flow/rewrite-question-form/index.tsx @@ -0,0 +1,34 @@ +import LLMSelect from '@/components/llm-select'; +import { useTranslate } from '@/hooks/commonHooks'; +import { Form, InputNumber } from 'antd'; +import { useSetLlmSetting } from '../hooks'; +import { IOperatorForm } from '../interface'; + +const RewriteQuestionForm = ({ onValuesChange, form }: IOperatorForm) => { + const { t } = useTranslate('chat'); + useSetLlmSetting(form); + + return ( +
+ + + + + + +
+ ); +}; + +export default RewriteQuestionForm;