79 lines
3.1 KiB
TypeScript
Raw Normal View History

2025-08-19 14:33:59 +08:00
import { aiPrompts } from './aiPrompt'
export type AiInferenceModelModel = {
value: string // AI选项值
label: string // AI选项标签
hasExample: boolean // 是否有示例
mustCharacter: boolean // 是否必须包含角色
systemContent: string // 系统内容
userContent: string // 用户内容
allAndExampleContent: string | null // 所有和示例内容
}
/**
* AI选项数据
* @description AI选项valuelabelhasExamplesystemContentuserContent和allAndExampleContent等属性
*/
export const aiOptionsData: AiInferenceModelModel[] = [
{
value: 'NanFengStoryboardMasterScenePrompt',
label: '【NanFeng】场景提示大师上下文-不包含人物)',
hasExample: false,
mustCharacter: false,
systemContent: aiPrompts.NanFengStoryboardMasterScenePromptSystemContent,
userContent: aiPrompts.NanFengStoryboardMasterScenePromptUserContent,
allAndExampleContent: null
},
{
value: 'NanFengStoryboardMasterSpecialEffects',
label: '【NanFeng】分镜大师-特效增强版(上下文-角色分析-人物固定)',
hasExample: false,
mustCharacter: true,
systemContent: aiPrompts.NanFengStoryboardMasterSpecialEffectsSystemContent,
userContent: aiPrompts.NanFengStoryboardMasterSpecialEffectsUserContent,
allAndExampleContent: null
},
{
value: 'NanFengStoryboardMasterSDEnglish',
label: '【NanFeng】分镜大师-SD英文版上下文-SD-英文提示词)',
hasExample: false,
mustCharacter: false,
systemContent: aiPrompts.NanFengStoryboardMasterSDEnglishSystemContent,
userContent: aiPrompts.NanFengStoryboardMasterSDEnglishUserContent,
allAndExampleContent: null
},
{
value: 'NanFengStoryboardMasterSingleFrame',
label: '【NanFeng】分镜大师-单帧分镜提示词(上下文-单帧-人物推理)',
hasExample: false,
mustCharacter: false,
systemContent: aiPrompts.NanFengStoryboardMasterSingleFrameSystemContent,
userContent: aiPrompts.NanFengStoryboardMasterSingleFrameUserContent,
allAndExampleContent: null
},
{
value: 'NanFengStoryboardMasterSingleFrameWithCharacter',
label: '【NanFeng】分镜大师-单帧分镜提示词(上下文-单帧-角色分析-人物固定)',
hasExample: false,
mustCharacter: true,
systemContent: aiPrompts.NanFengStoryboardMasterSingleFrameWithCharacterSystemContent,
userContent: aiPrompts.NanFengStoryboardMasterSingleFrameWithCharacterUserContent,
allAndExampleContent: null
}
]
/**
* AI选项数据
* @description AI选项数据valuelabelhasExamplesystemContentuserContent和allAndExampleContent等属性
* @param id AI选项ID
* @returns AI选项数据
* @throws {Error} AI选项
*/
export function GetAIPromptOptionByValue(value: string) {
let aiOptionIndex = aiOptionsData.findIndex((item) => item.value == value)
if (aiOptionIndex == -1) {
throw new Error('没有找到对应的AI选项请先检查配置')
}
return aiOptionsData[aiOptionIndex]
}