Skip to content

Commit e4e1d18

Browse files
committed
feat: Generate prompt
1 parent 4cb3912 commit e4e1d18

File tree

3 files changed

+387
-1
lines changed

3 files changed

+387
-1
lines changed

ui/src/api/application/application.ts

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -204,6 +204,21 @@ const open: (application_id: string, loading?: Ref<boolean>) => Promise<Result<s
204204
) => {
205205
return get(`${prefix.value}/${application_id}/open`, {}, loading)
206206
}
207+
208+
/**
209+
* 生成优化提示词
210+
*
211+
*/
212+
const generate_prompt: (workspace_id:string ,model_id:string, data: any) => Promise<any> = (
213+
workspace_id,
214+
model_id,
215+
data
216+
) => {
217+
const prefix = (window.MaxKB?.prefix ? window.MaxKB?.prefix : '/admin') + '/api'
218+
return postStream(`${prefix}/workspace/${workspace_id}/application/model/${model_id}/prompt_generate`, data)
219+
}
220+
221+
207222
/**
208223
* 对话
209224
* chat_id: string
@@ -388,4 +403,5 @@ export default {
388403
speechToText,
389404
getMcpTools,
390405
postUploadFile,
406+
generate_prompt
391407
}

ui/src/views/application/ApplicationSetting.vue

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,19 @@
100100
</ModelSelect>
101101
</el-form-item>
102102
<el-form-item :label="$t('views.application.form.roleSettings.label')">
103+
<template #label>
104+
<div class="flex-between">
105+
<span>{{ $t('views.application.form.roleSettings.label') }}</span>
106+
<el-button
107+
type="primary"
108+
link
109+
@click="handleGeneratePromptClick(applicationForm.model_id as string)"
110+
:disabled="!applicationForm.model_id"
111+
>
112+
生成
113+
</el-button>
114+
</div>
115+
</template>
103116
<MdEditorMagnify
104117
:title="$t('views.application.form.roleSettings.label')"
105118
v-model="applicationForm.model_setting.system"
@@ -545,6 +558,7 @@
545558
</el-card>
546559

547560
<AIModeParamSettingDialog ref="AIModeParamSettingDialogRef" @refresh="refreshForm" />
561+
<GeneratePromptDialog @replace="replace " ref="GeneratePromptDialogRef" />
548562
<TTSModeParamSettingDialog ref="TTSModeParamSettingDialogRef" @refresh="refreshTTSForm" />
549563
<ParamSettingDialog ref="ParamSettingDialogRef" @refresh="refreshParam" />
550564
<AddKnowledgeDialog
@@ -566,6 +580,7 @@ import { reactive, ref, onMounted, computed, onBeforeMount } from 'vue'
566580
import { useRoute, useRouter } from 'vue-router'
567581
import { groupBy, set } from 'lodash'
568582
import AIModeParamSettingDialog from './component/AIModeParamSettingDialog.vue'
583+
import GeneratePromptDialog from './component/GeneratePrompt.vue'
569584
import ParamSettingDialog from './component/ParamSettingDialog.vue'
570585
import AddKnowledgeDialog from './component/AddKnowledgeDialog.vue'
571586
import type { FormInstance, FormRules } from 'element-plus'
@@ -587,7 +602,9 @@ const router = useRouter()
587602
const {
588603
params: { id },
589604
} = route as any
590-
605+
const replace = (v: any) => {
606+
applicationForm.value.model_setting.system=v
607+
}
591608
const apiType = computed(() => {
592609
if (route.path.includes('resource-management')) {
593610
return 'systemManage'
@@ -615,6 +632,7 @@ const AIModeParamSettingDialogRef = ref<InstanceType<typeof AIModeParamSettingDi
615632
const ReasoningParamSettingDialogRef = ref<InstanceType<typeof ReasoningParamSettingDialog>>()
616633
const TTSModeParamSettingDialogRef = ref<InstanceType<typeof TTSModeParamSettingDialog>>()
617634
const ParamSettingDialogRef = ref<InstanceType<typeof ParamSettingDialog>>()
635+
const GeneratePromptDialogRef = ref<InstanceType<typeof GeneratePromptDialog>>()
618636
619637
const applicationFormRef = ref<FormInstance>()
620638
const AddKnowledgeDialogRef = ref()
@@ -743,6 +761,15 @@ const openAIParamSettingDialog = () => {
743761
}
744762
}
745763
764+
const openGeneratePromptDialog = (modelId: string) => {
765+
GeneratePromptDialogRef.value?.open(modelId)
766+
}
767+
768+
const handleGeneratePromptClick = (model_id:string) => {
769+
openGeneratePromptDialog(model_id)
770+
}
771+
772+
746773
const openReasoningParamSettingDialog = () => {
747774
ReasoningParamSettingDialogRef.value?.open(applicationForm.value.model_setting)
748775
}

0 commit comments

Comments
 (0)