feat: 添加模型选择校验,确保生成模型和评估模型同时选择或同时不选择

This commit is contained in:
Wenjie Zhang 2026-01-14 21:52:20 +08:00
parent 5047cd0744
commit 386c5d5dad

View File

@ -351,7 +351,7 @@
<script setup> <script setup>
import { ref, reactive, onMounted, computed, h } from 'vue'; import { ref, reactive, onMounted, computed, h } from 'vue';
import { message } from 'ant-design-vue'; import { message, Modal } from 'ant-design-vue';
import { evaluationApi } from '@/apis/knowledge_api'; import { evaluationApi } from '@/apis/knowledge_api';
import ModelSelectorComponent from '@/components/ModelSelectorComponent.vue'; import ModelSelectorComponent from '@/components/ModelSelectorComponent.vue';
import SearchConfigModal from './SearchConfigModal.vue'; import SearchConfigModal from './SearchConfigModal.vue';
@ -681,33 +681,56 @@ const startEvaluation = async () => {
return; return;
} }
startingEvaluation.value = true; //
const hasAnswerModel = !!configForm.answer_llm;
const hasJudgeModel = !!configForm.judge_llm;
// if (hasAnswerModel !== hasJudgeModel) {
const params = { message.warning('生成模型和评估模型必须同时选择或者同时不选择');
benchmark_id: selectedBenchmark.value.benchmark_id, return;
model_config: { }
answer_llm: configForm.answer_llm, //
judge_llm: configForm.judge_llm // const runEvaluation = async () => {
startingEvaluation.value = true;
//
const params = {
benchmark_id: selectedBenchmark.value.benchmark_id,
model_config: {
answer_llm: configForm.answer_llm, //
judge_llm: configForm.judge_llm //
}
};
try {
const response = await evaluationApi.runEvaluation(props.databaseId, params);
if (response.message === 'success') {
message.success('评估任务已开始');
loadEvaluationHistory();
//
taskerStore.loadTasks();
} else {
message.error(response.message || '启动评估失败');
}
} catch (error) {
console.error('启动评估失败:', error);
message.error('启动评估失败');
} finally {
startingEvaluation.value = false;
} }
}; };
try { if (!hasAnswerModel) {
const response = await evaluationApi.runEvaluation(props.databaseId, params); Modal.confirm({
title: '确认评估模式',
if (response.message === 'success') { content: '您未选择答案生成模型,将仅进行检索测试,不会进行问答测试。是否继续?',
message.success('评估任务已开始'); okText: '继续',
loadEvaluationHistory(); cancelText: '取消',
// onOk: runEvaluation
taskerStore.loadTasks(); });
} else { } else {
message.error(response.message || '启动评估失败'); runEvaluation();
}
} catch (error) {
console.error('启动评估失败:', error);
message.error('启动评估失败');
} finally {
startingEvaluation.value = false;
} }
}; };