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.
 
 
 
 

24 lines
640 B

import { requireAdmin } from "#server/utils/admin-guard";
import { createProvider } from "#server/service/llm";
export default defineWrappedResponseHandler(async (event) => {
await requireAdmin(event);
const body = await readBody(event);
const { name, slug, baseUrl, parseMode, apiKey, status, description } = body;
if (!name || !slug) {
return R.throwError(422, "供应商名称和标识不能为空", null);
}
const result = await createProvider({
name,
slug,
baseUrl,
parseMode: parseMode || "openai",
apiKey,
status: status || "active",
description,
});
return R.success(result);
});