diff --git a/main/manager-web/src/apis/module/model.js b/main/manager-web/src/apis/module/model.js
index 7db2b288..d103ee79 100644
--- a/main/manager-web/src/apis/module/model.js
+++ b/main/manager-web/src/apis/module/model.js
@@ -106,6 +106,22 @@ export default {
});
}).send();
},
+ // 获取LLM模型名称列表
+ getLlmModelCodeList(modelName, callback) {
+ RequestService.sendRequest()
+ .url(`${getServiceUrl()}/models/llm/names`)
+ .method('GET')
+ .data({ modelName })
+ .success((res) => {
+ RequestService.clearRequestTime();
+ callback(res);
+ })
+ .networkFail(() => {
+ RequestService.reAjaxFun(() => {
+ this.getLlmModelCodeList(modelName, callback);
+ });
+ }).send();
+ },
// 获取模型音色列表
getModelVoices(modelId, voiceName, callback) {
const queryParams = new URLSearchParams({
diff --git a/main/manager-web/src/views/roleConfig.vue b/main/manager-web/src/views/roleConfig.vue
index ccd96e1b..ff9ac6d2 100644
--- a/main/manager-web/src/views/roleConfig.vue
+++ b/main/manager-web/src/views/roleConfig.vue
@@ -89,7 +89,7 @@
-
@@ -173,8 +172,9 @@ export default {
{ label: '视觉大模型(VLLM)', key: 'vllmModelId', type: 'VLLM' },
{ label: '意图识别(Intent)', key: 'intentModelId', type: 'Intent' },
{ label: '记忆(Memory)', key: 'memModelId', type: 'Memory' },
- { label: '语音合成(TTS)', key: 'ttsModelId', type: 'TTS' },
+ { label: '语音合成(TTS)', key: 'ttsModelId', type: 'TTS' }
],
+ llmModeTypeMap: new Map(),
modelOptions: {},
templates: [],
loadingTemplate: false,
@@ -364,16 +364,36 @@ export default {
},
fetchModelOptions() {
this.models.forEach(model => {
- Api.model.getModelNames(model.type, '', ({ data }) => {
- if (data.code === 0) {
- this.$set(this.modelOptions, model.type, data.data.map(item => ({
- value: item.id,
- label: item.modelName
- })));
- } else {
- this.$message.error(data.msg || '获取模型列表失败');
- }
- });
+ if (model.type != "LLM") {
+ Api.model.getModelNames(model.type, '', ({ data }) => {
+ if (data.code === 0) {
+ this.$set(this.modelOptions, model.type, data.data.map(item => ({
+ value: item.id,
+ label: item.modelName,
+ isHidden: false
+ })));
+ } else {
+ this.$message.error(data.msg || '获取模型列表失败');
+ }
+ });
+ } else {
+ Api.model.getLlmModelCodeList('', ({ data }) => {
+ if (data.code === 0) {
+ let LLMdata = []
+ data.data.forEach(item => {
+ LLMdata.push({
+ value: item.id,
+ label: item.modelName,
+ isHidden: false
+ })
+ this.llmModeTypeMap.set(item.id, item.type)
+ })
+ this.$set(this.modelOptions, model.type, LLMdata);
+ } else {
+ this.$message.error(data.msg || '获取LLM模型列表失败');
+ }
+ });
+ }
});
},
fetchVoiceOptions(modelId) {
@@ -410,6 +430,24 @@ export default {
if (type === 'Memory' && value !== 'Memory_nomem' && (this.form.chatHistoryConf === 0 || this.form.chatHistoryConf === null)) {
this.form.chatHistoryConf = 2;
}
+ if (type === 'LLM') {
+ let llmType = this.llmModeTypeMap.get(value)
+ let memory
+ for (let item of this.modelOptions['Intent']) {
+ if(item.value == "Intent_nointent" ) {
+ memory = item
+ break
+ }
+ }
+ if (llmType == "openai" || llmType == "ollama") {
+ memory.isHidden = false
+ }else{
+ memory.isHidden = true
+ }
+ if(this.form.model.intentModelId == "Intent_nointent"){
+ this.form.model.intentModelId = '';
+ }
+ }
},
fetchAllFunctions() {
return new Promise((resolve, reject) => {