feat: Improve prompt

v3.2
zhangzhanwei 2025-09-12 17:06:38 +08:00 committed by zhanweizhang7
parent 0c53e31b2a
commit 6412c79794
5 changed files with 25 additions and 15 deletions

View File

@ -206,16 +206,21 @@ const open: (application_id: string, loading?: Ref<boolean>) => Promise<Result<s
} }
/** /**
* *
* * @param workspace_id
* @param model_id
* @param application_id
* @param data
* @returns
*/ */
const generate_prompt: (workspace_id:string ,model_id:string, data: any) => Promise<any> = ( const generate_prompt: (workspace_id:string ,model_id:string, application_id:string,data: any) => Promise<any> = (
workspace_id, workspace_id,
model_id, model_id,
application_id,
data data
) => { ) => {
const prefix = (window.MaxKB?.prefix ? window.MaxKB?.prefix : '/admin') + '/api' const prefix = (window.MaxKB?.prefix ? window.MaxKB?.prefix : '/admin') + '/api'
return postStream(`${prefix}/workspace/${workspace_id}/application/model/${model_id}/prompt_generate`, data) return postStream(`${prefix}/workspace/${workspace_id}/application/${application_id}/model/${model_id}/prompt_generate`, data)
} }

View File

@ -784,7 +784,7 @@ const openAIParamSettingDialog = () => {
const openGeneratePromptDialog = () => { const openGeneratePromptDialog = () => {
if (applicationForm.value.model_id) { if (applicationForm.value.model_id) {
GeneratePromptDialogRef.value?.open(applicationForm.value.model_id) GeneratePromptDialogRef.value?.open(applicationForm.value.model_id, id)
} }
} }

View File

@ -85,6 +85,7 @@ const chatMessages = ref<Array<any>>([])
// //
const originalUserInput = ref<string>('') const originalUserInput = ref<string>('')
const modelID = ref('') const modelID = ref('')
const applicationID = ref('')
const dialogVisible = ref(false) const dialogVisible = ref(false)
const inputValue = ref<string>('') const inputValue = ref<string>('')
const loading = ref<boolean>(false) const loading = ref<boolean>(false)
@ -97,8 +98,8 @@ const promptTemplates = {
请按以下格式生成 请按以下格式生成
# 角色: 角色名称 # 角色:
角色概述和主要职责的一句话描述
## 目标 ## 目标
角色的工作目标,如果有多目标可以分点列出,但建议更聚焦1-2个目标 角色的工作目标,如果有多目标可以分点列出,但建议更聚焦1-2个目标
@ -118,9 +119,12 @@ const promptTemplates = {
## 限制 ## 限制
描述角色在互动过程中需要遵循的限制条件1 1. **严格限制回答范围**仅回答与角色设定相关的问题
描述角色在互动过程中需要遵循的限制条件2 - 如果用户提问与角色无关必须使用以下固定格式回复
描述角色在互动过程中需要遵循的限制条件3 对不起我只能回答与角色设定相关的问题您的问题不在服务范围内
- 不得提供任何与角色设定无关的回答
2. 描述角色在互动过程中需要遵循的限制条件2
3. 描述角色在互动过程中需要遵循的限制条件3
`, `,
} }
@ -200,7 +204,7 @@ function generatePrompt(inputValue: any) {
messages: chatMessages.value, messages: chatMessages.value,
prompt: promptTemplates.INIT_TEMPLATE, prompt: promptTemplates.INIT_TEMPLATE,
} }
generatePromptAPI.generate_prompt(workspaceId, modelID.value, requestData).then((response) => { generatePromptAPI.generate_prompt(workspaceId, modelID.value, applicationID.value,requestData).then((response) => {
const reader = response.body.getReader() const reader = response.body.getReader()
reader.read().then(getWrite(reader)) reader.read().then(getWrite(reader))
}) })
@ -226,8 +230,9 @@ const stopChat = () => {
chatMessages.value = [] chatMessages.value = []
} }
const open = (modelId: string) => { const open = (modelId: string, applicationId: string) => {
modelID.value = modelId modelID.value = modelId
applicationID.value = applicationId
dialogVisible.value = true dialogVisible.value = true
originalUserInput.value = '' originalUserInput.value = ''
chatMessages.value = [] chatMessages.value = []

View File

@ -439,7 +439,7 @@ const openAIParamSettingDialog = (modelId: string) => {
const GeneratePromptDialogRef = ref<InstanceType<typeof GeneratePromptDialog>>() const GeneratePromptDialogRef = ref<InstanceType<typeof GeneratePromptDialog>>()
const openGeneratePromptDialog = (modelId: string) => { const openGeneratePromptDialog = (modelId: string) => {
if (modelId) { if (modelId) {
GeneratePromptDialogRef.value?.open(modelId) GeneratePromptDialogRef.value?.open(modelId, id)
} }
} }
const replace = (v: any) => { const replace = (v: any) => {

View File

@ -6,8 +6,8 @@ class IntentNode extends AppNode {
} }
} }
const get_up_index_height = (branch_lsit: Array<any>, index: number) => { const get_up_index_height = (branch_list: Array<any>, index: number) => {
return branch_lsit return branch_list
.filter((item, i) => i < index) .filter((item, i) => i < index)
.map((item) => item.height + 8) .map((item) => item.height + 8)
.reduce((x,y) => x+y, 0) .reduce((x,y) => x+y, 0)