You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

34 lines
1.1 KiB

import { defineWrappedResponseHandler } from "#server/utils/handler";
import { R } from "#server/utils/response";
import { requireAdmin } from "#server/utils/admin-guard";
import { setGlobalConfigValue } from "#server/service/config";
export default defineWrappedResponseHandler(async (event) => {
await requireAdmin(event);
const body = await readBody(event);
const { defaultModelId, titleModelId } = body as {
defaultModelId?: number;
titleModelId?: number;
};
if (defaultModelId === undefined && titleModelId === undefined) {
return R.error("参数无效", null);
}
if (defaultModelId !== undefined) {
if (typeof defaultModelId !== "number" || defaultModelId <= 0) {
return R.error("默认模型ID无效", null);
}
await setGlobalConfigValue("agentDefaultModelId", defaultModelId);
}
if (titleModelId !== undefined) {
if (typeof titleModelId !== "number" || titleModelId <= 0) {
return R.error("标题模型ID无效", null);
}
await setGlobalConfigValue("agentTitleModelId", titleModelId);
}
return R.success({ defaultModelId, titleModelId });
});