Feat: Add hatPromptEngine component #3221 (#4881)

### What problem does this PR solve?

Feat: Add hatPromptEngine component #3221

### Type of change


- [x] New Feature (non-breaking change which adds functionality)
This commit is contained in:
balibabu
2025-02-11 19:04:10 +08:00
committed by GitHub
parent 521d25d4e6
commit d197f33646
9 changed files with 398 additions and 142 deletions

View File

@ -0,0 +1,37 @@
import { useTranslate } from '@/hooks/common-hooks';
import { z } from 'zod';
export function useChatSettingSchema() {
const { t } = useTranslate('chat');
const promptConfigSchema = z.object({
quote: z.boolean(),
keyword: z.boolean(),
tts: z.boolean(),
empty_response: z.string().min(1, {
message: t('emptyResponse'),
}),
prologue: z.string().min(1, {}),
system: z.string().min(1, { message: t('systemMessage') }),
refine_multiturn: z.boolean(),
use_kg: z.boolean(),
});
const formSchema = z.object({
name: z.string().min(1, { message: t('assistantNameMessage') }),
icon: z.array(z.instanceof(File)),
language: z.string().min(1, {
message: 'Username must be at least 2 characters.',
}),
description: z.string(),
kb_ids: z.array(z.string()).min(0, {
message: 'Username must be at least 1 characters.',
}),
prompt_config: promptConfigSchema,
top_n: z.number(),
vector_similarity_weight: z.number(),
top_k: z.number(),
});
return formSchema;
}