2024-06-06 11:01:14 +08:00
|
|
|
import { variableEnabledFieldMap } from '@/constants/chat';
|
|
|
|
|
import omit from 'lodash/omit';
|
|
|
|
|
|
|
|
|
|
// chat model setting and generate operator
|
|
|
|
|
export const excludeUnEnabledVariables = (
|
2024-06-06 15:00:37 +08:00
|
|
|
values: any = {},
|
2024-06-06 11:01:14 +08:00
|
|
|
prefix = 'llm_setting.',
|
|
|
|
|
) => {
|
|
|
|
|
const unEnabledFields: Array<keyof typeof variableEnabledFieldMap> =
|
|
|
|
|
Object.keys(variableEnabledFieldMap).filter((key) => !values[key]) as Array<
|
|
|
|
|
keyof typeof variableEnabledFieldMap
|
|
|
|
|
>;
|
|
|
|
|
|
|
|
|
|
return unEnabledFields.map(
|
|
|
|
|
(key) => `${prefix}${variableEnabledFieldMap[key]}`,
|
|
|
|
|
);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
// chat model setting and generate operator
|
|
|
|
|
export const removeUselessFieldsFromValues = (values: any, prefix?: string) => {
|
|
|
|
|
const nextValues: any = omit(values, [
|
|
|
|
|
...Object.keys(variableEnabledFieldMap),
|
|
|
|
|
'parameters',
|
|
|
|
|
...excludeUnEnabledVariables(values, prefix),
|
|
|
|
|
]);
|
|
|
|
|
|
|
|
|
|
return nextValues;
|
|
|
|
|
};
|