更新了模型评估页面的新建

This commit is contained in:
2026-01-22 17:29:48 +08:00
parent 1a847996c8
commit 8c89e9907f
5 changed files with 15202 additions and 43 deletions

View File

@@ -959,6 +959,41 @@
]
};
// 获取 URL 参数
function getUrlParam(name) {
const urlParams = new URLSearchParams(window.location.search);
return urlParams.get(name);
}
// 加载维度数据(编辑模式)
async function loadDimensionData(id) {
try {
const response = await fetch(`${API_BASE}/dimension/${id}`);
const result = await response.json();
if (result.code === 0 && result.data) {
const dim = result.data;
// 填充基本信息
document.querySelector('input[name="name"]').value = dim.name || '';
document.querySelector('textarea[name="description"]').value = dim.description || '';
// 更新字数统计
document.getElementById('nameCount').textContent = (dim.name || '').length;
document.getElementById('descCount').textContent = (dim.description || '').length;
// 填充指标类型
const dimensionType = document.getElementById('dimensionType');
if (dimensionType && dim.type) {
dimensionType.value = dim.type;
toggleEvalConfig();
}
}
} catch (error) {
console.error('加载维度数据失败:', error);
}
}
// 初始化函数
async function initPage() {
// 绑定指标类型下拉框事件
@@ -970,6 +1005,12 @@
// 加载评测模型列表
await loadEvalModels();
// 检查是否是编辑模式
const editId = getUrlParam('id');
if (editId) {
await loadDimensionData(editId);
}
// 绑定 Markdown 编辑器事件
const evalPromptEditor = document.getElementById('evalPromptEditor');
if (evalPromptEditor) {
@@ -1175,22 +1216,36 @@
data.pass_threshold = parseFloat(formData.get('pass_threshold')) || 3;
}
// 判断是新建还是编辑
const editId = getUrlParam('id');
const isEdit = !!editId;
try {
const response = await fetch(`${API_BASE}/dimension`, {
method: 'POST',
let url = `${API_BASE}/dimension`;
let method = 'POST';
let successMsg = '评测维度创建成功!';
if (isEdit) {
url = `${API_BASE}/dimension/${editId}`;
method = 'PUT';
successMsg = '评测维度更新成功!';
}
const response = await fetch(url, {
method: method,
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify(data)
});
const result = await response.json();
if (result.code === 0) {
showMessage('成功', '评测维度创建成功!', 'success', () => {
showMessage('成功', successMsg, 'success', () => {
goBack();
});
} else {
showMessage('错误', result.message || '创建失败', 'error');
showMessage('错误', result.message || '操作失败', 'error');
}
} catch (error) {
showMessage('错误', '创建失败: ' + error.message, 'error');
showMessage('错误', '操作失败: ' + error.message, 'error');
}
}